Releases: rust-lang/rust-analyzer
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.
2023-12-25
Changelog #213
Commit: 85fb463
Release: 2023-12-25
(v0.3.1782
)
New Features
#16088
implement a rust-analyzer span-backed proc-macro server mode.
Fixes
#16155
(first contribution) don't assume ASCII inremove_markdown
.#16152
resolve alias before resolving enum variant.#16163
de-duplicate annotations.#16165
update metavariable expression implementation.#16066
,#16185
remove unnecessary braces after with unused imports.#16167
fully remove dummy spans.#16175
correctly set and mark the proc-macro spans.#16178
fix span marking for built-in function-like macros.#16184
fixSemantics
node caching in completion analysis.#16158
desugar doc comments correctly for MBE.#16137
complete exported macros in#[macro_use($0)]
.
Internal Improvements
#16182
update world symbols request definiton, prefer focus range for macros.#16183
clean upExpander
a bit.#16143
move proc macro knowledge out ofbase-db
and intohir-expand
.#16145
split out aspan
crate.#16150
move outWithFixture
into dev-only crate.#16151
add minimal support for the 2024 edition.#16144
sync from downstream.#16149
don't fail changelog generation on missing PRs.
See also the changelog post.
2023-12-18
Changelog #212
Commit: 21b06c1
Release: 2023-12-18
(v0.3.1774
)
Fixes
#15887
(first contribution) fix tuple to named struct conversion inside macro calls some more.#16106
fix syntax bridge assigning invalid spans to lifetime tokens.#16061
fix fragment parser on incomplete parses.#16130
remove subtrees with fake spans in syntax fix-up.#16131
fix false positive type mismatch in const reference patterns.#16094
replacedoc_comments_and_attrs
withcollect_attrs
, second round.#16089
query for nearest parent block around the hint to resolve.
Internal Improvements
#16099
improve import asset performance a bit, bump limit, and shorten the paths.#16125
run rust-analyzer on rustc UI tests in metrics.#16115
update built-in attributes.#16102
,#16104
publish and bumpline-index
.#16123
removeModuleId
fromTypeOwnerId
.#16098
sync from downstream.
See also the changelog post.
2023-12-11
Changelog #211
Commit: 457b966
Release: 2023-12-11
(v0.3.1766
)
New Features
-
#15959
replace TokenMap with an abstraction that matches reality. -
#16027
add support for implicit format args:rename-format-args.mp4
-
#16034
support multiple navigation targets when the focus range is in the macro definition site: -
#15990
diagnose extra trait impl items: -
#15627
prioritize import suggestions based on the expected type:
Fixes
-
#15896
(first contribution) show placeholder while getting runnable list from server: -
#15515
(first contribution) improve handling of binary expressions on the left-hand side of "Flip binary expression". -
#16009
(first contribution) don't search forControlFlow
as string in "Extract function". -
#16028
make drop inlay hints more readable: -
#16024
fix runnables working directory on Windows. -
#16054
fix token downmapping being quadratic. -
#16016
don't insert parantheses around fields in struct literals. -
#16041
fixWideChar
offsets calculation inline-index
. -
#16073
replacedoc_comments_and_attrs
withcollect_attrs
. -
#16035
fix diagnostics panicking when resolving to different files due to macros. -
#16037
don't print proc-macro panic backtraces in the logs. -
#15486
fix item tree loweringpub(self)
topub()
. -
#15705
resolve Self type references in delegate method assist. -
#16048
fixconcat_bytes!
expansion emitting an identifier. -
#16058
reduce spans for unresolved field and method diagnostics. -
#16060
fix completion informat_args!
with invalid template. -
#16078
fix "View Mir", "View Hir" and "Interpret function" when the caret is inside a macro. -
#16039
don't emit missing items diagnostic for negative impls. -
#16045
fix panic with closure inside array length. -
#16055
fall back to method resolution on unresolved field access.
Internal Improvements
#16036
(first contribution) makeParamLoweringMode
accessible.#15986
usetriomphe::Arc::from_iter
.#16042
bumpsalsa
.#16022
don't explicitly warn againstsemicolon_in_expressions_from_macros
.#16038
publishlsp-server 0.7.5
.#16043
bump and unlock some dependencies.
See also the changelog post.
2023-12-04
Changelog #210
Commit: e402c49
Release: 2023-12-04
(v0.3.1756
)
New Features
-
#15879
implement completion for callable fields: -
#16000
initial support for implicit drop inlay hints (rust-analyzer.inlayHints.implicitDrops.enable
):
Fixes
#15961
(first contribution) improve error handling for top-levellet
statements.#15993
(first contribution) use package root as working directory when launching the debugger.#15970
fix variant resolution through for type aliases.#15994
report error on comma after base struct functional update syntax.#15857
fix spacing after using "Remove redundant parentheses".#15971
don't report missing match arms for emptymatch
body.
Internal Improvements
#15946
(first contribution) simplify workspace de-duplication.#15985
bumptriomphe
.#15912
remove unusedPhantomData
.
See also the changelog post.