Laurențiu Nicola
cb8434e594
Bump either
2023-11-15 13:07:36 +02:00
Laurențiu Nicola
2dbdaa247b
Bump tracing-subscriber
2023-11-15 13:04:39 +02:00
Laurențiu Nicola
d83620a5ba
Bump tracing-tree
2023-11-15 13:01:54 +02:00
Laurențiu Nicola
f53368dd3f
Bump tracing
2023-11-15 13:00:32 +02:00
Laurențiu Nicola
f66df10f87
Bump itertools
2023-11-15 12:53:56 +02:00
Laurențiu Nicola
dfc885e0fd
Bump anyhow
2023-11-15 12:49:32 +02:00
bors
57ef70cc08
Auto merge of #15901 - Veykril:inner-diag, r=lnicola
...
fix: Diagnose everything in nested items, not just def diagnostics
Turns out we only calculated def diagnostics for these before (was wondering why I wasn't getting any type mismatches)
2023-11-15 10:07:15 +00:00
bors
535eb0da9d
Auto merge of #15874 - DropDemBits:structured-snippet-migrate-4, r=Veykril
...
internal: Migrate assists to the structured snippet API, part 4
Continuing from #15260
Migrates the following assists:
- `add_turbo_fish`
- `add_type_ascription`
- `destructure_tuple_binding`
- `destructure_tuple_binding_in_subpattern`
I did this a while ago, but forgot to make a PR for the changes until now. 😅
2023-11-15 09:54:45 +00:00
bors
a47330308b
Auto merge of #15875 - Young-Flash:fix_grammar, r=Veykril
...
fix `PathSegment` grammar
close https://github.com/rust-lang/rust-analyzer/issues/15778
2023-11-15 09:43:11 +00:00
Lukas Wirth
498f39eae2
fix: Diagnose everything in nested items, not just def diagnostics
2023-11-15 10:34:09 +01:00
Laurențiu Nicola
6b53c09ef5
Merge branch 'master' into sync-from-rust
2023-11-15 09:46:27 +02:00
Laurențiu Nicola
610eafe009
Merge commit '76633199f4316b9c659d4ec0c102774d693cd940' into sync-from-rust
2023-11-15 09:45:17 +02:00
DropDemBits
3f99a56fae
Fix panic in add_type_ascription
...
Assist wasn't applicable when the let statement was missing a pattern
before, so we should do the same now.
2023-11-14 18:43:48 -05:00
DropDemBits
df629627c5
Add tests for LetStmt::set_ty
2023-11-14 17:35:24 -05:00
Lukas Wirth
723d799ec1
Diagnose missing assoc items in trait impls
2023-11-14 22:00:52 +01:00
Lukas Wirth
e21d21a8fb
Diagnose incorrect unsafety for trait impls
2023-11-14 21:05:27 +01:00
Lukas Wirth
d5faad1dae
Fix inlay-hint tests being invalidated by minicore chanes
2023-11-14 18:53:48 +01:00
Lukas Wirth
6ddccc9a6e
Diagnose some orphan trait impl cases
2023-11-14 18:09:34 +01:00
Laurențiu Nicola
d45ff2484f
Depend on rustc_driver
2023-11-14 18:07:02 +02:00
Lukas Wirth
b74015512d
Remove UserError from LayoutError
2023-11-14 13:32:04 +01:00
Lukas Wirth
e844784d8d
Simplify
2023-11-14 12:53:14 +01:00
DropDemBits
787ca888e3
Add IdentPat::set_pat
...
Needed so that the `tuple_pat` node gets added to the syntax tree,
which is required as we're using structured snippets.
2023-11-13 20:41:06 -05:00
DropDemBits
6f68cd3394
Remove unwraps from destructure_tuple_binding
2023-11-13 18:42:58 -05:00
Laurențiu Nicola
b6951defa6
Add missing rustc_private features
2023-11-13 21:38:57 +02:00
Michael Schmidt
67058605d8
FIxed typo in highlight_related.rs
2023-11-13 13:13:39 +01:00
Young-Flash
3e5bc9a9c8
impl qualifying_trait
for PathSegment
2023-11-13 18:14:00 +08:00
Lukas Wirth
d6b908ec41
Fix import preference config keys
2023-11-12 17:48:40 +01:00
Laurențiu Nicola
bad3d9e766
Include toml files in the vfs
2023-11-12 16:45:47 +02:00
bors
1152f593b3
Auto merge of #15870 - lnicola:expand-macro, r=lnicola
...
minor: Make "Expand macro" command title more explicit
Closes [#15856 ](https://github.com/rust-lang/rust-analyzer/issues/15856 ).
I opted for "caret", since it's the better term (cursor is the mouse), but I'm not sure how popular it is these days.
2023-11-12 13:48:43 +00:00
Laurențiu Nicola
cace36cade
Make Expand macro command title more explicit
2023-11-12 11:43:46 +02:00
Young-Flash
23fde40fed
fix PathSegment
grammar
2023-11-12 11:20:14 +08:00
DropDemBits
4aaa592a9a
Migrate destructure_tuple_binding
to mutable ast
...
Due to the way the current tree mutation api works, we need to collect
changes before we can apply them to the real syntax tree, and also can only
switch to a file once.
`destructure_tuple_binding_in_sub_pattern` also gets migrated even
though can't be used.
2023-11-11 21:07:19 -05:00
DropDemBits
f3dcc67dfa
Migrate add_type_ascription
2023-11-11 21:05:27 -05:00
DropDemBits
5fc8cc52e2
Add LetStmt::set_ty
...
Way for setting and removing the type ascription of a let stmt
2023-11-11 21:05:27 -05:00
DropDemBits
92422f7488
Use syntax's version of SyntaxElement
2023-11-11 21:05:27 -05:00
DropDemBits
cc4e06f04b
Migrate add_turbo_fish
to mutable ast
...
`add_type_ascription` is still left as-is since it's a different assist
2023-11-11 21:05:26 -05:00
DropDemBits
02c7b8b9ba
Add MethodCallExpr::get_or_create_generic_arg_list
...
Mirrors `PathSegment's` version, except that it always generates a
turbofish
2023-11-11 21:05:26 -05:00
Lukas Wirth
74e5444f15
Fix some FIXMEs
2023-11-11 15:49:57 +01:00
Lukas Wirth
ba61766217
Add config for preferring / ignoring prelude modules in find_path
2023-11-11 14:56:38 +01:00
Lukas Wirth
801a887954
Record all import paths per item in ImportMap
2023-11-11 14:48:44 +01:00
Lukas Wirth
2339ba4440
Prepare ImportMap for supportin multiple import paths per item
2023-11-11 14:04:24 +01:00
Pascal Kuthe
0647b645cd
ensure renames happen after edit
2023-11-10 17:39:32 +01:00
Laurențiu Nicola
9826717550
Improve check for include macro
2023-11-10 16:53:08 +02:00
bors
7cca4e5816
Auto merge of #15854 - alibektas:15782/relax_hidden_attr, r=lnicola
...
fix: Ignore doc(hidden) attr if no body is present
fixes #15782
2023-11-10 13:30:52 +00:00
bors
5afaf680b8
Auto merge of #15864 - Young-Flash:find_self, r=lnicola
...
fix: find `Self` reference
took a lot of time to debug to find the problem, here should compare the actual `Adt` type
close https://github.com/rust-lang/rust-analyzer/issues/12693
2023-11-10 13:13:14 +00:00
Young-Flash
e0276dc5dd
fix: find Self
reference
2023-11-10 19:54:43 +08:00
bors
76633199f4
Auto merge of #15860 - HKalbasi:fix-capture-raw-pointer, r=HKalbasi
...
Truncate closure capture place for raw pointer
fix https://github.com/rust-lang/rust-analyzer/issues/15670#issuecomment-1804070623
2023-11-09 17:53:52 +00:00
bors
ebb9ed90d1
Auto merge of #15853 - Kangaxx-0:gaxx/update-parser-event-comment, r=lnicola
...
Try to update parser/event doc
`TokenSource` and `TreeSink` has been refactored as part of #10765 , they no longer exist in code repo. This pr tries to remove them from event module level comment to prevent confusion.
2023-11-09 17:39:58 +00:00
hkalbasi
3bcdb7d886
Truncate closure capture place for raw pointer
2023-11-09 20:59:17 +03:30
Young-Flash
be62e0bf08
fix: remove parenthesis should ensure space
2023-11-09 18:33:49 +08:00
Ali Bektas
b0101da116
Ignore doc(hidden) attr if no body is present
2023-11-09 02:12:53 +01:00
Gaxx
fa7a91844a
Try to update parser doc
2023-11-08 16:29:21 -08:00
bors
7059ae2fc2
Auto merge of #15847 - wasd96040501:feat/preview_adt, r=lnicola
...
feat: preview adt field when hover
Closes #13977
![20231108194345_rec_](https://github.com/rust-lang/rust-analyzer/assets/14040068/95894c4b-de6e-4ca4-98b3-6ab4559d0950 )
2023-11-08 13:48:19 +00:00
YangzeLuo
41bcd542e2
feat: preview adt field when hover
2023-11-08 21:45:32 +08:00
Laurențiu Nicola
d1d111d09e
Merge commit '3b7c7f97e4a7bb253a8d398ee4f8346f6cf2817b' into sync-from-ra
2023-11-08 08:15:03 +02:00
hkalbasi
1086b294c2
update rustc dependencies
2023-11-08 01:16:47 +03:30
roife
13249b7dd9
fix: correct a typo in a comment in base-db/lib.rs
2023-11-07 14:51:34 +08:00
Young-Flash
b84940b199
make generate_mut_trait_impl assist trigged for std trait only
2023-11-05 12:27:10 +08:00
Young-Flash
8d8d12120d
feat: add generate_mut_trait_impl assist
2023-11-05 12:27:10 +08:00
Laurențiu Nicola
19bf0da9d7
Fix docs path for derive macros
2023-11-04 13:33:19 +02:00
Nicholas Nethercote
6eaf3f8bb2
Remove support for compiler plugins.
...
They've been deprecated for four years.
This commit includes the following changes.
- It eliminates the `rustc_plugin_impl` crate.
- It changes the language used for lints in
`compiler/rustc_driver_impl/src/lib.rs` and
`compiler/rustc_lint/src/context.rs`. External lints are now called
"loaded" lints, rather than "plugins" to avoid confusion with the old
plugins. This only has a tiny effect on the output of `-W help`.
- E0457 and E0498 are no longer used.
- E0463 is narrowed, now only relating to unfound crates, not plugins.
- The `plugin` feature was moved from "active" to "removed".
- It removes the entire plugins chapter from the unstable book.
- It removes quite a few tests, mostly all of those in
`tests/ui-fulldeps/plugin/`.
Closes #29597 .
2023-11-04 08:50:46 +11:00
bors
11a263d5ee
Auto merge of #15819 - wasd96040501:feat/skip_tt_count_limit, r=lnicola
...
feat: skip checking token tree count for include! macro call
fix #15335 #15648
2023-11-02 10:48:51 +00:00
luoyangze.ptrl
b76f2c8ee0
fix: using name(include) instead of str
2023-11-02 10:14:54 +08:00
luoyangze.ptrl
740a864b7c
feat: skip checking tt count for include macro call
2023-11-02 00:27:11 +08:00
bors
99e94d2938
Auto merge of #15788 - Young-Flash:import_anonymously, r=lnicola
...
feat: import trait with alias
![import_trait_with_alias](https://github.com/rust-lang/rust-analyzer/assets/71162630/81601160-fe55-46e3-ab8d-b2705e1aa696 )
cc `@Veykril`
close https://github.com/rust-lang/rust-analyzer/issues/15684
2023-10-31 14:33:00 +00:00
Young-Flash
929544ef28
use check_assist_by_label
to pick assist
2023-10-31 22:13:07 +08:00
Young-Flash
a723acf346
simplify the code
2023-10-31 21:03:26 +08:00
cui fliter
9c99afe3aa
Fix some typos
...
Signed-off-by: cui fliter <imcusg@gmail.com>
2023-10-30 10:31:50 +08:00
bors
f493207744
Auto merge of #15809 - Young-Flash:extract_variable_in_place, r=HKalbasi
...
feat: make extract_variable assist in place
![extract_variable_without_select](https://github.com/rust-lang/rust-analyzer/assets/71162630/96be2de4-42c9-4b24-b3e1-8b3e3a2da1d9 )
close https://github.com/rust-lang/rust-analyzer/issues/15796
2023-10-28 06:20:35 +00:00
Young-Flash
7186a28717
chore: add unapplicable test for extract_variable without select
2023-10-28 10:06:09 +08:00
Young-Flash
00cdbe6c96
feat: make extract_variable assist in place
2023-10-27 21:16:34 +08:00
Roberto Bampi
99ec3aa8a3
scip: update crate to version 0.3.1.
...
While the git repo has been updated constantly, crates.io has only now
been updated after more than a year of activity.
2023-10-26 16:20:06 +02:00
bors
2f6961aaaf
Auto merge of #15780 - Young-Flash:auto_import, r=lnicola
...
fix: import trait if needed for `unqualify_method_call` assist
before:
![before](https://github.com/rust-lang/rust-analyzer/assets/71162630/66fda67d-afcb-453f-91a9-7e85993c3d2a )
after:
![after](https://github.com/rust-lang/rust-analyzer/assets/71162630/72ffbda4-1615-4413-836e-480eb52e9728 )
follow up https://github.com/rust-lang/rust-analyzer/pull/13825
2023-10-23 16:56:22 +00:00
Young-Flash
45ee88f9cb
fix: remove unwrap
2023-10-23 23:12:07 +08:00
hkalbasi
8b82ea4f51
Store binding mode for each instance independently
2023-10-22 23:35:33 +03:30
Young-Flash
4f5f7e2800
feat: import trait with alias
2023-10-22 21:39:00 +08:00
bohan
d20471334f
use visibility to check unused imports and delete some stmts
2023-10-22 21:27:46 +08:00
Laurențiu Nicola
094cecd3bd
Fix VS Code detection for Insiders version
2023-10-21 19:08:41 +03:00
bors
954fb1d673
Auto merge of #15727 - DaniPopes:lintgen-unstable-book, r=HKalbasi
...
feat: generate descriptors for all unstable features
Most unstable features don't have their own chapter in the unstable book, so a rustc helper tool (`src/tools/unstable-book-gen`) generates shims to fill the gaps.
Run this tool to generate the full unstable-book source before parsing it.
2023-10-20 16:42:23 +00:00
bors
bd38871a98
Auto merge of #15736 - rmehri01:15678_module_incorrect_case_diagnostics, r=HKalbasi
...
fix: add incorrect case diagnostics for module names
Adds diagnostics for checking both inline and file module names are snake case.
Closes #15678
2023-10-20 16:20:40 +00:00
Young-Flash
a7f77d89a9
fix: auto import trait if needed
2023-10-19 17:34:17 +08:00
bors
7f1e6fdfee
Auto merge of #15775 - Young-Flash:refactor, r=Veykril
...
refactor: change generated variable name
change generated variable name in `replace_is_some_with_if_let_some` assist
close https://github.com/rust-lang/rust-analyzer/issues/15765
2023-10-18 06:39:34 +00:00
Young-Flash
1a0fe58d81
refactor: change generated variable name
2023-10-17 17:34:11 +08:00
bors
d6afb4fa23
Auto merge of #15746 - pvalletbo:string-literals-diagnose, r=Veykril
...
String literals diagnose
Continues the work from #15744 to add diagnosis errors to Str, ByteStr, and CStr literal kinds.
Also replaces `unescape_char` for `unescape_byte` to use the correct method for Byte literals.
2023-10-16 18:23:22 +00:00
Lukas Wirth
40acc5250f
Update rustc_abi dependency
2023-10-15 18:57:40 +02:00
bors
65532e417d
Auto merge of #15755 - Young-Flash:cursor_selection, r=lnicola
...
fix: make cursor select at _tmp
Here make cursor select at `_tmp` atuomatically after the assist apply. Refer to [vscode snippet placeholder](https://code.visualstudio.com/docs/editor/userdefinedsnippets#_placeholders ).
![cursor_selection](https://github.com/rust-lang/rust-analyzer/assets/71162630/a7866efe-2d54-488b-903e-9df039f34a7e )
following https://github.com/rust-lang/rust-analyzer/pull/15752
2023-10-15 07:41:29 +00:00
Christian Schott
8217ff9c16
make ProjectionStore-impls pub-accessible
2023-10-14 19:20:11 +02:00
bors
16ac6c284c
Auto merge of #15756 - harpsword:fix_typo_in_mbe_lib, r=lnicola
...
fix typo in mbe/lib.rs comment
fix typo in mbe/lib.rs comment
2023-10-14 06:23:12 +00:00
harpsword
3f4368a090
fix: fix typo in mbe/lib.rs comment
2023-10-14 14:13:24 +08:00
Young-Flash
bc34e8f1ad
feat: make cursor select at _tmp
2023-10-14 11:05:38 +08:00
bors
862693ff95
Auto merge of #15752 - Young-Flash:replace_is_method_with_if_let_method, r=HKalbasi
...
feat: add replace_is_ok_with_if_let_ok assist
following https://github.com/rust-lang/rust-analyzer/pull/15743
2023-10-13 07:32:55 +00:00
Young-Flash
5bbca22720
update mod order to adapt alphabetically sorted
2023-10-13 00:09:13 +08:00
Young-Flash
506b1e515b
feat: add replace_is_ok_with_if_let_ok assist
2023-10-12 23:26:42 +08:00
bors
84e1d27343
Auto merge of #15743 - Young-Flash:replace_is_some_with_if_let_some, r=HKalbasi
...
add replace_is_some_with_if_let_some assist
This is a basic impl, if it is ok, `if my_result.is_ok()`-> `if let Ok(_x) = my_result `will be add next.
close https://github.com/rust-lang/rust-analyzer/issues/12977
2023-10-12 08:20:08 +00:00
Young-Flash
3605bb38ff
fix CI: generate doctest
2023-10-12 11:50:44 +08:00
Pol Valletbó
6845c80a2f
fix: format
2023-10-11 15:52:22 +02:00
Pol Valletbó
4b281ffdf2
chore: format imports
2023-10-11 15:52:05 +02:00
Pol Valletbó
b769f34f63
chore: move common code to function
2023-10-11 15:45:45 +02:00
Pol Valletbó
e1aeb7fa79
fix: handle errors for string byte string and c_string
2023-10-11 15:25:52 +02:00
Pol Valletbó
677e6f3439
fix: use unescape_byte function for Byte literals
2023-10-11 13:09:15 +02:00