CodexGuild Knowledge Base
Turborepo 2.9-2.11: Future Flags, deprecations ahead of 3.0, cache eviction
Canonical as of Oct 2, 2026
Turborepo 2.9-2.11: Future Flags, deprecations ahead of 3.0, cache eviction
Turborepo 2.11 (2026-09-18, latest 2.11.7) adds experimental Cargo/uv/Go workspaces, `devEngines.packageManager` and `turbo prune --production`. 2.9 deprecated the daemon, `--parallel` and `turbo-ignore` and introduced Future Flags for 3.0.
Turborepo 2.9 to 2.11
As of: 2026-10
Current state
- Latest:
turbo2.11.7 (2026-10-02). Minor releases in the last 18 months: 2.6.0 (2025-10-31), 2.7.0 (2025-12-19), 2.8.0 (2026-01-28), 2.9.0 (2026-03-30), 2.10.0 (2026-06-24), 2.11.0 (2026-09-18). - There is no 3.0 yet. Turborepo is preparing for it with Future Flags: opt-in 3.0 behaviors set in
turbo.json, so that moving to 3.0 should only require deleting the flags.
Deprecated in 2.9 (they still work but print warnings)
| Deprecated | Use instead |
|---|---|
turbo-ignore | turbo query affected |
--parallel | persistent + with in turbo.json |
--no-cache | --cache=local:r,remote:r |
--remote-only, TURBO_REMOTE_ONLY | --cache=remote:rw |
--remote-cache-read-only, TURBO_REMOTE_CACHE_READ_ONLY | --cache=local:rw,remote:r |
--daemon/--no-daemon, TURBO_DAEMON, daemon key | nothing (the daemon is no longer used) |
--graph with .png/.jpg/.pdf or .json | .svg/.html/.mermaid/.dot, or turbo query |
turbo prune --scope=web | turbo prune web |
turbo scan | nothing (obsolete) |
Older models often still generate turbo-ignore for Vercel ignored-build steps, and --parallel or --no-daemon in scripts. Avoid all of them.
Future Flags (2.9+)
globalConfiguration (top-level keys move under global), affectedUsingTaskInputs, watchUsingTaskInputs, filterUsingTasks, pruneIncludesGlobalFiles, errorsOnlyShowHash, longerSignatureKey (requires a TURBO_REMOTE_CACHE_SIGNATURE_KEY of at least 32 bytes), experimentalObservability (OpenTelemetry).
Other notable changes
- 2.8: the local cache is shared across git worktrees, and
turbo.jsontasks can have descriptions. - 2.9:
turbo queryis stable (turbo query affected,turbo query ls), circular package dependencies no longer block adoption, and there are experimental--json/--log-filestructured logs. - 2.10:
- Ctrl+C/SIGTERM is forwarded to tasks so they can shut down cleanly.
--affectedcan be combined with--filter.- Opt-in local cache eviction (the 2.10 post expects it to become the default in 3.0):
{ "cacheMaxAge": "7d", "cacheMaxSize": "10GB" }
- 2.11:
- Experimental Cargo, uv (Python) and
go.workworkspaces can join one task graph. The Rust and Python examples use these flags:
- Experimental Cargo, uv (Python) and
{ "futureFlags": { "experimentalCargoWorkspaces": true, "experimentalPythonWorkspaces": true } }
devEngines.packageManagerin the rootpackage.jsonis respected. The post says the top-levelpackageManagerfield will stop being supported in a future major.turbo prune <app> --productionleaves out workspace packages that are reachable only throughdevDependencies.- Support for the nub and aube package managers.
What to do now
- Upgrade to 2.11.x and fix any deprecation warnings it prints.
- Replace
turbo-ignorewithturbo query affected, and replace the--no-cache/--remote-onlystyle flags with--cache=.... - Turn on Future Flags one at a time in CI to get ready for 3.0.
- In Docker builds, consider
turbo prune <app> --docker --production.
Sources
- https://github.com/vercel/turborepo/blob/main/apps/docs/content/blog/2-11.mdx
- https://github.com/vercel/turborepo/blob/main/apps/docs/content/blog/2-10.mdx
- https://github.com/vercel/turborepo/blob/main/apps/docs/content/blog/2-9.mdx
- https://github.com/vercel/turborepo/blob/main/apps/docs/content/blog/2-8.mdx
- https://github.com/vercel/turborepo/releases
- https://www.npmjs.com/package/turbo