Aleksey Kladov
79b4c89b89
Update docs/dev/README.md
...
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2021-03-22 15:08:04 +03:00
Aleksey Kladov
aab148f943
Document patch policy
2021-03-22 14:59:56 +03:00
Aleksey Kladov
2469af3017
Apply suggestions from code review
...
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2021-03-22 13:56:13 +03:00
Aleksey Kladov
2b427fa3dd
Update docs/user/manual.adoc
...
Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>
2021-03-22 13:55:16 +03:00
Aleksey Kladov
63e083122c
Document our security stance
...
changelog: feature
2021-03-22 13:53:00 +03:00
Aleksey Kladov
670964d802
Update docs/user/manual.adoc
2021-03-18 18:57:44 +03:00
Mickael Istria
c0425cbdbd
Update info about Eclipse Corrosion
2021-03-18 16:22:54 +01:00
ivan770
7d60458495
Item up and down movers
2021-03-18 11:22:27 +02:00
Aleksey Kladov
30dea3a727
Prefer match to if let else
2021-03-16 10:51:05 +03:00
Aleksey Kladov
469b739c28
Enable proc-macros by default
2021-03-15 18:19:08 +03:00
Laurențiu Nicola
dd9974c59d
Fix cargo xtask lint
references
2021-03-14 15:24:34 +02:00
bors[bot]
7accf6bc37
Merge #7799
...
7799: Related tests r=matklad a=vsrs
![tests](https://user-images.githubusercontent.com/62505555/109397453-a9013680-7947-11eb-8b11-ac03079f7645.gif )
This adds an ability to look for tests for the item under the cursor: function, constant, data type, etc
The LSP part is bound to change. But the feature itself already works and I'm looking for a feedback :)
Co-authored-by: vsrs <vit@conrlab.com>
2021-03-13 13:50:35 +00:00
Lukas Wirth
ebf4448f78
Fix remaining references to cargo xtask codegen
2021-03-12 15:10:33 +01:00
vsrs
49cdb2452a
Fix LSP extensions documentation
2021-03-11 17:59:27 +03:00
Aleksey Kladov
37b7b56821
Make code less surprising
...
Theres no reason to have literal `\n\n` in the source code
2021-03-09 14:47:42 +03:00
bors[bot]
844b7f7411
Merge #7927
...
7927: Add more documentation for rustc_private r=matklad a=jyn514
Co-authored-by: Joshua Nelson <jyn514@gmail.com>
2021-03-09 11:22:37 +00:00
Aleksey Kladov
5b2b310827
Clarify that all caps are experimental
2021-03-09 12:02:20 +03:00
Joshua Nelson
c7b0914b3f
Add more documentation for rustc_private
2021-03-08 16:56:42 -05:00
Laurențiu Nicola
fc9eed4836
Use upstream cov-mark
2021-03-08 22:19:44 +02:00
Aleksey Kladov
9faf8dd69a
Hygiene is an internal implementation detail of the compiler
2021-03-08 22:14:52 +03:00
Aleksey Kladov
1eb61203b7
Make code generation
just work
...
Contributors don't need to learn about `cargo xtask codegen` if `cargo
test` just does the right thing.
2021-03-08 21:45:37 +03:00
bors[bot]
d57c9f7980
Merge #7891
...
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 <36049421+DJMcNab@users.noreply.github.com>
2021-03-08 16:51:20 +00:00
Daniel McNab
20007fd3a8
Document rustc_private in metadata
2021-03-08 16:47:40 +00:00
Daniel McNab
bbecea03fd
Revert "Support disabling rustc build scripts"
...
This reverts commit ddce6bb282
.
2021-03-08 16:37:52 +00:00
Aleksey Kladov
c7b5d6be4c
Make code completion "just work" in more cases
2021-03-08 14:57:56 +03:00
Daniel McNab
ddce6bb282
Support disabling rustc build scripts
2021-03-08 09:05:19 +00:00
bors[bot]
d54e1157b6
Merge #7889
...
7889: Make group imports configurable r=lnicola a=asv1
Co-authored-by: asv <asv7c2@gmail.com>
2021-03-07 08:24:02 +00:00
asv
96fc01a30b
Make group imports configurable
2021-03-07 10:15:17 +02:00
Florian Diebold
d6094c70fb
Add a line about code action commands to the CoC section of the docs
2021-03-06 11:35:04 +01:00
bors[bot]
16a76aa158
Merge #7868
...
7868: Migrate to user-centric config name for `cargo check` stuff r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-03-04 12:39:36 +00:00
Aleksey Kladov
3d80e0a154
Migrate to user-centric config name for cargo check
stuff
2021-03-04 15:38:53 +03:00
Aleksey Kladov
e15621482c
Clarify comparison rule
2021-03-03 11:23:05 +03:00
Aleksey Kladov
979c26e1ae
Axe pre-commit
2021-03-01 21:30:21 +03:00
Vincent Esche
c4e2f32d73
Fixed remaining references to AnalysisChange
(now: Change
)
...
(The type was renamed/moved in 8716c4cec3
)
2021-02-28 12:57:41 +01:00
vsrs
5e88436517
Update lsp-extensions.md
2021-02-27 21:07:58 +03:00
boxdot
9b78a6f6d2
Fix typo.
2021-02-24 11:56:48 +01:00
azzamsa
ae50b18503
Fix typos
2021-02-20 17:53:19 +07:00
Aleksey Kladov
3f09e3fba6
document offsets
2021-02-16 19:22:09 +03:00
bors[bot]
d50a37d3aa
Merge #7643 #7663
...
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 <public@benj.me>
Co-authored-by: Yaroslav Bolyukin <iam@lach.pw>
2021-02-14 15:42:07 +00:00
ivan770
13e9d9809a
Remove CodeLensResolveData mention from lsp-extensions.md
2021-02-13 19:36:29 +02:00
Benjamin Bouvier
4a6e602c94
Allow automatically detect the rustc-src directory ( fixes #3517 ).
...
If the configured rustcSource is set to "discover", try to automatically
detect a source from the sysroot rustc directory.
2021-02-13 18:20:46 +01:00
ivan770
185da286d2
Moved CodeLens to ide crate
2021-02-13 13:07:47 +02:00
Laurențiu Nicola
8814d1368d
Include a commit log summary in the changelog
2021-02-12 19:53:58 +02:00
bors[bot]
777d936c17
Merge #7653
...
7653: Document config pattern r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-02-12 15:10:50 +00:00
Aleksey Kladov
799810eaaa
Document config pattern
2021-02-12 18:10:16 +03:00
Peter Wischer
f18fc5a0ae
fix nightly warning legacy_derive_helpers
...
see https://github.com/rust-lang/rust/issues/79202
2021-02-12 13:57:38 +01:00
Aleksey Kladov
d932812134
Use track caller in test documentation
2021-02-10 11:26:48 +03:00
Aleksey Kladov
4b1279d0b1
Infra for "unit" benchmarking
2021-02-09 20:25:39 +03:00
Aleksey Kladov
ad7b0f670a
Add emacs guide
2021-02-08 19:08:02 +03:00
bors[bot]
433ad23988
Merge #7592
...
7592: [Doc] Note about Eclipse IDE support r=lnicola a=mickaelistria
Co-authored-by: Mickael Istria <mistria@redhat.com>
2021-02-08 09:16:01 +00:00
Mickael Istria
7e0854ec57
[Doc] Note about Eclipse IDE support
2021-02-08 09:52:46 +01:00
Ilya Bobyr
9ffe4ca26c
Vim docs: vim-lsp with initial configuration.
...
`vim-lsp` is another popular LSP client for Vim. And, as there is no
`rust-analyzer` specific UI, it is non-trivial to figure out how the
initial configuration is performed.
2021-02-07 20:24:56 -08:00
Ilya Bobyr
6781692732
Explain how initial configuration is sent over LSP.
2021-02-07 20:24:56 -08:00
Aleksey Kladov
cbebb70313
Add a section on entry points
2021-02-07 10:58:59 +03:00
Erick Tovar
a423a5196c
Fixing architecture image on dark theme
2021-02-07 10:57:39 +03:00
Edwin Cheng
a0475f10d8
Remove redunacny
2021-02-07 12:53:54 +08:00
Edwin Cheng
542e35e397
More information for mbe
2021-02-07 12:51:30 +08:00
Edwin Cheng
504a54b222
Update architecture.md for mbe and proc-macro
2021-02-07 12:31:33 +08:00
Adam Tuck
c2064e8bcf
Update architecture.md
...
Typo
2021-02-06 14:40:23 -08:00
kjeremy
8ff69055b9
Do not overwrite lock file
...
Use `npm ci` instead of `npm install`. `npm install` will overwrite
the lock file if you have a newer npm version than the one that
generated the package-lock.json
2021-02-05 10:57:36 -05:00
Aleksey Kladov
648d99537c
Add howtos
2021-02-05 17:45:14 +03:00
Aleksey Kladov
06aa34cd10
More architecture.md
2021-02-04 13:27:34 +03:00
Kushagra Gupta
b75e85998d
typo fixes
2021-02-03 21:30:42 +05:30
Kushagra Gupta
ed35e516b1
Grammar fixes
...
I think line 235 is still wrong, but I am not sure.
Is the `crated/tt` in line 252 supposed to be `crates/tt`?
2021-02-03 21:05:21 +05:30
Lukas Wirth
f82ce500a9
Fix spelling mistakes in docs/dev
2021-02-03 13:46:51 +01:00
Aleksey Kladov
1008aaae58
Make architecture more informative
...
Call out boundaries and invariants
2021-02-03 14:26:23 +03:00
Aleksey Kladov
283c3b0133
add useless types to the styleguide
2021-02-02 15:41:57 +03:00
Laurențiu Nicola
84c324b3dd
Improve nvim-lsp setup instructions
2021-02-01 20:20:15 +02:00
Laurențiu Nicola
5e61d62fdc
Explain what to do if a release fails
2021-02-01 16:46:23 +02:00
Edwin Cheng
d069ef60b6
Update lsp-extension.md hash
2021-01-29 01:32:31 +08:00
Edwin Cheng
edcafe7865
Update doc
2021-01-29 01:04:14 +08:00
bors[bot]
0ebf548ab7
Merge #7451
...
7451: rust-analyzer.files.excludeDirs r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-27 15:48:35 +00:00
bors[bot]
fc08fdaf5a
Merge #7457
...
7457: Add no-buffering file logging and wait for a debugger option. r=vsrs a=vsrs
Adds two command line flags: `--no-buffering` and `--wait-dbg`.
Not sure if someone else needs this, but personally I found both flags extremely useful trying to figure out why RA does not work with Visual Studio. Or better to say why Visual Studio does not work with RA.
Co-authored-by: vsrs <vit@conrlab.com>
2021-01-26 22:37:11 +00:00
Aleksey Kladov
d35bda6429
Make always-assert crate reusable
2021-01-26 22:13:42 +03:00
Aleksey Kladov
2870e70163
Add config option to ignore directories
2021-01-26 16:45:54 +03:00
Aleksey Kladov
c04b561e7e
Remove the need to manually sync config in package.json
2021-01-26 16:22:24 +03:00
Aleksey Kladov
2be55703d1
Document design label
2021-01-26 14:18:28 +03:00
vsrs
185cd736a6
Add RA_WAIT_DBG and docs
2021-01-25 17:46:03 +03:00
Laurențiu Nicola
f0cffb66b3
Fix typo in style guide
2021-01-25 14:14:43 +02:00
bors[bot]
83231dd987
Merge #7409 #7421
...
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 <vit@conrlab.com>
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-01-25 11:18:58 +00:00
Laurențiu Nicola
83fd639829
Fix RA_LOG example in dev docs
2021-01-25 13:18:24 +02:00
vsrs
3618c4e0d3
Add References code lens.
...
For Struct, Enum, Union and Trait symbols.
2021-01-23 16:56:20 +03:00
Aleksey Kladov
e54a398bfb
Promote marks
2021-01-22 17:58:00 +03:00
Aleksey Kladov
4c92ef03ac
Style: use the right string
2021-01-22 15:29:31 +03:00
Aleksey Kladov
e5c5c0a040
Include countme
crate to count important data structures.
2021-01-21 19:30:52 +03:00
Aleksey Kladov
74f8201586
Avoid intermediate collections
2021-01-20 14:49:29 +03:00
Aleksey Kladov
724059569b
Don't show runnable suggestions for other files
...
It't be actually great to have these once we have run anything dialog,
but for run the thing at point it makes sense to show a limited set.
2021-01-20 14:30:50 +03:00
Aleksey Kladov
8dc68ecdfc
Introduce more appropriate assertion mechanism
...
rust-analyzer is a long-running program, so we *should* handle assertion
failures.
See also https://www.sqlite.org/assert.html .
2021-01-14 18:25:19 +03:00
Aleksey Kladov
2d0464a6f3
Encourage gifs
2021-01-11 16:29:29 +03:00
Laurențiu Nicola
a7db8abab7
Use T! for bool keywords
2021-01-10 17:47:12 +02:00
Aleksey Kladov
8f994dda68
typo
2021-01-07 20:27:22 +03:00
Aleksey Kladov
5aed769afe
Styleguide readability
2021-01-07 20:11:55 +03:00
Aleksey Kladov
eb710a63ca
Document std::ops
style
2021-01-07 19:27:47 +03:00
bors[bot]
b821264f86
Merge #7195
...
7195: Update remaining serverPath references r=lnicola a=lnicola
Fixes https://github.com/rust-analyzer/rust-analyzer/pull/7156#issuecomment-755487667
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-01-07 15:30:23 +00:00
Laurențiu Nicola
56497ce925
Update remaining serverPath references
2021-01-07 17:06:11 +02:00
bors[bot]
7967ce85cf
Merge #7184
...
7184: Changes Cursor Marker To $0 r=matklad a=kevaundray
Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
2021-01-07 12:27:17 +00:00
Kevaundray Wedderburn
72b9a4fbd3
Change <|> to $0 - Rebase
2021-01-07 12:09:23 +00:00
Aleksey Kladov
037caec62c
Use american spelling for config
...
As per
171c3c08fe/docs/dev/style.md (variable-naming)
Also implement config aliasing, for pain-free settings migrations in the future
2021-01-07 15:07:19 +03:00
Aleksey Kladov
f7a15b5cd1
More maintainable config
...
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
2021-01-06 15:39:28 +03:00
Aleksey Kladov
d7741d1610
Allow #anchor
linking of config options
2021-01-05 13:09:06 +03:00