Commit Graph

314151 Commits

Author SHA1 Message Date
Lukas Wirth 75fa8a0ab9 Merge pull request #21359 from Veykril/push-syvnrvtmlsqk
Prompt the user in VSCode to add the rust-anaylzer componenet to the toolchain file
2025-12-28 13:30:43 +00:00
Lukas Wirth 4ae28483e9 Prompt the user in VSCode to add the rust-anaylzer componenet to the toolchain file 2025-12-28 14:20:35 +01:00
Lukas Wirth 9a9324347e Merge pull request #21354 from A4-Tacks/dedup-record-update
Fix duplicate record functional update
2025-12-28 13:13:04 +00:00
Lukas Wirth 138034f0f4 Merge pull request #21358 from Veykril/push-sxkppmzqvurw
fix: Fix hover for infer type not working
2025-12-28 13:03:51 +00:00
Lukas Wirth 31fb833167 fix: Fix hover for infer type not working 2025-12-28 13:55:52 +01:00
Lukas Wirth 4fba51da4c Merge pull request #21356 from Veykril/push-oumpxzuwmuwp
internal: Collect garbage after events when quiescient
2025-12-28 12:34:35 +00:00
Lukas Wirth 8235c351a3 Do not unnecessarily re-trigger garbage collection if no inputs have changed 2025-12-28 13:26:07 +01:00
Lukas Wirth 6f551be44b Reduce allocations in GarbageCollector 2025-12-28 13:14:06 +01:00
Lukas Wirth 1ea45e078f Merge pull request #21357 from Veykril/push-rsulypnywlsv
Drop AstIdMap asynchronously
2025-12-28 12:01:36 +00:00
Lukas Wirth ecb0c4cbfc internal: Collect garbage after events when quiescient 2025-12-28 12:58:04 +01:00
Lukas Wirth 11df3a0dec Drop AstIdMap asynchronously 2025-12-28 12:51:53 +01:00
Lukas Wirth 72b409d28b Merge pull request #21355 from Veykril/push-zkmupnykkvln
perf: Reduce channel lock contention for drop-threads
2025-12-28 10:57:22 +00:00
Lukas Wirth 5adad1a8ad perf: Reduce channel lock contention for drop-threads 2025-12-28 11:43:08 +01:00
Lukas Wirth f574941677 Merge pull request #21353 from Veykril/push-wquzszzrzwpu
perf: Pre-allocate some buffers in parsing
2025-12-28 10:27:33 +00:00
Lukas Wirth b717c74823 perf: Pre-allocate some buffers in parsing 2025-12-28 11:18:43 +01:00
A4-Tacks 1ce1faec24 Fix duplicate record functional update
Example
---
```rust
fn main() {
    let thing = 1;
    let foo = Foo { foo1: 0, foo2: 0 };
    let foo2 = Foo { thing, $0 ..Default::default() }
}
```

**Before this PR**

```text
fd ..Default::default()
fd foo1             u32
fd foo2             u32
```

**After this PR**

```text
fd foo1 u32
fd foo2 u32
```
2025-12-28 17:34:34 +08:00
Lukas Wirth 5a119a5780 Merge pull request #21352 from Veykril/push-knwlqypxtukr
minor: Remove unneeded allocation in proc-macro-srv-cli
2025-12-28 09:26:44 +00:00
Lukas Wirth 49c5102e24 Merge pull request #21351 from ChayimFriedman2/format-args-kw
fix: Fix parsing of `format_args!("...", keyword=...)`
2025-12-28 09:19:59 +00:00
Lukas Wirth fa8649fccd minor: Remove unneded allocation in proc-macro-srv-cli 2025-12-28 10:17:37 +01:00
Lukas Wirth 33ad9ca3bc Merge pull request #21349 from ChayimFriedman2/no-generic-span
internal: Make token trees no longer generic over the span
2025-12-28 08:41:57 +00:00
Chayim Refael Friedman 6851e398ae Make token trees no longer generic over the span
Since the proc macro server no longer uses them (with a different span type).
2025-12-28 09:28:55 +02:00
Chayim Refael Friedman c27f6d5481 Fix parsing of format_args!("...", keyword=...) 2025-12-28 06:35:10 +02:00
Lukas Wirth a5bdd104f4 Merge pull request #21342 from yotamofek/patch-1
Fix grammar in "Use of AI tools" section
2025-12-27 19:21:49 +00:00
Chayim Refael Friedman 0146f8dc31 Merge pull request #21344 from flodiebold/push-prxvkyqorowx
internal: Don't use MIR ProjectionElem in closure analysis
2025-12-27 18:36:37 +00:00
Florian Diebold bb5c82c406 Don't use MIR ProjectionElem in closure analysis
Almost all of the enum variants were unused, it's not very useful.
2025-12-27 19:18:41 +01:00
Chayim Refael Friedman 28b8503c90 Merge pull request #21348 from ChayimFriedman2/reenable-variance
fix: Reenable fixpoint variance
2025-12-27 18:14:53 +00:00
Chayim Refael Friedman fc1cb48d3b Fix tests that relied on the default variance to be invariant
And now it changed to bivariant.
2025-12-27 20:06:24 +02:00
Chayim Refael Friedman a9da655c9b Bring back fixpoint iteration for variance 2025-12-27 19:57:42 +02:00
Chayim Refael Friedman 6ff77ac18d Merge pull request #21345 from Shourya742/2025-12-27-remove-channel-mess
Remove Channel workaround from proc-macro-srv
2025-12-27 17:21:43 +00:00
bit-aloo 671aab6dbd make expand ProcMacroServerSpan type live longer 2025-12-27 18:08:42 +05:30
bit-aloo 43cda6d5ec remove unwraps from source_text impl 2025-12-27 17:52:16 +05:30
bit-aloo 7e873dbeb4 rename BidirectionalStruct to ProcMacroClientHandle 2025-12-27 17:49:32 +05:30
bit-aloo 359fe9a231 remove read and write generics, also remove lock from the beginning and follow lock when required pattern 2025-12-27 17:44:31 +05:30
bit-aloo 462b4a02cf attach lifetime to ProcMacroClientHandle and make necessary changes to proc-macro-srv 2025-12-27 17:43:14 +05:30
bit-aloo d494dbcf97 make framing buffer send 2025-12-27 17:41:16 +05:30
Lukas Wirth 31b0cb9484 Merge pull request #21341 from Veykril/veykril/push-wsrtvrkzqyvr
internal: Move library and local root inputs to base-db
2025-12-27 10:24:52 +00:00
Lukas Wirth 61203a098e internal: Move library and local root inputs to base-db 2025-12-27 11:16:17 +01:00
Lukas Wirth e90e264290 Merge pull request #20741 from A4-Tacks/comp-macro-segment
feat: Add macro segment completion
2025-12-27 10:02:35 +00:00
Yotam Ofek e80997d02c Fix grammar in "Use of AI tools" section 2025-12-27 11:58:14 +02:00
A4-Tacks 06a6a00895 Minor fixup 2025-12-27 17:28:22 +08:00
Lukas Wirth 9ab53d6d9e Merge pull request #21340 from Shourya742/2025-12-26-better-bm-ergonomics
Refactor: Bidirectional messages
2025-12-27 08:59:21 +00:00
bit-aloo 720d9eecc7 remove crossbeam-channel from proc-macro-srv-cli 2025-12-27 10:40:42 +05:30
bit-aloo 38f1cccef2 make source_text take non mutable reference of self 2025-12-27 09:43:01 +05:30
bit-aloo 8ae38dc333 rename handler's to be context specific 2025-12-27 09:21:32 +05:30
bit-aloo 231690657e add bidirectional handle in proc-macro-srv-cli to interact with client and srv 2025-12-27 09:07:08 +05:30
A4-Tacks 22fbbd4306 Add macro segment completion
Example
---
```rust
macro_rules! foo {
    ($($x:$0)*) => ();
}
```

**Completion items**:

```text
ba block
ba expr
ba expr_2021
ba ident
ba item
ba lifetime
ba literal
ba meta
ba pat
ba pat_param
ba path
ba stmt
ba tt
ba ty
ba vis
```
2025-12-27 05:04:18 +08:00
bit-aloo 8aa859476c adapt source_text to new handler 2025-12-26 23:04:19 +05:30
bit-aloo 8f141eaab3 remove old subreq/resp constructs 2025-12-26 23:04:04 +05:30
bit-aloo abf22599e3 add bidirectionalHandler trait 2025-12-26 23:03:42 +05:30
Lukas Wirth 50ed4e91fc Merge pull request #21200 from ChayimFriedman2/fake-impls
perf: Do not really expand builtin derives, instead treat them specifically
2025-12-26 13:31:48 +00:00