Uh oh!
There was an error while loading. Please reload this page.
fix(build): exclude node_modules from turbo tsbuildinfo outputs - #2202
Merged
Conversation
The build `outputs` glob `**/*.tsbuildinfo` (added in #1767 to cache composite tsc .tsbuildinfo) also matched tsbuildinfo files reachable through pnpm's workspace symlinks under `node_modules/@object-ui/*`. Turbo cached those paths and, on cache restore, recreated them as real directories — clobbering the pnpm symlinks. The workspace links degraded into empty dirs holding only `tsconfig.tsbuildinfo` (plus `.ignored_*` twins), so rolldown could no longer resolve `@object-ui/i18n` et al. and `pnpm build` failed in @object-ui/runner. Add `!**/node_modules/**` to the outputs so turbo never captures or restores anything under node_modules, while still caching the package-root `tsconfig.tsbuildinfo` that #1767 relies on. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The latest updates on your projects. Learn more about Vercel for GitHub. |
Uh oh!
There was an error while loading. Please reload this page.
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 freeto 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.
Problem
pnpm buildfails at@object-ui/runner:The pnpm workspace symlinks under
packages/*/node_modules/@object-ui/*had degraded from proper symlinks into empty real directories containing onlytsconfig.tsbuildinfo(each with an.ignored_*twin). With nopackage.json/dist, rolldown can't resolve@object-ui/i18n(and@object-ui/data-objectstack, etc.), and the runner's Vite build — which aliases@object-ui/reactto source — dies on the first unresolved re-export.Root cause
The build
outputsglob**/*.tsbuildinfo, added in #1767 to cache compositetscbuild info, also matchestsconfig.tsbuildinfofiles reachable through the pnpm workspace symlinks — e.g.packages/react/node_modules/@object-ui/core/node_modules/@object-ui/types/tsconfig.tsbuildinfo. Turbo caches those paths and, on cache restore, recreates them as real directories, clobbering the symlinks. The corruption compounds build-over-build (cache artifacts even captured.ignored_corefrom a prior round).Verified directly from the local turbo cache artifacts — they were packed full of deeply-nested
node_modules/@object-ui/**/tsconfig.tsbuildinfoentries.Fix
Add
!**/node_modules/**to the buildoutputsso turbo never captures or restores anything undernode_modules, while still caching the package-roottsconfig.tsbuildinfothat #1767 relies on.Validation
Cold build in a fresh worktree (healthy symlinks) with the fix:
@object-ui/*workspace symlinks intact after the build (no clobbering).ignored_*directories creatednode_modules/**tsbuildinfoentries across all 44 new cache artifacts (only package-roottsconfig.tsbuildinfois captured, e.g.packages/auth/tsconfig.tsbuildinfo)🤖 Generated with Claude Code