Releases: rust-lang/rust-analyzer
nightly
Auto merge of #17551 - Veykril:has-errors, r=Veykril Also mark InferenceResult::has_errors flag when there are error types Should work around https://github.com/rust-lang/rust-analyzer/issues/15090#issuecomment-2211647133
2024-07-01
Commit: ea7fdad
Release: 2024-07-01
(v0.3.2020
)
Fixes
#17467
(first contribution) allow "Bool to enum" assist on function parameters.#17505
fix stack overflow with TAITs.#17481
allow pattern completions inlet
statements.#17471
keep parentheses for calls of function-like fields.#17513
fix completions afterasync
.#17518
fix expression scope calculation in macro expansions.#17488
fix duplicate snippets showing up on hover.#17516
allow disabling borrow checking in term search and don't emit explicit generics.#17411
improve hover text in unlinked file diagnostics.
Internal Improvements
#17478
simplify and speed up data constructor term search tactic.#17487
small memory usage optimizations.#17519
move dylib version testing toproc-macro-srv
.#17520
someproc-macro-srv
clean-ups.#17501
allow non-org members to assign area labels.
See also the changelog post.
2024-06-24
Commit: 2fd803c
Release: 2024-06-24
(v0.3.2011
)
New Features
#17438
(first contribution) addToggle LSP Logs
command.
Fixes
#17419
(first contribution) don't expand built-in macros inExpand macros recursively
.#17431
add space after specific keywords in completion.#17459
includeasync
keyword in completions.#17442
handle end of input inpat
fragment parsers.#17415
only showunlinked-file
diagnostic on first line during startup.#17426
handle character boundaries for wide chars in extend_selection#17457
actually prevent cycles in thesource_root_parent_map
.#17461
fix panic when cancelling flycheck.#17462
fix IDE features breaking in some attribute macros.#17469
handleItemInNs::Macros
when convertingModuleItem
toItemInNs
.#17449
add associated item constants tactic for term search.#17439
,#17464
properly prime all crate def maps inparallel_prime_caches
.#17440
fix and cleanup VS Code task building.
Internal Improvements
#17434
(first contribution) document for parameter inlay hints heuristics.#17456
(first contribution) remove conflict warning withpanicbit.cargo
.#17473
tidy up generics handling inhir-ty
.#17474
avoid some allocations inhir-ty
.#17455
tidy up the VS Code extension a bit.#17435
fix manual generation instructions.
See also the changelog post.
2024-06-17
Commit: 6b8b8ff
Release: 2024-06-17
(v0.3.2002
)
New Features
#17372
compute native diagnostics in parallel.#17364
show type bounds from containers when hovering on functions.#17374
allow choosing logical cores for cache priming threads.#16840
allow arbitrary commands for runnables inrust-project.json
.
Fixes
#17412
(first contribution) add a breaker to avoid infinite loops with source root cycles.#17381
ensure that aSourceRoot
cannot be its own parent.#17380
remove again extra parse cache fromSemantics
.#17394
fixHirDisplay
stack overflow forSelf
parameter defaults.#17407
avoid doubling Cargo args in runnables.
Internal Improvements
#17405
,#17406
avoid unnecessaryModPath
clones.#17377
improve HIR formatting.#17392
rename${length()}
to${len()}
in MBE.#17398
removeFileId::BOGUS
.#17418
fixrustdoc
warnings.#17417
prefer a trait over theimpl_intern_value_trivial
macro.
See also the changelog post.
2024-06-11
Auto merge of #17381 - roife:fix-issue-17378, r=Veykril fix: ensure that the parent of a SourceRoot cannot be itself fix #17378. In `FileSetConfig.map`, different roots might be mapped to the same `root_id` due to deduplication in `ProjectFolders::new`: ```rust // Example from rustup /Users/roife/code/rustup/target/debug/build/rustup-863a063426b56c51/out /Users/roife/code/rustup ``` In `source_root_parent_map`, r-a might encounter paths where their SourceRootId (i.e. `root_id`) is identical, yet one the them is the parent of the another. This situation can cause the `root_id` to be its own parent, potentially leading to an infinite loop. This PR resolves such cases by adding a check.
2024-06-10
Changelog #237
Commit: b427d46
Release: 2024-06-10
(v0.3.1992
)
New Features
#17282
(first contribution) hide items starting with__
from symbol search.#17058
add basic, unstable support forrust-analyzer.toml
.
IMPORTANT: We don't promise any stability with this feature yet, any configs exposed may be removed again, the ordering may change etc.
Fixes
#17352
do not resolve prelude within block modules.#17350
highlight unlinked files more proeminently.#17360
don't touch foreign sources when renaming imports.#17333
check for snippet support inextract_expressions_from_format_string
.#17329
don't mark#[rustc_deprecated_safe_2024]
functions as unsafe.#17353
fix hover action formatting.#17308
prioritize local crates in auto-import.
Internal Improvements
#17346
,#17368
(first contribution) add submenus to GUI VS Code extension settings.#17340
improvefind_path
performance.#17004
cache macro calls more aggressively inSemantics
.#17312
addFunction::fn_ptr_type(β¦)
for obtaining name-erased function types.#17348
use fallible indexing inTypeOrConstParam::source(β¦)
andLifetimeParam::source(β¦)
.#17365
expose snippet capability to diagnostic quickfixes.#17375
don't intern attribute inputs, as their spans make them unique.#17341
clean up inert attribute handling.#17356
prefer shorthandtracing::span
macros.#17315
use string interpolation in more places.#17359
add version info to VS Code status bar item.
See also the changelog post.
2024-06-03
Changelog #236
Commit: 7852a4c
Release: 2024-06-03
(v0.3.1983
)
New Features
#17253
(first contribution) add assist to toggle between normal and doc-comments.#17258
(first contribution) add assist to toggle async sugar.#17328
enable completions within derive helper attributes.
Fixes
#17302
fix diagnostics clearing when flycheck runs per-workspace.#17326
fix container search for tokens originating within derive attributes.#17291
handle generics in type constructor term search tactic.
Internal Improvements
#17278
(first contribution) replacecommand-group
withprocess-wrap
.#17337
include path info inAbsPathBuf::assert
panic message.
See also the changelog post.
2024-05-27
Changelog #235
Commit: 71a816a
Release: 2024-05-27
(v0.3.1975
)
New Features
#17268
retain more information about callables.
Fixes
#17248
(first contribution) only clear diagnostics after new ones were received.#17140
(first contribution) handle{self}
when removing unused imports.#17295
(first contribution) use correct key for environment variables with the C/C++ extension.#17270
consider implied bounds from associated types in completion.#17174
infer type of async blocks with tail return.#17251
resolve extern prelude for modules nested in blocks.#17277
fix variousfind_path
issues.#17279
fixformat_args
lowering.#17284
use correct toolchain channel when generating built-in type doc links.#17275
fix inconsistent working directory for Run and Debug commands.
Internal Improvements
#17296
(first contribution) avoid clone when constructing runnable label.#17287
allow sysroot to only consist of the source root dir.#17252
refactorprefer_no_std
andprefer_prelude
bools into a struct.
See also the changelog post.
2024-05-20
Changelog #234
Commit: 21ec8f5
Release: 2024-05-20
(v0.3.1966
)
Note
Because of an infrastructure issue, this release is not available on the VS Code Marketplace.
Of course, you can still download and install the VSIX from GitHub Releases.
Fixes
#17203
fix OOM caused by term search.#17227
hash file contents to verify it actually changed.#17225
interleave function-like and attribute macro expansion in "Expand macro recursively".#17220
improve confusing literal hovers.#17187
keep parentheses in De Morgan's law assist when the precedence of inner expression is lower.#17216
respect path attribute in "Extract module to file".#17232
don't emit--keep-going
with custom build script commands.
Internal Improvements
#17250
(first contribution) fix Neovim 0.10 inlay hints config example.#17241
(first contribution) fix some typos.#17221
make macro parse tree validation lazier.#17195
implementunsafe
attribute parsing.#17228
sort computed runnables.#17243
addStaticLifetime
tohir
API.#17235
,#17238
,#17239
,#17240
tweak metrics CI caching.#17224
bumpCargo.lock
dependencies.#17259
sync from downstream.
See also the changelog post.
2024-05-13
Changelog #233
Commit: 5bf2f85
Release: 2024-05-13
(v0.3.1958
)
Fixes
#17192
fix source range forINT_NUMBER
in completion.
Internal Improvements
#17207
report all LSP protocol errors withinvalid_data
.#17208
report both I/O and main loop thread errors.
See also the changelog post.