Releases: rust-lang/rust-analyzer
Releases · rust-lang/rust-analyzer
nightly
Merge pull request #20144 from regexident/load-workspace-into-db Add `fn load_workspace_into_db` variant for `ra_ap_load_cargo`'s `fn load_workspace`
2025-06-30
Commit: 6df1213
Release: 2025-06-30
(v0.3.2519
)
New Features
#20077
(first contribution) take an optional"args": "cursor"
in the VS Code "Run" command.#19546
highlight return values as related tomatch
/if
/=>
.#20100
lowerPointeeSized
to?Sized
to support the newSized
trait hierarchy.#20105
parse new[const] Trait
syntax.
Fixes
#20110
don't show float completions on integer literals.#20096
don't show notifications on failedrustfmt
calls.#20121
don't append--compile-time-deps
to build script commands.#20073
useROOT
hygiene forargs
in the newformat_args!
expansion.#20069
fix cargo project manifest not pointing to the workspace root.#20072
respect configuredbuild.target-dir
.#20061
don't wrap exit points with the right type in "Wrap return type".#20103
prettify AST inPathTransform
if it's coming from a macro.#20080
clean up and expandfolding_ranges
.#20092
don't complain aboutrustc
workspace loading if it's not required.#20036
don't default to'static
for trait object lifetimes.
Internal Improvements
#20012
(first contribution) bumpliteral-escaper
.#20088
de-Arc
trait items query.#20087
short-circuit a couple of queries.#20106
make theVariantFields
query more idiomatic.#20098
unify formatting of progress messages.#20104
clean upprovideCodeActions
VS Code hook.#20116
cancel CI workflow only after the main matrix has finished.#20084
fix CI job cancellation on Windows.
See also the changelog post.
2025-06-23
Commit: 0100bc7
Release: 2025-06-23
(v0.3.2509
)
New Features
#19939
addrust-analyzer.assist.preferSelf
to preferSelf
instead of the enum name in assists.#20047
usecargo check --compile-time-deps
when available.#20020
reload workspaces whencargo
config changes.#20018
copy lockfile into target directory before invokingcargo metadata
.#20056
support the newformat_args!
expansion in 1.89.#20014
show whatcargo metadata
is doing.
Fixes
#19945
add quickfix to theprivate-field
diagnostic.#20025
(first contribution) hide imported private methods if "private editable" is disabled.#20041
revert "turnBlockId
into a#[salsa::tracked]
".#20022
never make type mismatch diagnostic stable, even when there is a fix.#20023
improve completions inif
/while
expression conditions.#20039
fix closure capturing inlet
expressions.#20035
pass--color=always
from Test Explorer.
Internal Improvements
#19495
start infestingide
crates with a'db
lifetime.#20046
addhir::TypeParam::parent
method.#20050
improve documentation for excluding imports from symbol search.
See also the changelog post.
2025-06-16
Commit: a207299
Release: 2025-06-16
(v0.3.2500
)
New Features
#19996
add support for excluding imports from symbol search.#19837
,#19985
provide better incrementality when items are changed.
Fixes
#19963
do not report errors for unsized types withoutwhere Self: Sized
items.#19970
fix proc macro server handling of strings with minuses.#19973
hidedyn
inlay hints for incompleteimpl
s.#19942
fix completions with some attribute macros.#19981
do not force-descend into derives for goto IDE features.#19983
fix comparison of proc macros.#20000
allow lifetime repeats in macros ($($x)'a*
).#19990
generate annotations for macro-defined items if their name is in the input.
Internal Improvements
#19982
,#19991
simplify and optimizeItemTree
.#20009
optimizepub(crate)
andpub(self)
visibility resolution.#20007
,#20008
makesalsa
usage more idiomatic.#19995
turnBlockId
into a#[salsa::tracked]
.#20006
clean up incremental tests and verify query execution.#19997
removeInternedCallableDefId
.#19980
de-duplicateItemTree
ItemVisibilities
.#19992
useThinVec
inItemScope
in a couple places.#19984
removepref_align_of
intrinsic handling, rename{min_=>}align_of{,_val}
.#19930
add support for type-erasedSemantics<'db, dyn HirDatabase>
.#19975
test incremental trait solving.#19989
bump some deps.
See also the changelog post.
2025-06-09
Commit: 9fc1b90
Release: 2025-06-09
(v0.3.2490
)
New Features
#19893
enhance renaming to include identifier variations that are generated by macros.#19908
implement completions for#[diagnostics]
.#19922
ddddyn
keyword inlay hints.
Fixes
#19901
(first contribution) increase the range of the tuple to named struct assists.#19869
(first contribution) add diagnostic and quickfix to make private struct fields public.#19894
handle cycles ininfer
andconst_param_ty_with_diagnostics
.#19935
always emit quickfixes, even when diagnostics are disabled.#19936
,#19949
stabilize the unlinked file and "JSON is not Rust" diagnostics.#19932
,#19937
record macro calls in signatures and fields inChildBySource
impls.
Internal Improvements
#19933
improve parser recovery for macro calls in type bound position.#19897
produceCLOSURE_BINDER
nodes.#19905
clean up macro descension.#19928
deduplicate some code in proc macro server.#19914
add incremental tests checking forinfer
invalidation.#19915
,#19919
,#19920
,#19921
try to fix autopublishing workflow.
See also the changelog post.
2025-06-02
Commit: 2a388d1
Release: 2025-06-02
(v0.3.2482
)
New Features
#19876
render padding information when hovering on structs.#19881
add assist to desugarlet pat = expr?;
intolet else
.#19819
change import prefix default tocrate
.#19890
make import insertion#[cfg]
-aware.
Fixes
#19879
fix IDE layer not resolving some macro calls.#19880
handle included files better at the IDE layer.#19872
fix inference ofAsyncFn
return types.#19864
properly implementmight_be_inside_macro_call
using semantic information instead of syntactical hacks.#19851
normalize when checking for uninhabited types for pattern exhaustiveness checks.#19875
skip pattern analysis on type mismatches.#19899
account for "Generate" actions when filtering the allowed ones.#19785
,#19792
keep indent ingenerate_new
andgenerate_mut_trait
.#19900
generate diagnostics docs for the manual.
Internal Improvements
#19877
(first contribution) remove support forconcat_idents!
.#19861
(first contribution) add documentation forfind_all_refs
constructor search.#19896
restructure some semantics APIs for virtual macro files.#19898
remove unncessary duplication inhighlight_related
.#19888
recognize salsa cycles inthread_result_to_response
.#19850
add support for type-erasedSemantics<'db, dyn HirDatabase>
.
See also the changelog post.
2025-05-26
Commit: d2f1787
Release: 2025-05-26
(v0.3.2474
)
Fixes
#19839
correctly set the span of the proc_macro crate'sGroup
delimiters.#19824
fix caching problems with lint levels.
Internal Improvements
#19757
request cancellation while processing changed files.#19814
debounce workspace fetching for workspace structure changes.#19809
catch inference panics inanalysis-stats
.#19840
fixintegrated_benchmarks
.#19853
bumpsalsa
.
See also the changelog post.
2025-05-19
Commit: e464ff8
Release: 2025-05-19
(v0.3.2466
)
Fixes
#19793
keep derive macros when removing unused imports.#19687
highlight unsafe operations as related when the caret is onunsafe
.#19801
improveasm!
support.#19794
don't allow duplicate crates in theall_crates
list.#19807
don't overrideRUSTUP_TOOLCHAIN
if it is already set.
Internal Improvements
#19796
(first contribution) bump some dependencies for Cygwin support.#19808
run metrics on the beta channel.
See also the changelog post.
2025-05-12
Commit: 2bafe9d
Release: 2025-05-12
(v0.3.2457
)
New Features
#19740
add assist to unwrap a type into its single generic argument.
Fixes
#19751
(first contribution) supportCARGO_MANIFEST_PATH
.#19763
complete parentheses and method call arguments if the next line starts with a tuple.#19742
fix incorrect handling of unresolved non-module imports in name resolution.#19746
fix proc-macro API creating malformed negative literals.#19747
fixmove_bounds
assists with lifetimes.#19434
support negative numbers inconcat!
.#19764
don't deref twice in postfix snippets.#19738
fix panic on<T as Tr>
without an associated type.#19507
fix path resolution in outer doc comments.
Internal Improvements
#19721
handle parallelism better in cache priming.#19707
de-Arc
defmap queries.#19750
remove unnecessary token length check for macros in renaming.#19749
remove unnecessaryAsAny
trait.#19772
make diagnostics experimental by default.#19748
direct users to discussions instead of issues for questions.
See also the changelog post.
2025-05-05
Commit: 3b57c00
Release: 2025-05-05
(v0.3.2449
)
Fixes
#19704
add underscore mode for expression filling.#19733
implement mut to const pointer cast for method resolution.#19732
fix associated type bound variable starting index.#19699
properly escape raw names in labels.#19247
fix span info inmir::Operand
.#19723
improve parser recovery a bit.#19581
render more lifetimes.#19735
improve thelet
andletm
snippets.#19739
temporarily disable fixpoint for variance computation.
Internal Improvements
#19685
(first contribution) add PGO support toxtask install
.#19713
clean upcfg
check handling in expression store lowering.#19469
migratemerge_imports
,unmerge_imports
andlet_else_to_match
toSyntaxEditor
.#19708
de-Arc
language item queries.#19712
clean up cache priming cancellation handling.#19731
simplify macro call id construction.#19714
remove unnecessary extension trait.#19719
adjust panic context printing.#19727
remove a couple of unnecessaryclone
s.#19716
bump salsa (saves 212 MB onanalysis-stats self
).
See also the changelog post.