build: upgrade Turborepo to 2.11 - #1152
Open
nealrichardson wants to merge 1 commit into
Open
nealrichardson wants to merge 1 commit into
nealrichardson wants to merge 1 commit into
Conversation
Contributor
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
- turbo ^2.11.4; turbo.json `pipeline` -> `tasks`, new $schema URL, `dev` marked `persistent: true` (every dev script is a watcher) - Root `packageManager: "yarn@1.22.22"`, which turbo 2 requires - Drop the unused `eslint-config-turbo` (nothing extends it, and its turbo >2 peer was unmet under turbo 1) - VS Code tasks: the default build task in apps/vscode and the root task ran a `watch` script that doesn't exist. They now run `yarn dev-vscode` with a background matcher keyed on the esbuild watcher's output, in place of `$tsc-watch`. - CONTRIBUTING: the debug steps name the root launch configs, so say to open the repo root (or use `Run Extension` from apps/vscode). - CLAUDE.md: "pipeline" -> "task" wording Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
nealrichardson
force-pushed
the
build/turbo-2
branch
from
September 25, 2026 22:37
addddb4 to
c97fdaa
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Phase 0.4 of the dependency upgrade. It's independent of #1149 (Node 24) and #1150 (TypeScript 5.9). The only overlap is that this PR and #1149 both edit the root
package.json, which is a trivial merge.Changes
turbo^1.8.5→^2.11.4. Inturbo.json,pipelinebecomestasks, the$schemaishttps://turborepo.dev/schema.json, anddevgetspersistent: true(everydevscript is a watcher).package.json:"packageManager": "yarn@1.22.22". Turbo 2 refuses to run without it, and the codemod doesn't add it. Withcorepack enable, this also pins Yarn to 1.22.22.eslint-config-turbofromeslint-config-custom-server. Nothing extends it, and itsturbo >2peer was unmet under turbo 1. The lockfile also dropseslint-plugin-turboanddotenv.apps/vscode/.vscode/tasks.json(theRun Extensionpre-launch task) and the root.vscode/tasks.jsonran awatchscript that doesn't exist. Both now runyarn dev-vscodefrom the repo root.$tsc-watchnever matches esbuild output, so it's replaced with a background matcher: it begins on turbo'sPackages in scopeline and ends onquarto:dev: [watch] build finished. I checked both patterns against realdev-vscodeoutput.apps/vscode/CONTRIBUTING.md: the debug steps named the root launch configs (Run VS Code Extension,Attach to VS Code LSP Server) but said to openapps/vscode. They now say to open the repo root, and mentionRun Extensionfromapps/vscodeas an alternative.Not included: the optional
panmirror#buildenv task (PANMIRROR_OUTDIR; RStudio runs panmirror's build directly, not through turbo) and the cross-package outputs fix (#1144). I kept strict env mode: the only build-time env read inside a turbo task isPANMIRROR_OUTDIR.Verification (local, Node 24.21.0, Yarn 1.22.22)
--filter quarto... --dry=jsonselectsapps/vscodeplus its dependencies. It doesn't select the root, even though the root is also namedquarto.--filter='./packages/*'selects the same 5 test suites as before.yarn build: 14/14 tasks. A second run gets14 cached, FULL TURBO. The pre-existingno output files found for task quarto-lsp#buildwarning is Turbo: lsp/markdownit/editor builds write outside declared outputs, so cache hits don't restore them #1144.yarn build-vscode:out/main.js,out/lsp/lsp.js,out/markdownit/andassets/www/editor/index.jsare all present.cd apps/vscode && yarn run vscode:prepublish, thenvsce package: produces a VSIX.yarn dev-vscode: all four watchers (quarto,quarto-lsp,quarto-vscode-editor,quarto-vscode-markdownit) start, and stopping it leaves no stray processes. I didn't exercise F5 through the new pre-launch task interactively, so that's worth a quick try in review.yarn lint --continue: same asmain. The only failures are the 6 pre-existingno-unused-varserrors inquarto-lsp.yarn test-packages: 8/8 tasks.yarn test-vscode(VS Code 1.109, Quarto CLI on PATH): main label 150 passing, 0 failing; r-project label 3/3.Fixes #1141.
🤖 Generated with Claude Code