What's Changed
Changelog
- release(turborepo): 2.9.15-canary.3 by @github-actions[bot] in #12814
- fix: Avoid path-racy chmod during directory restore by @anthonyshew in #12815
- fix: Prevent cache restore symlink race writes by @anthonyshew in #12817
- chore: Deny Rust panic extraction by default by @anthonyshew in #12818
- fix: Make structured log symlink defense race-safe by @anthonyshew in #12821
- fix: Preserve Bun alias child packages by @anthonyshew in #12822
- fix: Avoid UTF-8 panics at boundaries by @anthonyshew in #12823
- fix: Preserve non-UTF-8 Git path boundaries by @anthonyshew in #12826
- fix: Create daemon dirs with private permissions by @anthonyshew in #12827
- fix: Return Berry lockfile errors instead of panicking by @anthonyshew in #12828
- fix: Isolate Corepack state in integration tests by @anthonyshew in #12831
- ci: Use larger Windows runners for Rust tests by @anthonyshew in #12832
- docs: Add
with-vite-module-federationexample by @gioboa in #12794 - test: Run Rust tests without partitioning by @anthonyshew in #12833
- chore: Remove
TaskHashTracker-basedexpect()calls by @anthonyshew in #12836 - chore: Deduplicate hash canonicalization by @anthonyshew in #12837
- fix: Prevent Windows process drain hangs by @anthonyshew in #12838
- fix: Refactor execsync to execfilesync for Shell command built from environment values by @bjormgyg in #12829
- test: Bound vt100 random quickcheck by @anthonyshew in #12839
- fix: Validate daemon discovery responses by @anthonyshew in #12840
- fix: Store
PackageGraphroot invariants by @anthonyshew in #12841 - chore: Avoid engine graph node expects by @anthonyshew in #12842
- test: Make Rust tests parallel-safe by @anthonyshew in #12843
- fix: Avoid graph utility node lookup panics by @anthonyshew in #12844
- fix: Avoid graph walker
expect()calls by @anthonyshew in #12845 - fix: Remove fs panic extraction lints by @anthonyshew in #12846
- fix: Remove fixed map panic extraction calls by @anthonyshew in #12847
- fix: Remove devtools WebSocket panics by @anthonyshew in #12850
- fix: Remove json rewrite panic lint allow by @anthonyshew in #12848
- fix: Remove turborepo-types panic lint allows by @anthonyshew in #12849
- chore: Remove turborepo-hash build expect by @anthonyshew in #12851
- fix: Remove napi panic lint allows by @anthonyshew in #12852
- fix: Avoid globwatch expect calls by @anthonyshew in #12853
- fix: Remove LSP expect callsites by @anthonyshew in #12854
- fix: Remove scope panic lint allows by @anthonyshew in #12855
- fix: Remove task hash panic lints by @anthonyshew in #12856
- fix: Remove frameworks panic lint allows by @anthonyshew in #12857
- fix: Remove microfrontends proxy expect lint allow by @anthonyshew in #12859
- fix: Avoid API client expect calls by @anthonyshew in #12858
- fix: Avoid task executor expect calls by @anthonyshew in #12860
- fix: Remove turbo-trace unwrap callsite by @anthonyshew in #12863
- fix: Remove Vercel API mock expect usage by @anthonyshew in #12862
- fix: Remove vt100 expect lint allow by @anthonyshew in #12861
- fix: Remove turborepo-shim expect callsites by @anthonyshew in #12864
- test: Deflake daemon existing process test by @anthonyshew in #12865
- fix: Avoid repository NAPI unwrap calls by @anthonyshew in #12866
- fix: Remove pidlock panic callsites by @anthonyshew in #12867
- fix: Remove telemetry panic callsites by @anthonyshew in #12868
- chore: Remove Rust re-export shims by @anthonyshew in #12870
- fix: Remove turbo-json panic lint allows by @anthonyshew in #12869
- fix: Remove
globwalk'sexpect()callsites by @anthonyshew in #12871 - fix: Remove
turbopath'sexpect()callsites by @anthonyshew in #12872 - test: Deflake Corepack prepare lock on Windows by @anthonyshew in #12873
- fix: Remove signals panic callsites by @anthonyshew in #12874
- fix: Remove
turbo-trace'sexpect()allow by @anthonyshew in #12876 - fix: Remove Vercel API mock unwrap usage by @anthonyshew in #12877
- fix: Remove task executor unwrap usage by @anthonyshew in #12878
- fix: Remove run summary expect usage by @anthonyshew in #12879
- fix: Remove microfrontends proxy unwrap usage by @anthonyshew in #12880
- fix: Remove api client unwrap usage by @anthonyshew in #12881
- fix: Remove globwalk unwrap usage by @anthonyshew in #12883
- fix: Remove UI
expect()usage by @anthonyshew in #12882 - fix: Remove microfrontends expect usage by @anthonyshew in #12885
- fix: Remove
boundaries'sexpect()usage by @anthonyshew in #12887 - fix: Remove
turborepo-process'sunwrap()usage by @anthonyshew in #12888 - fix: Remove UI unwrap usage by @anthonyshew in #12889
- fix: Remove microfrontends unwrap allow by @anthonyshew in #12890
- fix: Remove
turborepo-process'sexpect()usage by @anthonyshew in #12891 - fix: Remove scm expect usage by @anthonyshew in #12893
- fix: Remove auth unwrap usage by @anthonyshew in #12886
- fix: Remove
turbopath'sunwrap()usage by @anthonyshew in #12884 - fix: Remove
auth'sexpect()usage by @anthonyshew in #12895 - fix: Remove wax unwrap usage by @anthonyshew in #12899
- fix: Remove scm unwrap usage by @anthonyshew in #12897
- fix: Remove
turborepo-boundaries'sunwrap()usage by @anthonyshew in #12896 - fix: Remove daemon unwrap usage by @anthonyshew in #12898
- fix: Include lockfile-changed packages in affected tasks by @anthonyshew in #12900
New Contributors
Full Changelog: v2.9.15-canary.3...v2.9.15-canary.4