Uh oh!
There was an error while loading. Please reload this page.
Rust: Upgrade to rust-analyzer 0.328 - #21714
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…scripts - Fix Meta usage: Meta is now abstract with subtypes (PathMeta, KeyValueMeta, TokenTreeMeta, etc.) - Fix FormatArgsArg: getName() replaced by getArgName() returning FormatArgsArgName - Add upgrade script (old → new) and downgrade script (new → old) - Update Definitions.qll, PathResolution.qll, BadCtorInitialization.ql, FormatTemplateVariableAccessConstructor.qll Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Re-run cargo fmt after clippy --fix to ensure consistent formatting. Re-run codegen to update generated file tracking for MetaImpl.qll. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Setting proc_macro_processes to 0 causes an index-out-of-bounds panic in ProcMacroServerPool::new when the proc macro server is enabled. Use the same defaults as rust-analyzer itself (1 each). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Remove format_args_arg_names from upgrade delete list (table exists in both schemas with different columns) - Accept updated .expected files for schema changes Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Exclude macro-expanded and attribute paths from PathResolutionConsistency (tokio::main and similar attribute macros resolve to multiple proc macro fns) - Exclude "macro expansion failed" warnings from ExtractionConsistency (compile_error! and undefined macros are expected to fail expansion) - Update pre-existing consistency expectations (net multipleResolvedTargets) - Update type-inference.expected for new RA results Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
c990d17 to
ac27c20CompareCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Rust: Restore built-in derive macro expansion under rust-analyzer 0.0.328
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Collapse nested `if let`/`if` into let-chains (edition 2024) in tree-sitter-extractor and add an explicit `'_` lifetime in yeast, as required by clippy under the new toolchain. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
The rust-analyzer 0.0.328 upgrade changed the ra_ap_syntax_bridge import in rust/extractor/src/translate/base.rs to a single line that exceeds the max width, causing the rust-code CI job to fail at cargo fmt --check. Wrap the import so cargo fmt --check passes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
`should_be_excluded` only resolved a crate for items in real files. Items coming from a macro expansion live in a `MacroFile`, for which `HirFileId::file_id()` returns `None`, so the cfg was never checked and both branches of e.g. `#[cfg(feature = "rt")]` / `#[cfg(not(feature = "rt"))]` were extracted. Recover the crate from the macro call in that case, mirroring the crate resolution the old upstream `Semantics::check_cfg_attr` performed. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4ee033fb-30ad-4617-9922-bc0f1088ba81
Regression test for `should_be_excluded`: items produced by a macro expansion carrying a disabled `#[cfg(...)]` must be excluded from extraction, just like disabled items written directly in a source file. Uses `cfg(any())`/`cfg(all())` so the test does not depend on crate features. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4ee033fb-30ad-4617-9922-bc0f1088ba81
Apply .expected diffs from the Rust Language Tests CI runs following the cfg-exclusion fix: duplicate flow rows from macro/cfg double-extraction are removed and platform-gated models no longer double-load, which clears the associated consistency violations. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 4ee033fb-30ad-4617-9922-bc0f1088ba81
dec6758 to
3fd1909Compare
hvitved
left a comment
There was a problem hiding this comment.
I'm now happy with this PR; let's see what the (hopefully final) DCA run has to say.
…-to-rust-analyzer-0.0.328
4be3dc4 to
5116c99CompareRerun has been triggered: 2 restarted 🚀 |
hvitved
commented
Aug 14, 2026
The final DCA run looks great:
|
WIP. Let's see what the CI thinks of this. (For the avoidance of doubt, Copilot wrote all of the code, and I'm still working my way through the changes themselves.)