---
collection: js-toolchain
collection_name: JavaScript Runtimes & Tooling
week_start: 2026-07-20
title: Vitest beta rethinks config, Turborepo stable courts Cargo
release_count: 8
generated: 2026-07-27
canonical: https://releases.sh/collections/js-toolchain/digest/2026-07-20
---

# Vitest beta rethinks config, Turborepo stable courts Cargo

Vitest v5.0.0-beta.7 separates config resolution from server creation, a breaking change for programmatic users, while Turborepo v2.10.6 adds first-class Cargo-only repository support.

### Vitest beta separates config from server

The week’s biggest story is [Vitest’s v5.0.0-beta.7](/release/rel_BHw2nOILsdU6RTzaD_itS-vitest-v5-0-0-beta-7-separates-config-resolution-from-server-creation), which breaks config resolution away from the server object. Programmatic users who previously relied on `startVitest()` or `createVitest()` to return a fully configured server will need to migrate: config is now resolved independently before the server is created. The change, driven by @sheremet-va, cleans up Vitest’s internals but means any custom launcher or test runner wrapper must update its call sites. On the upside, the beta ships a pluggable benchmark provider API, a togglable `injectCjsGlobals` option, and performance wins from warm modules, Node compile cache, and bundled dependencies. The VS Code extension also saw a small but welcome quality-of-life fix: [diagnostics are now tagged with source "Vitest"](/release/rel_ELE8X6bjMZ1swA8SHVOH6-vitest-vs-code-v1-50-8-sets-diagnostic-source-to-vitest) instead of the default, making them filterable in the Problems panel.

### Turborepo matures with Cargo support and polish

Turborepo reached a minor milestone with [v2.10.6](/release/rel_Nv5F9-Xswoq-XaxpKSPql-turborepo-v2-10-6-adds-cargo-only-repo-support-and-fixes-pruning-bugs), which now supports Cargo-only repositories — Turborepo automatically infers Cargo workspace tasks, so Rust monorepos can use its caching and orchestration without a JavaScript package manager. The release also fixes a batch of pruning bugs (Bun, Yarn, pnpm), resolves security audit vulnerabilities, and preserves TUI output colors. The canary track continued to add refinements: [v2.10.6-canary.5](/release/rel_iWRejSy-RHZESw4jwLgn9-turborepo-v2-10-6-canary-5-preserves-pnpm-node-runtime-lockfile-entries-and) preserves pnpm `node@runtime:` lockfile entries that were previously dropped and checks dynamic imports in the boundaries module, while [v2.10.7-canary.1](/release/rel_dVjE3myiI-M3kQqLEoH0q-turborepo-v2-10-7-canary-1-fixes-jit-input-matching-and-preserves-pnpm) fixes JIT input matching for affected tasks and preserves pnpm root and aliased dependencies during prune. The latest [v2.10.8-canary.1](/release/rel_TUxFoadP0Eqb-tq9EF1PJ-turborepo-v2-10-8-canary-1-fixes-macos-file-watching-and-mouse-wheel-scrolling) adds multiple macOS file watch root support and enables mouse wheel scrolling in the Terminal UI task list — small ergonomic wins that add up. (A subsequent [v2.10.8-canary.2](/release/rel_kn52g8VpgEVeOJV0zWoC2-turborepo-v2-10-8-canary-2-internal-refactoring) was purely internal refactoring.)

### Deno fixes registry downloads

[Deno v2.9.4](/release/rel_1DhhPVM6O1Cpx3nQNSGJn-deno-v2-9-4-fixes-npm-tarball-downloads-from-configured-registries) fixed a critical bug: npm tarballs were downloading from registry.npmjs.org instead of the configured registry. If you use a private npm registry or mirror, this was silently breaking your dependency resolution. The release also includes dozens of other fixes across the runtime, plus V8 upgrade to 150.2.0.

## Releases covered

### Deno

- [Deno v2.9.4 fixes npm tarball downloads from configured registries](https://releases.sh/release/rel_1DhhPVM6O1Cpx3nQNSGJn-npm-tarballs-now-download-from-configured-registry)

### Vercel

- [Turborepo v2.10.6 adds Cargo-only repo support and fixes pruning bugs](https://releases.sh/release/rel_Nv5F9-Xswoq-XaxpKSPql-cargo-only-repos-supported-pruning-and-security-fixes)
- [Turborepo v2.10.6-canary.5 preserves pnpm node:runtime lockfile entries and checks dynamic imports](https://releases.sh/release/rel_iWRejSy-RHZESw4jwLgn9-pnpm-node-runtime-lockfile-entries-preserved-dynamic-import-boundaries-checked)
- [Turborepo v2.10.7-canary.1 fixes JIT input matching and preserves pnpm dependencies during prune](https://releases.sh/release/rel_dVjE3myiI-M3kQqLEoH0q-jit-input-matching-fixed-pnpm-dependencies-preserved-during-prune)
- [Turborepo v2.10.8-canary.1 fixes macOS file watching and mouse wheel scrolling](https://releases.sh/release/rel_TUxFoadP0Eqb-tq9EF1PJ-multiple-macos-file-watch-roots-tui-scrolls-with-mouse-wheel)
- [Turborepo v2.10.8-canary.2 internal refactoring](https://releases.sh/release/rel_kn52g8VpgEVeOJV0zWoC2-turborepo-v2-10-8-canary-2-internal-refactoring)

### Vitest

- [Vitest v5.0.0-beta.7 separates config resolution from server creation](https://releases.sh/release/rel_BHw2nOILsdU6RTzaD_itS-config-resolution-decoupled-from-server-pluggable-benchmark-api)
- [Vitest VS Code v1.50.8 sets diagnostic source to "Vitest"](https://releases.sh/release/rel_ELE8X6bjMZ1swA8SHVOH6-diagnostics-now-labeled-as-vitest)
