** Speaker announcement ** Catch Vlad Beskrovny & Lukas Wirth's talk 'One Language, Two IDE Engines' at RustWeek 2026!
Info & tickets: 2026.rustweek.org/talks/ides/
See you in Utrecht May 18-23, 2026!
@lukaswirth.dev
#rustweek2026 #rustlang
27.02.2026 10:46
๐ 16
๐ 3
๐ฌ 0
๐ 0
oh sweet, I was wondering whether that was a thing already or not
19.02.2026 07:29
๐ 1
๐ 0
๐ฌ 0
๐ 0
Usually you want a reference to the `dyn Any` inside the box, `&Box<dyn Any>` will unfortunately be a reference to the box itself, just that the box is now unsized to `dyn Any`.
18.02.2026 15:06
๐ 9
๐ 0
๐ฌ 1
๐ 0
The fact that `&Box<dyn Any>` is coercible to `&dyn Any` is such a big footgun ...
18.02.2026 13:35
๐ 16
๐ 0
๐ฌ 3
๐ 0
This might get me to watch eurovision again, love that guy and some of his songs
17.02.2026 11:12
๐ 3
๐ 0
๐ฌ 0
๐ 0
"Vestige"
It's been a while since I last dedicated an illustration to this duo and I wanted to practice drawing desert scenes again, so here's the result c:
11.02.2026 18:01
๐ 372
๐ 95
๐ฌ 1
๐ 0
hey uhhh. I got fired yesterday. if anyone has rust positions in the Netherlands let me know!
11.02.2026 10:24
๐ 67
๐ 40
๐ฌ 6
๐ 2
This can vastly speed up initial project indexing depending on your project as the proc-macro server process can only expand a single macro at a given time (due to macros observing the process environment). Once rust-analyzer becomes a bit more parallel it will also speed up things in general.
23.01.2026 13:03
๐ 7
๐ 0
๐ฌ 0
๐ 0
internal: Parallelize proc macro expansion by Shourya742 ยท Pull Request #21385 ยท rust-lang/rust-analyzer
This PR replaces the single proc-macro server per workspace with a small pool of server processes.
If you are on the preview rust-analyzer releases you can now enable using multiple proc-macro servers (or on stable next monday) by setting the `procMacro.processes` config to a higher number than one 1.
github.com/rust-lang/ru...
23.01.2026 13:03
๐ 23
๐ 0
๐ฌ 1
๐ 0
Oh so that's what you changed on my PR, this diff had me so confused lol
16.01.2026 14:30
๐ 0
๐ 0
๐ฌ 1
๐ 0
Gotta put rust-analyzer on this list as well
08.01.2026 20:30
๐ 9
๐ 0
๐ฌ 1
๐ 0
my "this isn't meant to be used for harassment" sign i put on my list of enemies is raising a lot of questions answered by the sign
08.01.2026 19:28
๐ 91
๐ 8
๐ฌ 4
๐ 0
Or well, I suppose turning the reference impl back into something template-ish for codegen is just far more annoying.
05.01.2026 08:20
๐ 1
๐ 0
๐ฌ 1
๐ 0
Curious why you used an LLM to duplicate this instead of having a codegen script with the codegen checked out in-tree over a macro then. The codegen approach would allow you to predictably make the same change across all places easily later. I guess because to be able to dupe the documentation?
05.01.2026 08:17
๐ 1
๐ 0
๐ฌ 1
๐ 0
error[E0277]: the trait bound `NoopEviction: HasCapacity` is not satisfied
--> tests\cycle.rs:1306:5
|
1306 | #[salsa::tracked]
| ^^^^^^^^^^^^^^^^^ the trait `HasCapacity` is not implemented for `NoopEviction`
|
help: the trait `HasCapacity` is implemented for `Lru`
--> C:\Workspace\salsa\src\function\eviction\lru.rs:75:1
|
75 | impl HasCapacity for Lru {}
| ^^^^^^^^^^^^^^^^^^^^^^^^
= help: see issue #48214
= note: this error originates in the macro `salsa::plumbing::setup_tracked_fn` which comes from the expansion of the attribute macro `salsa::tracked` (in Nightly builds, run with -Z macro-backtrace for more info)
help: add `#![feature(trivial_bounds)]` to the crate attributes to enable
|
7 + #![feature(trivial_bounds)]
|
fn set_lru_capacity(db: &mut dyn $Db, value: usize)
where
for<'trivial_bounds> $Eviction: $zalsa::function::HasCapacity
{
$Configuration::fn_ingredient_mut(db).set_capacity(value);
}
`#![feature(trivial_bounds)]` or as I like to call it on stable: `for<'trivial_bounds> Type: Bound`
31.12.2025 13:58
๐ 9
๐ 0
๐ฌ 0
๐ 0
we'd still only be able to execute proc-macros in parallel if they are run within the same environment (working dir, env vars) which only happens within the same crate really. So the alternative we are likely looking at is to just spawn multiple servers and handle them like a process pool.
23.12.2025 08:46
๐ 5
๐ 0
๐ฌ 0
๐ 0
The annoying part, you can't trivially parallelize this on the proc-macro server because proc-macros execute in (and are in control ๐ตโ๐ซ of) the process environment, so technically running multiple at once can cause issues. But even ignoring that they can change the environment,
23.12.2025 08:46
๐ 5
๐ 0
๐ฌ 1
๐ 0
And some additional notes for parallel proc-macro expansion, today r-a spawns a single proc-macro server that does expansion one at a time, meaning whenever r-a wants to expand a proc-macro, it takes a global lock on the proc-macro server!
23.12.2025 08:46
๐ 6
๐ 0
๐ฌ 1
๐ 0
TokenStream in proc_macro - Rust
The main type provided by this crate, representing an abstract stream of tokens, or, more specifically, a sequence of token trees. The type provides interfaces for iterating over those token trees and...
For context as to why we still cannot implement `expand_expr`, that feature effectively turns all proc-macro into eager macro expansions which would basically prevent rust-analyzer from doing a lot of incremental caching, so we just cannot implement this as designed doc.rust-lang.org/stable/proc_...
23.12.2025 08:46
๐ 5
๐ 0
๐ฌ 1
๐ 0
super excited to see the proc-macro server RPC rewrite being worked on, once this here is finished it should allow us to implement all the remaining proc-macro features (except for `expand_expr`)! And afterwards we'll be tackling parallelization!
github.com/rust-lang/ru...
23.12.2025 08:46
๐ 22
๐ 2
๐ฌ 1
๐ 0
Oh yea, also performance of the standard view being really terrible is not great which I guess is part of the reason why this single file mode exists, but imo thats not a solution to that problem.
18.12.2025 13:08
๐ 1
๐ 0
๐ฌ 1
๐ 0
Look at the diff of a PR that touches a lot of files and you will be forced into this weird mode which is just so annoying to work with in my opinion.
18.12.2025 13:06
๐ 3
๐ 0
๐ฌ 0
๐ 0
Also the fact that if you are forced into that view that the ui doesn't tell you what you have marked as viewed makes this infinitely more worse. Whats even the point of being able to mark files viewed there.
18.12.2025 13:05
๐ 0
๐ 0
๐ฌ 1
๐ 0
Honestly not sure what my ideal workflow here would be, I haven't thought too much about it so far, but the fact that large PRs only allow you to look at a single file nowadays is frustrating.
18.12.2025 13:05
๐ 1
๐ 0
๐ฌ 1
๐ 0
Oh my god, github managed to make the review experience just so much worse and it was already trash to begin with
18.12.2025 10:52
๐ 13
๐ 1
๐ฌ 5
๐ 0
Oh neat, how is salsa treating you so far? ๐ I always get surprised when I see a new project picking it up
10.12.2025 18:07
๐ 1
๐ 0
๐ฌ 1
๐ 0
Ayy congrats!
08.12.2025 12:51
๐ 1
๐ 0
๐ฌ 0
๐ 0