Releases: rust-lang/rust-analyzer
2024-03-04
Changelog #223
Commit: 037924c
Release: 2024-03-04
(v0.3.1868
)
New Features
#16638
(first contribution) adddestructure_struct_binding
assist.#16651
addfill_record_pattern_fields
assist.#16687
support tuples in term search.#16555
,#16692
speed up completions by considering coherence.
Fixes
#16630
fix type inference of closures with predicates.#16679
resolve modules in blocks in theide
layer.#16647
fix false positive fordyn Trait
inreplace_filter_map_next_with_find_map
.#16678
fix panic when inlining callsites inside macro parameters.#16684
don't panic on synthetic syntax in inference diagnostics.#16691
fix completions panicking with certain macro setups.#16693
prefer sysrootrustc
inrust-project.json
projects.#16696
,#16709
handlederef_mut
andindex_mut
in index expressions.#16727
don't highlight related associated items of supertraits.#16702
ignore generic arguments in intra-doc link path resolution.#16665
prioritizerustup
sysroots over system ones.#16695
revert doc-comment highlighting.
Internal Improvements
#16670
(first contribution) document NeoVim inlay hint configuration.#16673
(first contribution) narrow downtypos
ignore list.#16706
dropload-cargo
dependency on ide.#16738
bumprustc_pattern_analysis
.#16627
add repository URL and code sample sections to the bug report template.#16669
mergeBorrowKind::Unique
intoBorrowKind::Mut
.#16697
addRelPath::to_path_buf()
method.#16698
derivePartialEq
,Eq
andHash
forhir::Param
.#16705
add public function for resolving callable AST expressions to their HIR equivalents.#16707
exportSemanticsImpl
fromhir
.#16680
removesalsa
compile-fail tests.
See also the changelog post.
2024-02-26
Changelog #222
Commit: 5346002
Release: 2024-02-26
(v0.3.1860
)
New Features
#16489
(first contribution) create alias when renaming an import.#16589
addunresolved-ident
diagnostic.#16303
addnon-exhaustive-let
diagnostic.#16475
support multiple tab stops for edits in VSCode.
Fixes
#16358
(first contribution) de-duplicate references from macro expansions.#16621
(first contribution) avoid settingRUSTC_BOOTSTRAP
for build scripts, to prevent spurious recompiles.#16590
fixremove-unnecessary-else
false positives onif
expressions.#16616
try to fix potential server hang with build scripts.#16645
fix deadlock betweenrecreate_crate_graph
andfile_line_index
.#16618
don't escape{
in assists.#16637
account for string delimiters correctly in proc macro server.#16606
render associated item owner in hover for items other than functions.
Internal Improvements
#16654
(first contribution) add-V
shorthand for--version
.#16643
,#16652
reducesalsa
memory usage.#16612
fetch toolchain and data layout for detached files.#13112
set up handling of auto trait bounds, but leave it disabled due to performance problems.#16617
attempt to add a timeout torustc_tests
.#16648
pinrustc-tests
commit.#16649
,#16650
disablerustc-tests
metrics.#16601
check out repository before runningtypos
.#16646
remove some repeated words.#16668
sync from downstream.
See also the changelog post.
2024-02-19
Changelog #221
Commit: 68c506f
Release: 2024-02-19
(v0.3.1850
)
New Features
#16092
(first contribution) introduce term search torust-analyzer
.#16117
(first contribution) prioritize constructors and builders in completions.#15923
improve support for ignored proc macros.#15476
substitute$saved_file
in customcheck
commands.
Fixes
#16550
(first contribution) activate on top levelCargo.toml
andrust-project.json
files.#16530
fix macro transcriber emitting incorrect lifetime tokens.#16541
highlight doc comments.#16547
validate literals in proc macro server'sFreeFunctions::literal_from_str
.#16544
only complete traits inimpl ... for
.#16553
improve parser error recovery on=
in record field initializer and patterns.#16554
pass.cargo/config.toml
environment variables to proc-macro server.#16563
setRUSTUP_TOOLCHAIN
and invoke the proxies instead of sysroot binaries.#16247
fix build scripts not being rebuilt on some occasions.#16574
fixneedless_return
false positives on trailing inner item declarations.#16582
respect textual length of paths infind_path
.#16583
ignore type mismatches between{unknown}
and non-{unknown}
types.#16586
remove cargo knowledge fromCrateData
.#16569
place snippets correctly in multi-edit assists.#16579
fix snippets being placed leftwards of where they should be.#16559
fill in SCIP documentation fields.
Internal Improvements
#16588
(first contribution) parse (nightly)const
andasync
trait bounds.#16587
(first contribution) update GitHub actions and Node version.#16576
(first contribution) add license files tolsp-server
.#15003
add basic support forbecome
expressions (tail calls).#16577
migrate assists to the structured snippet API, part 7 of 7.#16446
implementliteral_from_str
in proc macro server.#16537
,#16545
make tool discovery prefer sysroot paths.#16540
makemacro_arg
query always returns aTokenTree
.#16560
set channel override when querying the sysroot metadata.#16558
updateJsonProject
to include optional fields.#16562
addclippy
andrustfmt
problem matchers to CI.#16573
removesalsa
compile tests.#16533
bumprustc_pattern_analysis
.#16585
bumpactions/checkout
tov4
.#16598
,#16599
,#16600
downgradeactions/checkout
,actions/setup-node
and Node in release workflow.#16597
sync from downstream.
See also the changelog post.
2024-02-12
Changelog #220
Commit: c06ca6c
Release: 2024-02-12
(v0.3.1839
)
New Features
#16510
add option to only runcargo check
on the current package.#16502
add unnecessary else diagnostic.#16460
add trailing return diagnostic.#16477
add incorrect case diagnostics for traits and their associated items.#16454
addbreak
andreturn
postfix completions.#16424
add support for convertinglet
statements to guarded returns.#15863
addUnindexedProject
notification for LSP clients.
Fixes
#16487
(first contribution) improveDeref
handling in "Generate getter" assist.#16509
render visibility for tuple struct fields.#16124
improve parser error recovery on missing arguments in call expressions.#16484
preservewhere
clause when expanding built-in derive macros.#16462
improve error message when proc-macros have not yet been built.#16497
fix spacing when inlining functions defined in macros.#16517
fix crash insidefilter_unnecessary_bounds
on missing generic parameter.
Internal Improvements
#16482
(first contribution) use boxed slice forSubtree::token_trees
.#16503
movesalsa
fork in-tree.#16505
optimize input queries that take no arguments.#16527
remove hack for self-referentialSyntaxContext
s.#16467
migrate assists to the structured snippet API, part 6.#16474
instrument more paths usingtracing
.#16499
bumprustc_pattern_analysis
.#16525
abstract more overItemTreeLoc
-like structs.#16470
lint against debug prints and disallowed types using Clippy.#16500
run Clippy on Windows, not Linux.#16518
,#16519
,#16521
enable more Clippy lints.#16492
,#16532
sync from downstream.
See also the changelog post.
2024-02-05
Changelog #219
Commit: 39ad79b
Release: 2024-02-05
(v0.3.1831
)
New Features
#16439
support "Go to definition" from insideinclude!
d files.#16417
add "Normalize import" assist and improve "Merge imports".#16441
add option to exclude tests from references search results.
Fixes
#15730
(first contribution) add postfix completion forlet .. else
.#16453
undo special bracket classification in VS Code config.
Internal Improvements
#16463
(first contribution) remove references toabi_amdgpu_kernel
.#16394
,#16456
extendtracing
integration and use it inhprof
.#16459
use improvedadjusted_display_range
for all diagnostics.#16461
remove unnecessary usages ofExpansionInfo
.#16447
clean upmir
error variants.#16479
use MacOS 12 runners for releases.#16451
work through temporarily allowed Clippy lints, part 2.#16413
runclippy
on CI.#16448
,#16469
add typo check to CI.#16476
sync from downstream.#16416
VS Code: report conflict withpanicbit.cargo
.
See also the changelog post.
2024-01-29
Changelog #218
Commit: 7219414
Release: 2024-01-29
(v0.3.1823
)
New Features
#16420
use upstream exhaustiveness checker.
Fixes
#16431
(first contribution) useadjusted_display_range_new
inmismatched_arg_count
diagnostic.#16427
filter#[cfg]
-ed out fields when lowering record patterns.
Internal Improvements
#16415
makeTryToNav
trait public.#16435
do not return code lens data after resolving.#16434
restructure and clean uphir-expand
a bit.
See also the changelog post.
2024-01-22
Changelog #217
Commit: d410d4a
Release: 2024-01-22
(v0.3.1815
)
New Features
#16370
show additional value information when hovering over literals.#16374
,#16375
show implemented notable traits on hover.#16391
add config to allow renaming of non-local definitions.#16372
addOne
import granularity.
Fixes
-
#16349
add error recovery foruse_tree_list
parsing: -
#16385
fix intra-doc links. -
#15868
inferOUT_DIR
when workspace root contains a symlink. -
#16396
fix panic when extracting struct from enum variant. -
#16378
handleSelfParam
better in "Inline call". -
#16405
includefor
in "Convert to guarded return". -
#16314
parsemacro_rules
as macro name. -
#16367
makevalue_ty
query fallible.
Internal Improvements
#15636
,#16383
(first contribution) show which roots are being scanned in progress messages.#16196
(first contribution) renamegenerator
tocoroutine
.#16409
(first contribution) remove some unused code.#16350
speed up line index calculation via NEON for aarch64.#16395
speed up line ending normalization usingmemchr
.#16366
make data queries transparent over their diagnostics variant.#16352
,#16389
portrustfmt
's algorithm for import ordering.#16351
eagerly lower enum variants inCrateDefMap
construction.#16388
recordFnAbi
.#16356
add unstable config for loading the sysroot sources viacargo metadata
.#16380
,#16387
runcargo metadata
on sysroot for CI metrics.#16384
make use of some newSmolStr
improvements.#16397
refactormacro_call
to be consistent with other parsers.#16398
automatically fix Clippy lints.#16401
expand lint tables and make Clippy happy.#16404
work through temporarily allowed Clippy lints, part 1.#16406
addmax_line_length
to.editorconfig
.#16364
,#16412
sync from downstream.
See also the changelog post.
2024-01-15
Changelog #216
Commit: 9d8889c
Release: 2024-01-15
(v0.3.1807
)
New Features
-
#16209
(first contribution) add assist to merge nestedif
s:merge_ifs.mp4
-
#16308
use$crate
for built-in derives.
Fixes
#16265
(first contribution) includepub(crate)
imports in suggestions.#16348
fix nestedinclude!
s resolving from the wrong base file.#16312
fixrust-analyzer-proc-macro-srv
failing to launch on Windows.#16277
fix panic ingenerate_delegate_methods
.#16333
preserve extracted block comments in "Extract function".#16310
fix parsing of method calls on ranges.#16274
consider#[doc(notable_trait)]
for completion relevance.
Internal Improvements
#16307
don't store the VFS contents in memory.#16329
minor perf and memory improvements.#16347
consider all kinds of explicit private imports infind_path
.#16319
differentiate between VFS configuration and file change events.#16275
fixast::Path::segments
implementation.#16334
bumpsalsa
.#16317
sync from downstream.#16271
removesysroot-abi
feature flag fromproc-macro-test
.#16309
recognize proc macro server unexpectedly quitting and report the exit code.#16311
remove therustc_dependencies
crate.#16339
replacesource_root_crates
output hash set with a slice.
See also the changelog post.
2024-01-08
Changelog #215
Commit: af40101
Release: 2024-01-08
(v0.3.1799
)
New Features
-
#16222
(first contribution) addunresolved_assoc_item
diagnostic: -
#16279
support IDE features for tuple fields: -
#15933
resolve inherent and implemented associated items in doc comments: -
#16100
add quick fix for unresolved methods when an associated function with the same name exists: -
#16011
addrust-analyzer.cargo.buildScripts.rebuildOnSave
option to rebuild proc macros on save if they change. -
#16223
add quick fix for "Redundant associated item" diagnostic: -
#16298
add inlay hint for exclusive ranges:
Fixes
-
#16081
(first contribution) keep trailing whitespace in doc comments. -
#16139
(first contribution) give methods a container name. -
#16136
make the expected completion type a tad smarter with function types: -
#16258
,#16261
,#16267
,#16270
rewrite and optimizeImportMap::search_dependencies
. -
#16268
remove result limit for trait-importing method completions. -
#16153
tell user thatlinkedProjects
is set when failing to discover projects. -
#16234
fix focus range in attribute/derive upmapping. -
#16085
fix type inference withIndexMut
returning references. -
#15810
fix panic with macros in "Convert boolean to enum" and "Promot local to constant" assists. -
#16067
make "Introduce named generic" assist work with nested types. -
#16068
pick up new generic names on conflict in "Introduce named generic". -
#16114
fixSelf
type replacement in "Inline function". -
#16199
resolveSelf
in "Extract struct from enum variant". -
#16049
don't complete callable parantheses in struct literals. -
#16241
give a userful error whenrustc
cannot be found in explicit sysroot. -
#16285
fix panic on unaligned#[repr(packed)]
. -
#16062
updaterust-analyzer.cargo.check
documentation references torust-analyzer.check
.
Internal Improvements
#16179
(first contribution) populate new SCIPSymbolInformation
fields.#16213
(first contribution) update dev guide based on the 2024-01-01 release.#16252
(first contribution) switch toexpected.assert_eq
foride
tests.#15922
,#16238
,#16262
(first contribution) update Gentoo installation instructions.#16302
(first contribution) add a basicREADME.md
to theline-index
crate.#16290
reduceVec
cloning in MIR lowering and eval.#16237
reduceArc
allocations inmacro_expand
.#16082
migrate assists to the structured snippet API, part 5.- clean up and enhance readability of
generate_delegate_trait
. #16226
expose whether the channel has been dropped inlsp-server
errors.#16211
use[workspace.lints.clippy]
to configure lints.#16256
only compare relevant parts inide::{runnables, inlay_hints}
tests.#16260
replace single usage ofcheck_expect
withcheck_diagnostics
.#16294
fix some minorclippy::perf
issues.#16248
addproc-macro-test
crate back to the main workspace.#16249
sync from downstream.
See also the changelog post.
2024-01-01
Changelog #214
Commit: 9db5155
Release: 2024-01-01
(v0.3.1791
)
Fixes
#16221
(first contribution) fix panic in some macros due to unhandledSyntaxContextId::SELF_REF
.#16096
(first contribution) update VS Code extension panic problem matcher.#16224
fix handling of hygiene in the presence ofSyntaxContextId::SELF_REF
.
Internal Improvements
#16217
(first contribution) simplify implementation ofapply_document_changes
.
See also the changelog post.