Repository navigation
chore(deps): bump turbo to 2.11.10 - #9903
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 7 files
Reply with feedback, questions, or to request a fix.
Turn on auto-fix | Re-trigger cubic
[Medium impact] The PR appears safe to merge; no actionable issues remain from this review. SummaryUpdates Turborepo from 2.9.14 to 2.11.10 and adjusts CI task selection.
Changes since the previous review only update Reviews (2) · Last reviewed commit: "docs(ci): describe the Turborepo 2.11 ta..." · Reviewed by Greptile |
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
Summary
turbo2.9.14 → 2.11.10 (root devDependency; the Docker prune stages read the version from it). Schema URL moved tov2-11-10.app/(landing)/**was never a valid glob:(starts a group in Turborepo's glob engine. 2.9.14 skipped the bad glob inturbo query(so landing edits fell intoci:sharedand selected every suite) and failedturbo runon anyci:*task outright. 2.11 falls back to "every task affected" for the whole repo. Wrote the folder as a character class,app/[(]landing[)]/**, which matches the literal folder in both affected detection and hashing.affectedTasksneeds a future flag in 2.11. Since fix: Include virtual tasks in affected query vercel/turborepo#13805 (2.10.x),affectedTasksmatchesturbo run --affected: withoutfutureFlags.affectedUsingTaskInputsorfutureFlags.filterUsingTasks, it reports every task of an affected package. EnabledfilterUsingTasks. CI's--filtercalls only name packages, so they select the same tasks (checked with--dry=json).affectedUsingTaskInputswould also work, but it makesturbo prune @sim/appkeepapps/desktop,apps/docs, andapps/realtime, because@sim/apptasks depend onpkg#taskthere, and the app image build relies on desktop being pruned away.affectedTasks.items. 2.11 also lists the runnable prerequisites of affected tasks (reason "required by an affected task").docs#buildis one forci:e2e-docs-platform, so every backend change would have run the full docs-site suite.ci-plan.gqlnow picksdocs#buildwith its own task filter, which Turborepo applies before it adds prerequisites. No other taskci-plan.tsreads is a prerequisite of anything.Type of Change
Testing
scripts/ci-changes.test.ts(real git + real Turborepo fixtures): 63/63 pass on 2.11.10. The 62 existing expectations are unchanged. Reverting each fix turns tests red: the glob fallback breaks broadly, the missing flag gives "package is affected" for everyci:*task, and dropping the docs selection fails the two platform-docs cases.vitest --config scripts/vitest.config.ts): 43 files, 744 tests pass.turbo queryon this repo for the last 27 staging commits that don't touch orchestration. 2.9.14 and 2.11.10 selected identical non-prerequisite tasks and the same docs-site decision on every one.turbo run ci:shared ci:e2e-seo build --filter=@sim/app --dry=json):ci:shared,ci:server, andci:uihash 0 landing files, whileci:e2e-seoandbuildhash the wholeapp/(landing)tree. With the old glob,turbo runon these tasks fails with "Invalid glob" on both versions.turbo prune @sim/app --dockergives identicalout/jsonwith and without the flag (apps:simonly).check:realtime-prunepasses, andbun install --frozen-lockfileis clean.Checklist
🤖 Generated with Claude Code