Rspack 2.2 Lands 30+ Speed Boosts, pnpm 12 Goes Rust-Stable, and Solid 2.0 RC Bakes Async into Reactivity
pnpm 12’s Rust core is now the default path forward, but the upgrade isn’t automatic — teams relying on `npm install -g pnpm` will stay on v11 unless they explicitly opt in. Solid 2.0 RC freezes its API, so early adopters can start porting without fear of further churn.
Rspack 2.2 delivers shorter build times, improved HMR, and shorter module IDs alongside `import.meta` enhancements and Browserslist Baseline support. pnpm 12 marks the Rust rewrite as stable, carrying over v11 commands and lockfile format with minimal breakage — but npm’s latest tag still points to v11, so the upgrade requires an explicit `pnpm self‑update next‑12`.
Solid 2.0 RC removes `createResource`, `batch`, and `startTransition` entirely. Async data now flows through ordinary memos inside the reactive dependency graph, and SolidStart’s capabilities are folded into a Vite plugin behind a `start: true` flag. Node.js 26.8.0 adds native ZIP read/write and basic REPL syntax highlighting.
On the CSS side, six 2026-era features — already broadly supported — can replace chunks of JavaScript, though many developers still overlook them. A Chrome extension called Mobile View tests up to five device viewports simultaneously with scroll sync and theme toggling, while SVGO 4.1 and nuqs 2.10 round out the tooling updates.
Solid 2.0’s removal of `createResource` and `startTransition` signals a design bet that async should not be a special case — it should just be another edge in the dependency graph, tracked like any other value. That simplifies the mental model but also shifts complexity onto the runtime’s scheduler.
The ESM-vs-CommonJS binding difference is not academic: a destructured `require()` in a hot-reload or circular-dependency scenario will hold a stale copy while an `import` sees the latest value. Library authors shipping dual-format packages need to be aware that consumers may observe different behavior depending on which module system resolves.
pnpm keeping npm’s `latest` tag on v11 while releasing a stable Rust-based v12 is a cautious rollout pattern that avoids surprising CI pipelines, but it also means many teams will unknowingly stay on the older runtime for weeks or months.