Bernardo Uriarte
1ee8fefcff
take into account excludeDirs when computing linked_projects
2022-05-21 16:18:55 +02:00
Bernardo Uriarte
7009e5ab35
add failing test
2022-05-21 16:11:51 +02:00
feniljain
ddd59b9a9a
fix(extract_module): nearby imports deletion causing panic
2022-05-21 19:13:49 +05:30
bors
01d412f4d7
Auto merge of #12339 - matklad:dead, r=matklad
...
dead code
2022-05-21 12:40:29 +00:00
Aleksey Kladov
7734a8b72f
dead code
2022-05-21 13:39:59 +01:00
Aleksey Kladov
cbdab0e647
internal: document overall approach to reload
2022-05-21 13:11:05 +01:00
bitgaoshu
7c5e97221f
mismatch
2022-05-21 17:26:03 +08:00
Christofer Nolander
068b138c87
Remove unecessary unwrap
2022-05-21 10:25:12 +02:00
Amos Wenger
707a5683b1
Still suggest generating enum methods if the name ref starts with a lowercase letter
2022-05-21 01:43:05 +02:00
Amos Wenger
0ed85beb15
Don't suggest enum variant if name_ref start with ASCII lowercase letter
2022-05-21 01:36:26 +02:00
Amos Wenger
7d716cbeb9
Simplify with adt.source()
2022-05-21 01:32:25 +02:00
Amos Wenger
2347da8c8d
Generate enum variant assist
...
This also disables "generate function" when what we clearly want is to
generate an enum variant.
Co-authored-by: Maarten Flippo <maartenflippo@outlook.com>
2022-05-21 01:18:35 +02:00
Christofer Nolander
aef16300f7
Order auto-imports by relevance
...
This first attempt prefers items that are closer to the module they are
imported in.
2022-05-21 00:07:06 +02:00
Jonas Schievink
33939a3db1
Don't swallow build script errors
2022-05-20 17:28:39 +02:00
bors
2a978e1404
Auto merge of #12328 - Veykril:simplify, r=Veykril
...
minor: Simplify
2022-05-20 15:03:59 +00:00
Lukas Wirth
88e297e47d
minor: Simplify
2022-05-20 16:52:10 +02:00
Jonas Schievink
60a2ab4c67
Rename Expr::Lambda
to Expr::Closure
2022-05-20 15:40:32 +02:00
Jonas Schievink
3e356c1fd3
Clear cargo check
diagnostics when flycheck is turned off
2022-05-20 15:07:55 +02:00
bors
7f226fc912
Auto merge of #12324 - jonas-schievink:rm-attribute, r=jonas-schievink
...
feat: Revert the "Add attribute" assist
Reverts https://github.com/rust-lang/rust-analyzer/pull/12296 , as the added indirection and "assist noise" (the assist has to trigger inside the body of an item to match what the "Add `#[derive]`" does) makes this not really pull its weight over just using attribute completions.
Keeps the changes to "Add getter". `#[must_use]` can be applied using the attribute completions.
2022-05-20 12:57:08 +00:00
Jonas Schievink
e52d463524
Revert the "Add attribute" assist
2022-05-20 14:39:22 +02:00
bors
41388bf81a
Auto merge of #12263 - andylizi:hide-type-hint-closure, r=Veykril
...
feat: hide type inlay hints for initializations of closures
![hide_closure_initialization](https://user-images.githubusercontent.com/12008103/168470158-6cb77b18-068e-4431-a8b5-e2b22d50d263.gif )
This PR adds an option to hide the inlay hints for `let IDENT_PAT = CLOSURE_EXPR;`, which is a somewhat common coding pattern. Currently the inlay hints for the assigned variable and the closure expression itself are both displayed, making it rather repetitive.
In order to be consistent with closure return type hints, only closures with block bodies will be hid by this option.
Personally I'd feel comfortable making it always enabled (or at least when closure return type hints are enabled), but considering the precedent set in #10761 , I introduced an off-by-default option for this.
changelog feature: option to hide type inlay hints for initializations of closures
2022-05-20 12:35:36 +00:00
bors
f5229cebb2
Auto merge of #12301 - harpsword:fix_for_crlf_cargo_range_map, r=jonas-schievink
...
fix: calculate correct postion for Dos line ending in mapping rustc range to ls…
fix #12293
2022-05-20 12:15:22 +00:00
andylizi
2b1c1a934c
feat: hide type inlay hints for initializations of closures
2022-05-20 17:42:56 +08:00
NotWearingPants
641b78a162
hide closure ret hints if ret type is specified
...
fixes #12319
2022-05-20 02:35:37 +03:00
Jonas Schievink
52ff863abc
Teach Callable
about closures properly
2022-05-19 18:53:08 +02:00
bors
eba26af9f1
Auto merge of #12314 - jonas-schievink:proc-macro-load, r=jonas-schievink
...
minor: simplify
2022-05-19 14:50:08 +00:00
bors
46b5483055
Auto merge of #12313 - equinox:typo-fix, r=lnicola
...
Removed duplicate 'to' in `cachePriming.numThreads` option description
One 'to' too many!
2022-05-19 14:22:09 +00:00
Equinox
7197042ac4
remove duplicate 'to' in cachePriming.numThreads
option description
2022-05-20 02:05:48 +12:00
bors
57861bd99e
Auto merge of #12311 - Veykril:inlay-hints-tips, r=Veykril
...
internal: Improve inlay hint tooltips
2022-05-19 13:45:05 +00:00
Lukas Wirth
9ebb55d354
Hide more unnecessary parameter hints for constructors
2022-05-19 15:44:52 +02:00
Jonas Schievink
b2779111b4
simplify
2022-05-19 15:29:35 +02:00
Lukas Wirth
5fe28441b8
Update test fixtures
2022-05-19 15:20:45 +02:00
Lukas Wirth
b08bbd7be0
Enable hovering function parameter inlay hints
2022-05-19 14:32:40 +02:00
Lukas Wirth
74230e26ff
internal: Improve inlay hint tooltips
2022-05-19 13:38:37 +02:00
bors
4f7d1a9d69
Auto merge of #12309 - Veykril:completion, r=Veykril
...
fix: Fix incorrect expected type in completions for trailing match arms
Fixes https://github.com/rust-lang/rust-analyzer/issues/12264
2022-05-19 10:34:36 +00:00
Lukas Wirth
018975b041
fix: Fix incorrect expected type in completions for match arms
2022-05-19 12:33:25 +02:00
Jonas Schievink
5279cdbefb
Include self type in generated getter/setter docs
2022-05-18 19:22:04 +02:00
Jonas Schievink
93b62dbe85
Improve docs generation assist
2022-05-18 18:05:21 +02:00
harpsword
dfae0a12ef
fix: calculate right range for Dos line ending in mapping rustc range to lsp range
2022-05-18 21:08:18 +08:00
bors
187bd7d48a
Auto merge of #12130 - weirane:let-else-let-match, r=weirane
...
Turn let-else statements into let and match
Fixes #11906 .
2022-05-17 19:01:18 +00:00
weirane
4a0821f332
Simplify const reference check
...
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-05-17 11:43:53 -07:00
Jonas Schievink
cb135ae71b
Add a "Add attribute" assist
2022-05-17 20:28:25 +02:00
Lukas Wirth
58a241134c
Update test output
2022-05-17 14:58:26 +02:00
Lukas Wirth
21f37a6d9e
Allow inlay hint tooltips to trigger hovers
2022-05-17 14:46:43 +02:00
Lukas Wirth
a2ec010185
Trigger hover requests on closing brace hints
2022-05-17 13:39:45 +02:00
Lukas Wirth
0756719a30
Replace some SmolStr usages with String as the conversion happens anyways
2022-05-17 12:56:14 +02:00
Lukas Wirth
91833f1974
feat: Implement inlay hint tooltips
2022-05-17 12:49:51 +02:00
Lukas Wirth
12d5343993
internal: Cleanup lifetime elision hints
2022-05-17 12:18:07 +02:00
Jonas Schievink
1df6560fd8
Improve "Generate Deref
impl" assist
2022-05-16 20:10:46 +02:00
Jonas Schievink
54c8c39da0
Don't generate documentation in generate_setter
2022-05-16 19:27:27 +02:00
Jonas Schievink
f1b6e45fba
Handle getters and setters in documentation template assist
2022-05-16 19:10:38 +02:00
bors
825ce48180
Auto merge of #12271 - bitgaoshu:box_with_expec, r=flodiebold
...
fix #12227 Type mismatch error shown
add box expectation hint
2022-05-16 15:00:36 +00:00
Jonas Schievink
5ee028bbb8
Fix signature help LSP offset conversion
2022-05-16 15:48:38 +02:00
Jonas Schievink
fccc12982e
Add closing brace hints for macros
2022-05-16 15:23:25 +02:00
bitgaoshu
e362929fa1
add box expection hint
2022-05-16 21:17:00 +08:00
Jonas Schievink
867a7dc7a0
Show inlay hints after a }
to indicate the closed item
2022-05-16 14:55:47 +02:00
Aleksey Kladov
2f3453994a
minor: rename
2022-05-16 12:42:48 +01:00
bors
1dc25e51a0
Auto merge of #12253 - Veykril:bm, r=Veykril
...
feat: Add binding mode inlay hints
![image](https://user-images.githubusercontent.com/3757771/168427387-2f299438-a0cc-496b-a9a5-d689ef6a2b55.png )
2022-05-16 11:16:22 +00:00
bors
5ae9847dea
Auto merge of #12262 - jhgg:fix-whitespace-between-mut-self-in-macro-expansion, r=lnicola
...
ide: insert whitespace between 'mut' and 'self' in macro expansion
fixes #12260
2022-05-15 12:47:38 +00:00
bors
fa133d065b
Auto merge of #12190 - harpsword:fix_diagostics_map_incorrectly, r=harpsword
...
fix cargo check diagnostics are mapped incorrectly with non-BMP codepoints
fix #11945
2022-05-15 09:48:51 +00:00
Jake Heinz
4efc2a9df2
ide: insert whitespace between 'mut' and 'self' in macro expansion
2022-05-15 07:55:13 +00:00
bors
1ff5b2cab4
Auto merge of #12251 - matklad:lsp-server, r=matklad
...
internal: vendor lsp-server
2022-05-14 20:20:01 +00:00
Aleksey Kladov
57cb65bb7a
internal: vendor lsp-server
2022-05-14 21:15:43 +01:00
Lukas Wirth
7cbde1b3a5
Enable reborrow hints in attribute calls
2022-05-14 15:00:14 +02:00
Lukas Wirth
6b696fced8
feat: Add binding mode inlay hints
2022-05-14 14:58:35 +02:00
Lukas Wirth
622defb373
internal: Make VSCode config more GUI edit friendly
2022-05-14 13:53:41 +02:00
harpsword
7bd4c11e13
fix diagnostics location map incorrectly from rustc span to lsp position for non-BMP char
2022-05-14 19:19:55 +08:00
Lukas Wirth
8ac429dad9
fix: Fix incorrect hover actions config keys
2022-05-13 21:17:03 +02:00
Lukas Wirth
3577c44dee
fix: Fix fill-arguments completions not working
2022-05-13 19:52:44 +02:00
Jonas Schievink
0831f3123b
Fix tests
2022-05-13 15:54:46 +02:00
Jonas Schievink
9bd11459ba
Revert "Auto merge of #12149 - jonas-schievink:literally-just-a-literal, r=jonas-schievink"
...
This reverts commit cc9ae2b89e
, reversing
changes made to 7dfd1cb572
.
2022-05-13 15:08:14 +02:00
Jonas Schievink
2287ae22c6
Revert "Skip only the tt::Literal
when consuming float tokens"
...
This reverts commit 7db55313a1
.
2022-05-13 15:06:16 +02:00
Jonas Schievink
bde036b74e
Revert "Fix conversion of float literals in TtTreeSink
"
...
This reverts commit 43a066c5a8
.
2022-05-13 15:05:34 +02:00
Jonas Schievink
4fcdb96789
Revert "fix: Remap float parts as integers when parsed as indices"
...
This reverts commit dbb066b99e
.
2022-05-13 15:05:03 +02:00
Jonas Schievink
73e0e17b52
Revert "Don't remap float tokens to INT_NUMBER
"
...
This reverts commit cb5e8da88a
.
2022-05-13 15:04:36 +02:00
Jonas Schievink
cb5e8da88a
Don't remap float tokens to INT_NUMBER
2022-05-12 19:01:09 +02:00
Lukas Wirth
d57beac7e6
fix: Fix vscode config descriptions not recognizing all valid values
2022-05-12 18:15:48 +02:00
Lukas Wirth
252ffbf77a
fix: Fix old config patching overwriting callable snippet config unconditionally
2022-05-12 17:55:25 +02:00
bors
135164f547
Auto merge of #12226 - Veykril:reborrow-inlay-hints, r=Veykril
...
feat: Allow reborrow inlay hints to be restricted to mutable reborrows only
2022-05-12 12:21:06 +00:00
Lukas Wirth
c2190ad87c
feat: Allow reborrow inlay hints to be restricted to mutable reborrows only
2022-05-12 14:00:06 +02:00
bors
5901dfdf1b
Auto merge of #12224 - Veykril:anno-redundant, r=Veykril
...
internal: Remove redundant offset data in annotations
cc https://github.com/rust-lang/rust-analyzer/issues/12221
2022-05-12 11:31:11 +00:00
bors
3a69bfd0c2
Auto merge of #12225 - Veykril:tmapfloats, r=Veykril
...
internal: Add token mapping test for float literals
cc https://github.com/rust-lang/rust-analyzer/issues/12216
2022-05-12 11:18:36 +00:00
Lukas Wirth
4b505ce0f9
internal: Add token mapping test for float literals
2022-05-12 13:17:53 +02:00
Lukas Wirth
ca46c68b04
internal: Remove redundant offset data in annotations
2022-05-12 13:06:49 +02:00
Lukas Wirth
84176f6b24
internal: Rename primeCaches config keys
2022-05-12 12:30:00 +02:00
bors
94fa8a6534
Auto merge of #12213 - Veykril:config-fix, r=Veykril
...
fix: Fix incorrect config patching for runBuildScripts
2022-05-11 10:38:56 +00:00
Lukas Wirth
e68352a9f5
fix: Fix incorrect config patching for runBuildScripts
2022-05-11 12:38:21 +02:00
Elliot Roberts
2298a76222
fix typo in inlayHints.renderColons
option description
2022-05-10 19:15:07 -07:00
Lukas Wirth
b271ef8fd1
fix: Fix config patching failing when appending suffixes
2022-05-10 21:14:22 +02:00
Jonas Schievink
ac3c18bc17
Include assoc. types in trait signature help
2022-05-10 16:54:31 +02:00
Jonas Schievink
92e56e0c70
Fix inverted signature help setting
2022-05-10 16:54:13 +02:00
bors
254bfdd2c3
Auto merge of #12204 - Veykril:completions, r=Veykril
...
internal: Move keyword expressions to expr completions module
2022-05-10 13:08:27 +00:00
Lukas Wirth
b2abe1bca1
Move keyword expressions to expr completions module
2022-05-10 15:00:58 +02:00
bors
4a4e9c0ae0
Auto merge of #12203 - Veykril:completions, r=Veykril
...
internal: Simplify
2022-05-10 12:36:46 +00:00
Lukas Wirth
40bb8006cd
Don't parse files in module completion
2022-05-10 14:31:43 +02:00
Lukas Wirth
26fef97d59
Simplify
2022-05-10 14:31:28 +02:00
bors
cc695363e4
Auto merge of #12202 - iDawer:ide.sig_help-fix, r=lnicola
...
fix: don't panic at fully qualified call syntax in signature help
Closes #12200
Regressed from #12082
2022-05-10 12:28:34 +00:00
iDawer
956b8fb954
signature_help
: detect fully qualified call syntax for parameter fallback
2022-05-10 17:18:42 +05:00
bors
460e389f54
Auto merge of #12010 - Veykril:r-a-config, r=Veykril
...
Config revamp
Fixes https://github.com/rust-lang/rust-analyzer/issues/11790
Fixes https://github.com/rust-lang/rust-analyzer/issues/12115
This PR changes a lot of config names, and a few ones are being merged or split apart. The reason for this is that our configuration names currently are rather inconsistent and some where poorly chosen in regards to extensability. This PR plans to fix that.
We still allow the old config names by patching them to the new ones before deserializing to keep backwards compatability with other clients (the VSCode client will auto update the config) but ideally we will get rid of that layer in the future.
Here is a list of the changes:
These are simple renames `old_name | alias1 | alias2 ... -> new_name` (the vscode client will fix these up automagically):
```
assist_allowMergingIntoGlobImports -> imports_merge_glob
assist_exprFillDefault -> assist_expressionFillDefault
assist_importEnforceGranularity -> imports_granularity_enforce
assist_importGranularity | assist_importMergeBehavior | assist_importMergeBehaviour -> imports_granularity_group
assist_importGroup -> imports_group_enable
assist_importPrefix -> imports_prefix
cache_warmup -> primeCaches_enable
cargo_loadOutDirsFromCheck -> cargo_buildScripts_enable
cargo_runBuildScripts | cargo_runBuildScriptsCommand -> cargo_runBuildScripts_overrideCommand
cargo_useRustcWrapperForBuildScripts -> cargo_runBuildScripts_useRustcWrapper
completion_snippets -> completion_snippets_custom
diagnostics_enableExperimental -> diagnostics_experimental_enable
experimental_procAttrMacros -> procMacro_attributes_enable
highlighting_strings -> semanticHighlighting_strings_enable
highlightRelated_breakPoints -> semanticHighlighting_breakPoints_enable
highlightRelated_exitPoints -> semanticHighlighting_exitPoints_enable
highlightRelated_yieldPoints -> semanticHighlighting_yieldPoints_enable
highlightRelated_references -> semanticHighlighting_references_enable
hover_documentation -> hover_documentation_enable
hover_linksInHover | hoverActions_linksInHover -> hover_links_enable
hoverActions_debug -> hoverActions_debug_enable
hoverActions_enable -> hoverActions_enable_enable
hoverActions_gotoTypeDef -> hoverActions_gotoTypeDef_enable
hoverActions_implementations -> hoverActions_implementations_enable
hoverActions_references -> hoverActions_references_enable
hoverActions_run -> hoverActions_run_enable
inlayHints_chainingHints -> inlayHints_chainingHints_enable
inlayHints_closureReturnTypeHints -> inlayHints_closureReturnTypeHints_enable
inlayHints_hideNamedConstructorHints -> inlayHints_typeHints_hideNamedConstructorHints
inlayHints_parameterHints -> inlayHints_parameterHints_enable
inlayHints_reborrowHints -> inlayHints_reborrowHints_enable
inlayHints_typeHints -> inlayHints_typeHints_enable
lruCapacity -> lru_capacity
runnables_cargoExtraArgs -> runnables_extraArgs
runnables_overrideCargo -> runnables_command
rustcSource -> rustc_source
rustfmt_enableRangeFormatting -> rustfmt_rangeFormatting_enable
```
These are configs that have been merged or split apart, which have to be manually updated by the user:
```
callInfo_full -> signatureInfo_detail, signatureInfo_documentation_enable
cargo_allFeatures, cargo_features -> cargo_features
checkOnSave_allFeatures, checkOnSave_features -> checkOnSave_features
completion_addCallArgumentSnippets completion_addCallParenthesis -> completion_callable_snippets
```
2022-05-10 12:07:24 +00:00
bors
cf152e8a94
Auto merge of #12201 - Veykril:inlay-hide, r=Veykril
...
fix: Add cast expressions to param name inlay hint heuristics
2022-05-10 11:44:06 +00:00
Lukas Wirth
822d9b55b7
fix: Add cast expressions to param name inlay hint heuristics
2022-05-10 13:43:43 +02:00
Jonas Schievink
5a2398d775
Don't show assoc. type binding completions when invalid
2022-05-09 18:12:12 +02:00
Jonas Schievink
2156815f12
Make completion work too
2022-05-09 17:39:13 +02:00
Jonas Schievink
7e45915aa4
Resolve assoc. types of supertraits in the IDE layer
2022-05-09 17:30:49 +02:00
bors
c42cb9af48
Auto merge of #12197 - Veykril:insert-use-fix, r=Veykril
...
fix: Fix import insertion inserting after last comment in a file
2022-05-09 10:13:08 +00:00
Lukas Wirth
c0feb389ed
fix: Fix import insertion inserting after last comment in a file
2022-05-09 12:12:41 +02:00
bors
3d2d209638
Auto merge of #11983 - jhpratt:remove-rustc_deprecated, r=lnicola
...
Remove handling of `#[rustc_deprecated]`
This should be merged along with rust-lang/rust#95960 .
Because the attribute still exists in rustc, I've left the definition here. With that said, any use of it is an error, so I've removed any handling of `#[rustc_deprecated]`.
2022-05-09 08:33:18 +00:00
bors
5d5bbec9b6
Auto merge of #12187 - Veykril:completion-rev, r=Veykril
...
internal: More completion context refactoring
2022-05-07 14:25:12 +00:00
bors
bfb241afa3
Auto merge of #12188 - Veykril:auto-import, r=Veykril
...
fix: Allow auto importing starting segments of use items
2022-05-07 14:16:00 +00:00
Lukas Wirth
61e074f016
fix: Allow auto importing starting segments of use items
2022-05-07 15:52:22 +02:00
Lukas Wirth
a0fc649269
fix unreachable pub
2022-05-07 15:50:01 +02:00
Lukas Wirth
44c3cc100b
Merge the different identifier contexts into one enum
2022-05-07 15:06:59 +02:00
Lukas Wirth
99fa37d6e3
Split namelike into the corresponding completion contexts
2022-05-07 14:16:03 +02:00
Lukas Wirth
6a045c7029
Introduce NameRefContext
2022-05-07 13:46:43 +02:00
bors
f2216764c4
Auto merge of #12186 - Veykril:completion-rev, r=Veykril
...
minor: Move inferred type completions
2022-05-07 11:00:29 +00:00
Lukas Wirth
1dc83f5a90
minor: Move inferred type completions
2022-05-07 12:59:26 +02:00
Lukas Wirth
dbb066b99e
fix: Remap float parts as integers when parsed as indices
2022-05-07 12:52:15 +02:00
Jonas Schievink
43a066c5a8
Fix conversion of float literals in TtTreeSink
2022-05-06 18:39:06 +02:00
Jonas Schievink
7db55313a1
Skip only the tt::Literal
when consuming float tokens
2022-05-06 16:10:54 +02:00
bors
10dd471fd1
Auto merge of #12175 - Veykril:completion-rev, r=Veykril
...
fix: Fix snippets triggering where they shouldn't
Fixes https://github.com/rust-lang/rust-analyzer/issues/12169
2022-05-06 13:45:12 +00:00
Lukas Wirth
0ce620686c
fix: Fix snippets triggering where they shouldn't
2022-05-06 15:44:41 +02:00
bors
57c5447f90
Auto merge of #12174 - Veykril:completion-rev, r=Veykril
...
internal: Improve completion tests by checking that the offset is included in the source_range of items
2022-05-06 11:12:29 +00:00
Lukas Wirth
582f99d293
internal: Improve completion tests by checking that the offset is included in the source_range of items
2022-05-06 13:11:50 +02:00
bors
db1434b34f
Auto merge of #12171 - lnicola:proc-macros-dont-invalidate-state, r=Veykril
...
fix: Try not to invalidate state when the proc macro preference didn't change
This appears to fix #12027 , but I'm not sure.
2022-05-06 10:14:05 +00:00
Lukas Wirth
57a9915c1f
internal: completion PathKind is not optional
2022-05-06 12:04:41 +02:00
Laurențiu Nicola
97cdf3eb0e
Try not to invalidate our state when the proc macro preference didn't change
2022-05-06 09:49:03 +03:00
bors
dd3f5e0993
Auto merge of #12168 - Veykril:completion-rev, r=Veykril
...
internal: Remove unqualified_path completions module
2022-05-05 20:22:30 +00:00
Lukas Wirth
0c4e23b8ef
internal: Remove unqualified_path completions module
2022-05-05 22:21:42 +02:00
Wang Ruochen
8d7a393008
Check const reference
2022-05-05 11:44:11 -07:00
Wang Ruochen
81d7cbbbe2
Avoid allocations
2022-05-05 10:14:11 -07:00
Jonas Schievink
d974a0b889
Fix rebase fallout
2022-05-05 16:35:07 +02:00
Jonas Schievink
37443eb9a1
Maybe everything else *should* have to deal with it
2022-05-05 16:28:59 +02:00
Jonas Schievink
2fe38d3b63
Indicate the number of float tokens in the first token
2022-05-05 16:28:59 +02:00
Jonas Schievink
34dc8e9383
Wrap floats in token trees in FLOAT_LITERAL
node
2022-05-05 16:28:59 +02:00
Jonas Schievink
90bd99f1bb
Add completion test
2022-05-05 16:28:59 +02:00
Jonas Schievink
2a755495d0
Add tests
2022-05-05 16:28:59 +02:00
Jonas Schievink
1bc3305d95
Split float literal tokens at the .
2022-05-05 16:28:58 +02:00
Jonas Schievink
502c519e7d
Wrap float literals in their own node
2022-05-05 16:28:14 +02:00
Jonas Schievink
2d5d16f18c
Remove ast::Literal::token
2022-05-05 16:27:35 +02:00
Lukas Wirth
16d2e79b50
internal: Remove unqualified_path completions module
2022-05-05 15:50:40 +02:00
Lukas Wirth
25d133e3b8
internal: Lift out item list path completions from (un)qualified_path
2022-05-05 12:20:18 +02:00
bors
52a58f672e
Auto merge of #12160 - Veykril:completions-rev, r=Veykril
...
minor: Sort ide-completions test outputs for less disruptive diffs
2022-05-05 09:03:23 +00:00
Lukas Wirth
5280e08c13
minor: Sort ide-completions test outputs for less disruptive diffs
2022-05-05 10:53:20 +02:00
bors
01198da2a2
Auto merge of #12159 - Veykril:completions-rev, r=Veykril
...
internal: Lift out macro bang property from completion PathKind enum
2022-05-05 08:51:18 +00:00
Lukas Wirth
8b092ec337
internal: Lift out macro bang property from PathKind enum
2022-05-05 10:51:02 +02:00
Laurențiu Nicola
9856144b0b
Lower values of char and byte literals
2022-05-05 08:12:08 +03:00
bors
0218aeba7a
Auto merge of #12150 - rainy-me:feat/fix-doc-url-links, r=rainy-me
...
fix: doc url link type
fix : #12033
I did some debugging and found the cause looks like to be some doc links' `LinkType` are kept as `Shortcut` which don't make sense for url links.
This PR should resolve both problems in the origin issue, but aside this PR, more work are needed for doc_links.
about `LinkType`: f29bd1e228/src/lib.rs (L191-L210)
2022-05-05 04:54:12 +00:00
rainy-me
ddff1b22f9
fix: add docs and remove unnecessary check
2022-05-05 13:41:33 +09:00
Jacob Pratt
3c376e5be8
Remove handling of #[rustc_deprecated]
2022-05-04 22:25:58 -04:00
rainy-me
5f4351fbb6
fix: doc url link type
2022-05-05 00:41:29 +09:00
Lukas Wirth
73df43f69a
Implement old to new config patching
2022-05-04 15:29:25 +02:00
bors
1f709d5446
Auto merge of #12143 - bnjjj:master, r=Veykril
...
improve the default constructor mode when filling fields
Instead of filling a boolean field with `bool::default()` it's not `false` and same for `Option` instead of using `Option::default()` it will be `None`
2022-05-04 09:32:17 +00:00
bors
9ed4af8967
Auto merge of #12142 - WaffleLapkin:sort-items-by-trait-def, r=lnicola
...
feat: Sort items by trait definition assist
This PR replaces the "Sort **methods** by trait definition" assist with a "Sort **items** by trait definition" assist that sorts all items, not just methods.
![sort-items-by-trait-def-showcase](https://user-images.githubusercontent.com/38225716/166491828-0bc10dbd-91be-408f-9fe0-636ef5e99377.gif )
2022-05-04 09:08:22 +00:00
Benjamin Coenen
6344eea242
improve the default constructor mode when filling fields
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2022-05-04 09:45:12 +02:00
Maybe Waffle
e315124798
Remove "Sort methods by trait definition" assist
...
It was replaced by the "Sort items by trait definition" assist.
2022-05-04 00:59:23 +04:00
Maybe Waffle
2b20a05fc6
Add "Sort items by trait definition"
2022-05-03 19:57:39 +04:00
Maybe Waffle
d7ed351573
Fix some typos in ide-assists/src/lib.rs
2022-05-03 19:41:07 +04:00
iDawer
970276b559
'inference': collect RPIT obligations
...
Collect obligations from RPITs (Return Position `impl Trait`) of a function which is being inferred.
This allows inferring {unknown}s from RPIT bounds.
2022-05-03 15:59:12 +05:00
Wang Ruochen
a70beea9e9
Trigger only when cursor is on else
2022-05-02 15:20:13 -07:00
Jonas Schievink
1f50e19eb2
Add a Converter
type for token conversion
2022-05-02 17:47:12 +02:00
bors
f83dccf5b9
Auto merge of #12123 - rainy-me:feat/impl-self-completion, r=Veykril
...
feat: provide Self in record literal completion
close #12106
2022-05-02 12:29:49 +00:00
bors
9e10d4b717
Auto merge of #12093 - nico-abram:uwu, r=Veykril
...
Reload project on .cargo/config[.toml] changes
Fixes #11024
Not adding tests as discussed in the issue
2022-05-02 12:21:42 +00:00
bors
cc12d9df3f
Auto merge of #12120 - iDawer:ide.sig_help, r=Veykril
...
fix: Don't show signature help after closing bracket
Stop showing signature help after closing angle/round brackets.
Fixes #11624
2022-05-02 12:13:16 +00:00
Lukas Wirth
b6e19add06
minor: Add a test for display rendering record variants
2022-05-02 12:51:00 +02:00
Lukas Wirth
4f97950595
fix: Fix uncorrect use of double braces in HirDisplay implementations
2022-05-02 12:39:38 +02:00
Lukas Wirth
291f94e22e
Fix up config docs
2022-05-01 19:57:09 +02:00
Lukas Wirth
cb6032bdf4
Fix untagged enum deserialization
2022-05-01 19:57:09 +02:00
Lukas Wirth
1f11b70c3b
Final fixups
2022-05-01 19:57:09 +02:00
Lukas Wirth
9fe1b24736
Update config usage in slow tests
2022-05-01 19:57:09 +02:00
Lukas Wirth
3d17261972
Adjust signature info and enum variant lenses
2022-05-01 19:57:08 +02:00
Lukas Wirth
9f27eb57a5
Implement boolean aliases
2022-05-01 19:57:08 +02:00
Lukas Wirth
bd18936d51
Sort config definition
2022-05-01 19:57:08 +02:00
Lukas Wirth
61643aca49
Initial config revamp
2022-05-01 19:57:08 +02:00
Wang Ruochen
59cdb31874
Turn let-else statements into let and match
2022-05-01 09:43:51 -07:00
rainy-me
f3e3abfb98
feat: provide self in record literal completion
2022-05-01 21:01:28 +09:00
Peh
aade31943f
delete another swap file
2022-05-01 10:48:58 +00:00
Peh
14c30b7979
update crates names in slow-tests/tidy.rs
2022-05-01 10:48:58 +00:00
Peh
c9a8c69ee0
update diagnostic-docs crate name
2022-05-01 10:48:58 +00:00
Peh
e53bf7e9c2
updated ide-assist new dir name
2022-05-01 10:48:58 +00:00
Peh
55e7925ac8
delete a generated swap file
2022-05-01 10:48:58 +00:00
Peh
1f011fa4a3
style: rename crates to kebab case
2022-05-01 10:48:58 +00:00
bors
e025b37df6
Auto merge of #12099 - bitgaoshu:master, r=flodiebold
...
fix #11986 Aliases break resolution of qualified variants in patterns
2022-05-01 08:49:58 +00:00
iDawer
dffbab45f4
Don't show signature help after closing bracket
2022-04-29 23:26:54 +05:00
bors
c6995a372f
Auto merge of #12117 - Veykril:mexpand, r=Veykril
...
minor: Insert whitespace after const token when formatting macro expansions
2022-04-29 12:07:52 +00:00
Lukas Wirth
df85ee05e3
minor: Insert whitespace after const token when formatting macro expansions
2022-04-29 14:07:19 +02:00
Justin Tracey
cfa7204544
small typo in log message
2022-04-29 05:59:32 +00:00
Jonas Schievink
52010d7dc7
Fix outline mod completion with partial module name
2022-04-28 20:21:46 +02:00
Jonas Schievink
c7027122db
Add test with trait
2022-04-28 19:23:57 +02:00
Jonas Schievink
b6a1b45c24
Make "inline type alias" work for Self
2022-04-28 19:20:23 +02:00
bors
d382e24a11
Auto merge of #12108 - Veykril:simplify, r=Veykril
...
minor: Record snippet config errors
2022-04-28 13:18:35 +00:00
Lukas Wirth
075b18942f
minor: Record snippet config errors
2022-04-28 15:18:19 +02:00
bitgaoshu
7900d99e3e
#11986 Aliases break resolution of qualified variants in patterns
2022-04-28 09:42:07 +08:00
bors
241b9f9aec
Auto merge of #12103 - jonas-schievink:diagnose-unresolved-derives, r=jonas-schievink
...
feat: diagnose unresolved derive macros
![screenshot-2022-04-27-20:04:59](https://user-images.githubusercontent.com/1786438/165591059-c759f035-2400-4bb1-84b0-9332e86c65d5.png )
2022-04-27 18:05:37 +00:00
Jonas Schievink
fa42888e27
Diagnose unresolved derive macros
2022-04-27 20:03:57 +02:00
bors
361cddc16c
Auto merge of #12101 - Veykril:simplify, r=Veykril
...
Simplify
2022-04-27 17:54:26 +00:00
Lukas Wirth
8b056fad45
Simplify
2022-04-27 19:53:56 +02:00
bors
ab8159b0b2
Auto merge of #12090 - Veykril:recov, r=Veykril
...
fix: Use pattern recovery set when parsing ident patterns
2022-04-27 17:18:46 +00:00
Lukas Wirth
e2344e78f3
fix: Use pattern recovery set when parsing ident patterns
2022-04-27 19:08:50 +02:00
unknown
b373e62f1a
Reload project on .cargo/config[.toml] changes
...
Fixes #11024
2022-04-27 12:10:43 -03:00
bors
1ad500beb6
Auto merge of #12057 - harpsword:fix_validata_visibility, r=jonas-schievink
...
fix visibility token validation in trait impl with proc-macro
fix #11828
2022-04-27 13:09:31 +00:00
bors
6c6aaeee7a
Auto merge of #12089 - lowr:fix/move-raw-ident-module-to-file, r=jonas-schievink
...
fix: handle raw identifiers in move_module_to_file
Fixes #12045
Note that I special case'd mod named `r#mod` as commented in the code. Although it's very unlikely that one would use such name, I included it in this fix for the sake of completeness.
2022-04-27 12:59:52 +00:00
harpsword
b1f858118b
fix visibility token validation in trait impl with proc-macro
2022-04-27 20:58:36 +08:00
bors
9f69d024ed
Auto merge of #12098 - jonas-schievink:macro-rules-snippet, r=jonas-schievink
...
fix: show `macro_rules` snippet in blocks
fixes https://github.com/rust-lang/rust-analyzer/issues/12092
2022-04-27 12:41:29 +00:00
Jonas Schievink
0060d5977d
Show macro_rules
snippet in blocks
2022-04-27 14:40:09 +02:00
Laurențiu Nicola
4a57307674
Revert "Correctly fix formatting doc tests with generics"
...
This reverts commit 5f3327a6b8
.
2022-04-27 15:30:54 +03:00
Laurențiu Nicola
0d02be7330
Revert "Update crates/ide/src/runnables.rs"
...
This reverts commit bf47acf1d3
.
2022-04-27 15:30:54 +03:00
rainy-me
c1685e56b7
fix: remove lookup and handle mut kw case
2022-04-27 18:54:57 +09:00
LowR
bc7cb00a27
fix: handle raw identifiers in move_module_to_file
2022-04-27 05:12:10 +09:00
bors
198c075580
Auto merge of #12083 - Veykril:inlays, r=Veykril
...
minor: Add test for parameter and reborrow hint order
2022-04-26 09:53:26 +00:00
Lukas Wirth
5e413997a1
minor: Add test for parameter and reborrow hint order
2022-04-26 11:46:03 +02:00
iDawer
729cd8530b
signature_help
: use corresponding param list for methods
2022-04-26 11:50:28 +05:00
Lukas Wirth
4255996965
Re-export FxHashMap
and FxHashSet
from ide_db
2022-04-25 18:51:59 +02:00
Lukas Wirth
8154365b00
minor: Remove either dependency from ide_completion
2022-04-25 18:40:38 +02:00
bors
6869491974
Auto merge of #12075 - jonas-schievink:less-aggressive-quickfixes, r=jonas-schievink
...
fix: Don't emit a quickfix for placeholder suggestions from rustc/clippy
Fixes https://github.com/rust-lang/rust-analyzer/issues/12069
2022-04-25 13:22:41 +00:00
Jonas Schievink
36342b4b29
Don't emit a quickfix for placeholder suggestions
2022-04-25 15:21:30 +02:00
bors
60c4f072eb
Auto merge of #12007 - edwin0cheng:restart-proc-macro-reload, r=jonas-schievink
...
Restart proc-macro client when server reload
Fix #10719
2022-04-25 12:56:57 +00:00
bors
1d2bd0e379
Auto merge of #12071 - Ma124:fix-tabs-snippet, r=jonas-schievink
...
Change tabs to spacs in macro_rules snippet
This PR changes the `macro_rules!` snippet to use spaces instead of tabs.
The other snippets like [this one][test-snippet] already use spaces.
The snippet was introduced in 5575588
where no reason is provided to use tabs.
[test-snippet]: https://github.com/rust-lang/rust-analyzer/blob/master/crates/ide_completion/src/completions/snippet.rs#L70=
2022-04-25 12:44:49 +00:00
Jonas Schievink
3a83684a16
Reduce priority of flyimport completions
2022-04-25 14:34:54 +02:00
bors
c1de78f54c
Auto merge of #12072 - bitgaoshu:master, r=jonas-schievink
...
fix #11973 associated type is unresolved
2022-04-25 11:07:09 +00:00
Ma_124
b06c95aeda
Change tabs to spacs in macro_rules snippet
2022-04-24 15:18:31 +02:00
bitgaoshu
5d1aff3357
#11973 associated type is unresolved
2022-04-24 20:51:48 +08:00
Aleksey Kladov
83aa42ae69
minor: clarify error message
...
Clarify that the server is a whole is OK, and that it's only a single
requests that's dead
2022-04-24 13:39:33 +01:00
Edwin Cheng
8f616a6cb5
Fix Reload Workspace command
2022-04-24 11:59:08 +08:00
bors
c61bb6be8c
Auto merge of #12064 - Veykril:attr-range, r=Veykril
...
fix: Fix `ide_db::search` not searching bodies of attributed items
Fixes https://github.com/rust-lang/rust-analyzer/issues/12050
2022-04-23 14:37:35 +00:00
Lukas Wirth
d524e43ef5
fix: Fix ide_db::search not searching bodies of attributed items
2022-04-23 16:36:11 +02:00
bors
23e47e1ebc
Auto merge of #12063 - iDawer:ide.signature_help, r=Veykril
...
fix: Fall back to parameter definitions on error types in signature help
Fixes #10432
2022-04-23 14:23:30 +00:00
iDawer
baa4fa09ef
Add fallback for return type
2022-04-23 17:21:21 +05:00
iDawer
fae9049ccd
Fall back to parameter definitions on error types in signature help
2022-04-23 17:21:21 +05:00
bors
c606229241
Auto merge of #12060 - Veykril:completion-ctx, r=Veykril
...
minor: Simplify
bors r+
2022-04-23 00:29:18 +00:00
Lukas Wirth
ea45e54458
Simplify
2022-04-23 02:21:27 +02:00
bors
1894473b19
Auto merge of #12058 - jonas-schievink:one-thread-with-extra-stack-please, r=jonas-schievink
...
fix: Spawn a new thread with a larger stack for the LSP and proc-macro server
This runs the server and proc-macro process in dedicated threads with 8 MB of stack space to paper over OS differences and fix occasional stack overflows.
This hopefully resolves https://github.com/rust-lang/rust-analyzer/issues/11669
2022-04-22 15:46:30 +00:00
Jonas Schievink
b5a56c7d53
Spawn a new thread with a larger stack for the server
2022-04-22 17:35:03 +02:00
bors
ebe6e30f04
Auto merge of #12054 - HKalbasi:const_generic, r=flodiebold
...
Fix const generic panic in dyn trait
fix #12048
2022-04-22 15:22:49 +00:00
hkalbasi
785ae4dfa8
remove trailing space
2022-04-22 19:29:10 +04:30
hkalbasi
0b5dd42fac
Add some comments about why never!() never happens
2022-04-22 19:22:18 +04:30
hkalbasi
d33d5fca1d
fix const generic panic in dyn trait
2022-04-22 01:36:11 +04:30
bors
24f9209a87
Auto merge of #12040 - rainy-me:improve-parameter-completion, r=jonas-schievink
...
fix: Improve parameter completion
fix https://github.com/rust-lang/rust-analyzer/issues/12016 and handles some extra cases.
2022-04-21 15:39:10 +00:00
rainy-me
8f8f20fda5
fix: lookup
2022-04-22 00:07:42 +09:00
Ted Kaminski
ecb1368027
fix: index the correct CargoWorkspace with rustc_private
2022-04-20 17:16:04 +00:00
Jonas Schievink
dd4a92176c
Prefer core/alloc over std if no_std is conditional
2022-04-20 14:07:40 +02:00
rainy-me
a58f7acc97
fix: improve parameter completion
2022-04-20 17:56:20 +09:00
Jonas Schievink
c6ffffccbd
Allows triggering commands after an assist edit
2022-04-19 18:45:48 +02:00
Lukas Wirth
f8c32df7cd
minor: Document completion context some more
2022-04-18 16:54:13 +02:00
bors
e0d41bc2a1
Auto merge of #12021 - Veykril:completion-ctx, r=Veykril
...
internal: Add a `NameContext` to `CompletionContext`, move out some ImmediateLocation variants
Continues the completion rewrite I started some time ago
(will merge tomorrow after stable since our completion tests still let a lot through)
2022-04-18 14:00:56 +00:00
XFFXFF
fedd0245d1
derive completions take existing derives into count
2022-04-18 21:34:36 +08:00
Edwin Cheng
72fcc66835
More visibility for switch workspaces and its states
2022-04-18 14:26:00 +08:00
Lukas Wirth
ff667c7228
internal: Add a NameContext
to CompletionContext
, move out some ImmediateLocation variants
2022-04-17 21:53:58 +02:00
Laurențiu Nicola
117f902d55
Bump deps
2022-04-17 19:36:08 +03:00
bors
a45a63e577
Auto merge of #12013 - XFFXFF:associated_const_equality, r=Veykril
...
fix: support `associated_const_equality` in parser
This pr fixes #11965 . The parser now allows eq constraints on associated constants.
I've added tests for `HasCount<Count = {N}>` and `HasCount<Count = 0>`
2022-04-17 13:05:47 +00:00
XFFXFF
6580d75308
update parser to support associated const equality
2022-04-17 20:26:06 +08:00