-
Notifications
You must be signed in to change notification settings - Fork 13.8k
rust-analyzer
subtree update
#147210
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rust-analyzer
subtree update
#147210
Conversation
Example --- **Not applicable**: ```rust fn foo() { match () { () => { t(|n|$0 n + 100); } } } ```
Example --- ```rust fn f() { $0!(1 || 3 && 4 || 5) } ``` -> ```rust fn f() { !1 && !(3 && 4) && !5 } ```
Example --- ```rust #[cfg_attr($0, must_use)] struct Foo; ```
Example --- ```rust fn main() { let x = 1*x $0+ 2; } ``` **Before this PR**: ```rust fn main() { let x = 1*x.wrapping_add(2); } ``` **After this PR**: ```rust fn main() { let x = (1*x).wrapping_add(2); } ```
Example --- ```rust struct Foo { num: u32 } struct Bar(Foo); fn foo(Bar($0)) {} ``` **Before this PR**: ```rust struct Foo { num: u32 } struct Bar(Foo); fn foo(Bar(Foo { num$1 }: Foo$0)) {} ``` **After this PR**: ```rust struct Foo { num: u32 } struct Bar(Foo); fn foo(Bar(Foo { num$1 }$0)) {} ```
Example --- ```rust fn main() { if $0let$0 Some(x) = Some(2+2) {} } ``` **Before this PR**: ```rust fn main() { let $0var_name = let Some(x) = Some(2+2); if var_name {} } ``` **After this PR**: ```rust fn main() { let $0var_name = Some(2+2); if let Some(x) = var_name {} } ```
Example --- ```rust fn foo() { let x = if true { 1 } el$0 else { 2 }; } ``` **Before this PR**: ```text else~ k [LS] else if~ k [LS] ``` **After this PR**: ```text else if~ k [LS] ```
Example --- ```rust struct Foo { x: () } struct Bar { foo: Foo } fn f(Bar { mut $0foo }: Bar) {} ``` **Before this PR**: Panic `Option::unwrap` **After this PR**: ```rust struct Foo { x: () } struct Bar { foo: Foo } fn f(Bar { foo: Foo { mut x } }: Bar) {} ```
When the reference type does not require adding a dereference or parentheses, it will panic Example --- ```rust struct Foo { bar: i32, baz: i32 } fn main() { let $0foo = &Foo { bar: 1, baz: 2 }; let _ = &foo.bar; } ``` **Before this PR**: Panic: ``` assertion failed: !self.data().mutable ``` **After this PR**: ```rust struct Foo { bar: i32, baz: i32 } fn main() { let Foo { bar, baz } = &Foo { bar: 1, baz: 2 }; let _ = bar; } ```
Example --- ```rust struct S { field : u32 } fn main() { let s = S { field : 2 }; let S { $0field } = s } ``` **Before this PR**: ```rust struct S { field : u32 } fn main() { let s = S { field : 2 }; let S { _field } = s } ``` **After this PR**: ```rust struct S { field : u32 } fn main() { let s = S { field : 2 }; let S { field: _field } = s } ```
Fix panics on `Foo{mut x}` for destructure_struct_binding
Fix `else` completion before else keyword
Fix extract_variable on LetExpr
…-l-curly-replace-is-method-with-if-let Fix applicable after l_curly for replace_is_method_with_if_let_method
fix: Make flycheck clearing dependency-aware
…y-selected Fix selected applicable generate_default_from_enum_variant
…t-add-deref-and-paren Fix panic `!self.data().mutable` for destructure_struct_binding
Fix unused_variables fixes shorthand record field
- And add logic operation suggest Example --- In the old implementation, it always suggested conditions, this is a lot of noise, e.g `contract_checks()~(use std::intrinsics::contract_checks) const fn() -> bool` ```rust fn foo() { if true { c$0 } } ```
Fix IfExpr branches suggests
Fix to implements in-place stdx::replace
`remove_dbg` not applicable for whitespaces after trailing comma Example --- ```rust fn foo() { dbg!( bar(), ); } ``` **Before this PR**: Assist not applicable **After this PR**: ```rust fn foo() { bar(); } ```
Fix not applicable on trailing comma for remove_dbg
`rust-analyzer` subtree update Subtree update of `rust-analyzer` to rust-lang/rust-analyzer@a6bc4a4. Created using https://github.com/rust-lang/josh-sync. r? `@ghost`
💔 Test failed - checks-actions |
A job failed! Check out the build log: (web) (plain enhanced) (plain) Click to see the possible cause of the failure (guessed by this bot)
|
@bors retry bad day for MacOS? |
`rust-analyzer` subtree update Subtree update of `rust-analyzer` to rust-lang/rust-analyzer@a6bc4a4. Created using https://github.com/rust-lang/josh-sync. r? `@ghost`
💔 Test failed - checks-actions |
A job failed! Check out the build log: (web) (plain enhanced) (plain) Click to see the possible cause of the failure (guessed by this bot)
|
@bors retry |
☀️ Test successful - checks-actions |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 4da69df (parent) -> 3369e82 (this PR) Test differencesShow 2 test diffs2 doctest diffs were found. These are ignored, as they are noisy. Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 3369e82c6bc03c5cdb66f730dba6f738b74c8e1d --output-dir test-dashboard And then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
Finished benchmarking commit (3369e82): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary -2.8%, secondary -2.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 471.938s -> 472.027s (0.02%) |
Subtree update of
rust-analyzer
to rust-lang/rust-analyzer@a6bc4a4.Created using https://github.com/rust-lang/josh-sync.
r? @ghost