Turborepo v2.9.4stable Released Apr 05, 2026
Impact Score: 5/10

Turborepo v2.9.4

Source available โ€” automated, not human-reviewed

Component: turbo ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Compatibility not verified โ€” check source notes
$ npm install --save-dev --save-exact [email protected]
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

Turborepo v2.9.4. Source highlight: fix: Always update $schema URL to versioned format during migration

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โœจ New Features & Capabilities (2)

  • feat: Add incremental task caching
  • feat: Allow `--affected` and `--filter` to be combined

๐Ÿ”ง Bug Fixes & Patches (6)

  • fix: Always update $schema URL to versioned format during migration
  • fix: Support `turbo.jsonc` in codemod transforms
  • fix: Preserve prerelease info in schema URL during codemod migration
  • fix: Prevent `filterUsingTasks` `--filter` from pulling dependents into Task Graph
  • fix: Only enforce signature key length for keys that exist
  • fix: Validate engine concurrency after task-level filtering
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
<!-- Release notes generated using configuration in .github/release.yml at v2.9.4 --> ## What's Changed ### @turbo/codemod * fix: Always update $schema URL to versioned format during migration by @anthonyshew in https://github.com/vercel/turborepo/pull/12529 * fix: Support `turbo.jsonc` in codemod transforms by @anthonyshew in https://github.com/vercel/turborepo/pull/12532 * fix: Preserve prerelease info in schema URL during codemod migration by @anthonyshew in https://github.com/vercel/turborepo/pull/12542 ### Examples * build(deps): Bump @xmldom/xmldom from 0.8.11 to 0.8.12 in /examples/with-react-native-web by @dependabot[bot] in https://github.com/vercel/turborepo/pull/12537 ### Changelog * feat: Add incremental task caching by @anthonyshew in https://github.com/vercel/turborepo/pull/12531 * docs: Send siteId as label on feedback GitHub issues by @molebox in https://github.com/vercel/turborepo/pull/12527 * Replace local ai-agent-detection with @vercel/agent-readability by @molebox in https://github.com/vercel/turborepo/pull/12528 * fix: Prevent `filterUsingTasks` `--filter` from pulling dependents into Task Graph by @anthonyshew in https://github.com/vercel/turborepo/pull/12535 * fix: Only enforce signature key length for keys that exist by @anthonyshew in https://github.com/vercel/turborepo/pull/12538 * fix: Validate engine concurrency after task-level filtering by @anthonyshew in https://github.com/vercel/turborepo/pull/12540 * feat: Allow `--affected` and `--filter` to be combined by @anthonyshew in https://github.com/vercel/turborepo/pull/12543 * fix(config): Deep-merge nested OTEL config across priority sources by @bitttttten in https://github.com/vercel/turborepo/pull/12513 * fix: Retain microfrontend proxy tasks when using `filterUsingTasks` by @anthonyshew in https://github.com/vercel/turborepo/pull/12545 * fix: Bun workspace lockfile pruning producing invalid output by @JRoy in https://github.com/vercel/turborepo/pull/12548 * fix: Respect dirty .gitignore patterns during task input hashing by @anthonyshew in https://github.com/vercel/turborepo/pull/12557 ## New Contributors * @JRoy made their first contribution in https://github.com/vercel/turborepo/pull/12548 **Full Changelog**: https://github.com/vercel/turborepo/compare/v2.9.3...v2.9.4