Releases: rust-lang/rust-analyzer
2024-11-25
Commit: 327ab29
Release: 2024-11-25 (v0.3.2196)
Fixes
#18529(first contribution) improve selection handling inmerge_match_arms.#18459use snippet placeholders for generated match arms.
Internal Improvements
#18485migrateadd_bracesassist to useSyntaxFactory.#18521migratereorder_impl_itemsassist to useSyntaxFactory.#18552fix formatting in "missingrust-src" message.
See also the changelog post.
2024-11-18
Commit: ba56d9b
Release: 2024-11-18 (v0.3.2188)
Fixes
#18503use item indices instead of attribute matching when resolving completions.#18519use correct file in related documents diagnostics.
Internal Improvements
#18495migratereorder_fieldsassist to useSyntaxFactory.#18482add publicdirect_supertraitsandall_supertraitsaccessors tohir::Trait.
See also the changelog post.
2024-11-11
Commit: 30e71b6
Release: 2024-11-11 (v0.3.2180)
New Features
#18473includeexternblocks and macros in file outline.
Fixes
#18475support new#[rustc_intrinsic]attribute and fallback bodies.
Internal Improvements
#18493(first contribution) update supported debug engines in configuration.#18486change minimum VS Code version from 1.78 to 1.83.
See also the changelog post.
2024-11-04
Commit: a341d59
Release: 2024-11-04 (v0.3.2172)
New Features
#18312(first contribution) includeletstatements in file outline.#18420support+#[cfg(true)]+and+#[cfg(false)]+.#18469showstaticvalues on hover.#18470allow interpreting consts and statics with the Interpret command.#18385add assist to generate a type alias for a function.
Fixes
#18436only render type layout info on definitions, not usages.#18422properly resolve prelude paths in modules inside blocks.#18413allow public re-exports ofextern crateimports.#18432honor diagnostic refresh capability.#18382fix flyimport for aliased functions and modules.#18446only parsesafeas a contextual keyword inexternblocks.#18453fix parsing of patterns with leading|.
Internal Improvements
#18304(first contribution) add developer setup instructions.#18437(first contribution) publishtest-fixtureasra_ap_test_fixture.#18256(first contribution) start usingOption::is_none_or.#18074build source map forhir_def::TypeRefs.#18427clean up TypeRef lowering.#18447avoid interior mutability inTyLoweringContext.#18448movechild_by_sourcefromhir-deftohir.#18421movetext-editintoide-db.#18412stop producing.gzartifacts for Windows.
See also the changelog post.
2024-10-28
Commit: 3b3a87f
Release: 2024-10-28 (v0.3.2162)
A Note on Windows Artifacts
The next release will stop including .gz artifacts for Windows.
These are harder to use than the .zip ones, which should be used instead.
New Features
#18294(first contribution) supportOptionin "Wrap/Unwrap return type".#18362,#18370(first contribution) support "Go to definition" on range operators and patterns.#18359(first contribution) add option to not start the server on initialization.#18264implement mixed-site hygiene.#18404,#18408implement pull model for diagnostics.#18349render aliased type documentation when alias doesn't have any.#18418splitmacro-errordiagnostic so users can ignore parts of it.
Fixes
#18407(first contribution) fix formatting on welcome page.#18376add text edits to more inlay hints.#18361fix token downmapping failing forinclude!inputs.#18254nail destructuring assignment down once and for all.#18337don't show private items from modules nested in blocks in completions.#18360improve completions for extern blocks.#18371fix parsing of use bounds.#18388Fix checking forfalselabelDetailsSupportvalue.#18395add missingtarget_has_atomicandtarget_has_atomic_load_storecfgflags.#18390prevent public re-exports of private items.#18417correctly handle#""before the 2024 edition.#18419put leading|in patterns underOrPat.#18415mark "Removedbg!" as a quick fix for better prioritization.#18366fix Markdown display in status bar message.#18399respect config to disable native diagnostics.#18386don't crash when local time offset is unavailable.
Internal Improvements
#18372(first contribution) switch CI from bors to merge queues.#18373merge separate inlay hints targeting the same range.#18391log original syntax on panic.#18394,#18396pretty-printConfigin "Status" command.#18402improve proc macro error message for failed build scripts.#18410invert token iteration order in macro mapping.#17954updaterustc-hashto version 2.#18392swap query call order infile_item_tree_queryto help with caching issue.#18409only construct a resolver during macro descension when needed.#18368add test for LSIF macro-generated constants.#18405update changelog generation for merge queues.
See also the changelog post.
2024-10-21
Commit: 9323b53
Release: 2024-10-21 (v0.3.2154)
New Features
#18152highlight exit points ofasyncblocks.#18291respectreferences.excludeTestsin Call Hierarchy.#18350,#18354add initial support forsafeinexternblocks.#18292support renamingselfparameters in functions.
Fixes
#18265,#18320(first contribution) add support for LLDB-DAP.#18226(first contribution) fix parsing ofusein generic parameters.#18229(first contribution) makerustfmt.overrideCommandrelative to project, not workspace root.#18336(first contribution) increase macro expansion token limit once more.#18278do not consider matching of places that evaluate to!to diverge, and disallow coercions from them.#18217stop doing cast checks for unknown pointer kinds.#18252do not consider mutable usage ofderefto*mut Tasderef_mut.#18299fixOkwrapping quick fix for return statements.#18275don't expand#[test_case].
Internal Improvements
#18242don't resolve extern crates in import fixed point resolution.#18216return structs instead of tuples fromOpQueues.#18331support more trivial types inis_sizedcheck.#17990use local time when formatting logs.#18243,#18300clamp LSP columns to line length.#18328fix runninganalysis-statsagainst the standard libraries on CI.#18335fix.editorconfigglob.
See also the changelog post.
2024-10-14
Commit: d7628c0
Release: 2024-10-14 (v0.3.2146)
Fixes
#18246fix crash inprettify_macro_expansion()when the node isn't the whole file.#18245fix detail label in completions.#18247fixsomething_to_resolvesometimes being reset incompletion_item#18269display constructor types in a nicer way.#18289fix panic on JSON projects with relative buildfile paths.
Internal Improvements
#18266use macos-13 runners and bumpMACOSX_DEPLOYMENT_TARGETto13.0.#18281stop usingspawnSyncin the VS Code extension.
See also the changelog post.
2024-10-07
Commit: 2b750da
Release: 2024-10-07 (v0.3.2137)
New Features
#18085provide an option (rust-analyzer.cfg.setTest) to not setcfg(test).
Fixes
#18207(first contribution) suggest UpperCamelCase instead of CamelCase to matchrustc.#18210fix resolution of labels inside macro calls.#18206handle block expressions as modules when finding their parents.#18219fix incorrect bootstrap error message.#18255use external stack in borrow check DFS.
Internal Improvements
#18167send less data for completions, if possible.#18234filter out opaque tokens when descending into macros for some IDE features.#18195removeDefaultfrom OpQueue.#18227add JSONtracingLayerfor profiling start-up.
See also the changelog post.
2024-09-30
Commit: 822644d
Release: 2024-09-30 (v0.3.2129)
New Features
#17923(first contribution) add option to rebuild project before restarting debugging.#18180index workspace symbols at start-up rather than on the first search.
Fixes
#18160fix name resolution with renamed imports and shadowing.#18164handle import aliases inremove_unused_imports.#18161improve reference handling in consuming postfix completions.#18172support#[expect]in attribute completion and hover.#18162report lifetime GATs as object-unsafe.#18123disambiguate package names in flycheck.#18166fix a bug in span map merging.#18184pass--all-targetsfor build scripts in more CLI commands.#18193don't report start-up error when a workspace discovery command is configured.
Internal Improvements
#18205(first contribution) rename object-safety todyn-compatibility.#18196addSyntaxFactoryto simplify generating nodes with syntax mappings.#18181addtracingto project discovery and VFS loading.#18192includerust-project.jsonbuild files in VFS.#18157respect--disable-proc-macrosinanalysis-stats.#18208allow overriding proc macro server inanalysis-stats.#18188bump MSRV to 1.81.#18175dropCOMPLETION_MARKEREaster egg.
See also the changelog post.
2024-09-23
Commit: 1301e42
Release: 2024-09-23 (v0.3.2121)
Note
Because of infrastructure issues, this release is not available on GitHub Releases.
New Features
#18135add diagnostics forunsafe_op_in_unsafe_fn.#18131replace$cratein user-visible macro expansions.#18151support${concat(...)}metavariable expressions.#18137supportexpr_2021fragment specifiers.
Fixes
#18136(first contribution) don't lint names of#[no_mangle]extern functions.#18128don't show lints and quick fixes in code generated by external macros.#18117always cache macro expansion root nodes inSemantics.#18139extendtype_variable_tablewhen index is larger than the table size.#18146remove check that text ofparse_expr_from_str()matches the produced parsed tree.#18153account for rawness in$exprfragments.#18108take#[cfg_attr]into account for lint attributes.#18132don't complete;in closure return expressions.
Internal Improvements
#18134extendSourceChangeBuilderto make make working withSyntaxEditoreasier.#18169temporarily disable GitHub releases.
See also the changelog post.