Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

VS enable diagnostics for unopened files#15591

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Conversation

T-Gro
Copy link
Member

@T-GroT-Gro commentedJul 12, 2023
edited
Loading

This PR brings in an optional checkbox for enabling solution-wide background analysis.
The default remains "false" - only opened documents are being analyzed.

Once this is turned on, unopened documents in all projects will also be analyzed for diagnostics.
This is a rough summary of the priorities:

  1. Language features for currently active document
  2. Collect diagnostics of other open documents via a lower-prio background activity
  3. (after no-activity delay) - background processing of all other documents and projects, project-by-project

Any change is typed to active document => stop#2/#3, go back to#1 and start over

During active typing, no background analysis is running at all.

image

This does work together with the "live buffers" option:
image

The tests for the functionality exist in the Roslyn repository.
Remark: GH research indicates that the Roslyn's SolutionCrawler is on a path of being deprecated in the future, and this might need a different impl in the LSP-future of F#. I think it still makes sense to enable background analysis as an option despite knowing that.

0101, smoothdeveloper, and majocha reacted with thumbs up emoji
@T-GroT-Gro marked this pull request as ready for reviewJuly 12, 2023 15:25
@T-GroT-Gro requested a review froma team as acode ownerJuly 12, 2023 15:25
@vzarytovskii
Copy link
Member

How is vram compared with and without this option on something like VisualFSharp or FCS solution?

@T-Gro
Copy link
MemberAuthor

T-Gro commentedJul 12, 2023
edited
Loading

How is vram compared with and without this option on something like VisualFSharp or FCS solution?

I had the before/after Visual Studios side by side and did not spot any memory usage increase, the caches are being evicted and not kept strongly. This also means it does take longer and is not at all smart about avoiding work (we do not have "cross project graph checking"), for VisualFsharp.sln it was easily several minutes before the full solution was analyzed.

@vzarytovskii
Copy link
Member

Can you please ensure we're sending state of the option in telemetry? So we can filter it out when looking at perf data?

@T-Gro
Copy link
MemberAuthor

ok, will redo it to include that option in telemetry.

@T-Gro
Copy link
MemberAuthor

@vzarytovskii : Reported as a boolean propertynameof solutionCrawler, solutionCrawler

@psfinakipsfinaki merged commit40d789c intodotnet:mainJul 17, 2023
@T-GroT-Gro deleted the 15008-vs-enable-diagnostics-for-unopened-files branchJuly 17, 2023 17:25
@T-GroT-Gro linked an issueJul 18, 2023 that may beclosed by this pull request
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@010101010101 approved these changes

@vzarytovskiivzarytovskiivzarytovskii approved these changes

@abonieabonieabonie approved these changes

Assignees
No one assigned
Labels
None yet
Projects
Archived in project
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

VS: enable diagnostics for unopened files
5 participants
@T-Gro@vzarytovskii@0101@abonie@psfinaki

[8]ページ先頭

©2009-2025 Movatter.jp