From d9aa7559507df144a8b9cebcb040a0a06f0a4fae Mon Sep 17 00:00:00 2001 From: Luke Sandberg Date: Mon, 20 Apr 2026 08:44:34 -0700 Subject: [PATCH 1/2] adopt catalogs --- package.json | 2 +- packages/eslint-plugin-next/package.json | 3 ++- packages/next-env/package.json | 3 ++- packages/next-routing/package.json | 3 ++- packages/next-routing/tsconfig.json | 2 +- packages/react-refresh-utils/package.json | 1 + pnpm-lock.yaml | 20 +++++++++++++++++++- pnpm-workspace.yaml | 2 ++ 8 files changed, 30 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 4aa7745f9de7..1ab4fdbf584a 100644 --- a/package.json +++ b/package.json @@ -302,7 +302,7 @@ "tsec": "0.2.1", "tsx": "4.19.2", "turbo": "2.9.4", - "typescript": "6.0.2", + "typescript": "catalog:", "typescript-eslint": "8.46.0", "unfetch": "4.2.0", "wait-port": "0.2.2", diff --git a/packages/eslint-plugin-next/package.json b/packages/eslint-plugin-next/package.json index 98c88769ea30..507a7b95a7c6 100644 --- a/packages/eslint-plugin-next/package.json +++ b/packages/eslint-plugin-next/package.json @@ -17,7 +17,8 @@ }, "devDependencies": { "@types/eslint": "9.6.1", - "eslint": "9.37.0" + "eslint": "9.37.0", + "typescript": "catalog:" }, "scripts": { "dev": "pnpm build", diff --git a/packages/next-env/package.json b/packages/next-env/package.json index 3e3e20d7b30c..7f12aab7a9d5 100644 --- a/packages/next-env/package.json +++ b/packages/next-env/package.json @@ -32,6 +32,7 @@ "devDependencies": { "@vercel/ncc": "0.34.0", "dotenv": "16.3.1", - "dotenv-expand": "10.0.0" + "dotenv-expand": "10.0.0", + "typescript": "catalog:" } } diff --git a/packages/next-routing/package.json b/packages/next-routing/package.json index fb59342d79ff..1aa45d3459e4 100644 --- a/packages/next-routing/package.json +++ b/packages/next-routing/package.json @@ -34,6 +34,7 @@ "@types/jest": "^29.5.0", "@vercel/ncc": "0.34.0", "jest": "^29.5.0", - "ts-jest": "^29.1.0" + "ts-jest": "^29.1.0", + "typescript": "catalog:" } } diff --git a/packages/next-routing/tsconfig.json b/packages/next-routing/tsconfig.json index f0e03beec2f9..7d7811d529ad 100644 --- a/packages/next-routing/tsconfig.json +++ b/packages/next-routing/tsconfig.json @@ -7,7 +7,7 @@ "resolveJsonModule": true, "esModuleInterop": true, "skipLibCheck": false, - "lib": ["es2022", "dom"], + "lib": ["es2022", "dom", "dom.iterable"], "rootDir": "src", "types": ["jest"] }, diff --git a/packages/react-refresh-utils/package.json b/packages/react-refresh-utils/package.json index 9724c5a1565a..3aeb1a6a4339 100644 --- a/packages/react-refresh-utils/package.json +++ b/packages/react-refresh-utils/package.json @@ -27,6 +27,7 @@ }, "devDependencies": { "react-refresh": "0.12.0", + "typescript": "catalog:", "webpack": "^4 || ^5" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c8887615ef64..3d88eb43540c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,12 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +catalogs: + default: + typescript: + specifier: 6.0.2 + version: 6.0.2 + overrides: webpack: 5.98.0 browserslist: 4.28.1 @@ -616,7 +622,7 @@ importers: specifier: 2.9.4 version: 2.9.4 typescript: - specifier: 6.0.2 + specifier: 'catalog:' version: 6.0.2 typescript-eslint: specifier: 8.46.0 @@ -1038,6 +1044,9 @@ importers: eslint: specifier: 9.37.0 version: 9.37.0(jiti@2.6.1) + typescript: + specifier: 'catalog:' + version: 6.0.2 packages/font: devDependencies: @@ -1827,6 +1836,9 @@ importers: dotenv-expand: specifier: 10.0.0 version: 10.0.0 + typescript: + specifier: 'catalog:' + version: 6.0.2 packages/next-mdx: dependencies: @@ -1886,6 +1898,9 @@ importers: ts-jest: specifier: ^29.1.0 version: 29.4.5(@babel/core@7.26.10)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.10))(jest-util@29.7.0)(jest@29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0))(typescript@6.0.2) + typescript: + specifier: 'catalog:' + version: 6.0.2 packages/next-rspack: dependencies: @@ -1910,6 +1925,9 @@ importers: react-refresh: specifier: 0.12.0 version: 0.12.0 + typescript: + specifier: 'catalog:' + version: 6.0.2 webpack: specifier: 5.98.0 version: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15)) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 1aae278670be..6e6b8772da3c 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -6,6 +6,8 @@ packages: - 'turbopack/crates/*/js' - 'turbopack/crates/turbopack-tests/tests/execution' - 'turbopack/packages/*' +catalog: + typescript: 6.0.2 updateNotifier: false publicHoistPattern: - '*eslint*' From 8e2af100560d12d423902d72d132c10d0df89528 Mon Sep 17 00:00:00 2001 From: Luke Sandberg Date: Mon, 20 Apr 2026 13:16:39 -0700 Subject: [PATCH 2/2] adopt catalogs for jest, eslint, prettier Extends pnpm catalog adoption to jest, eslint, and prettier. Same motivation as typescript: packages that invoke these binaries in their scripts but do not declare them in their own devDependencies rely on hoisted installs, which leaves Turborepo's package hash without a lockfile edge to invalidate on version bumps. - pnpm-workspace.yaml: add catalog entries for eslint, jest, prettier. - Root package.json: migrate the three pins to catalog:. - next-codemod: add jest: catalog: (invokes jest in 'test' script). - apps/bundle-analyzer: add eslint: catalog: (invokes eslint in 'lint'). - create-next-app: add prettier: catalog: (invokes prettier in 'lint-fix'). - next-codemod, apps/bundle-analyzer: their existing literal typescript pins also move to catalog: for consistency with the first pass. --- apps/bundle-analyzer/package.json | 3 +- package.json | 6 +- packages/create-next-app/package.json | 1 + packages/next-codemod/package.json | 3 +- pnpm-lock.yaml | 151 +++++++++++++++++++------- pnpm-workspace.yaml | 3 + 6 files changed, 120 insertions(+), 47 deletions(-) diff --git a/apps/bundle-analyzer/package.json b/apps/bundle-analyzer/package.json index ae1d3595ceaa..8d30b87d2211 100644 --- a/apps/bundle-analyzer/package.json +++ b/apps/bundle-analyzer/package.json @@ -35,10 +35,11 @@ "@types/react": "^18", "@types/react-dom": "^18", "cross-env": "10.1.0", + "eslint": "catalog:", "inliner": "1.13.1", "postcss": "^8.5", "tailwindcss": "^4.1.9", "tw-animate-css": "1.3.3", - "typescript": "6.0.2" + "typescript": "catalog:" } } diff --git a/package.json b/package.json index 1ab4fdbf584a..dded9b2ef7cd 100644 --- a/package.json +++ b/package.json @@ -198,7 +198,7 @@ "dd-trace": "4.12.0", "es5-ext": "0.10.53", "escape-string-regexp": "2.0.0", - "eslint": "9.37.0", + "eslint": "catalog:", "eslint-config-next": "workspace:*", "eslint-formatter-codeframe": "7.32.1", "eslint-plugin-eslint-plugin": "5.2.1", @@ -230,7 +230,7 @@ "image-size": "1.2.1", "is-animated": "2.0.2", "isomorphic-unfetch": "3.0.0", - "jest": "29.7.0", + "jest": "catalog:", "jest-diff": "29.7.0", "jest-environment-jsdom": "29.7.0", "jest-extended": "4.0.2", @@ -262,7 +262,7 @@ "postcss-pseudoelements": "5.0.0", "postcss-short-size": "4.0.0", "postcss-trolling": "0.1.7", - "prettier": "3.6.2", + "prettier": "catalog:", "pretty-bytes": "5.3.0", "pretty-ms": "7.0.0", "random-seed": "0.3.0", diff --git a/packages/create-next-app/package.json b/packages/create-next-app/package.json index 3b497df4b9d3..b317f9e5b4d8 100644 --- a/packages/create-next-app/package.json +++ b/packages/create-next-app/package.json @@ -41,6 +41,7 @@ "cross-spawn": "7.0.3", "fast-glob": "3.3.1", "picocolors": "1.1.1", + "prettier": "catalog:", "prettier-plugin-tailwindcss": "0.6.2", "prompts": "2.4.2", "tar": "7.5.7", diff --git a/packages/next-codemod/package.json b/packages/next-codemod/package.json index 84a6a7c33bce..31bd3227a3e4 100644 --- a/packages/next-codemod/package.json +++ b/packages/next-codemod/package.json @@ -40,6 +40,7 @@ "@types/jscodeshift": "0.11.0", "@types/prompts": "2.4.2", "@types/semver": "7.3.1", - "typescript": "6.0.2" + "jest": "catalog:", + "typescript": "catalog:" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3d88eb43540c..4691df6c3027 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,6 +6,15 @@ settings: catalogs: default: + eslint: + specifier: 9.37.0 + version: 9.37.0 + jest: + specifier: 29.7.0 + version: 29.7.0 + prettier: + specifier: 3.6.2 + version: 3.6.2 typescript: specifier: 6.0.2 version: 6.0.2 @@ -310,7 +319,7 @@ importers: specifier: 2.0.0 version: 2.0.0 eslint: - specifier: 9.37.0 + specifier: 'catalog:' version: 9.37.0(jiti@2.6.1) eslint-config-next: specifier: workspace:* @@ -406,7 +415,7 @@ importers: specifier: 3.0.0 version: 3.0.0(encoding@0.1.13) jest: - specifier: 29.7.0 + specifier: 'catalog:' version: 29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0) jest-diff: specifier: 29.7.0 @@ -502,7 +511,7 @@ importers: specifier: 0.1.7 version: 0.1.7 prettier: - specifier: 3.6.2 + specifier: 'catalog:' version: 3.6.2 pretty-bytes: specifier: 5.3.0 @@ -727,6 +736,9 @@ importers: cross-env: specifier: 10.1.0 version: 10.1.0 + eslint: + specifier: 'catalog:' + version: 9.37.0(jiti@2.6.1) inliner: specifier: 1.13.1 version: 1.13.1 @@ -740,7 +752,7 @@ importers: specifier: 1.3.3 version: 1.3.3 typescript: - specifier: 6.0.2 + specifier: 'catalog:' version: 6.0.2 bench/app-router-server: @@ -967,6 +979,9 @@ importers: picocolors: specifier: 1.1.1 version: 1.1.1 + prettier: + specifier: 'catalog:' + version: 3.6.2 prettier-plugin-tailwindcss: specifier: 0.6.2 version: 0.6.2(prettier@3.6.2) @@ -1821,8 +1836,11 @@ importers: '@types/semver': specifier: 7.3.1 version: 7.3.1 + jest: + specifier: 'catalog:' + version: 29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0) typescript: - specifier: 6.0.2 + specifier: 'catalog:' version: 6.0.2 packages/next-env: @@ -11321,11 +11339,6 @@ packages: resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==} engines: {node: '>=4'} - import-local@3.0.2: - resolution: {integrity: sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==} - engines: {node: '>=8'} - hasBin: true - import-local@3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} engines: {node: '>=8'} @@ -11924,10 +11937,6 @@ packages: resolution: {integrity: sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==} engines: {node: '>=8'} - istanbul-lib-instrument@6.0.1: - resolution: {integrity: sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==} - engines: {node: '>=10'} - istanbul-lib-instrument@6.0.3: resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} engines: {node: '>=10'} @@ -20030,7 +20039,7 @@ snapshots: '@eslint/config-array@0.21.0': dependencies: '@eslint/object-schema': 2.1.6 - debug: 4.4.0 + debug: 4.4.3 minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -20767,7 +20776,7 @@ snapshots: glob: 7.1.7 graceful-fs: 4.2.11 istanbul-lib-coverage: 3.2.0 - istanbul-lib-instrument: 6.0.1 + istanbul-lib-instrument: 6.0.3 istanbul-lib-report: 3.0.0 istanbul-lib-source-maps: 4.0.0 istanbul-reports: 3.1.6 @@ -23795,7 +23804,7 @@ snapshots: dependencies: '@typescript-eslint/tsconfig-utils': 8.46.0(typescript@6.0.2) '@typescript-eslint/types': 8.46.0 - debug: 4.4.0 + debug: 4.4.3 typescript: 6.0.2 transitivePeerDependencies: - supports-color @@ -23819,7 +23828,7 @@ snapshots: '@typescript-eslint/types': 8.46.0 '@typescript-eslint/typescript-estree': 8.46.0(typescript@6.0.2) '@typescript-eslint/utils': 8.46.0(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2) - debug: 4.4.0 + debug: 4.4.3 eslint: 9.37.0(jiti@2.6.1) ts-api-utils: 2.1.0(typescript@6.0.2) typescript: 6.0.2 @@ -23834,7 +23843,7 @@ snapshots: dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.4.0 + debug: 4.4.3 globby: 11.1.0 is-glob: 4.0.3 semver: 7.6.3 @@ -24988,7 +24997,7 @@ snapshots: dependencies: bytes: 3.1.2 content-type: 1.0.5 - debug: 4.4.0 + debug: 4.4.3 http-errors: 2.0.0 iconv-lite: 0.6.3 on-finished: 2.4.1 @@ -27360,7 +27369,7 @@ snapshots: esbuild-register@3.6.0(esbuild@0.25.9): dependencies: - debug: 4.4.0 + debug: 4.4.3 esbuild: 0.25.9 transitivePeerDependencies: - supports-color @@ -27446,6 +27455,26 @@ snapshots: optionalDependencies: source-map: 0.6.1 + eslint-config-next@16.2.0-canary.91(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2): + dependencies: + '@next/eslint-plugin-next': 16.2.0-canary.91 + eslint: 9.37.0(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.37.0(jiti@2.6.1)) + eslint-plugin-react: 7.37.0(eslint@9.37.0(jiti@2.6.1)) + eslint-plugin-react-hooks: 7.0.0(eslint@9.37.0(jiti@2.6.1)) + globals: 16.4.0 + typescript-eslint: 8.46.0(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2) + optionalDependencies: + typescript: 6.0.2 + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - supports-color + eslint-formatter-codeframe@7.32.1: dependencies: '@babel/code-frame': 7.12.11 @@ -27459,6 +27488,22 @@ snapshots: transitivePeerDependencies: - supports-color + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)): + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.4.0 + eslint: 9.37.0(jiti@2.6.1) + get-tsconfig: 4.12.0 + is-bun-module: 2.0.0 + stable-hash: 0.0.5 + tinyglobby: 0.2.15 + unrs-resolver: 1.11.1 + optionalDependencies: + eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)) + eslint-plugin-import-x: 4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2) + transitivePeerDependencies: + - supports-color + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.6.1)): dependencies: '@nolyfill/is-core-module': 1.0.39 @@ -27516,6 +27561,16 @@ snapshots: transitivePeerDependencies: - supports-color + eslint-module-utils@2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)): + dependencies: + debug: 3.2.7 + optionalDependencies: + eslint: 9.37.0(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + eslint-plugin-eslint-plugin@5.2.1(eslint@9.37.0(jiti@2.6.1)): dependencies: eslint: 9.37.0(jiti@2.6.1) @@ -27596,6 +27651,33 @@ snapshots: - eslint-import-resolver-webpack - supports-color + eslint-plugin-import@2.32.0(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)): + dependencies: + '@rtsao/scc': 1.1.0 + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 9.37.0(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)))(eslint@9.37.0(jiti@2.6.1)) + hasown: 2.0.2 + is-core-module: 2.16.1 + is-glob: 4.0.3 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 + semver: 6.3.1 + string.prototype.trimend: 1.0.9 + tsconfig-paths: 3.15.0 + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + eslint-plugin-jest@27.6.3(eslint@9.37.0(jiti@2.6.1))(jest@29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0))(typescript@6.0.2): dependencies: '@typescript-eslint/utils': 5.62.0(eslint@9.37.0(jiti@2.6.1))(typescript@6.0.2) @@ -27818,7 +27900,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.0 + debug: 4.4.3 escape-string-regexp: 4.0.0 eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 @@ -28343,7 +28425,7 @@ snapshots: finalhandler@2.1.0: dependencies: - debug: 4.4.0 + debug: 4.4.3 encodeurl: 2.0.0 escape-html: 1.0.3 on-finished: 2.4.1 @@ -29515,11 +29597,6 @@ snapshots: import-lazy@2.1.0: {} - import-local@3.0.2: - dependencies: - pkg-dir: 4.2.0 - resolve-cwd: 3.0.0 - import-local@3.1.0: dependencies: pkg-dir: 4.2.0 @@ -30100,16 +30177,6 @@ snapshots: transitivePeerDependencies: - supports-color - istanbul-lib-instrument@6.0.1: - dependencies: - '@babel/core': 7.26.10 - '@babel/parser': 7.27.0 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.2.0 - semver: 7.6.3 - transitivePeerDependencies: - - supports-color - istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.26.10 @@ -30244,7 +30311,7 @@ snapshots: chalk: 4.1.2 create-jest: 29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0) exit: 0.1.2 - import-local: 3.0.2 + import-local: 3.1.0 jest-config: 29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0) jest-util: 29.7.0 jest-validate: 29.7.0 @@ -30701,7 +30768,7 @@ snapshots: dependencies: '@jest/core': 29.7.0(babel-plugin-macros@3.1.0) '@jest/types': 29.6.3 - import-local: 3.0.2 + import-local: 3.1.0 jest-cli: 29.7.0(@types/node@20.17.6(patch_hash=9c31d25336aea4076b3cb942c35e59fd160c540947f01ea455a060367153f9fd))(babel-plugin-macros@3.1.0) transitivePeerDependencies: - '@types/node' @@ -35636,7 +35703,7 @@ snapshots: router@2.2.0: dependencies: - debug: 4.4.0 + debug: 4.4.3 depd: 2.0.0 is-promise: 4.0.0 parseurl: 1.3.3 @@ -35879,7 +35946,7 @@ snapshots: send@1.2.0: dependencies: - debug: 4.4.0 + debug: 4.4.3 encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 6e6b8772da3c..bdfed0108cd6 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -7,6 +7,9 @@ packages: - 'turbopack/crates/turbopack-tests/tests/execution' - 'turbopack/packages/*' catalog: + eslint: 9.37.0 + jest: 29.7.0 + prettier: 3.6.2 typescript: 6.0.2 updateNotifier: false publicHoistPattern: