aboutsummaryrefslogtreecommitdiff
path: root/editors/code
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge #7891bors[bot]2021-03-081-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7891: Improve handling of rustc_private r=matklad a=DJMcNab This PR changes how `rust-analyzer` handles `rustc_private`. In particular, packages now must opt-in to using `rustc_private` in `Cargo.toml`, by adding: ```toml [package.metadata.rust-analyzer] rustc_private=true ``` This means that depending on crates which also use `rustc_private` will be significantly improved, since their dependencies on the `rustc_private` crates will be resolved properly. A similar approach could be used in #6714 to allow annotating that your package uses the `test` crate, although I have not yet handled that in this PR. Additionally, we now only index the crates which are transitive dependencies of `rustc_driver` in the `rustcSource` directory. This should not cause any change in behaviour when using `rustcSource: "discover"`, as the source used then will only be a partial clone. However, if `rustcSource` pointing at a local checkout of rustc, this should significantly improve the memory usage and lower indexing time. This is because we avoids indexing all crates in `src/tools/`, which includes `rust-analyzer` itself. Furthermore, we also prefer named dependencies over dependencies from `rustcSource`. This ensures that feature resolution for crates which are depended on by both `rustc` and your crate uses the correct set for analysing your crate. See also [introductory zulip stream](https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/Fixed.20crate.20graphs.20and.20optional.20builtin.20crates/near/229086673) I have tested this in [priroda](https://github.com/oli-obk/priroda/), and it provides a significant improvement to the development experience (once I give `miri` the required data in `Cargo.toml`) Todo: - [ ] Documentation This is ready to review, and I will add documentation if this would be accepted (or if I get time to do so anyway) Co-authored-by: Daniel McNab <[email protected]>
| * | Document rustc_private in metadataDaniel McNab2021-03-081-1/+1
| | |
| * | Revert "Support disabling rustc build scripts"Daniel McNab2021-03-081-5/+0
| | | | | | | | | | | | This reverts commit ddce6bb282764692d53b719bff4c37e3512d4556.
| * | Support disabling rustc build scriptsDaniel McNab2021-03-081-0/+5
| | |
* | | Make code completion "just work" in more casesAleksey Kladov2021-03-081-1/+1
| | |
* | | Merge #7901bors[bot]2021-03-085-15/+42
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7901: Make extension respect http proxy settings r=matklad a=kamyuentse This patch makes vscode extension respect proxy settings when fetching release metadata and rust-analyzer binary. Co-authored-by: Kam Y. Tse <[email protected]>
| * | | Make extension respect http proxy settingsKam Y. Tse2021-03-075-15/+42
| |/ /
* / / Make group imports configurableasv2021-03-071-0/+5
|/ /
* | Migrate to user-centric config name for `cargo check` stuffAleksey Kladov2021-03-041-3/+3
| |
* | clean uo rustup linkcgiguere2021-03-011-1/+1
| |
* | add sponsor linkscgiguere2021-03-011-14/+17
| |
* | Add more information to VSCode extenstion READMECharles Giguere2021-03-011-1/+38
| | | | | | | | | | | | | | | | | | A lot of these are duplicated from the documentation or main README. While it's unfortunate to have duplicated information, the current VSCode page is very barebones and doesn't offer much confidence. This updated README offers a few more links and follows a structure similar to the official rust extension and other popular vscode extensions. The additions are, as much as possible specific to the vscode extension and not rust-analyzer as a LSP. The note about not using the official extension is also right there at the top because that's a common issue people have when trying it out. I added the sponsor section since it's common in other extensions README, but I'm not sure if it's necessary
* | Update vscode README with a small features listLukas Wirth2021-03-011-0/+28
|/
* Update our vscode npm packageskjeremy2021-02-232-1630/+1852
|
* Try to detect musl distros in the Code extensionLaurențiu Nicola2021-02-201-2/+12
|
* Remove Semantic Tokens flicker workaroundkjeremy2021-02-161-17/+0
| | | | | https://github.com/microsoft/vscode-languageserver-node/issues/576 has been closed with the latest vscode-languageclient release.
* vscode-languageclient 7.1.0-next.2kjeremy2021-02-161-14/+14
|
* Use npm 7.x package-lock.jsonkjeremy2021-02-161-10/+3270
|
* Start LSP 3.17 supportJeremy Kolb2021-02-143-22/+22
|
*-. Merge #7643 #7663bors[bot]2021-02-142-4/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7643: Automatically detect the rustc-src directory (fixes #3517) r=matklad a=bnjbvr If the configured rustcSource was not set, then try to automatically detect a source for the sysroot rustc directory. I wasn't sure how to do it in the case of the project.json file, though. 7663: Tolerate spaces in nix binary patching r=matklad a=CertainLach If path to original file contains space (I.e on code insiders, where default data directory is ~/Code - Insiders/), then there is syntax error evaluating src arg. Instead pass path as str, and coerce to path back in nix expression Co-authored-by: Benjamin Bouvier <[email protected]> Co-authored-by: Yaroslav Bolyukin <[email protected]>
| | * fix: tolerate spaces in nix binary patchingYaroslav Bolyukin2021-02-131-3/+3
| |/ |/| | | | | | | | | | | | | | | | | If path to original file contains space (I.e on code insiders, where default data directory is ~/Code - Insiders/), then there is syntax error evaluating src arg. Instead pass path as str, and coerce to path back in nix expression Signed-off-by: Yaroslav Bolyukin <[email protected]>
| * Allow automatically detect the rustc-src directory (fixes #3517).Benjamin Bouvier2021-02-131-1/+1
|/ | | | | If the configured rustcSource is set to "discover", try to automatically detect a source from the sysroot rustc directory.
* Merge #7625bors[bot]2021-02-104-8/+31
|\ | | | | | | | | | | | | | | | | 7625: Add **Copy Run Command Line** command for vscode r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Add **Copy Run Command Line** command for vscodeAleksey Kladov2021-02-104-8/+31
| | | | | | | | | | This is useful when you want to, e.g., run a specific test in a terminal with `--release`.
* | Merge #7591 #7622bors[bot]2021-02-108-26/+33
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7591: Fix/no floating promises r=matklad a=sahandevs closes #3515 - added `@typescript-eslint/no-floating-promises: error` rule - changed `"no-console": ["error"]` to `"no-console": ["error", { allow: ["warn", "error"] }]` (we at least log the error messages of the floating promises) - fixed lint/compile errors 7622: Resolve TupleStructPat in SourceAnalyzer::resolve_path r=Veykril a=Veykril Closes #7594 bors r+ Co-authored-by: Sahandevs <[email protected]> Co-authored-by: Lukas Wirth <[email protected]>
| * use await insteadSahandevs2021-02-094-31/+21
| |
| * fix errorsSahandevs2021-02-074-6/+11
| |
| * formatSahandevs2021-02-074-12/+12
| |
| * handle Thenable type rejectsSahandevs2021-02-074-12/+23
| |
| * handle promise catchesSahandevs2021-02-074-4/+4
| |
| * add no-floating-promises ruleSahandevs2021-02-071-1/+2
| |
| * remove unnecessarySahandevs2021-02-074-6/+6
| |
* | Fix highlighting of injected attributesAleksey Kladov2021-02-091-0/+44
|/
* Fix resolveCodeAction trying to edit files before creating themLukas Wirth2021-02-051-3/+3
|
* Update vscode for new statusEdwin Cheng2021-01-282-1/+7
|
* Add config option to ignore directoriesAleksey Kladov2021-01-261-0/+8
|
* Remove the need to manually sync config in package.jsonAleksey Kladov2021-01-261-5/+7
|
* Simplify file download codeLaurențiu Nicola2021-01-252-10/+1
|
* Merge #7409 #7421bors[bot]2021-01-252-0/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | 7409: Add References CodeLens. r=matklad a=vsrs Closes #5836 7421: Fix RA_LOG example in dev docs r=lnicola a=lnicola bors r+ Co-authored-by: vsrs <[email protected]> Co-authored-by: LaurenČ›iu Nicola <[email protected]>
| * Add References code lens.vsrs2021-01-232-0/+6
| | | | | | | | For Struct, Enum, Union and Trait symbols.
* | Code: reduce progress notification spamLaurențiu Nicola2021-01-251-7/+9
|/
* Download aarch64-unknown-linux-gnu from GitHubLaurențiu Nicola2021-01-171-0/+1
|
* Fix server path comparisonLaurențiu Nicola2021-01-141-1/+1
|
* Merge #7194bors[bot]2021-01-071-1/+6
|\ | | | | | | | | | | | | | | | | | | 7194: Don't update the server if managed by the user r=matklad a=lnicola Fixes #7187 CC @figsoda Co-authored-by: LaurenČ›iu Nicola <[email protected]>
| * Don't update the server if managed by the userLaurențiu Nicola2021-01-071-1/+6
| |
* | Use american spelling for configAleksey Kladov2021-01-071-1/+1
|/ | | | | | | | As per https://github.com/rust-analyzer/rust-analyzer/blob/171c3c08fe245938fb25321394233de5fe2abc7c/docs/dev/style.md#variable-naming Also implement config aliasing, for pain-free settings migrations in the future
* More maintainable configAleksey Kladov2021-01-061-0/+8
| | | | | | | Rather than eagerly converting JSON, we losslessly keep it as is, and change the shape of user-submitted data at the last moment. This also allows us to remove a bunch of wrong Defaults
* Rename extension configAleksey Kladov2021-01-042-2/+4
|
* Allow download of aarch64-pc-windows-msvc binariesLaurențiu Nicola2021-01-041-10/+9
|
* Merge #7068bors[bot]2021-01-034-0/+66
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7068: Add VSCode command to view the hir of a function body r=theotherphil a=theotherphil Will fix https://github.com/rust-analyzer/rust-analyzer/issues/7061. Very rough initial version just to work out where I needed to wire everything up. @matklad would you be happy merging a hir visualiser of some kind? If so, do you have any thoughts on what you'd like it show, and how? I've spent very little time on this thus far, so I'm fine with throwing away the contents of this PR, but I want to avoid taking the time to make this more polished/interactive/useful only to discover that no-one else has any interest in this functionality. ![image](https://user-images.githubusercontent.com/1974256/103236081-bb58f700-493b-11eb-9d12-55ae1b870f8f.png) Co-authored-by: Phil Ellison <[email protected]>