<!-- Release notes generated using configuration in .github/release.yml at v2.9.0 -->
What's Changed
Docs
create-turbo
turbo-ignore
@turbo/codemod
eslint
@turbo/repository
Examples
Changelog
- fix: Support trailing commas in microfrontends JSONC files by @anthonyshew in https://github.com/vercel/turborepo/pull/11573
- perf: Replace third-party crates with Rust std lib equivalents by @anthonyshew in https://github.com/vercel/turborepo/pull/11569
- perf: Reduce duplicate dependency versions by @anthonyshew in https://github.com/vercel/turborepo/pull/11568
- chore: Remove legacy Go/goreleaser buildcontainer directory by @anthonyshew in https://github.com/vercel/turborepo/pull/11576
- chore: Rename README.md to RULE.md in skills directory by @anthonyshew in https://github.com/vercel/turborepo/pull/11582
- fix: Validate turbo version from lockfile for all package managers by @anthonyshew in https://github.com/vercel/turborepo/pull/11587
- fix: Add
allowComments and allowTrailingCommas to turbo.json schema by @ddmoney420 in https://github.com/vercel/turborepo/pull/11579
- chore: Eliminate ts-rs serde attribute parse warnings by @anthonyshew in https://github.com/vercel/turborepo/pull/11589
- fix: Extract git argument validation into reusable helper by @anthonyshew in https://github.com/vercel/turborepo/pull/11593
- fix: Upgrade fast-xml-parser to fix RangeError DoS by @anthonyshew in https://github.com/vercel/turborepo/pull/11598
- fix: Upgrade semver to fix ReDoS vulnerability by @anthonyshew in https://github.com/vercel/turborepo/pull/11596
- fix: Upgrade tar to fix security vulnerabilities by @anthonyshew in https://github.com/vercel/turborepo/pull/11602
- fix: Upgrade @actions/github to fix @octokit vulnerabilities by @anthonyshew in https://github.com/vercel/turborepo/pull/11607
- fix: Upgrade @vercel/blob and @actions packages to fix undici vulnerability by @anthonyshew in https://github.com/vercel/turborepo/pull/11608
- docs: Running Root Tasks by @Netail in https://github.com/vercel/turborepo/pull/11630
- Update README.md title and remove features section by @anthonyshew in https://github.com/vercel/turborepo/pull/11651
- docs: Update using-environment-variables.mdx by @anthonyshew in https://github.com/vercel/turborepo/pull/11652
- fix: Upgrade js-yaml to address CVE-2025-64718 by @alexmkio in https://github.com/vercel/turborepo/pull/11650
- fix: Remove smooth scrolling from docs by @anthonyshew in https://github.com/vercel/turborepo/pull/11654
- fix: Add sitemap link to 404 page and fix TurborepoLogo gradient by @anthonyshew in https://github.com/vercel/turborepo/pull/11655
- fix: Upgrade capnp to 0.24 by @anthonyshew in https://github.com/vercel/turborepo/pull/11656
- fix: Upgrade h2 to fix CONTINUATION Flood by @anthonyshew in https://github.com/vercel/turborepo/pull/11658
- fix: Upgrade crossbeam-channel to 0.5.15 by @anthonyshew in https://github.com/vercel/turborepo/pull/11657
- chore: Remove abandoned turbo clone command by @anthonyshew in https://github.com/vercel/turborepo/pull/11673
- fix: Upgrade rustls and ring by @anthonyshew in https://github.com/vercel/turborepo/pull/11659
- fix: Upgrade openssl to 0.10.75 by @anthonyshew in https://github.com/vercel/turborepo/pull/11660
- fix: Replace unmaintained adler with adler2 by @anthonyshew in https://github.com/vercel/turborepo/pull/11661
- fix: Upgrade tar to 7.5.7 to address security vulnerabilities by @anthonyshew in https://github.com/vercel/turborepo/pull/11680
- fix: Upgrade ts-json-schema-generator to fix glob command injection vulnerability by @anthonyshew in https://github.com/vercel/turborepo/pull/11684
- fix: Upgrade fumadocs and shiki in docs to resolve mdast-util-to-hast vulnerability by @anthonyshew in https://github.com/vercel/turborepo/pull/11704
- fix: Replace ts-node with tsx to resolve diff DoS vulnerability by @anthonyshew in https://github.com/vercel/turborepo/pull/11708
- fix: Upgrade bytes to >=1.11.1 to fix RUSTSEC-2026-0007 by @anthonyshew in https://github.com/vercel/turborepo/pull/11715
- chore: Update ratatui dependencies (paste blocked upstream) by @anthonyshew in https://github.com/vercel/turborepo/pull/11717
- Revert "chore: Update ratatui dependencies (paste blocked upstream)" by @anthonyshew in https://github.com/vercel/turborepo/pull/11722
- fix: Upgrade ratatui to 0.30.0 to drop unmaintained paste crate by @anthonyshew in https://github.com/vercel/turborepo/pull/11723
- chore: Upgrade reqwest toward addressing RUSTSEC-2025-0134 by @anthonyshew in https://github.com/vercel/turborepo/pull/11718
- fix(docs): Fix code syntax highlighting by using correct Shiki CSS variable names by @anthonyshew in https://github.com/vercel/turborepo/pull/11726
- fix: Upgrade async-io to 2.x to drop unmaintained instant crate by @anthonyshew in https://github.com/vercel/turborepo/pull/11719
- fix: Migrate from unmaintained serde_yaml to serde_yml by @anthonyshew in https://github.com/vercel/turborepo/pull/11720
- fix: Upgrade test-case and merge to drop unmaintained proc-macro-error by @anthonyshew in https://github.com/vercel/turborepo/pull/11721
- fix: Upgrade indicatif to 0.18.3 to drop unmaintained number_prefix by @anthonyshew in https://github.com/vercel/turborepo/pull/11716
- refactor: Centralize configuration resolution funnel by @anthonyshew in https://github.com/vercel/turborepo/pull/11727
- fix: Upgrade rustls chain to resolve RUSTSEC-2025-0134 by @anthonyshew in https://github.com/vercel/turborepo/pull/11739
- fix: Upgrade test-case to resolve transitive proc-macro-error by @anthonyshew in https://github.com/vercel/turborepo/pull/11737
- fix: Upgrade pest/pest_derive to resolve yanked version by @anthonyshew in https://github.com/vercel/turborepo/pull/11734
- fix: Upgrade git2 to fix RUSTSEC-2026-0008 by @anthonyshew in https://github.com/vercel/turborepo/pull/11729
- fix: Upgrade pprof to fix RUSTSEC-2024-0408 by @anthonyshew in https://github.com/vercel/turborepo/pull/11730
- fix: Upgrade portable-pty to resolve RUSTSEC-2017-0008 by @anthonyshew in https://github.com/vercel/turborepo/pull/11732
- fix: Upgrade oxc_resolver to resolve yanked papaya dependency by @anthonyshew in https://github.com/vercel/turborepo/pull/11733
- fix: Upgrade futures/futures-util to resolve yanked futures-util 0.3.30 by @anthonyshew in https://github.com/vercel/turborepo/pull/11735
- fix: Replace unic-segment with unicode-segmentation in globwatch by @anthonyshew in https://github.com/vercel/turborepo/pull/11736
- fix: Replace
serde_yml with serde_yaml_ng to fix RUSTSEC-2025-0067/0068 by @anthonyshew in https://github.com/vercel/turborepo/pull/11755
- fix: Replace
oxc_resolver with unrs_resolver to fix yanked papaya dependency by @anthonyshew in https://github.com/vercel/turborepo/pull/11754
- fix: Upgrade node-plop to 0.32.3 by @anthonyshew in https://github.com/vercel/turborepo/pull/11756
- docs: Capitalizaiton in update github-actions.mdx by @anthonyshew in https://github.com/vercel/turborepo/pull/11762
- fix: Add Vary: Accept header to docs markdown endpoint by @molebox in https://github.com/vercel/turborepo/pull/11759
- chore: Agentic workflows app by @anthonyshew in https://github.com/vercel/turborepo/pull/11773
- chore: Add internal agents app for repo automation by @anthonyshew in https://github.com/vercel/turborepo/pull/11776
- chore: Update reproduction request message by @anthonyshew in https://github.com/vercel/turborepo/pull/11778
- Revert "fix: Upgrade node-plop to 0.32.3" by @anthonyshew in https://github.com/vercel/turborepo/pull/11780
- chore: Add internal agents app for repo automation by @anthonyshew in https://github.com/vercel/turborepo/pull/11781
- feat: Add internal agents app for repo automation by @anthonyshew in https://github.com/vercel/turborepo/pull/11783
- chore: Manual audits by @anthonyshew in https://github.com/vercel/turborepo/pull/11785
- chore: Fixing audit agent by @anthonyshew in https://github.com/vercel/turborepo/pull/11786
- chore: Still iterating on sec audit fixer by @anthonyshew in https://github.com/vercel/turborepo/pull/11787
- fix: Emit space for empty vt100 cells to fix TUI repaint on task switch by @anthonyshew in https://github.com/vercel/turborepo/pull/11789
- fix: Keep stdin alive for persistent tasks in stream mode by @anthonyshew in https://github.com/vercel/turborepo/pull/11793
- feat: Add internal agents app for repo automation by @anthonyshew in https://github.com/vercel/turborepo/pull/11799
- chore: Add env vars by @anthonyshew in https://github.com/vercel/turborepo/pull/11800
- fix: Handle subpath package imports in
turbo boundaries by @anthonyshew in https://github.com/vercel/turborepo/pull/11798
- feat: Add dashboard with run tracking and live logs for agent sandboxes by @anthonyshew in https://github.com/vercel/turborepo/pull/11802
- fix: Normalize bare LF to CRLF in TUI output to prevent garbled logs by @anthonyshew in https://github.com/vercel/turborepo/pull/11804
- fix: Use private blob store access in agents app by @anthonyshew in https://github.com/vercel/turborepo/pull/11811
- fix: Pass non-empty body when initializing blob log files by @anthonyshew in https://github.com/vercel/turborepo/pull/11812
- docs: Geistdocs update by @haydenbleasel in https://github.com/vercel/turborepo/pull/11807
- fix: Allow overwriting existing blobs in run updates and log appends by @anthonyshew in https://github.com/vercel/turborepo/pull/11813
- docs: Geistdocs update 2 by @haydenbleasel in https://github.com/vercel/turborepo/pull/11814
- fix: Set 5-hour timeout on security audit sandbox by @anthonyshew in https://github.com/vercel/turborepo/pull/11815
- fix: Resolve Windows TUI hang caused by portable-pty 0.9.0 ConPTY changes by @anthonyshew in https://github.com/vercel/turborepo/pull/11816
- fix: Repair audit fixer log streaming and replace git push with patch upload by @anthonyshew in https://github.com/vercel/turborepo/pull/11818
- chore: Small stuff for agent fixer by @anthonyshew in https://github.com/vercel/turborepo/pull/11819
- chore: Bump tonic to 0.14 by @anthonyshew in https://github.com/vercel/turborepo/pull/11820
- fix: Pin @turbo/gen version to match the running turbo binary by @anthonyshew in https://github.com/vercel/turborepo/pull/11822
- fix: Use
secret_key_override in tests to eliminate env var race condition by @anthonyshew in https://github.com/vercel/turborepo/pull/11824
- fix: Avoid panic in sandboxed environments by removing system-configuration dependency by @anthonyshew in https://github.com/vercel/turborepo/pull/11828
- fix: Harden token protection with
secrecy crate and close exposure gaps by @anthonyshew in https://github.com/vercel/turborepo/pull/11831
- fix: Clean up orphaned Windows child processes on shutdown by @anthonyshew in https://github.com/vercel/turborepo/pull/11829
- chore: Update lockfile for release by @anthonyshew in https://github.com/vercel/turborepo/pull/11840
- fix: Sync lockfile with @turbo/gen optionalDependencies by @anthonyshew in https://github.com/vercel/turborepo/pull/11845
- docs: Update Vitest guide with projects configuration by @PeterPCW in https://github.com/vercel/turborepo/pull/11760
- fix: Prevent premature git tag push during release staging by @anthonyshew in https://github.com/vercel/turborepo/pull/11851
- fix: Replace unsafe
pre_exec/setsid with tokio process_group(0) by @anthonyshew in https://github.com/vercel/turborepo/pull/11854
- fix: Resolve external npm packages in @turbo/gen compiled binary (#11855) by @anthonyshew in https://github.com/vercel/turborepo/pull/11856
- fix: Move
node-plop to dependencies so PlopTypes resolves for consumers by @anthonyshew in https://github.com/vercel/turborepo/pull/11862
- chore: Use 2024 edition in more packages, do not ignore some clippy l… by @ognevny in https://github.com/vercel/turborepo/pull/11860
- perf: Optimize hot-path hash computation by avoiding clones and using unstable sorts by @anthonyshew in https://github.com/vercel/turborepo/pull/11872
- perf: Replace twox-hash with xxhash-rust and optimize file hashing by @anthonyshew in https://github.com/vercel/turborepo/pull/11874
- fix: Restrict credential file permissions to owner-only by @anthonyshew in https://github.com/vercel/turborepo/pull/11870
- perf: Reduce allocations in globwalk by @anthonyshew in https://github.com/vercel/turborepo/pull/11528
- perf: Replace O(V³) Floyd-Warshall with O(V+E) DFS in watch mode subgraph creation by @anthonyshew in https://github.com/vercel/turborepo/pull/11878
- feat: Generate LLM-friendly markdown alongside --profile trace output by @anthonyshew in https://github.com/vercel/turborepo/pull/11880
- feat: Make
--profile and --anon-profile filename optional by @anthonyshew in https://github.com/vercel/turborepo/pull/11883
- perf: Batch per-package git subprocess calls into repo-wide index by @anthonyshew in https://github.com/vercel/turborepo/pull/11887
- perf: Parallelize and pre-build RepoGitIndex by @anthonyshew in https://github.com/vercel/turborepo/pull/11889
- perf: Pre-compile glob exclusion filter and cache path prefix in file hashing by @anthonyshew in https://github.com/vercel/turborepo/pull/11891
- fix: Get all pnpm lockfile pruning tests passing by @anthonyshew in https://github.com/vercel/turborepo/pull/11897
- perf: Optimize pnpm lockfile transitive closure resolution by @anthonyshew in https://github.com/vercel/turborepo/pull/11898
- fix: Resolve npm packages in @turbo/gen compiled binary by @anthonyshew in https://github.com/vercel/turborepo/pull/11900
- perf: Deduplicate file hashing and parallelize globwalks by @anthonyshew in https://github.com/vercel/turborepo/pull/11902
- perf: Improve transitive dependency resolution cache sharing across workspaces by @anthonyshew in https://github.com/vercel/turborepo/pull/11903
- perf: Reduce filesystem syscalls in globwalk, SCM hashing, and task scheduling by @anthonyshew in https://github.com/vercel/turborepo/pull/11907
- feat: Remove daemon from
turbo run, deprecate daemon flags and config by @anthonyshew in https://github.com/vercel/turborepo/pull/11910
- test: Replace help text integration tests with insta snapshots by @anthonyshew in https://github.com/vercel/turborepo/pull/11911
- perf: Reduce allocations in SCM hashing, glob preprocessing, and cache lookups by @anthonyshew in https://github.com/vercel/turborepo/pull/11916
- perf: Parallelize package.json loading and reduce builder allocations by @anthonyshew in https://github.com/vercel/turborepo/pull/11918
- perf: Cache compiled env wildcard regexes for builtin pass-through patterns by @anthonyshew in https://github.com/vercel/turborepo/pull/11920
- perf: Replace O(N) workspace path lookup with HashMap index in DependencySplitter by @anthonyshew in https://github.com/vercel/turborepo/pull/11922
- perf: Parallelize lockfile parsing with workspace discovery by @anthonyshew in https://github.com/vercel/turborepo/pull/11927
- perf: Optimize
turbo run hotpath with parallelization and reduced allocations by @anthonyshew in https://github.com/vercel/turborepo/pull/11928
- perf: Share HTTP client and improve profile instrumentation by @anthonyshew in https://github.com/vercel/turborepo/pull/11929
- perf: Share HTTP client and improve profile instrumentation by @anthonyshew in https://github.com/vercel/turborepo/pull/11932
- perf: Reduce git subprocess calls on startup by @anthonyshew in https://github.com/vercel/turborepo/pull/11934
- chore: Upgrade zstd 0.12.3 to 0.13.3 by @anthonyshew in https://github.com/vercel/turborepo/pull/11936
- perf: Replace git subprocesses with
libgit2 and skip unnecessary summary work by @anthonyshew in https://github.com/vercel/turborepo/pull/11938
- perf: Reduce per-package hashing overhead and eliminate SCM subprocesses by @anthonyshew in https://github.com/vercel/turborepo/pull/11942
- perf: Reduce CPU overhead in
turbo run hot path by @anthonyshew in https://github.com/vercel/turborepo/pull/11947
- perf: Replace
libgit2 git status with gix-index for faster file hashing by @anthonyshew in https://github.com/vercel/turborepo/pull/11950
- perf: Resolve literal input paths via stat instead of glob walk by @anthonyshew in https://github.com/vercel/turborepo/pull/11955
- perf: Optimize engine builder, task visitor, and untracked file discovery by @anthonyshew in https://github.com/vercel/turborepo/pull/11956
- perf: Parallelize
turbo run pre-execution hot path by @anthonyshew in https://github.com/vercel/turborepo/pull/11958
- chore: Add tracing spans to uninstrumented hot path functions by @anthonyshew in https://github.com/vercel/turborepo/pull/11959
- perf: Use
Arc<str> for task dependency hashes to avoid heap clones by @anthonyshew in https://github.com/vercel/turborepo/pull/11962
- perf: Add more tracing spans into startup path by @anthonyshew in https://github.com/vercel/turborepo/pull/11965
- perf: Parallelize task hash computation across topological waves by @anthonyshew in https://github.com/vercel/turborepo/pull/11969
- perf: Send engine callback before tracker bookkeeping and add tracing spans by @anthonyshew in https://github.com/vercel/turborepo/pull/11970
- fix: Resolve git_root to worktree root in linked worktrees by @anthonyshew in https://github.com/vercel/turborepo/pull/11974
- perf: Fast path for shallow wildcard glob patterns in workspace discovery by @anthonyshew in https://github.com/vercel/turborepo/pull/11972
- chore: Move git hooks from pre-commit to pre-push and match CI lint checks by @anthonyshew in https://github.com/vercel/turborepo/pull/11977
- chore: Update AGENTS.md by @anthonyshew in https://github.com/vercel/turborepo/pull/11978
- perf: Replace heap-allocated String with stack-allocated OidHash for git OIDs by @anthonyshew in https://github.com/vercel/turborepo/pull/11984
- perf: Eliminate redundant syscalls in FSCache fetch and exists by @anthonyshew in https://github.com/vercel/turborepo/pull/11985
- perf: Reduce per-task allocations in visitor dispatch loop by @anthonyshew in https://github.com/vercel/turborepo/pull/11986
- docs: Fix same-page anchor links that don't scroll to target by @anthonyshew in https://github.com/vercel/turborepo/pull/11989
- docs: Mention inputs key in package hash inputs table by @anthonyshew in https://github.com/vercel/turborepo/pull/11990
- fix(docs): update sitemap.md to single-line pipe-delimited format by @molebox in https://github.com/vercel/turborepo/pull/11976
- fix: Disable husky pre-push hook during release staging by @anthonyshew in https://github.com/vercel/turborepo/pull/11991
- fix: Use versioned schema URLs in Turborepo skill files by @anthonyshew in https://github.com/vercel/turborepo/pull/11994
- fix: Restore daemon client in
RunCache for turbo watch by @anthonyshew in https://github.com/vercel/turborepo/pull/11995
- chore: Reduce compile times by deduplicating thiserror and itertools by @anthonyshew in https://github.com/vercel/turborepo/pull/12000
- chore: Upgrade axum 0.7 to 0.8, deduplicate tower/tower-http by @anthonyshew in https://github.com/vercel/turborepo/pull/12003
- fix: Prevent peerDependencies from overwriting concrete dependency specifiers by @anthonyshew in https://github.com/vercel/turborepo/pull/12004
- fix: Resolve correct nested package version in bun lockfile pruning by @anthonyshew in https://github.com/vercel/turborepo/pull/12008
- fix: Resolve all lockfile pruning test failures by @anthonyshew in https://github.com/vercel/turborepo/pull/12009
- perf: Extract query module into turborepo-query crate by @anthonyshew in https://github.com/vercel/turborepo/pull/12007
- refactor: Migrate dry-json prysk tests to Rust + insta snapshots by @anthonyshew in https://github.com/vercel/turborepo/pull/12010
- perf: Deduplicate petgraph, fixedbitset, and dashmap by @anthonyshew in https://github.com/vercel/turborepo/pull/12011
- refactor: Migrate persistent-dependencies and task-dependencies to Rust + insta by @anthonyshew in https://github.com/vercel/turborepo/pull/12012
- test: Add lockfile-tests fixture for issue #12013 by @anthonyshew in https://github.com/vercel/turborepo/pull/12014
- perf: Remove libgit2/git2 dependency, replace with gix-object by @anthonyshew in https://github.com/vercel/turborepo/pull/12015
- refactor: Migrate daemon, jsonc, query, edit-turbo-json tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12016
- perf: Remove async-graphql from turborepo-lib by @anthonyshew in https://github.com/vercel/turborepo/pull/12017
- refactor: Migrate inference and run-logging tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12018
- refactor: Migrate run-caching and strict-env-vars tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12020
- fix: Mark lockfile-aware-caching/bun prysk test as flaky by @anthonyshew in https://github.com/vercel/turborepo/pull/12021
- fix: Add nextest retries for flaky tests by @anthonyshew in https://github.com/vercel/turborepo/pull/12027
- refactor: Migrate prune and run-summary tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12022
- fix: Add nextest retries for flaky prysk tests by @anthonyshew in https://github.com/vercel/turborepo/pull/12030
- fix: Add nextest retries for flaky prune_test::test_prune_composable_config by @anthonyshew in https://github.com/vercel/turborepo/pull/12032
- fix: Suppress npm upgrade notices in Rust integration tests by @anthonyshew in https://github.com/vercel/turborepo/pull/12033
- fix: Suppress npm upgrade notices in integration tests and consolidate test helpers by @anthonyshew in https://github.com/vercel/turborepo/pull/12036
- fix: Replace flaky pnpx symlink-dir with native NTFS junctions in find-turbo test by @anthonyshew in https://github.com/vercel/turborepo/pull/12039
- fix: Prevent corepack download prompt from hanging prysk tests on Windows by @anthonyshew in https://github.com/vercel/turborepo/pull/12041
- fix: Send OTEL metrics without requiring
--summarize flag by @anthonyshew in https://github.com/vercel/turborepo/pull/12042
- docs: Fix incorrect otel future flag bypass claim by @anthonyshew in https://github.com/vercel/turborepo/pull/12047
- fix: Address root causes of 9 flaky tests and remove retry workarounds by @anthonyshew in https://github.com/vercel/turborepo/pull/12045
- test: Port 6 prysk CLI tests to pure Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12048
- docs: Fix experimentalObservability config reference by @bkonkle in https://github.com/vercel/turborepo/pull/12052
- test: Port 10 more prysk tests to pure Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12051
- test: Port 14 more prysk tests to Rust (single-package + commands) by @anthonyshew in https://github.com/vercel/turborepo/pull/12054
- test: Port 13 more prysk tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12057
- fix: Exclude peer dependencies from workspace external dep resolution by @anthonyshew in https://github.com/vercel/turborepo/pull/12050
- test: Port all 15 workspace-configs prysk tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12058
- perf: Stream file contents during hashing to lower memory usage by @anthonyshew in https://github.com/vercel/turborepo/pull/12059
- fix: Treat
npm: alias dependencies as external, not workspace references by @anthonyshew in https://github.com/vercel/turborepo/pull/12061
- test: Port 18 more prysk tests to Rust (other/ + lockfile-aware-caching/) by @anthonyshew in https://github.com/vercel/turborepo/pull/12062
- fix: Preserve file: protocol entries in pruned yarn v1 lockfile by @anthonyshew in https://github.com/vercel/turborepo/pull/12064
- perf: Use stack-allocated OidHash in FileHashes and skip expanded hashes on normal runs by @anthonyshew in https://github.com/vercel/turborepo/pull/12065
- test: Port all 8 find-turbo prysk tests to Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12066
- fix: Support pnpm per-workspace lockfiles in turbo prune by @anthonyshew in https://github.com/vercel/turborepo/pull/12067
- test: Port final 2 prysk tests to Rust (100% complete) by @anthonyshew in https://github.com/vercel/turborepo/pull/12068
- fix: Resolve Berry prune failure when resolutions contain patch overrides by @anthonyshew in https://github.com/vercel/turborepo/pull/12069
- test: Add lockfile fixture for yarn berry resolution pruning (issue #2791) by @anthonyshew in https://github.com/vercel/turborepo/pull/12071
- refactor: Clean up test infrastructure and eliminate duplication by @anthonyshew in https://github.com/vercel/turborepo/pull/12072
- fix: Retain injected workspace package entries during pnpm lockfile pruning by @anthonyshew in https://github.com/vercel/turborepo/pull/12073
- refactor: Clean up test infrastructure + improve test quality by @anthonyshew in https://github.com/vercel/turborepo/pull/12074
- perf: Speed up lockfile test suite by @anthonyshew in https://github.com/vercel/turborepo/pull/12078
- fix: Preserve
file: and link: protocol entries in pruned bun lockfile by @anthonyshew in https://github.com/vercel/turborepo/pull/12076
- fix: Stop running unnecessary npm install in engines tests by @anthonyshew in https://github.com/vercel/turborepo/pull/12081
- test: Add lockfile fixture for pnpm v9 injected workspace deps (issue #8243) by @anthonyshew in https://github.com/vercel/turborepo/pull/12082
- fix: Filter orphaned Yarn packageExtensions entries during lockfile pruning by @anthonyshew in https://github.com/vercel/turborepo/pull/12084
- fix: Align experimentalObservability on object maps rather than arrays by @bkonkle in https://github.com/vercel/turborepo/pull/12089
- fix: Prevent yarn integration tests from hanging on corepack prompts by @anthonyshew in https://github.com/vercel/turborepo/pull/12090
- fix: Prevent turbo dev from hanging when daemon file watching fails by @anthonyshew in https://github.com/vercel/turborepo/pull/12091
- perf: Optimize npm lockfile parser by @anthonyshew in https://github.com/vercel/turborepo/pull/12093
- chore: Trim unused dependency features for faster compilation by @anthonyshew in https://github.com/vercel/turborepo/pull/12094
- fix: Prevent lockfile-aware yarn test from hanging on corepack downloads by @anthonyshew in https://github.com/vercel/turborepo/pull/12095
- perf: Eliminate per-directory stat syscalls in untracked file detection by @anthonyshew in https://github.com/vercel/turborepo/pull/12096
- perf: Reduce allocations in file hash computation by @anthonyshew in https://github.com/vercel/turborepo/pull/12102
- perf: Replace SWC with oxc for JS/TS parsing by @anthonyshew in https://github.com/vercel/turborepo/pull/12098
- fix: Pre-warm corepack cache to prevent yarn/pnpm tests from hanging by @anthonyshew in https://github.com/vercel/turborepo/pull/12099
- perf: Disable unused zstd default features to reduce C compilation by @anthonyshew in https://github.com/vercel/turborepo/pull/12107
- perf: Replace
git subprocess in worktree detection with Rust by @anthonyshew in https://github.com/vercel/turborepo/pull/12106
- test: Add turbo watch tests and refactor file change classification by @anthonyshew in https://github.com/vercel/turborepo/pull/12119
- fix(frameworks): Also check devDependencies when inferring framework in single-package mode by @sleitor in https://github.com/vercel/turborepo/pull/12056
- test: Add boundary tests for framework inference
devDependencies support by @anthonyshew in https://github.com/vercel/turborepo/pull/12122
- fix: Stabilize flaky watch_file_change_reruns_affected_package test by @anthonyshew in https://github.com/vercel/turborepo/pull/12123
- fix: Microfrontends merges
with into root config instead of replacing it by @anthonyshew in https://github.com/vercel/turborepo/pull/12125
- fix: Omit None otel fields during turbo prune serialization by @bkonkle in https://github.com/vercel/turborepo/pull/12126
- fix: Correct dependency iteration order so
dependencies takes precedence over devDependencies by @anthonyshew in https://github.com/vercel/turborepo/pull/12129
- perf: Skip irrelevant packages when using package#task syntax by @anthonyshew in https://github.com/vercel/turborepo/pull/12135
- fix: Use delta temporality for OTel metrics export by @bkonkle in https://github.com/vercel/turborepo/pull/12136
- fix: Wait for dependsOn on first run of turbo watch by @MrNaif2018 in https://github.com/vercel/turborepo/pull/11953
- fix: Treat Bun runtime modules as builtins in Boundaries by @anthonyshew in https://github.com/vercel/turborepo/pull/12141
- feat: Add
futureFlags.longerSignatureKey to enforce minimum HMAC key length by @anthonyshew in https://github.com/vercel/turborepo/pull/12142
- feat: Add
runAttributes config to OTel metrics for cardinality control by @bkonkle in https://github.com/vercel/turborepo/pull/12144
- fix: Preserve deeply nested workspace deps during npm lockfile pruning by @anthonyshew in https://github.com/vercel/turborepo/pull/12146
- fix: Ensure noUpdateNotifier from turbo.json is respected by @sleitor in https://github.com/vercel/turborepo/pull/11925
- docs: Document Yarn v1 pass-through args workaround by @anthonyshew in https://github.com/vercel/turborepo/pull/12150
- fix: Add
FORCE_COLOR and NO_COLOR to builtin passthrough env vars by @anthonyshew in https://github.com/vercel/turborepo/pull/12158
- test: Add integration test coverage for
--anon-profile markdown generation by @anthonyshew in https://github.com/vercel/turborepo/pull/12157
- feat: Add AI coding agent detection telemetry by @anthonyshew in https://github.com/vercel/turborepo/pull/12159
- feat: Instrument post-hashing setup phase for trace visibility by @anthonyshew in https://github.com/vercel/turborepo/pull/12160
- perf: Fire-and-forget telemetry and analytics HTTP flushes on shutdown by @anthonyshew in https://github.com/vercel/turborepo/pull/12162
- perf: Defer lockfile await until after internal dependency resolution by @anthonyshew in https://github.com/vercel/turborepo/pull/12164
- refactor: Extract
turborepo-query-api trait crate for compile-time decoupling by @anthonyshew in https://github.com/vercel/turborepo/pull/12165
- feat: Include version, platform, and CPU count in Chrome trace profiles by @anthonyshew in https://github.com/vercel/turborepo/pull/12166
- docs: Remove bespoke AI prompts from documentation pages by @anthonyshew in https://github.com/vercel/turborepo/pull/12167
- test: Add comprehensive path traversal tests for cache archive by @anthonyshew in https://github.com/vercel/turborepo/pull/12169
- test: Add regression tests and
OutputWatcher trait to prepare for daemon removal from turbo watch by @anthonyshew in https://github.com/vercel/turborepo/pull/12171
- feat: Remove daemon from watch mode by @anthonyshew in https://github.com/vercel/turborepo/pull/12175
- perf: Defer SCM task await to overlap with setup work by @anthonyshew in https://github.com/vercel/turborepo/pull/12177
- perf: Defer cache save to after callback to unblock dependents sooner by @anthonyshew in https://github.com/vercel/turborepo/pull/12178
- chore: Add oxfmt check to pre-push hook by @anthonyshew in https://github.com/vercel/turborepo/pull/12187
- fix: Resolve pnpm catalog: specifiers to workspace dependencies in task graph by @anthonyshew in https://github.com/vercel/turborepo/pull/12185
- perf: Avoid Unconditional HTTP Client Warmup by @anthonyshew in https://github.com/vercel/turborepo/pull/12189
- perf: Scope Repo Index Untracked Discovery by @anthonyshew in https://github.com/vercel/turborepo/pull/12195
- perf: Reuse input hashes and trim pnpm lockfile allocations by @anthonyshew in https://github.com/vercel/turborepo/pull/12199
- docs: Improve Oxc tooling guide for type-aware linting and fix race conditions by @anthonyshew in https://github.com/vercel/turborepo/pull/12200
- perf: Overlap untracked file walk with builder setup by @anthonyshew in https://github.com/vercel/turborepo/pull/12201
- perf: Decouple filesystem walk from git index construction by @anthonyshew in https://github.com/vercel/turborepo/pull/12204
- perf: Race parallel git subprocesses against filesystem walk for optimal index construction by @anthonyshew in https://github.com/vercel/turborepo/pull/12206
- perf: Two-phase HTTP client init to avoid macOS Keychain blocking by @anthonyshew in https://github.com/vercel/turborepo/pull/12208
- perf: Skip redundant file writes during cache restore using manifests by @anthonyshew in https://github.com/vercel/turborepo/pull/12209
- perf: Generate cache restore manifest at save time to eliminate first-hit penalty by @anthonyshew in https://github.com/vercel/turborepo/pull/12213
- docs: Clarification in oxc guide by @anthonyshew in https://github.com/vercel/turborepo/pull/12207
- feat: Add
affectedTasks query for task-level change detection by @anthonyshew in https://github.com/vercel/turborepo/pull/12215
- docs: Replace mermaid with reactflow-based diagram components by @anthonyshew in https://github.com/vercel/turborepo/pull/11770
- fix: Remove unnecessary dependency overrides and bump quinn-proto by @anthonyshew in https://github.com/vercel/turborepo/pull/12226
- fix: Remove all remaining pnpm dependency overrides by @anthonyshew in https://github.com/vercel/turborepo/pull/12227
- fix: Promote nested bun lockfile entries when hoisted version is pruned by @anthonyshew in https://github.com/vercel/turborepo/pull/12228
- fix: Honor --output-logs errors-only for non-cached tasks by @veeceey in https://github.com/vercel/turborepo/pull/11926
- docs: Remove CONSOLE DO NOT TRACK link by @anthonyshew in https://github.com/vercel/turborepo/pull/12232
- docs: missing
migrate word by @anthonyshew in https://github.com/vercel/turborepo/pull/12234
- fix: Resolve root-level tasks not executing with //# CLI syntax by @anthonyshew in https://github.com/vercel/turborepo/pull/12242
- fix: Prevent run summary
SendError panic on shutdown by @anthonyshew in https://github.com/vercel/turborepo/pull/12244
- fix: Deflake
watch_rapid_edits_produce_single_rebuild test by @anthonyshew in https://github.com/vercel/turborepo/pull/12245
- fix: Use
FilterMode enum for root task scoping with exclude-only filters by @Jaredw2289-svg in https://github.com/vercel/turborepo/pull/12212
- fix: Resolve package-name-shaped tsconfig path aliases by @sleitor in https://github.com/vercel/turborepo/pull/11998
- fix: Use BTreeMap for deterministic lockfile dependency ordering by @anthonyshew in https://github.com/vercel/turborepo/pull/12254
- fix: Cap rayon thread pool and
block_in_place in tokio to prevent deadlock potential by @anthonyshew in https://github.com/vercel/turborepo/pull/12253
- feat: Add Node.js version to
turbo info output by @anthonyshew in https://github.com/vercel/turborepo/pull/12260
- feat: Send
x-ai-agent header on all Vercel API requests by @anthonyshew in https://github.com/vercel/turborepo/pull/12261
- fix: Deflake watch_edit_during_build_triggers_rebuild test by @anthonyshew in https://github.com/vercel/turborepo/pull/12263
- fix: Validate task names when
--affected yields empty package scope by @anthonyshew in https://github.com/vercel/turborepo/pull/12268
- feat: Deprecate
--scope flag for turbo prune by @anthonyshew in https://github.com/vercel/turborepo/pull/12269
- docs: Note that future flags affect global hash by @anthonyshew in https://github.com/vercel/turborepo/pull/12271
- fix: Align query affectedTasks with run
--affected for $TURBO_ROOT$ inputs by @anthonyshew in https://github.com/vercel/turborepo/pull/12270
- fix: Initialize TUI terminal in watch mode even when all tasks hit cache by @anthonyshew in https://github.com/vercel/turborepo/pull/12273
- feat: Use task graph for
watch by @anthonyshew in https://github.com/vercel/turborepo/pull/12275
- fix: Use BTreeMap for bundled_deps in bun PackageIndex by @anthonyshew in https://github.com/vercel/turborepo/pull/12266
- fix: Fix non-deterministic hashOfExternalDependencies with Bun lockfiles by @anthonyshew in https://github.com/vercel/turborepo/pull/12279
- feat: Add
turbo query affected CLI shorthand by @anthonyshew in https://github.com/vercel/turborepo/pull/12283
- chore: Add
turborepo-log crate to improve our logging situation by @anthonyshew in https://github.com/vercel/turborepo/pull/12285
- fix: Ensure
pkg#task CLI args are always included in filtered packages by @anthonyshew in https://github.com/vercel/turborepo/pull/12287
- feat: Wire up turborepo-log with TerminalSink and convert first warning by @anthonyshew in https://github.com/vercel/turborepo/pull/12289
- feat: Add git SHA and dirty hash to cache metadata by @mehulkar in https://github.com/vercel/turborepo/pull/12288
- feat: Surface cache SCM metadata in Run Summary by @mehulkar in https://github.com/vercel/turborepo/pull/12291
- fix: Inline PlopTypes in @turbo/gen to fix implicit any for consumers by @anthonyshew in https://github.com/vercel/turborepo/pull/12292
- chore: Disable update notifier for this repo by @anthonyshew in https://github.com/vercel/turborepo/pull/12293
- feat: Add TuiSink to route log events into the TUI by @anthonyshew in https://github.com/vercel/turborepo/pull/12294
- feat: Publish platform binaries under @turbo/ scoped packages by @anthonyshew in https://github.com/vercel/turborepo/pull/12296
- feat: Initialize
turborepo-log in turbo watch by @anthonyshew in https://github.com/vercel/turborepo/pull/12298
- fix: Resolve git diff warning in fresh repos and make SCM state lazy by @anthonyshew in https://github.com/vercel/turborepo/pull/12300
- docs: Add VS Code Jest extension workaround to Jest guide by @anthonyshew in https://github.com/vercel/turborepo/pull/12303
- feat: Route user-facing warnings through turborepo-log and suppress tracing stderr in TUI mode by @anthonyshew in https://github.com/vercel/turborepo/pull/12299
- fix: Handle parent directory inputs in non-git repos by @anthonyshew in https://github.com/vercel/turborepo/pull/12304
- fix: Source cargo env in pre-push hook for Rust toolchain resolution by @anthonyshew in https://github.com/vercel/turborepo/pull/12306
- refactor: Convert task-access warnings to turborepo_log by @anthonyshew in https://github.com/vercel/turborepo/pull/12307
- chore: Remove internal .vscode directory by @anthonyshew in https://github.com/vercel/turborepo/pull/12309
- fix: Expand directory inputs to
dir/** in manual SCM and git literal-path optimization by @anthonyshew in https://github.com/vercel/turborepo/pull/12305
- fix: Infer monorepo root in LSP instead of trusting editor
root_uri by @anthonyshew in https://github.com/vercel/turborepo/pull/12308
- fix: Flush stale mouse tracking events from stdin during TUI cleanup by @anthonyshew in https://github.com/vercel/turborepo/pull/12311
- refactor: Route run prelude through turborepo_log, add StdoutSink by @anthonyshew in https://github.com/vercel/turborepo/pull/12310
- feat: Show richer remote cache status in run prelude by @anthonyshew in https://github.com/vercel/turborepo/pull/12314
- chore: Remove deprecated Spaces feature remnants by @anthonyshew in https://github.com/vercel/turborepo/pull/12316
- refactor: Route
run/watch output through unified TerminalSink by @anthonyshew in https://github.com/vercel/turborepo/pull/12315
- refactor: Replace
tracing::log:: bridge imports with tracing:: directly by @anthonyshew in https://github.com/vercel/turborepo/pull/12320
- refactor: Replace
Source::turbo string literals with Subsystem enum by @anthonyshew in https://github.com/vercel/turborepo/pull/12321
- fix: Add check:toml to pre-push hook by @anthonyshew in https://github.com/vercel/turborepo/pull/12322
- fix: Filter phantom tasks from
affectedTasks query results by @anthonyshew in https://github.com/vercel/turborepo/pull/12324
- refactor: Route 'no tasks executed' warning through
turborepo-log and add task prefix to TerminalSink by @anthonyshew in https://github.com/vercel/turborepo/pull/12326
- feat: Allow cyclic package graphs, validate only at task graph level by @anthonyshew in https://github.com/vercel/turborepo/pull/12327
- fix: Detect affected tasks with
$TURBO_ROOT$ inputs when using affectedUsingTaskInputs by @anthonyshew in https://github.com/vercel/turborepo/pull/12331
- feat: Extend
LogSink with task output and grouping support by @anthonyshew in https://github.com/vercel/turborepo/pull/12328
- fix: Support private GitHub repos in
turbo gen workspace --copy by @anthonyshew in https://github.com/vercel/turborepo/pull/12333
- feat: Add
GroupingLayer for per-task output buffering by @anthonyshew in https://github.com/vercel/turborepo/pull/12334
- fix: Hardening for supporting private GitHub repos in
turbo gen workspace --copy by @anthonyshew in https://github.com/vercel/turborepo/pull/12336
- refactor: Wire
GroupingLayer into Visitor and migrate task error/warn to turborepo-log by @anthonyshew in https://github.com/vercel/turborepo/pull/12337
- perf: Replace subprocess repo index with in-process
gix-index by @anthonyshew in https://github.com/vercel/turborepo/pull/12339
- fix: Prevent
$TURBO_DEFAULT$ from matching unrelated root files in affected detection by @anthonyshew in https://github.com/vercel/turborepo/pull/12341
- feat: Route child process bytes through TaskHandle with sink-owned prefix rendering by @anthonyshew in https://github.com/vercel/turborepo/pull/12343
- feat: Deprecate graphviz-dependent -
-graph formats, add native SVG rendering by @anthonyshew in https://github.com/vercel/turborepo/pull/12344
- refactor: Migrate cache replay and status messages to
TaskHandle, remove CacheOutput trait by @anthonyshew in https://github.com/vercel/turborepo/pull/12345
- refactor: Remove old output pipeline and document logging architecture by @anthonyshew in https://github.com/vercel/turborepo/pull/12348
- chore: Move section in CONTRIBUTING.md by @anthonyshew in https://github.com/vercel/turborepo/pull/12350
- chore: Update undici dependency version to 6.24.0 by @hack-313-ip in https://github.com/vercel/turborepo/pull/12352
- docs: Clean up
futureFlags description by @anthonyshew in https://github.com/vercel/turborepo/pull/12355
- feat: Deprecate
--parallel flag by @anthonyshew in https://github.com/vercel/turborepo/pull/12357
- fix: Resolve $turbo-get-mfe-port by packageName when application key differs by @prudentbird in https://github.com/vercel/turborepo/pull/12149
- fix: Preserve all bun lockfile overrides during prune by @anthonyshew in https://github.com/vercel/turborepo/pull/12362
- feat: Include
globalDependencies in prune behind Future Flag by @anthonyshew in https://github.com/vercel/turborepo/pull/12360
- feat: Add
filterUsingTasks future flag for task-level --filter resolution by @anthonyshew in https://github.com/vercel/turborepo/pull/12363
- fix: Suppress noisy rustls TLS warning on stderr by @anthonyshew in https://github.com/vercel/turborepo/pull/12365
- docs: Fix typo in Turbo 2.7 blog post by @Rohan5commit in https://github.com/vercel/turborepo/pull/12367
- fix: Fall back to bundled certificates when system cert store is inaccessible by @anthonyshew in https://github.com/vercel/turborepo/pull/12371
- fix: Pass
TURBO_* env vars through to child processes in Strict Mode by @anthonyshew in https://github.com/vercel/turborepo/pull/12372
- fix: Improve accessibility for docs by @anthonyshew in https://github.com/vercel/turborepo/pull/12375
- fix: Preserve package.json key order during
turbo prune with pnpm patches by @anthonyshew in https://github.com/vercel/turborepo/pull/12376
- fix: Detect scoped
@turbo/{platform} packages in local binary resolution by @EmojiPati in https://github.com/vercel/turborepo/pull/12386
- fix: Support legacy unscoped binary package names in Node.js shim by @anthonyshew in https://github.com/vercel/turborepo/pull/12391
- fix: Prevent
stdin from being dropped for persistent tasks in stream mode by @anthonyshew in https://github.com/vercel/turborepo/pull/12394
- docs: Add link to Docker guide in prune --docker flag section by @styfle in https://github.com/vercel/turborepo/pull/12401
- feat: Add
global configuration key behind futureFlags.globalConfiguration by @anthonyshew in https://github.com/vercel/turborepo/pull/12399
- chore: Update CODEOWNERS to remove /docs owner by @anthonyshew in https://github.com/vercel/turborepo/pull/12402
- fix: Move docs app icons into app/ directory by @anthonyshew in https://github.com/vercel/turborepo/pull/12403
- feat: Add experimental structured logging with
--json and --log-file flags by @anthonyshew in https://github.com/vercel/turborepo/pull/12405
- docs: Downgrade Next.js by @anthonyshew in https://github.com/vercel/turborepo/pull/12408
- chore: Deprecate the
turbo scan command by @anthonyshew in https://github.com/vercel/turborepo/pull/12406
- chore: Upgrade Next.js by @anthonyshew in https://github.com/vercel/turborepo/pull/12415
- Revert "fix: Flush stale mouse tracking events from stdin during TUI cleanup" by @anthonyshew in https://github.com/vercel/turborepo/pull/12416
- fix: Add NixOS environment variables to default passthroughs by @anthonyshew in https://github.com/vercel/turborepo/pull/12417
- fix: Resolve security vulnerabilities in
tar and rustls-webpki by @anthonyshew in https://github.com/vercel/turborepo/pull/12418
- docs: Promote
turbo query from experimental to stable by @anthonyshew in https://github.com/vercel/turborepo/pull/12421
- docs: Clarify
turbo-ignore's future by @anthonyshew in https://github.com/vercel/turborepo/pull/12422
- feat: Rework
turbo ls to use query internals and add turbo query ls shorthand by @anthonyshew in https://github.com/vercel/turborepo/pull/12424
- docs: Clarify environment variables across packages dependency behavior by @ramanverse in https://github.com/vercel/turborepo/pull/12390
- docs: Expand subpath imports example by @lilianakatrina684-a11y in https://github.com/vercel/turborepo/pull/12412
- fix: Preserve source dependencies when adding workspace deps in
turbo-gen by @sleitor in https://github.com/vercel/turborepo/pull/11935
- docs: Add Git history requirements to
turbo query affected docs by @anthonyshew in https://github.com/vercel/turborepo/pull/12426
- fix: Prevent horizontal overflow from long inline code on narrow viewports by @anthonyshew in https://github.com/vercel/turborepo/pull/12428
- feat: Send git SHA and dirty hash to remote cache by @mehulkar in https://github.com/vercel/turborepo/pull/12427
- fix: Upgrade tokio to 1.47.1+ to fix pidfd_reaper panic by @anthonyshew in https://github.com/vercel/turborepo/pull/12431
- docs: Add AI guide to sidebar navigation by @anthonyshew in https://github.com/vercel/turborepo/pull/12438
- docs: Move
experimentalObservability into futureFlags section by @anthonyshew in https://github.com/vercel/turborepo/pull/12439
- fix: Skip Unix domain sockets and other special files during file hashing by @anthonyshew in https://github.com/vercel/turborepo/pull/12445
- fix: Preserve dedupePeers and unknown pnpm lockfile settings by @attehuhtakangas in https://github.com/vercel/turborepo/pull/12443
- fix: Align dry run cache status with normal run by checking caching guards by @anthonyshew in https://github.com/vercel/turborepo/pull/12448
- fix: Resolve turbo watch hang with mixed interruptible persistent tasks by @anthonyshew in https://github.com/vercel/turborepo/pull/12449
- fix: Avoid
setsid() in PTY spawn to prevent macOS Gatekeeper CPU spikes by @anthonyshew in https://github.com/vercel/turborepo/pull/12452
- refactor: Move cache hit SHA context to verbose logging by @mehulkar in https://github.com/vercel/turborepo/pull/12435
- docs: Add missing --force flag documentation by @Goldyvaiiii in https://github.com/vercel/turborepo/pull/12440
- fix: Prevent panic in
turbo watch with persistent tasks by @anthonyshew in https://github.com/vercel/turborepo/pull/12459
- fix: Support
turbo watch in single-package workspaces by @anthonyshew in https://github.com/vercel/turborepo/pull/12460
- fix: Missing deps after npm lockfile parsing by @anthonyshew in https://github.com/vercel/turborepo/pull/12464
- docs: Add AI agent detection and automatic markdown rewrites by @molebox in https://github.com/vercel/turborepo/pull/12462
- fix: Resolve generator name conflicts across workspaces by @anthonyshew in https://github.com/vercel/turborepo/pull/12467
- fix: Remove root package.json from
--affected global triggers by @anthonyshew in https://github.com/vercel/turborepo/pull/12469
- fix: Show run summary after TUI exits by @anthonyshew in https://github.com/vercel/turborepo/pull/12471
- fix: Avoid panic for unanchorable/non-UTF8 git paths by @biru-codeastromer in https://github.com/vercel/turborepo/pull/11106
- feat: Accept
experimentalCI key in turbo.json task config by @anthonyshew in https://github.com/vercel/turborepo/pull/12480
- fix: Prevent pnpm overrides from corrupting resolved peer-dep variants by @frankeld in https://github.com/vercel/turborepo/pull/12482
- fix: Skip writing unchanged files during slow-path cache restore by @anthonyshew in https://github.com/vercel/turborepo/pull/12484
- fix: Replace pre-existing symlinks with directories during cache restore by @anthonyshew in https://github.com/vercel/turborepo/pull/12488
- fix: Follow symlinks during workspace package discovery by @anthonyshew in https://github.com/vercel/turborepo/pull/12489
- fix: Reduce inotify watch count via gitignore-aware directory walking on Linux by @antoinelyset in https://github.com/vercel/turborepo/pull/12398
New Contributors
Full Changelog: https://github.com/vercel/turborepo/compare/v2.8.0...v2.9.0