A4-Tacks
dc8d64dbd4
feat: offer 'add_braces' on bin-expr assignment
...
Example
---
```rust
fn foo() {
let x;
x =$0 n + 100;
}
```
**Before this PR**
Assist not applicable
**After this PR**
```rust
fn foo() {
let x;
x = {
n + 100
};
}
```
2026-03-21 16:36:07 +08:00
A4-Tacks
9bff35bd80
add tests for let-expr in add_braces
2026-03-21 16:35:47 +08:00
Amit Singhmar
c1a24b4a9c
ide-assists: add tests for const, static in add_braces
2026-03-21 16:27:50 +08:00
A4-Tacks
7486788acc
Merge pull request #21847 from Shourya742/2026-03-20-migrate-assist
...
Replace direct usage of make with syntax factory and migrate assist to syntaxEditor
2026-03-20 19:57:49 +00:00
bit-aloo
ee041a3768
add without_mappings variant in let_expr_needs_paren
2026-03-21 01:16:49 +05:30
Lukas Wirth
03ecc85c38
Merge pull request #21333 from A4-Tacks/expected-tuple-struct-pat
...
Fix tuple struct pat expected type
2026-03-20 18:07:52 +00:00
A4-Tacks
ff57969ef4
Merge pull request #20299 from A4-Tacks/auto-trait-name-for-gen-trait-from-impl
...
Add auto trait name for generate_trait_from_impl
2026-03-20 13:52:23 +00:00
A4-Tacks
a307600f53
Do not suggest trait name on multi fn
2026-03-20 21:43:12 +08:00
A4-Tacks
eee8bddebe
Add auto trait name for generate_trait_from_impl
...
Auto generate trait name from first method.
Input:
```rust
impl S$0 {
fn foo() {}
}
```
Old output:
```rust
trait NewTrait {
fn foo();
}
impl NewTrait for S {
fn foo() {}
}
```
This PR output:
```rust
trait Foo {
fn foo();
}
impl Foo for S {
fn foo() {}
}
```
2026-03-20 21:43:08 +08:00
A4-Tacks
6294bbcd02
Merge pull request #20601 from A4-Tacks/indent-level-add-assign
...
Add `ops::AddAssign` implement for IndentLevel
2026-03-20 12:22:45 +00:00
A4-Tacks
c01af5a285
Add ops::AddAssign implement for IndentLevel
2026-03-20 20:13:06 +08:00
Chayim Refael Friedman
04b7a5a678
Merge pull request #21822 from A4-Tacks/tail-offer-fill-match-arm
...
fix: fill match arms on last comma and empty expr
2026-03-20 12:02:47 +00:00
Chayim Refael Friedman
3d3302cdac
Merge pull request #20625 from A4-Tacks/multi-attr-to-cfg_attr
...
Add wrap multiple attr for wrap_unwrap_cfg_attr
2026-03-20 11:14:03 +00:00
Chayim Refael Friedman
f17bfdaf21
Merge pull request #21768 from A4-Tacks/complete-fully-param-qualifier
...
fix: add ident_pat qualifier to fully fn param
2026-03-20 11:07:37 +00:00
A4-Tacks
69a0120580
Merge pull request #20407 from A4-Tacks/remove-doc-for-gen-trait
...
Remove doc comments for generate_trait_from_impl
2026-03-20 11:07:01 +00:00
A4-Tacks
ca1fc35595
Remove doc comments for generate_trait_from_impl
...
**Input**:
```rust
struct Foo(f64);
impl F$0oo {
/// Add `x`
///
/// # Examples
fn add(&mut self, x: f64) {
self.0 += x;
}
}
```
**This PR**:
```rust
struct Foo(f64);
trait NewTrait {
/// Add `x`
///
/// # Examples
fn add(&mut self, x: f64);
}
impl NewTrait for Foo {
fn add(&mut self, x: f64) {
self.0 += x;
}
}
```
**Old**:
```rust
struct Foo(f64);
trait NewTrait {
/// Add `x`
///
/// # Examples
fn add(&mut self, x: f64);
}
impl NewTrait for Foo {
/// Add `x`
///
/// # Examples
fn add(&mut self, x: f64) {
self.0 += x;
}
}
```
2026-03-20 18:57:42 +08:00
Chayim Refael Friedman
4c93d12f33
Merge pull request #20600 from A4-Tacks/unwrap-tuple-on-let-expr
...
Add applicable on LetExpr for unwrap_tuple
2026-03-20 10:52:59 +00:00
Chayim Refael Friedman
7e6a279eb6
Merge pull request #20594 from A4-Tacks/conv-clos-to-fn-indent
...
Fix indent for convert_closure_to_fn
2026-03-20 10:42:35 +00:00
Chayim Refael Friedman
fbb8d2d84b
Merge pull request #20566 from A4-Tacks/part-selection-merge-uses
...
Add partial selection for merge_imports
2026-03-20 10:41:24 +00:00
Chayim Refael Friedman
378fcb3a06
Merge pull request #21787 from A4-Tacks/replace-is-some-and-fallback
...
Fix other predicate for replace_is_method_with_if_let_method
2026-03-20 06:55:39 +00:00
Chayim Refael Friedman
b015909037
Merge pull request #21756 from A4-Tacks/fallback-let-closure
...
feat: complete block .let in closure expression
2026-03-20 06:35:48 +00:00
Chayim Refael Friedman
b161e51ad9
Merge pull request #20614 from A4-Tacks/diag-not-apply-empty-struct-no-such-field
...
Fix not applicable on empty struct for no_such_field
2026-03-20 06:28:14 +00:00
Chayim Refael Friedman
4a18159d4a
Merge pull request #21775 from A4-Tacks/inline-let-expr
...
feat: offer on let-expr for inline_local_variable
2026-03-20 06:22:58 +00:00
Chayim Refael Friedman
03ea35247f
Merge pull request #21779 from Albab-Hasan/fix/next-solver-ir-print
...
fix: replace TODO placeholders in next-solver IrPrint with proper formatting
2026-03-20 06:05:07 +00:00
Chayim Refael Friedman
fb84963508
Merge pull request #21848 from Shourya742/2026-03-20-remove-mapping-expr-underscore
...
Remove the mapping for `expr_underscore` from the syntax factory constructor
2026-03-20 05:33:23 +00:00
Chayim Refael Friedman
09197c90ea
Merge pull request #21839 from A4-Tacks/dedup-comp-postfix-let-semi
...
fix: .let no complete semicolon before semicolon
2026-03-20 05:31:43 +00:00
bit-aloo
eabc0199be
remove mapping for expr underscore in syntax factory constructor
2026-03-20 10:47:54 +05:30
bit-aloo
6c8246976c
migrate qualify_method_call to use syntaxEditor and SyntaxFactory
2026-03-20 10:22:43 +05:30
bit-aloo
345a80f03c
remove use make directly from extract_variable assist
...
replace use of make directly via syntaxFactory in replace_let_with_if_let assist
2026-03-20 10:22:43 +05:30
bit-aloo
61be42c90c
migrate desugar_try_expr to use syntax editor and syntax Factory
2026-03-20 10:22:43 +05:30
bit-aloo
43078250c2
remove direct make usage in add_label_to_loop via syntaxFactory
2026-03-20 10:22:43 +05:30
bit-aloo
54819a1325
migrate qualify_path to use SyntaxEditor and SyntaxFactory
2026-03-20 10:22:43 +05:30
Chayim Refael Friedman
e5c44d033b
Merge pull request #21843 from sengmonkham/gsoc/migrate-convert-from-to-tryfrom-syntax-editor
...
Migrate convert_from_to_tryfrom assist to SyntaxEditor API
2026-03-20 02:58:57 +00:00
Chayim Refael Friedman
3e35ce4a41
Merge pull request #21845 from ada4a/push-yoxkrkvpupkl
...
remove outdated TODO
2026-03-19 18:54:46 +00:00
Ada Alakbarova
191969d3ea
remove outdated TODO
...
we decided not to implement this after all
2026-03-19 19:40:34 +01:00
kawkoi
b0d4f7a9ae
Migrate convert_from_to_tryfrom assist to SyntaxEditor API
...
Replace mutable syntax tree editing (clone_for_update + make::) with
the SyntaxFactory API, which is the preferred approach for avoiding
mutable tree operations.
Changes:
- Use SyntaxFactory::with_mappings() instead of bare make:: constructors
- Replace make::ty() + .clone_for_update() with make.ty()
- Replace make::name() + .clone_for_update() with make.name()
- Replace make::ty_alias() + .clone_for_update() with make.ty_alias()
- Update wrap_ok() helper to accept &SyntaxFactory and use make.expr_call/arg_list/expr_path
- Add editor.add_mappings(make.finish_with_mappings()) to register mappings
2026-03-19 12:16:24 +05:30
A4-Tacks
9d9f68f527
fix: .let no complete semicolon before semicolon
...
Make `.let` `.letm` `.return` `.break` not duplicate semicolons
Example
---
```rust
fn main() {
baz.l$0;
}
```
**Before this PR**
```rust
fn main() {
let $0 = baz;;
}
```
**After this PR**
```rust
fn main() {
let $0 = baz;
}
```
2026-03-18 19:56:58 +08:00
Laurențiu Nicola
be963fba7f
Merge pull request #21796 from Wilfred/codecov_badge
...
internal: Add codecov badge
2026-03-17 19:20:26 +00:00
Wilfred Hughes
7c93774f8d
internal: Add codecov badge
...
It's tricky to find the relevant codecov page, so add a badge to the
readme showing coverage and linking to the codecov dashboard.
2026-03-17 16:04:11 +00:00
A4-Tacks
1cd4c2a0f7
Merge pull request #21826 from Shourya742/2026-02-03-migrate-utils-to-new-syntax-editor
...
Replace make usage with SyntaxFactory in few ide-assists utils methods
2026-03-16 21:52:43 +00:00
Laurențiu Nicola
607d64a04e
Merge pull request #21829 from ada4a/push-zwprmlkyptmx
...
Small clean-ups
2026-03-16 20:32:09 +00:00
Ada Alakbarova
60207debab
small clean-up
...
- extract unrelated `if` out of `matches!`
- in `include_references`:
- add docs
- use a while-let chain
- add a more complex test
2026-03-16 21:22:07 +01:00
Chayim Refael Friedman
f9269291f4
Merge pull request #21828 from Wilfred/parallel_prime_caches_scip
...
fix: SCIP generation should prime caches in parallel
2026-03-16 19:19:29 +00:00
bit-aloo
5fe6600b00
add mappings for constructors
2026-03-16 19:32:27 +05:30
Wilfred Hughes
b7bc96291e
fix: SCIP generation should prime caches in parallel
...
Previously load_workspace_into_db() called parallel_prime_caches()
with a worker count of 1 unconditionally. This made SCIP generation
slower than it needed to be.
Instead, pass the number of workers explicitly, and allow the SCIP
subcommand to specify the number of workers from the CLI, defaulting
to the number of physical CPUs.
On my M4 Macbook Pro this reduces the time taken to generate SCIP for
rust-analyzer from ~39 seconds to ~35 seconds.
AI disclosure: Partially written with Claude Opus 4.6.
2026-03-16 13:41:30 +00:00
Lukas Wirth
1b4821082f
Merge pull request #21827 from ChayimFriedman2/multiprocess-slow-tests
...
Don't trigger GC on slow tests
2026-03-16 10:07:13 +00:00
Chayim Refael Friedman
637cc71c3b
Don't trigger GC on slow tests
...
It can lead to UB.
2026-03-16 11:58:13 +02:00
A4-Tacks
f01a047d1f
Merge pull request #21784 from 80avin/fix-inline-type-assist
...
fix: remove angle brackets if all lifetime args removed in inline type alias code assist.
2026-03-16 09:23:25 +00:00
Laurențiu Nicola
fc73d18c07
Merge pull request #21815 from rust-lang/dependabot/npm_and_yarn/editors/code/undici-6.24.1
...
Bump undici from 6.21.3 to 6.24.1 in /editors/code
2026-03-16 08:10:48 +00:00
bit-aloo
f5836b5ab8
make insert_attribute accept syntaxFactory
2026-03-16 10:11:35 +05:30