diff --git a/.github/workflows/build_and_deploy.yml b/.github/workflows/build_and_deploy.yml index d3781cf285419..887edf7030212 100644 --- a/.github/workflows/build_and_deploy.yml +++ b/.github/workflows/build_and_deploy.yml @@ -7,7 +7,7 @@ on: env: NAPI_CLI_VERSION: 2.16.2 - TURBO_VERSION: 1.13.3-canary.2 + TURBO_VERSION: 2.0.3 NODE_LTS_VERSION: 20 CARGO_PROFILE_RELEASE_LTO: 'true' TURBO_TEAM: 'vercel' diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 4a306d1773f45..45c44ba508571 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -8,7 +8,7 @@ on: env: NAPI_CLI_VERSION: 2.14.7 - TURBO_VERSION: 1.13.3-canary.2 + TURBO_VERSION: 2.0.3 NODE_MAINTENANCE_VERSION: 18 NODE_LTS_VERSION: 20 TEST_CONCURRENCY: 8 diff --git a/.github/workflows/build_reusable.yml b/.github/workflows/build_reusable.yml index 34d45a0c6a851..3610bcba5054b 100644 --- a/.github/workflows/build_reusable.yml +++ b/.github/workflows/build_reusable.yml @@ -62,7 +62,7 @@ on: env: NAPI_CLI_VERSION: 2.14.7 - TURBO_VERSION: 1.13.3-canary.2 + TURBO_VERSION: 2.0.3 NODE_LTS_VERSION: 20.9.0 TEST_CONCURRENCY: 8 # disable backtrace for test snapshots diff --git a/.github/workflows/code_freeze.yml b/.github/workflows/code_freeze.yml index 5d005b1086350..8517359ac6100 100644 --- a/.github/workflows/code_freeze.yml +++ b/.github/workflows/code_freeze.yml @@ -17,7 +17,7 @@ name: Code Freeze env: NAPI_CLI_VERSION: 2.14.7 - TURBO_VERSION: 1.13.3-canary.2 + TURBO_VERSION: 2.0.3 NODE_LTS_VERSION: 20 jobs: diff --git a/.github/workflows/pull_request_stats.yml b/.github/workflows/pull_request_stats.yml index 64a4a3b65a992..d970f7a6a9490 100644 --- a/.github/workflows/pull_request_stats.yml +++ b/.github/workflows/pull_request_stats.yml @@ -6,7 +6,7 @@ name: Generate Pull Request Stats env: NAPI_CLI_VERSION: 2.14.7 - TURBO_VERSION: 1.13.3-canary.2 + TURBO_VERSION: 2.0.3 NODE_LTS_VERSION: 20 TEST_CONCURRENCY: 6 diff --git a/.github/workflows/trigger_release.yml b/.github/workflows/trigger_release.yml index d961f14795226..6fbd15189a539 100644 --- a/.github/workflows/trigger_release.yml +++ b/.github/workflows/trigger_release.yml @@ -35,7 +35,7 @@ name: Trigger Release env: NAPI_CLI_VERSION: 2.14.7 - TURBO_VERSION: 1.13.3-canary.2 + TURBO_VERSION: 2.0.3 NODE_LTS_VERSION: 20 jobs: diff --git a/package.json b/package.json index 07c9d84f46acd..6ce8823941c29 100644 --- a/package.json +++ b/package.json @@ -232,7 +232,7 @@ "taskr": "1.1.0", "tree-kill": "1.2.2", "tsec": "0.2.1", - "turbo": "1.13.3-canary.2", + "turbo": "2.0.3", "typescript": "5.3.3", "unfetch": "4.2.0", "wait-port": "0.2.2", diff --git a/packages/create-next-app/package.json b/packages/create-next-app/package.json index acc47eb880e53..c5cab4fad02e6 100644 --- a/packages/create-next-app/package.json +++ b/packages/create-next-app/package.json @@ -51,6 +51,8 @@ "validate-npm-package-name": "5.0.1" }, "engines": { - "node": ">=18.17.0" - } + "node": ">=18.17.0", + "pnpm": "8.15.7" + }, + "packageManager": "pnpm@8.15.7" } diff --git a/packages/next-swc/turbo.json b/packages/next-swc/turbo.json index f811943d1a917..b30afd28e2694 100644 --- a/packages/next-swc/turbo.json +++ b/packages/next-swc/turbo.json @@ -1,6 +1,6 @@ { "extends": ["//"], - "pipeline": { + "tasks": { "build-native": { "inputs": [ "../../.cargo/**", diff --git a/packages/next/package.json b/packages/next/package.json index 72ee3e8113909..1127084783b86 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -344,6 +344,8 @@ "vercel" ], "engines": { - "node": ">=18.17.0" - } + "node": ">=18.17.0", + "pnpm": "8.15.7" + }, + "packageManager": "pnpm@8.15.7" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3c6c66be26388..f4c3c352ce30a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -546,8 +546,8 @@ importers: specifier: 0.2.1 version: 0.2.1(@bazel/bazelisk@1.18.0)(typescript@5.3.3) turbo: - specifier: 1.13.3-canary.2 - version: 1.13.3-canary.2 + specifier: 2.0.3 + version: 2.0.3 typescript: specifier: 5.3.3 version: 5.3.3 @@ -14347,7 +14347,7 @@ packages: engines: {node: '>= 6'} dependencies: agent-base: 6.0.2 - debug: 4.1.1 + debug: 4.3.4 transitivePeerDependencies: - supports-color @@ -24347,64 +24347,64 @@ packages: engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'} dev: true - /turbo-darwin-64@1.13.3-canary.2: - resolution: {integrity: sha512-M8QDR6SKPSLEjSLWnIM//caHWBhcZNkIPdnnMkHm8R9/fpFSI5X//GBdR0qnXcgdqOdFgnxheabwYm5Bm+1KWQ==} + /turbo-darwin-64@2.0.3: + resolution: {integrity: sha512-v7ztJ8sxdHw3SLfO2MhGFeeU4LQhFii1hIGs9uBiXns/0YTGOvxLeifnfGqhfSrAIIhrCoByXO7nR9wlm10n3Q==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-darwin-arm64@1.13.3-canary.2: - resolution: {integrity: sha512-4RpdYK+XF9Lx7/nmUzbn978t4HBCmmemAazOjmhyd0pOMn8rLVexPkByDEV84SrgofkCWdTHDwcHaOQvOLrKtw==} + /turbo-darwin-arm64@2.0.3: + resolution: {integrity: sha512-LUcqvkV9Bxtng6QHbevp8IK8zzwbIxM6HMjCE7FEW6yJBN1KwvTtRtsGBwwmTxaaLO0wD1Jgl3vgkXAmQ4fqUw==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-linux-64@1.13.3-canary.2: - resolution: {integrity: sha512-8gzyPtOmzACNwtWi5//ZHwcJb2i21pZVXQEiNwTycypyBtV2H0WChmqjulS7M3z5dxwHcx0Ehf9TqY4K023j2A==} + /turbo-linux-64@2.0.3: + resolution: {integrity: sha512-xpdY1suXoEbsQsu0kPep2zrB8ijv/S5aKKrntGuQ62hCiwDFoDcA/Z7FZ8IHQ2u+dpJARa7yfiByHmizFE0r5Q==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-linux-arm64@1.13.3-canary.2: - resolution: {integrity: sha512-QzRIyO+HUMc5+hj5cVBCKpCyOiBPxzAao4zWZgz6iKMuSC6utjHLf/9AAo6NOMFgBONTYsMUArL5gDyLLOO0lw==} + /turbo-linux-arm64@2.0.3: + resolution: {integrity: sha512-MBACTcSR874L1FtLL7gkgbI4yYJWBUCqeBN/iE29D+8EFe0d3fAyviFlbQP4K/HaDYet1i26xkkOiWr0z7/V9A==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-windows-64@1.13.3-canary.2: - resolution: {integrity: sha512-s4k+yclLr/MWuwYURPZX2v6y1PP7E2aUUao6syQ68Un+36RYBgINN/VV4HucZuiXyqLuBuaDjfrnE1TX3FREOg==} + /turbo-windows-64@2.0.3: + resolution: {integrity: sha512-zi3YuKPkM9JxMTshZo3excPk37hUrj5WfnCqh4FjI26ux6j/LJK+Dh3SebMHd9mR7wP9CMam4GhmLCT+gDfM+w==} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /turbo-windows-arm64@1.13.3-canary.2: - resolution: {integrity: sha512-p5qGGeb3z1Gaxq43lTFm/PyTh7xtuDCfesxGWZWESG6MyXZuZYzuEH2cSmM8jqta6EC+G+iF5sxeKUzIpsJWeQ==} + /turbo-windows-arm64@2.0.3: + resolution: {integrity: sha512-wmed4kkenLvRbidi7gISB4PU77ujBuZfgVGDZ4DXTFslE/kYpINulwzkVwJIvNXsJtHqyOq0n6jL8Zwl3BrwDg==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /turbo@1.13.3-canary.2: - resolution: {integrity: sha512-GqkwRxoigbjvj/m1JfY7kGDupNeuADW7Hg1+rO+KqNMEUihOfq8a1kjCbwlqOfyS8PPfMHDkDPXrfhA8A1N9vg==} + /turbo@2.0.3: + resolution: {integrity: sha512-jF1K0tTUyryEWmgqk1V0ALbSz3VdeZ8FXUo6B64WsPksCMCE48N5jUezGOH2MN0+epdaRMH8/WcPU0QQaVfeLA==} hasBin: true optionalDependencies: - turbo-darwin-64: 1.13.3-canary.2 - turbo-darwin-arm64: 1.13.3-canary.2 - turbo-linux-64: 1.13.3-canary.2 - turbo-linux-arm64: 1.13.3-canary.2 - turbo-windows-64: 1.13.3-canary.2 - turbo-windows-arm64: 1.13.3-canary.2 + turbo-darwin-64: 2.0.3 + turbo-darwin-arm64: 2.0.3 + turbo-linux-64: 2.0.3 + turbo-linux-arm64: 2.0.3 + turbo-windows-64: 2.0.3 + turbo-windows-arm64: 2.0.3 dev: true /tweetnacl@0.14.5: diff --git a/scripts/normalize-version-bump.js b/scripts/normalize-version-bump.js index e13eb4b8928fb..25bcd42519483 100755 --- a/scripts/normalize-version-bump.js +++ b/scripts/normalize-version-bump.js @@ -72,5 +72,6 @@ const writeJson = async (filePath, data) => private: true, workspaces: ['packages/*'], scripts: {}, + packageManager: 'pnpm@8.15.7', }) })() diff --git a/test/deploy-tests-manifest.json b/test/deploy-tests-manifest.json index 1d1a13ee8c4b4..132772f6c2d10 100644 --- a/test/deploy-tests-manifest.json +++ b/test/deploy-tests-manifest.json @@ -7,7 +7,6 @@ "test/production/**/*.test.{t,j}s{,x}" ], "exclude": [ - "test/e2e/app-dir/app-routes/app-custom-routes.test.ts", "test/e2e/app-dir/next-after-app/index.test.ts", "test/e2e/app-dir/scss/nm-module-nested/nm-module-nested.test.ts", "test/e2e/cancel-request/stream-cancel.test.ts", diff --git a/test/e2e/app-dir/app-routes/app-custom-routes.test.ts b/test/e2e/app-dir/app-routes/app-custom-routes.test.ts index 2fd595c6f7a59..1859ffbd9b26a 100644 --- a/test/e2e/app-dir/app-routes/app-custom-routes.test.ts +++ b/test/e2e/app-dir/app-routes/app-custom-routes.test.ts @@ -1,5 +1,5 @@ import { nextTestSetup } from 'e2e-utils' -import { check, waitFor } from 'next-test-utils' +import { check, waitFor, retry } from 'next-test-utils' import { Readable } from 'stream' import { @@ -679,18 +679,19 @@ describe('app-custom-routes', () => { }) } - describe('no response returned', () => { - it('should print an error when no response is returned', async () => { - await next.fetch(basePath + '/no-response', { method: 'POST' }) - - await check(() => { - expect(next.cliOutput).toMatch( - /No response is returned from route handler '.+\/route\.ts'\. Ensure you return a `Response` or a `NextResponse` in all branches of your handler\./ - ) - return 'yes' - }, 'yes') + // This test is skipped in deploy mode because `next.cliOutput` will only contain build-time logs. + if (!isNextDeploy) { + describe('no response returned', () => { + it('should print an error when no response is returned', async () => { + await next.fetch(basePath + '/no-response', { method: 'POST' }) + await retry(() => { + expect(next.cliOutput).toMatch( + /No response is returned from route handler '.+\/route\.ts'\. Ensure you return a `Response` or a `NextResponse` in all branches of your handler\./ + ) + }) + }) }) - }) + } describe('no bundle error', () => { it('should not print bundling warning about React', async () => { diff --git a/turbo.json b/turbo.json index 3ee8c97f8f7bc..0cb4370968adb 100644 --- a/turbo.json +++ b/turbo.json @@ -1,7 +1,6 @@ { "$schema": "https://turborepo.org/schema.json", - "experimentalUI": true, - "pipeline": { + "tasks": { "build": { "dependsOn": ["^build"], "outputs": ["dist/**"]