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
Lukas Wirth
3de9a42810
Disable rustfmt for expand_macro on wasm platforms
2022-04-17 14:00:19 +02:00
Lukas Wirth
895a16265c
Fix macro patterns not getting formatted properly
2022-04-17 13:46:00 +02:00
Lukas Wirth
e2f1a9a558
feat: Attempt to format expand_macro output with rustfmt if possible
2022-04-17 13:33:39 +02:00
XFFXFF
bdecd9374e
update grammer to support associated const equality
2022-04-17 12:03:52 +08:00
bors
53afd2a707
Auto merge of #12011 - iDawer:completion_detail.impl_trait, r=Veykril
...
fix: Show `impl Trait` in argument positon in completion details
Follow up for #11991
`hir`: Use `db.callable_item_signature` query more.
2022-04-16 21:13:07 +00:00
iDawer
d26deb5b9f
Show impl Trait
in argument positon in completion details
...
`hir`: Use `db.callable_item_signature` query more.
2022-04-16 19:18:42 +05:00
Aleksey Kladov
3f4235d59b
internal: more visibility into why things happen
2022-04-16 13:17:27 +01:00
Lukas Wirth
6f037da8cb
fix: Fix proc-macro change check being inverted
2022-04-16 12:36:31 +02:00
iDawer
c53412046f
minor: address nit
2022-04-16 13:54:24 +05:00
iDawer
03c5dd1252
extract_function
: use appropriate return type for async fns
2022-04-16 13:54:24 +05:00
iDawer
9d787e1bfe
Add hir::Function::async_ret_type
method
...
Adjust completion detail for `async fn` return types
2022-04-16 13:53:22 +05:00
iDawer
f972adc201
fix: comletion detail shows {unknown}
for impl Trait
in return position
2022-04-16 13:41:10 +05:00
bors
1c22537b3b
Auto merge of #12005 - Veykril:hir-ty-simplify, r=Veykril
...
internal: Remove frequent `Arc<Body>` clones in type checking
bors r+
2022-04-15 20:23:15 +00:00
Lukas Wirth
e5bf60fee2
minor: Remove frequent Arc<Body>
clones in type checking
2022-04-15 21:44:47 +02:00
Lukas Wirth
f82d230081
Simplify
2022-04-15 21:25:44 +02:00
bors
e10284a10c
Auto merge of #12003 - Veykril:hir-ty-simplify, r=Veykril
...
internal: Remove duplicated crate id field from hir::Type
2022-04-15 18:25:02 +00:00
Lukas Wirth
17691ee974
Slightly optimize Resolver::krate
2022-04-15 20:17:50 +02:00
Lukas Wirth
4b4a34327e
Remove duplicated crate id field from hir::Type
2022-04-15 20:14:35 +02:00
bors
20e6065a7a
Auto merge of #12002 - Veykril:proc-macro-change-panic, r=Veykril
...
fix: Fix source root panic in global state when checking out older git revs
Fixes https://github.com/rust-lang/rust-analyzer/issues/11357
2022-04-15 18:02:40 +00:00
Lukas Wirth
f540d1c2aa
fix: Fix source root panic in global state when checking out older git revs
2022-04-15 20:02:15 +02:00
bors
a912f2a9f6
Auto merge of #12001 - Veykril:refs, r=Veykril
...
fix: Do reference search on all downmapped tokens with the same kind only
cc https://github.com/rust-lang/rust-analyzer/issues/11668
2022-04-15 17:43:24 +00:00
Lukas Wirth
58660dee2a
fix: Do reference search on all downmapped tokens with the same kind only
2022-04-15 19:42:48 +02:00
bors
5e41205e9c
Auto merge of #12000 - Veykril:hlmac, r=Veykril
...
fix: Tag `macro_rules` macro bang with `MacroBang` tag
cc https://github.com/rust-lang/rust-analyzer/issues/11996
2022-04-15 17:19:33 +00:00
Lukas Wirth
be27efabfa
fix: Tag macro_rules
macro bang with MacroBang
tag
2022-04-15 19:16:18 +02:00
Jonas Schievink
1fd232cd69
Enable ADT keyword completions in block expression
2022-04-14 18:39:27 +02:00
Jonas Schievink
d764e134d5
Fallback to primitive when path doesn't resolve
2022-04-14 15:51:38 +02:00
bors
63573d47aa
Auto merge of #11971 - jonas-schievink:on-type-fmt-assignments, r=jonas-schievink
...
feat: Add trailing `;` when typing `=` in assignment
![Peek 2022-04-12 19-41](https://user-images.githubusercontent.com/1786438/163022079-1ed114ef-7c75-490f-a8ed-731a13f0b44d.gif )
This does have a false positive to keep in mind, it will add a trailing `;` in the following snippet too, which is probably not desired:
```rust
fn is_zero(i: i32) -> bool {
i $0 0
}
```
However, that function is unlikely to be written from the "inside out" like that, so it might be acceptable. Typically `=` is only inserted last when the author realizes that an existing expression should be assigned to some variable.
2022-04-14 12:36:17 +00:00
Jonas Schievink
fbded178fa
Improve ItemTree pretty print output
2022-04-14 14:24:27 +02:00
Jonas Schievink
f96fd40104
add docs
2022-04-14 13:23:19 +02:00
Jonas Schievink
72dcfe6cc6
reenable test
2022-04-14 13:02:20 +02:00
Jonas Schievink
f5403aef96
simplify
2022-04-14 13:00:08 +02:00
bors
5620d25972
Auto merge of #11985 - Veykril:config-valid, r=Veykril
...
minor: Simplify config.rs a bit
2022-04-14 10:16:58 +00:00
Lukas Wirth
d7785a8fab
minor: Cleanup config.rs a bit
2022-04-14 12:16:38 +02:00
bors
13f36e7397
Auto merge of #11960 - Veykril:config-valid, r=Veykril
...
internal: Show more project building errors to the user
Should help out with https://github.com/rust-analyzer/rust-analyzer/issues/9720
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/11223
2022-04-14 09:36:08 +00:00
Lukas Wirth
b23b276310
internal: Show more project building errors to the user
2022-04-14 11:31:01 +02:00
Alex Touchet
940ec0967a
Update repo URL
2022-04-13 16:54:24 -07:00
bors
15844bf48c
Auto merge of #11956 - fee1-dead:master, r=flodiebold
...
feat: allow customizing the command for running build scripts
I have tested this locally and it fixed #9201 with some small changes on the compiler side with suggestions from https://github.com/rust-analyzer/rust-analyzer/issues/9201#issuecomment-1019554086 .
I have also added an environment variable `IS_RA_BUILDSCRIPT_CHECK` for crates to detect that it is a check for buildscripts, and allows defaulting to bogus values for expected environment variables.
2022-04-13 22:53:31 +00:00
Deadbeef
8b60bf6764
Update CI for Rust bors
2022-04-13 16:55:10 +02:00
Jonas Schievink
99e9e52fbc
Remove trailing ;
when turning assignment into ==
comparison
2022-04-13 16:01:09 +02:00
Jonas Schievink
b9dd7db817
Add more no-op tests
2022-04-13 15:47:33 +02:00
Deadbeef
73a033e77c
feat: allow customizing the command for running build scripts
2022-04-13 23:45:51 +10:00
Jonas Schievink
cde2a1de36
Add trailing ;
when typing =
in assignment
2022-04-12 19:39:19 +02:00
Laurențiu Nicola
5901eddb02
Bump chalk
2022-04-12 20:10:10 +03:00
Jonas Schievink
a182156517
Add trailing ;
when completing assoc const/type
2022-04-12 18:28:43 +02:00
bors[bot]
a64a70ebff
Merge #11967
...
11967: fix: Fix trait impl completions not triggering after `fn`/`const`/`type` r=jonas-schievink a=jonas-schievink
![screenshot-2022-04-12-17:13:01](https://user-images.githubusercontent.com/1786438/162996087-56540f5e-a6be-4111-a4a5-8de21f483a5e.png )
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/11467
cc https://github.com/rust-analyzer/rust-analyzer/issues/11860
bors r+
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com>
2022-04-12 16:03:12 +00:00
Jonas Schievink
3328a0a11b
Fix trait impl completions' lookup_by
text
2022-04-12 17:17:31 +02:00
bors[bot]
49847a25ae
Merge #11883
...
11883: fix(ide): move moudle directory when rename r=rainy-me a=rainy-me
fix : #10992
Added `FileSystemEdit::MoveDir` variant for move dirs. Original implemented as recursively move child mod files but had many issues like
1. left empty dir after rename file
2. only affect rust file
3. not performant
so changed to current version
Co-authored-by: rainy-me <github@yue.coffee>
2022-04-12 15:17:00 +00:00
rainy-me
3dd581b97d
fix: move dir on rename mod
2022-04-12 23:01:53 +09:00
Jonas Schievink
e66037f139
simplify
2022-04-12 15:34:12 +02:00
bors[bot]
faaec86ff0
Merge #11964
...
11964: internal: Show more project building errors to the user r=Veykril a=Veykril
Something very fishy is going on with the `rustc_workspace` handling, which caused this bug to only manifest in the `std` library but not other library crate... So there is either a bug there or just the fact that we seem to add duplicate dependencies (I think this is what we are doing with this right?) might be tripping something up somewhere.
cc https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/Rust-analyzer.20use.20inside.20stdlib
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-04-11 22:21:57 +00:00
Lukas Wirth
24af94b474
fix: Unset test feature in rustc source crates
2022-04-12 00:19:40 +02:00
Jonas Schievink
63f87ff047
Deprioritize already-imported names
2022-04-11 18:48:27 +02:00
Lukas Wirth
b90df7997d
Add simplistic config validation
2022-04-11 13:10:43 +02:00
Lukas Wirth
6d7055e322
Show config deseralization failures on start up
2022-04-11 13:05:34 +02:00
bors[bot]
7a564af989
Merge #11935
...
11935: feat: Switch to LSP inlay hints r=lnicola a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2022-04-11 09:29:15 +00:00
Alex Chi
51d66714ac
fix panic on GAT
...
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-04-11 13:52:02 +08:00
bors[bot]
24cf957627
Merge #11951
...
11951: minor: Simplify r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-04-10 18:21:54 +00:00
Lukas Wirth
7f3572fa0d
Simplify
2022-04-10 20:02:06 +02:00
bors[bot]
7720f163ae
Merge #11954
...
11954: Parse `for<'a>` closure syntax r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/11716
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-04-10 15:59:38 +00:00
Lukas Wirth
d8341c5b92
Parse for<'a> closure syntax
2022-04-10 17:50:14 +02:00
bors[bot]
3b40230a32
Merge #11953
...
11953: fix: `extract_module` is too eager r=Veykril a=iDawer
Refactored `extract_module`.
Searching for usages and import resolving are done lazily.
Close #11944
Co-authored-by: iDawer <ilnur.iskhakov.oss@outlook.com>
2022-04-10 13:31:33 +00:00
iDawer
6fff2c1798
extract_module
: Refactor loops
2022-04-09 22:07:44 +05:00
iDawer
1e71ac286b
extract_module: Resolve imports lazily
2022-04-09 16:52:53 +05:00
iDawer
031bdf2472
Refactor extract_module
2022-04-09 16:52:53 +05:00
iDawer
c2d12906b0
Clean up extract_module
2022-04-09 16:52:40 +05:00
Lukas Wirth
295f0c57a5
Revert #11912 as it parses all visited files
2022-04-09 13:41:06 +02:00
Lukas Wirth
9050db2e80
fix: Don't create hir::Local
s from const path patterns
2022-04-09 01:08:13 +02:00
Lukas Wirth
15e7112da3
fix: Check whether a parameter can be converted to a local
2022-04-09 00:55:45 +02:00
bors[bot]
399559e597
Merge #11940
...
11940: minor: bump lsp-server version r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-04-08 22:14:48 +00:00
Lukas Wirth
2d445de170
minor: bump lsp-server version
2022-04-09 00:13:47 +02:00
Jonas Schievink
22b13c8bff
Make trait item completions work in a bare impl and score them
2022-04-08 19:56:41 +02:00