<!-- Release notes generated using configuration in .github/release.yml at v2.9.7 -->
What's Changed
eslint
- chore: Upgrade dependencies to resolve their known vulnerabilities by @anthonyshew in https://github.com/vercel/turborepo/pull/12604
Examples
- feat(sandbox): Bump @vercel/sandbox from v1 to beta by @marc-vercel in https://github.com/vercel/turborepo/pull/12595
- chore: Update examples to Turbo 2.9.6 by @cursor[bot] in https://github.com/vercel/turborepo/pull/12600
- examples: Add Ultracite example by @haydenbleasel in https://github.com/vercel/turborepo/pull/12615
Changelog
- fix: Align Markdown docs routing with docs/md endpoints by @molebox in https://github.com/vercel/turborepo/pull/12596
- fix: Support two-dot git ranges in filter selectors by @anthonyshew in https://github.com/vercel/turborepo/pull/12599
- feat: Graceful shutdown by @anthonyshew in https://github.com/vercel/turborepo/pull/12607
- test: Add stdin EOF startup regression coverage by @anthonyshew in https://github.com/vercel/turborepo/pull/12609
- fix: Ignore
SIGINTin shim after spawning localturboby @anthonyshew in https://github.com/vercel/turborepo/pull/12612 - fix: Support pnpm v11 multi-document lockfiles by @anthonyshew in https://github.com/vercel/turborepo/pull/12616
- fix: Preserve graceful shutdown exit code by @anthonyshew in https://github.com/vercel/turborepo/pull/12620
- fix: Keep Node wrapper alive during graceful shutdown by @anthonyshew in https://github.com/vercel/turborepo/pull/12622
- fix: Preserve PTY graceful shutdown semantics by @anthonyshew in https://github.com/vercel/turborepo/pull/12624
- feat: Move Vercel auth to standard OAuth/device flows by @markandrus in https://github.com/vercel/turborepo/pull/12526
- fix: Preserve legacy Vercel auth compatibility by @anthonyshew in https://github.com/vercel/turborepo/pull/12629
- fix: Recover Vercel auth tokens across login flows by @anthonyshew in https://github.com/vercel/turborepo/pull/12631
- docs: Fix TURBO_PLATFORM_ENV_DISABLED value in docs (true, not false) by @sleitor in https://github.com/vercel/turborepo/pull/12633
- chore: Update flags SDK by @AndyBitz in https://github.com/vercel/turborepo/pull/12646
- ci: Disable AWS-backed sccache by @anthonyshew in https://github.com/vercel/turborepo/pull/12663
- fix: Prevent prune from overmatching gitignore entries by @anthonyshew in https://github.com/vercel/turborepo/pull/12662
- ci: Harden release API commits by @anthonyshew in https://github.com/vercel/turborepo/pull/12664
- ci: Fix release API commit paths by @anthonyshew in https://github.com/vercel/turborepo/pull/12665
- release(turborepo): 2.9.7-canary.14 by @github-actions[bot] in https://github.com/vercel/turborepo/pull/12666
- chore: Add
tbxsandbox helper by @anthonyshew in https://github.com/vercel/turborepo/pull/12668 - fix: Allow npm registry in tbx sandboxes by @anthonyshew in https://github.com/vercel/turborepo/pull/12669
- fix: Install turbo globally in tbx base by @anthonyshew in https://github.com/vercel/turborepo/pull/12670
- docs: Clarify package hash file inputs by @anthonyshew in https://github.com/vercel/turborepo/pull/12671
- fix: Allow tbx sandboxes to use stale bases by @anthonyshew in https://github.com/vercel/turborepo/pull/12672
- fix: Install dotfiles during
tbx base refreshby @anthonyshew in https://github.com/vercel/turborepo/pull/12673 - fix: Improve tbx sandbox startup by @anthonyshew in https://github.com/vercel/turborepo/pull/12674
- fix: Improve tbx sandbox startup defaults by @anthonyshew in https://github.com/vercel/turborepo/pull/12675
- fix: Support pnpm 11 flat patch lockfiles by @anthonyshew in https://github.com/vercel/turborepo/pull/12676
- docs: Fix link to passthrough variables source code by @Wartijn in https://github.com/vercel/turborepo/pull/12643
- release(turborepo): 2.9.7-canary.15 by @github-actions[bot] in https://github.com/vercel/turborepo/pull/12677
- fix: Avoid rerunning non-cacheable watch dependencies by @anthonyshew in https://github.com/vercel/turborepo/pull/12678
New Contributors
- @marc-vercel made their first contribution in https://github.com/vercel/turborepo/pull/12595
- @cursor[bot] made their first contribution in https://github.com/vercel/turborepo/pull/12600
- @markandrus made their first contribution in https://github.com/vercel/turborepo/pull/12526
- @AndyBitz made their first contribution in https://github.com/vercel/turborepo/pull/12646
- @Wartijn made their first contribution in https://github.com/vercel/turborepo/pull/12643
Full Changelog: https://github.com/vercel/turborepo/compare/v2.9.6...v2.9.7
Fetched May 1, 2026
