Real root cause: Tailwind v4's lightningcss is invoked from a Turbopack-bundled postcss.js at runtime. Turbopack resolves require() against the workspace's TOP-LEVEL node_modules, not against bun's nested .bun/ store. So even when lightningcss-darwin-arm64 is correctly installed inside .bun/ with proper symlinks, Turbopack can't see it — and lightningcss falls back to a sibling '.node' file which doesn't exist, hence the runtime error. Private-editor accidentally works because it has TWO lightningcss versions (1.27.0 from Expo + 1.32.0 from Tailwind), which forces bun's hoisting algorithm to put one copy at the top level. Editor-v2 has only one version, so bun keeps it nested in .bun/ and nothing is at top-level. Fix: declare the platform binary packages as optionalDependencies at the WORKSPACE ROOT (not apps/editor). Root deps are always hoisted to top-level node_modules, so Turbopack's resolver finds them. Bun still applies the os/cpu filter at install time, so each developer only ends up with their host's binaries on disk. Verified on Linux: node_modules/lightningcss-linux-arm64-gnu is a top-level symlink after install. On macOS, the darwin variants will be hoisted instead.
55 lines
1.9 KiB
JSON
55 lines
1.9 KiB
JSON
{
|
|
"name": "editor",
|
|
"private": true,
|
|
"scripts": {
|
|
"build": "turbo run build",
|
|
"dev": "set -a && . ./.env 2>/dev/null; set +a; turbo run dev --env-mode=loose",
|
|
"lint": "biome lint",
|
|
"lint:fix": "biome lint --write",
|
|
"format": "biome format --write",
|
|
"format:check": "biome format",
|
|
"check": "biome check",
|
|
"check:fix": "biome check --write",
|
|
"check-types": "turbo run check-types",
|
|
"kill": "lsof -ti:3002 | xargs kill -9 2>/dev/null || echo 'No processes found on port 3002'",
|
|
"release": "gh workflow run release.yml -f package=all -f bump=patch",
|
|
"release:viewer": "gh workflow run release.yml -f package=viewer -f bump=patch",
|
|
"release:core": "gh workflow run release.yml -f package=core -f bump=patch",
|
|
"release:editor": "gh workflow run release.yml -f package=editor -f bump=patch",
|
|
"release:mcp": "gh workflow run release.yml -f package=mcp -f bump=patch",
|
|
"release:minor": "gh workflow run release.yml -f package=all -f bump=minor",
|
|
"release:major": "gh workflow run release.yml -f package=all -f bump=major"
|
|
},
|
|
"devDependencies": {
|
|
"@biomejs/biome": "^2.4.6",
|
|
"dotenv-cli": "^11.0.0",
|
|
"turbo": "^2.8.15",
|
|
"typescript": "6.0.2",
|
|
"ultracite": "^7.2.5"
|
|
},
|
|
"engines": {
|
|
"node": ">=18"
|
|
},
|
|
"packageManager": "bun@1.3.0",
|
|
"overrides": {
|
|
"@types/react": "19.2.14",
|
|
"@types/react-dom": "19.2.3",
|
|
"@types/three": "0.184.0"
|
|
},
|
|
"optionalDependencies": {
|
|
"@tailwindcss/oxide-darwin-arm64": "4.3.0",
|
|
"@tailwindcss/oxide-darwin-x64": "4.3.0",
|
|
"@tailwindcss/oxide-linux-arm64-gnu": "4.3.0",
|
|
"@tailwindcss/oxide-linux-x64-gnu": "4.3.0",
|
|
"lightningcss-darwin-arm64": "1.32.0",
|
|
"lightningcss-darwin-x64": "1.32.0",
|
|
"lightningcss-linux-arm64-gnu": "1.32.0",
|
|
"lightningcss-linux-x64-gnu": "1.32.0"
|
|
},
|
|
"workspaces": [
|
|
"apps/*",
|
|
"packages/*",
|
|
"tooling/*"
|
|
]
|
|
}
|