Aleksey Kladov
0db4f3f6a4
internal: ensure consistent passing for config params
...
We pass "context" parametes first, so configs should be on the left.
"Bigger" context wins, so configs goes after db.
2021-07-06 00:00:39 +03:00
Aleksey Kladov
f34762abb7
internal: better factoring for to_proto::completion
...
One source completion can produce up to two lsp completions.
Additionally, `preselct` and `sort_text` are global properties of the
whole set of completions, so the right granularity here is to convert
many completions.
As a side-benefit, we no loger allocate intermediate vec.
2021-07-04 14:08:33 +03:00
Aleksey Kladov
3be9ebe2c3
minor: style
2021-07-04 12:48:29 +03:00
Aleksey Kladov
58d2ece88a
internal: overhaul code generation
...
* Keep codegen adjacent to the relevant crates.
* Remove codgen deps from xtask, speeding-up from-source installation.
This regresses the release process a bit, as it now needs to run the
tests (and, by extension, compile the code).
2021-07-03 22:11:03 +03:00
Jonas Schievink
5f13fb9db9
Add "View Crate Graph (Full)"
2021-07-02 00:10:33 +02:00
bors[bot]
37dc2dfada
Merge #9348
...
9348: output to log file if RA_LOG_FILE is defined in environment r=rezural a=rezural
This adds a check for RA_LOG_FILE, and logs to that if defined. It currently overrides flags.log_file. If this is undesirable, I will add a check.
Co-authored-by: rezural <rezural@protonmail.com>
2021-06-21 21:42:02 +00:00
rezural
ceeee5e3c6
add documentation of RA_LOG_FILE
2021-06-22 07:28:33 +10:00
rezural
530ee4ff8a
add note about passing cfg(debug_assertions)
...
add note about passing cfg(debug_assertions) to rustc on build. The server will not spin without this arcane hack
2021-06-20 11:23:20 +10:00
Aleksey Kladov
3f4ad44082
internal: document that we don't #[ignore] tests
2021-06-15 11:46:47 +03:00
Jade
e23cfeac71
Fix typo in env-var quoting
2021-06-14 00:38:28 -07:00
Florian Diebold
0290b61b1b
Further clarification
2021-06-07 14:50:03 +02:00
Florian Diebold
b649376edc
One additional grammar fix
2021-06-07 14:43:58 +02:00
Florian Diebold
fc2d286dae
Clarify label documentation
...
Also some other cleanups while I'm there.
2021-06-07 14:34:41 +02:00
Aleksey Kladov
5e577a6373
minor: expand docs a tiny bit
2021-05-31 17:27:27 +03:00
Lukas Wirth
fb7105a580
Add config setting for self-on-the-fly
2021-05-31 15:14:56 +02:00
Aleksey Kladov
cabb679cbb
internal: explain the motivation behind early configuration
2021-05-27 11:16:14 +03:00
Jonas Schievink
3360053312
Update lsp-extensions.md
2021-05-22 00:03:36 +02:00
Aleksey Kladov
1fd31f7f4c
feat: allow clients to feature detect symbol filtering
2021-05-19 13:28:58 +03:00
alcroito
1f7d2a6c22
Add new LSP extension for workspace symbol lookup
...
The new extension allows filtering of workspace symbool lookup
results by search scope or search kind.
Filtering can be configured in 3 different ways:
- The '#' or '*' markers can be added inline with the symbol lookup
query.
The '#' marker means symbols should be looked up in the current
workspace and any dependencies. If not specified, only current
workspace is considered.
The '*' marker means all kinds of symbols should be looked up
(types, functions, etc). If not specified, only type symbols are
returned.
- Each LSP request can take an optional search_scope or search_kind
argument query parameter.
- Finally there are 2 global config options that can be set for all
requests served by the active RA instance.
Add support for setting the global config options to the VSCode
extension.
The extension does not use the per-request way, but it's useful for
other IDEs.
The latest version of VSCode filters out the inline markers, so
currently the only reasonable way to use the new functionality is
via the global config.
2021-05-18 00:40:30 +02:00
Aleksey Kladov
41510f437e
minor: adjust config name
2021-05-17 18:37:06 +03:00
Aleksey Kladov
0650f77dd9
internal: remove one more immutable tree
2021-05-14 16:19:27 +03:00
Aleksey Kladov
ad0648dc95
Cleanup imports
2021-05-13 13:44:47 +03:00
Jonas Schievink
b8d40a02a9
Document viewCrateGraph request
2021-05-11 16:45:51 +02:00
Aleksey Kladov
d4a51241ce
internal: explain why sentence-per-line
2021-05-06 17:40:36 +03:00
Aleksey Kladov
3f6980e4e1
simplify macro expansion code
...
Using `Option` arguments such that you always pass `None` or `Some` at
the call site is a code smell.
2021-05-04 22:41:46 +03:00
bors[bot]
576f50637c
Merge #8605
...
8605: internal: Automatically categorize the changelog entries r=matklad a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-04-22 17:35:41 +00:00
Aleksey Kladov
27073f4fc3
feat: make sure nightly regressions don't break users
2021-04-22 11:15:20 +03:00
Laurențiu Nicola
39ce393a9e
Automatically categorize the changelog entries
2021-04-20 19:54:58 +03:00
bors[bot]
15b34667c5
Merge #8588
...
8588: internal: Add guidelines for release notes PR descriptions r=matklad a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-04-19 18:38:34 +00:00
Laurențiu Nicola
bb4952da04
internal: Add guidelines for release notes PR descriptions
2021-04-19 21:30:44 +03:00
Aleksey Kladov
dcb759b727
Remove confusion around serverStatusNotification
2021-04-19 18:12:25 +03:00
Aleksey Kladov
e5d91e8992
Fix spec bug
2021-04-19 17:55:51 +03:00
Aleksey Kladov
453b9cf6f0
Update docs/dev/README.md
...
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2021-04-19 16:08:50 +03:00
Aleksey Kladov
ad24310d41
internal: document review requesting etiquette
...
* don't feel obliged to quickly review every PR assigned to you
* so that other folks can notify you about interesting PRs without
thinking to much about creating additional work for you
2021-04-19 16:08:49 +03:00
Lukas Wirth
b501b59eda
Update lsp-extensions docs
2021-04-18 12:50:44 +02:00
Jonas Schievink
93128efef8
Fix markdown links
2021-04-15 19:45:07 +02:00
bors[bot]
3af303600a
Merge #8510 #8533
...
8510: Move cursor position when using item movers r=jonas-schievink a=jonas-schievink
This updates the cursor position when moving items around to stay in the same location within the moved node.
I changed the `moveItem` response to `SnippetTextEdit[]`, since that made more sense to me (the file was ignored by the client anyways, since the edits always apply to the current document). It also matches `onEnter`, which seems logical to me, but please let me know if this doesn't make sense.
There's still a bug in the client-side snippet code that will cause the cursor position to be slightly off when moving parameters in the same line (presumably we don't track the column correctly after deleting `$0`). Not really sure how to fix that immediately, but this PR should already be an improvement despite that bug.
8533: Fix typo in style guide r=jonas-schievink a=jonas-schievink
Fixes bold text rendering
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-04-15 16:42:36 +00:00
Jonas Schievink
6e575d8c73
Fix typo in style guide
2021-04-15 18:38:52 +02:00
Jonas Schievink
30aae2cefb
Move cursor position when using item movers
2021-04-14 00:03:04 +02:00
Aleksey Kladov
db2a989565
internal: don't use #[should_panic]
for tests
2021-04-13 12:21:59 +03:00
Aleksey Kladov
c8f48f50b3
internal: clarify who a rls-2.0 wg
2021-04-12 19:19:16 +03:00
Laurențiu Nicola
7221188b0d
Remove extra bracket in architecture docs
2021-04-08 17:51:19 +03:00
Kirill Bulatov
e785672f15
Adjust fixture docs a bit
2021-04-06 21:42:27 +03:00
Kirill Bulatov
b5f3815aee
Small grammar fixes
2021-04-06 21:42:27 +03:00
Kirill Bulatov
d5bedf8d6d
Update Zulip link and macro privacy statement
2021-04-06 21:42:27 +03:00
Aleksey Kladov
658776d4ed
internal: document broken windows
2021-04-06 20:11:42 +03:00
Aleksey Kladov
8fe20b19d4
More robust status notifications
2021-04-06 15:45:31 +03:00
Aleksey Kladov
a01fd1af19
internal: explain "extract if condition" refactoring
2021-04-05 13:02:47 +03:00
sim
d542a2b463
docs: Fix moveItem method name
2021-04-04 11:49:32 -07:00
Aleksey Kladov
636c3c49d2
internal: document style for helper functions and variables
2021-04-02 14:52:00 +03:00
Aleksey Kladov
27b779d1fd
internal: document Cargo.lock maintenance process
2021-04-02 13:59:36 +03:00
Aleksey Kladov
ff8142d47e
internal: touch up dev readme
2021-03-30 13:30:38 +03:00
Aleksey Kladov
b352b90c86
internal: make --log-file more discoverable
2021-03-29 15:11:31 +03:00
bors[bot]
d4fa6721af
Merge #8054
...
8054: Item movers r=matklad a=ivan770
Closes #6823
https://user-images.githubusercontent.com/14003886/111331579-b4f43480-8679-11eb-9af0-e4dabacc4923.mp4
Implementation issues:
- [ ] Most of items are non-movable, since _movability_ of any item has to be determined manually. Common ones are movable though
- [x] Cursor should move with the item
Co-authored-by: ivan770 <leshenko.ivan770@gmail.com>
2021-03-22 13:08:45 +00:00
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
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
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
5b2b310827
Clarify that all caps are experimental
2021-03-09 12:02:20 +03: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
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
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
ivan770
13e9d9809a
Remove CodeLensResolveData mention from lsp-extensions.md
2021-02-13 19:36:29 +02: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
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
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]
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
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
Laurențiu Nicola
83fd639829
Fix RA_LOG example in dev docs
2021-01-25 13:18:24 +02: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
Kevaundray Wedderburn
72b9a4fbd3
Change <|> to $0 - Rebase
2021-01-07 12:09:23 +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
Aleksey Kladov
9c0c5f8e37
Improve commit message style
2020-12-28 13:43:07 +03: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
17f236c2b0
Normalize spelling to American English
2020-12-10 17:51:56 +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
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
Laurențiu Nicola
f94d0252b3
Update client install command in dev docs
2020-10-27 09:49:57 +02:00
Adrian Stanciu
5f5b1ffdd1
Update debugging.md
2020-10-22 21:04:09 +03:00
Igor Aleksanov
d718366567
Document change of 'cargo' Runnable kind in lsp-extensions.md
2020-10-16 20:58:57 +03:00
Aleksey Kladov
0c67edc0f7
Expand code order section
2020-10-16 12:50:09 +02: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
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