-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve filtering of file roots #997
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
`ProjectWorkspace::to_roots` now returns a new `ProjectRoot` which contains information regarding whether or not the given path is part of the current workspace or an external dependency. This information can then be used in `ra_batch` and `ra_lsp_server` to implement more advanced filtering. This allows us to filter some unnecessary folders from external dependencies such as tests, examples and benches.
4019662
to
e32462c
Compare
Currently for me, this reduces the files from |
matklad
reviewed
Mar 20, 2019
This way the two IncludeRustFiles implementations can simply call the ProjectRoots' methods, so that the include logic is in one place.
Moved the include logic to |
bors r+ Thanks! |
bors bot
added a commit
that referenced
this pull request
Mar 21, 2019
997: Improve filtering of file roots r=matklad a=vipentti `ProjectWorkspace::to_roots` now returns a new `ProjectRoot` which contains information regarding whether or not the given path is part of the current workspace or an external dependency. This information can then be used in `ra_batch` and `ra_lsp_server` to implement more advanced filtering. This allows us to filter some unnecessary folders from external dependencies such as tests, examples and benches. Relates to discussion in #869 Co-authored-by: Ville Penttinen <villem.penttinen@gmail.com>
Build succeeded |
alsuren
added a commit
to alsuren/rust-analyzer
that referenced
this pull request
Aug 8, 2019
Previously it was spending multiple hours adding file watches in large trees that don't contain any rust files. I think that a reasonable way to generalise this would be to allow projects to add a .rustignore file with similar syntax to .gitignore, and use one of the existing .gitignore parsing crates to find and read it. It may also be worth parsing .gitignore files by default? See also rust-lang#997 and https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/ignoring.20in.20VFS for previous discussions on this topic.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ProjectWorkspace::to_roots
now returns a newProjectRoot
which containsinformation regarding whether or not the given path is part of the current
workspace or an external dependency. This information can then be used in
ra_batch
andra_lsp_server
to implement more advanced filtering. This allowsus to filter some unnecessary folders from external dependencies such as tests,
examples and benches.
Relates to discussion in #869