Commit graph

593 commits

Author SHA1 Message Date
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
bors[bot]
5b86ff3e91
Merge #7113
7113: Manual updates r=matklad a=tekul

Add some details on how to build the manual and some clarification on how to deal with "proc macro2 warnings.

For context, this arose from [this question](https://users.rust-lang.org/t/how-to-disable-rust-analyzer-proc-macro-warnings-in-neovim/53150) on users.rust-lang.org.

Co-authored-by: Luke Taylor <tekul.hs@gmail.com>
2021-01-03 18:22:07 +00:00
bors[bot]
1cc73d60bb
Merge #7068
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 <phil.j.ellison@gmail.com>
2021-01-03 09:03:15 +00:00
Phil Ellison
db53db8046 Address review suggestion, fix tidy tests 2021-01-01 19:25:18 +00:00
Mara Bos
4833972067 Add support for Rust 2021. 2021-01-01 17:22:23 +01:00
Luke Taylor
6168a6f1ca Expand contributing "tip" in manual.adoc
- Add link to asciidoc website
- Explain how to create the generated adoc files from the source code
- How to run asciidoctor to generate the manual
2020-12-31 22:23:06 +00:00
Aleksey Kladov
9c0c5f8e37 Improve commit message style 2020-12-28 13:43:07 +03:00
Heyward Fann
b1ec22c879
Update manual.adoc 2020-12-24 11:38:01 +08:00
Aleksey Kladov
7c07bb6381 Document, how to view config in effect 2020-12-23 10:47:05 +03:00
Rüdiger Herrmann
9f070531a6 Clean up descriptions for settings
Use two consecutive newlines (`\n\n`) to actually continue text on a
new line.

Use proper markup to reference related settings.

Consistently format references to files, editor commands, command line
arguments, files, etc. as `code`.

Fix typos, add missing full-stops, add missing default values.
2020-12-22 14:51:17 +01:00
Laurențiu Nicola
6fbe22bfbb Split lines between sentences 2020-12-20 19:31:08 +02:00
Laurențiu Nicola
0ecb224d75 Document the version requirements for building from source 2020-12-20 17:10:54 +02:00
Aleksey Kladov
675390e012
Update docs/dev/README.md
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2020-12-16 18:07:21 +03:00
Aleksey Kladov
6e9023c763 Document new permissions 2020-12-16 18:04:24 +03:00
Aleksey Kladov
51f42db1d5 Add # to canonical test example 2020-12-15 11:49:22 +03:00
Aleksey Kladov
804ae284b9 Link config source 2020-12-14 15:06:24 +03:00
Christian Authmann
78d43eb1e8 Docs: Explain manual installation in VS Code 2020-12-13 15:21:11 +01:00
Aleksey Kladov
e179ed6f53 Use natural trait ordering in derive completion
derive(Clone, Copy) reads better than derive(Copy, Clone).

However, we preserve the reverse ordering in the lookup text for
sorting purposes. That way, it's convenient to type just `Ord` to
derive everything.
2020-12-11 15:45:53 +03:00
Laurențiu Nicola
3ecdb778c2 Improve docs for building from source 2020-12-10 19:31:46 +02:00
Aleksey Kladov
17f236c2b0 Normalize spelling to American English 2020-12-10 17:51:56 +03:00
Josh Stone
bb412f314d
Fix a typo in manual.adoc 2020-12-09 11:25:05 -08:00
Aleksey Kladov
0890512e1c Include config into the manual 2020-12-09 15:31:10 +03:00
Daiki Ihara
4f008bf8b2 fix typo of README in dev 2020-12-09 00:30:00 +09:00
Aleksey Kladov
3e00bfce2b Document statelessness invariant 2020-12-03 18:08:27 +03:00
Jonas Schievink
d171838d63 More accurately place proc-macro diagnostic 2020-11-27 16:29:40 +01:00
Jonas Schievink
0432aa0ed7 Publish diagnostics for macro expansion errors 2020-11-27 13:50:22 +01:00
Jakob Hellermann
7c6c812a74
fix typos in syntax.md 2020-11-17 15:16:52 +01:00
kjeremy
233fdb12ce Latest LSP 3.16 protocol
Pulls in https://github.com/gluon-lang/lsp-types/pull/186
2020-11-16 15:10:13 -05:00
Anatol Liu
b1b7727e04 add open Cargo.toml action 2020-11-12 17:48:07 -08:00
Aleksey Kladov
7d2eb000b0 Switch to upstream protocol for resolving code action
Note that we have to maintain custom implementation on the client
side: I don't see how to marry bulitin resolve support with groups and
snippets.
2020-11-10 18:48:46 +01:00
Aleksey Kladov
9b1d4cc8ab don\t indent tests 2020-11-06 20:29:41 +01:00
Aleksey Kladov
412d6b3db5
Update docs/dev/style.md
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-11-02 12:17:34 +01:00
Aleksey Kladov
4318828f21 Document doer object anti-pattern 2020-11-02 12:13:59 +01:00
Dave Lage
e6419350de
docs: Update Neovim nvim-lspconfig repository link 2020-10-29 11:08:12 -04:00
Laurențiu Nicola
f94d0252b3 Update client install command in dev docs 2020-10-27 09:49:57 +02:00
Jonas Schievink
5350c15e27 Fix name of InactiveCode diagnostic 2020-10-23 19:31:11 +02:00
Jonas Schievink
93dc6f511b Diagnose #[cfg]s in bodies 2020-10-23 19:27:04 +02:00
bors[bot]
edf46a13a6
Merge #6325 #6327
6325: Add generated diagnostic docs to the manual r=matklad a=flodiebold

It seemed that we're not actually including the generated diagnostic docs anywhere yet? So I added something to the manual. This is completely untested though.

6327: Update debugging.md r=matklad a=stanciuadrian

`on_task` is no longer there.
I have used `on_request` instead.

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Co-authored-by: Adrian Stanciu <stanciu.adrian@gmail.com>
2020-10-22 18:15:48 +00:00
Adrian Stanciu
5f5b1ffdd1
Update debugging.md 2020-10-22 21:04:09 +03:00
Florian Diebold
b59a0dbf6a Add generated diagnostic docs to the manual 2020-10-22 19:42:01 +02:00
Benjamin Coenen
aa031e91f4 add completions for clippy lint in attributes
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-10-20 21:29:31 +02:00
Aleksey Kladov
f753c3ecd2 Support Display name in project.json 2020-10-20 17:13:15 +02:00
Aleksey Kladov
a261c7c539 Document logging of project model 2020-10-19 16:04:22 +02:00
Igor Aleksanov
d718366567 Document change of 'cargo' Runnable kind in lsp-extensions.md 2020-10-16 20:58:57 +03:00
bors[bot]
4271e4c703
Merge #6245
6245: Update GNOME Builder docs r=lnicola a=lnicola



Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-10-16 12:59:11 +00:00
Aleksey Kladov
0c67edc0f7 Expand code order section 2020-10-16 12:50:09 +02:00
Laurențiu Nicola
b19013feaa Update GNOME Builder docs 2020-10-15 20:00:09 +03:00
Aleksey Kladov
86cc93ebe3 Document awkward names 2020-10-15 18:14:30 +02:00
Aleksey Kladov
dedfaa3844 Cleanup alloc advice 2020-10-15 12:21:38 +02:00
Aleksey Kladov
9c285b0341 Style: default over new 2020-10-14 20:02:03 +02:00
Aleksey Kladov
190011168d Introduce S-actionable and S-unactionable labels
I've noticed that a significant fraction of issues are inert.
They are valid, acknowledged and useful, but effectively can't be
fixed for variety of reasons (no reproduction, dependencies on some
other issues, no review capacity, etc).

Marking issues that can be fixed by just applying some elbow grease
seems useful!
2020-10-14 15:20:31 +02:00
Aleksey Kladov
d852189e56 Add reminder to update lsp-extensions.md 2020-10-14 13:30:06 +02:00
Zac Pullar-Strecker
f1decfc110 Fix send->sent typo 2020-10-08 15:04:57 +13:00
Zac Pullar-Strecker
62b76e7004 Document the protocol extension 2020-10-08 15:04:20 +13:00
Aleksey Kladov
5359e8f742 minor 2020-10-07 13:11:33 +02:00
Aleksey Kladov
1688e481b3 minor 2020-10-07 13:03:13 +02:00
Aleksey Kladov
6976494781 Add comparisons guideline to style 2020-10-07 12:57:49 +02:00
Aleksey Kladov
fdf2f6226b Reorg style 2020-10-07 12:50:46 +02:00
Adrian Stanciu
f7641b2e35
Update manual.adoc 2020-10-07 00:44:32 +03:00
Aleksey Kladov
0599e64bb2 Document Clippy strategy 2020-10-02 10:13:58 +02:00
Laurențiu Nicola
2233749692 Improve grammar and fix code example in style guide 2020-10-01 21:02:39 +03:00
Aleksey Kladov
af8063fe37 Extend **Status** command to also show dep info for the file
This should help with troubleshooting wrong project configuration
2020-09-29 22:13:23 +02:00
Aleksey Kladov
b069c1c69a More style advice 2020-09-29 14:42:09 +02:00
Masaki Hara
5cca4c9214
VS Code + WSL: describe binary location
It looks like VS Code server chooses a different location for `globalStorage`.
2020-09-21 23:07:54 +09:00
Yusuke Tanaka
4530b717cb
Fix typo 2020-09-21 01:44:38 +09:00
Yusuke Tanaka
203358a0d5
Fix typo 2020-09-21 00:53:14 +09:00
Jonas Schievink
888cb378b9 docs: suggest disabling the official extension 2020-09-18 18:26:58 +02:00
Aleksey Kladov
4f5d2ffac2 fmt import 2020-08-28 16:53:49 +02:00
bors[bot]
a0324a59e9
Merge #5879
5879: Update mentions of 'ra_vfs' in architecture doc r=matklad a=rherrmann

Adjust the paragraph about `ra_vfs` to point to the `vfs` crate that is used now.


Co-authored-by: Rüdiger Herrmann <ruediger.herrmann@gmx.de>
2020-08-26 13:38:31 +00:00
bors[bot]
d58a3a277a
Merge #5885
5885: Make inlay hints colors more configurable r=matklad a=Veetaha

**[BREAKING CHANGE]**

Tackles https://github.com/rust-analyzer/rust-analyzer/issues/5337#issuecomment-680018601 and generally related to #5337.

Added `foreground/background` color configurations with optional more specific overrides `foreground.(type|parameter|chaining)Hints`.

One problem I see is that the config keys are long and don't fit into the on-hover hints in the `settings.json` file entirely...

<details>
<summary>Demo</summary>

![demo](https://user-images.githubusercontent.com/36276403/91238334-77fc3b00-e745-11ea-836b-2822015ece98.gif)

</details>

Co-authored-by: Veetaha <veetaha2@gmail.com>
2020-08-26 13:07:06 +00:00
Aleksey Kladov
a53c6f6fee Allow redirecting logs to a specific file
There's a surprising lack of crates which are like env_logger, but
also allow writing to a file. Let's write our own then!
2020-08-26 13:20:46 +02:00
Veetaha
5b9a882edc Make inlay hints colors more configurable 2020-08-26 02:53:42 +03:00
Aleksey Kladov
189521a4db Add sysroot shortcut to rust-project.json 2020-08-25 19:41:56 +02:00
Rüdiger Herrmann
3dbe062741
Update mentions of 'ra_vfs' in architecture doc
Adjust the paragraph about `ra_vfs` to point to the `vfs` crate that is used now.
2020-08-25 17:57:29 +02:00
Aleksey Kladov
3a72afed8c Improve logging 2020-08-25 11:43:21 +02:00
bors[bot]
951c7c157a
Merge #5852
5852: Add Early Return rule to style r=matklad a=matklad

bors r+

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-24 10:56:04 +00:00
Aleksey Kladov
fc3e591bdb Avoid monomorphization 2020-08-24 12:49:36 +02:00
Aleksey Kladov
d7ece3028d Add Early Return rule to style 2020-08-24 12:22:28 +02:00
Aleksey Kladov
0c602bb963 Encourage rebases more 2020-08-18 18:52:12 +02:00
Aleksey Kladov
0d201638d9 Add default names section 2020-08-18 14:31:50 +02:00
bors[bot]
6826dd044a
Merge #5782
5782: Fix StatusNotification r=matklad a=vsrs

This PR fixes the following:

As per specification `params` property in [NotificationMessage ](https://microsoft.github.io/language-server-protocol/specifications/specification-current/#notificationMessage) should be `array | object` while RA uses `"loading" | "ready" | "invalid" | "needsReload"`.

Co-authored-by: vsrs <vit@conrlab.com>
2020-08-17 14:23:03 +00:00
Aleksey Kladov
6a4c9fc9fd Don't make fields private unless you have to 2020-08-17 16:11:29 +02:00
vsrs
1eed036a6e Fix StatusNotification 2020-08-17 14:56:27 +03:00
Aleksey Kladov
200161c734 Document the most important CI invariant 2020-08-14 12:27:15 +02:00
Aleksey Kladov
1b0c7701cc Rename ra_ide -> ide 2020-08-13 17:58:27 +02:00
Aleksey Kladov
fc34403018 Rename ra_assists -> assists 2020-08-13 17:33:38 +02:00
Aleksey Kladov
ae71a631fd Rename ra_hir -> hir 2020-08-13 16:36:55 +02:00
Aleksey Kladov
ed20a857f4 Rename ra_db -> base_db 2020-08-13 16:29:33 +02:00
Aleksey Kladov
a1c187eef3 Rename ra_syntax -> syntax 2020-08-12 18:30:53 +02:00
Aleksey Kladov
50a02eb359 Rename ra_parser -> parser 2020-08-12 17:14:23 +02:00
Tim Weis
a8beb79a16
Update README.md
Fixed formatting.
2020-08-11 01:01:25 +02:00
Laurențiu Nicola
ff60fdc315 Fix typos in syntax.md 2020-08-10 21:31:38 +03:00
Aleksey Kladov
33447e2855
Update docs/dev/README.md
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-08-05 14:01:51 +02:00
Aleksey Kladov
36d75f3105 Document release process 2020-08-05 13:50:47 +02:00
Aleksey Kladov
e96bfd812a Tweak style wording 2020-08-02 14:59:18 +02:00
Aleksey Kladov
edee52fa57 reorg docs 2020-08-02 14:37:50 +02:00
Aleksey Kladov
389ad925ff Document crates.io deps policy 2020-07-31 17:17:32 +02:00
Aleksey Kladov
1142112c70 Rename FnDef -> Fn 2020-07-30 15:16:05 +02:00
David Lattimore
7d80a49e89 README: Add some instructions for running typescript tests and linter. 2020-07-25 09:35:33 +10:00
Aleksey Kladov
280096688b minor 2020-07-24 22:18:26 +02:00
David Lattimore
3975952601 SSR: Pass current file position through to SSR code.
In a subsequent commit, it will be used for resolving paths.
2020-07-24 21:34:00 +10:00
bors[bot]
7bada8a76d
Merge #5473
5473: Changes to rust-project.json r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-23 13:58:45 +00:00
bors[bot]
e72c6220cd
Merge #5488
5488: Update manual.adoc r=matklad a=Veetaha



Co-authored-by: Veetaha <veetaha2@gmail.com>
2020-07-22 15:04:11 +00:00
Jeremy Kolb
9c0ead30b9
Clarify initializationOptions 2020-07-22 10:05:36 -04:00
Veetaha
6faf47c8fe
Update manual.adoc 2020-07-22 16:46:19 +03:00
Aleksey Kladov
deed44a472 Remove support for jemalloc
We only used it for measuring memory usage, but now we can use glibc's
allocator for that just fine
2020-07-22 13:40:45 +02:00
Aleksey Kladov
eb613c74da
Apply suggestions from code review
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-07-21 17:09:56 +02:00
Aleksey Kladov
ca2a4ccf05 Document new rust-project.json format 2020-07-21 15:43:56 +02:00
Laurențiu Nicola
daab8b2fd0 Remove insta dep 2020-07-21 13:11:51 +03:00
bors[bot]
4759a39f06
Merge #5407
5407: Mentioned problem matchers and running cargo-watch as a VS Code Task r=matklad a=Michael-F-Bryan

See https://github.com/rust-analyzer/rust-analyzer/issues/3596#issuecomment-658887055.

Co-authored-by: Michael-F-Bryan <michaelfbryan@gmail.com>
Co-authored-by: Michael Bryan <Michael-F-Bryan@users.noreply.github.com>
2020-07-16 17:03:39 +00:00
Michael Bryan
5226e886b0
Update docs/user/manual.adoc
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-07-16 23:30:19 +08:00
Michael Bryan
60a243b375
Update docs/user/manual.adoc
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-07-16 23:30:11 +08:00
Michael Bryan
9daa6b5cfa
Update docs/user/manual.adoc
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-07-16 23:30:02 +08:00
Aleksey Kladov
3b51a68236 More prominent link to the manual 2020-07-16 15:03:53 +02:00
Michael-F-Bryan
a0eaadee55
Mentioned problem matchers and running cargo-watch as a VS Code Task 2020-07-16 20:46:54 +08:00
Aleksey Kladov
c88d85bbb4
Update docs/dev/README.md 2020-07-07 11:23:59 +02:00
Laurențiu Nicola
8ab0c7ffd3 Don't ping people in PRs 2020-07-06 13:59:24 +03:00
vsrs
188d24024c
Fix tag level 2020-07-03 16:07:28 +03:00
vsrs
8b2a44dc3f
remove --- 2020-07-03 16:03:01 +03:00
vsrs
fd94a10be1
Add docs 2020-07-03 16:01:13 +03:00
Aleksey Kladov
3ef7676076 Implement StatusBar 2020-07-02 15:32:14 +02:00
Aleksey Kladov
c9f878962a Add reload workspace command 2020-07-01 14:57:59 +02:00
Aleksey Kladov
991850bc3c Unify magic env var name 2020-07-01 12:31:03 +02:00
Aleksey Kladov
4484908a86 Rewrite goto definition tests 2020-06-30 13:03:08 +02:00
Laurențiu Nicola
95d67ec401 Use more of FxHash* 2020-06-29 18:07:52 +03:00
LeSeulArtichaut
44a164b338
Escape space in path for MacOS binary location 2020-06-27 14:13:14 +02:00
Aleksey Kladov
a1c327ec1c Document test minimality 2020-06-26 18:41:11 +02:00
Aleksey Kladov
e6c61d5072 Cleanup project.json deserialization 2020-06-24 16:16:52 +02:00
bors[bot]
c0b9ae5503
Merge #5004
5004: Fix panic in split/merge import assists r=matklad a=lnicola

Fixes #4368 #4905

Not sure if this is the best solution here. Maybe the `make` functions should be fallible? We generally seem to be playing whack-a-mole with panics in assists, although most of them are `unwrap`s in the assist code.

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-06-23 14:55:03 +00:00
Laurențiu Nicola
76ddface08 Fix panic in split and merge import assists 2020-06-23 16:51:07 +03:00
Günther Wagner
837d6013b5
Update docs/user/manual.adoc
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-06-23 07:18:46 +02:00
Günther Wagner
965900c88c
Update manual.adoc
GNOME Builder (Nightly) supports now rust-analyzer
2020-06-22 22:38:43 +02:00
okaneco
3910ea5cbf Fix typos in docs/dev/README.md
Small grammar and spelling changes
2020-06-16 10:44:56 -04:00
Aleksey Kladov
b5c4f2faa2 Update parser tests with env var 2020-06-15 11:02:17 +02:00
Aleksey Kladov
5413a2f962 Var naming 2020-06-15 10:33:17 +02:00
Aleksey Kladov
be0bb857c1 Discourage allocation 2020-06-13 14:27:23 +02:00
Jacek Generowicz
f280407d73 Fix parser test directory name in dev docs 2020-06-10 20:32:29 +02:00
Aleksey Kladov
1538206609 Explain inline tests 2020-06-10 14:12:08 +02:00
Laurențiu Nicola
e3663d60bf
Dev docs nits 2020-06-08 18:50:27 +03:00
Aleksey Kladov
4968321706 Don't @ people in commit messages 2020-06-08 13:19:32 +02:00
Aleksey Kladov
cc07c82fef Preconditions style 2020-06-08 12:54:48 +02:00
Aleksey Kladov
ee8dec5dc1 IDE API 2020-06-08 12:52:28 +02:00
Aleksey Kladov
81ffe973ac Document certain invariants 2020-06-06 19:54:41 +02:00
Aleksey Kladov
ae1acbd09c Document import style 2020-06-06 19:32:45 +02:00
vsrs
da7ec4b339 Add hover actions LSP extension documentation. 2020-06-05 15:00:28 +03:00
Veetaha
41ae7ed79f
Bufgix 2020-06-04 01:48:47 +03:00
Mikhail Rakhmanov
6a0083a519 Merge branch 'master' into compute-lazy-assits
# Conflicts:
#	crates/rust-analyzer/src/main_loop/handlers.rs
#	crates/rust-analyzer/src/to_proto.rs
2020-06-03 19:26:01 +02:00
Mikhail Rakhmanov
1f7de306f5 Add documentation 2020-06-03 18:57:50 +02:00
Aleksey Kladov
5315934d88 Don't store generated docs in the repo 2020-06-03 18:26:50 +02:00