From 148c7ff0200a60d69682b69fc323318cbf7b21b3 Mon Sep 17 00:00:00 2001 From: Tobias Koppers Date: Mon, 18 May 2026 22:43:54 +0200 Subject: [PATCH 1/2] Rename TaskExecutionReason::Initial to Root (#93922) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ### What? Renames the `TaskExecutionReason::Initial` variant to `TaskExecutionReason::Root` in turbo-tasks, and updates its `as_str()` representation from `"initial"` to `"root"`. ### Why? The variant's doc comment already describes it as "A root task was initially scheduled and is executed". The name `Initial` is misleading because it suggests "first execution of any task", which overlaps semantically with other variants like `ActivateInitial` (a task activated for the first time with no output yet). `Root` accurately reflects that this reason is specifically used when a root task is scheduled, making the enum easier to read and reason about at call sites and in traces. ### How? - `turbopack/crates/turbo-tasks/src/task_execution_reason.rs`: rename the enum variant `Initial` → `Root` and update the `as_str()` mapping to return `"root"`. - `turbopack/crates/turbo-tasks-backend/src/backend/storage_schema.rs`: update the single construction site that used `TaskExecutionReason::Initial` when scheduling a root task. No behavioral changes — this is a pure rename. The other `*Initial` variant (`ActivateInitial`) is intentionally left untouched because it describes a different concept (first-time activation of a non-root task). Verified with `cargo check` and `cargo clippy` on `turbo-tasks` and `turbo-tasks-backend`. Closes NEXT- Fixes # Co-authored-by: v-work-app[bot] <262237222+v-work-app[bot]@users.noreply.github.com> Co-authored-by: Claude Co-authored-by: Tobias Koppers --- .../crates/turbo-tasks-backend/src/backend/storage_schema.rs | 2 +- turbopack/crates/turbo-tasks/src/task_execution_reason.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/turbopack/crates/turbo-tasks-backend/src/backend/storage_schema.rs b/turbopack/crates/turbo-tasks-backend/src/backend/storage_schema.rs index 82878e3a4421..85db526d4d0c 100644 --- a/turbopack/crates/turbo-tasks-backend/src/backend/storage_schema.rs +++ b/turbopack/crates/turbo-tasks-backend/src/backend/storage_schema.rs @@ -781,7 +781,7 @@ impl TaskStorage { })); self.set_in_progress(InProgressState::Scheduled { done_event, - reason: TaskExecutionReason::Initial, + reason: TaskExecutionReason::Root, }); } diff --git a/turbopack/crates/turbo-tasks/src/task_execution_reason.rs b/turbopack/crates/turbo-tasks/src/task_execution_reason.rs index 74418c9c4af0..54674e64703a 100644 --- a/turbopack/crates/turbo-tasks/src/task_execution_reason.rs +++ b/turbopack/crates/turbo-tasks/src/task_execution_reason.rs @@ -1,7 +1,7 @@ #[derive(Debug)] pub enum TaskExecutionReason { /// A root task was initially scheduled and is executed - Initial, + Root, /// A task output was read, but the output is not available, so the task was scheduled and /// executed to produce the output OutputNotAvailable, @@ -29,7 +29,7 @@ pub enum TaskExecutionReason { impl TaskExecutionReason { pub fn as_str(&self) -> &'static str { match self { - TaskExecutionReason::Initial => "initial", + TaskExecutionReason::Root => "root", TaskExecutionReason::OutputNotAvailable => "output_not_available", TaskExecutionReason::CellNotAvailable => "cell_not_available", TaskExecutionReason::Invalidated => "invalidated", From 908274085eb0e44284447597af1bc004d0de7bd3 Mon Sep 17 00:00:00 2001 From: "next-js-bot[bot]" <279046576+next-js-bot[bot]@users.noreply.github.com> Date: Mon, 18 May 2026 23:39:20 +0000 Subject: [PATCH 2/2] v16.3.0-canary.23 --- lerna.json | 2 +- packages/create-next-app/package.json | 2 +- packages/eslint-config-next/package.json | 4 ++-- packages/eslint-plugin-internal/package.json | 2 +- packages/eslint-plugin-next/package.json | 2 +- packages/font/package.json | 2 +- packages/next-bundle-analyzer/package.json | 2 +- packages/next-codemod/package.json | 2 +- packages/next-env/package.json | 2 +- packages/next-mdx/package.json | 2 +- packages/next-playwright/package.json | 2 +- packages/next-plugin-storybook/package.json | 2 +- packages/next-polyfill-module/package.json | 2 +- packages/next-polyfill-nomodule/package.json | 2 +- packages/next-routing/package.json | 2 +- packages/next-rspack/package.json | 2 +- packages/next-swc/package.json | 2 +- packages/next/package.json | 14 +++++++------- packages/react-refresh-utils/package.json | 2 +- packages/third-parties/package.json | 4 ++-- pnpm-lock.yaml | 16 ++++++++-------- 21 files changed, 36 insertions(+), 36 deletions(-) diff --git a/lerna.json b/lerna.json index c6755da49f72..6bdfc9ba1821 100644 --- a/lerna.json +++ b/lerna.json @@ -15,5 +15,5 @@ "registry": "https://registry.npmjs.org/" } }, - "version": "16.3.0-canary.22" + "version": "16.3.0-canary.23" } \ No newline at end of file diff --git a/packages/create-next-app/package.json b/packages/create-next-app/package.json index 46d00e703055..e73a4367c9dd 100644 --- a/packages/create-next-app/package.json +++ b/packages/create-next-app/package.json @@ -1,6 +1,6 @@ { "name": "create-next-app", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "keywords": [ "react", "next", diff --git a/packages/eslint-config-next/package.json b/packages/eslint-config-next/package.json index 9ccd1f8aa1ea..4bbbb5397380 100644 --- a/packages/eslint-config-next/package.json +++ b/packages/eslint-config-next/package.json @@ -1,6 +1,6 @@ { "name": "eslint-config-next", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "ESLint configuration used by Next.js.", "license": "MIT", "repository": { @@ -12,7 +12,7 @@ "dist" ], "dependencies": { - "@next/eslint-plugin-next": "16.3.0-canary.22", + "@next/eslint-plugin-next": "16.3.0-canary.23", "eslint-import-resolver-node": "^0.3.6", "eslint-import-resolver-typescript": "^3.5.2", "eslint-plugin-import": "^2.32.0", diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json index 0336cd8ea173..ae03a232210f 100644 --- a/packages/eslint-plugin-internal/package.json +++ b/packages/eslint-plugin-internal/package.json @@ -1,7 +1,7 @@ { "name": "@next/eslint-plugin-internal", "private": true, - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "ESLint plugin for working on Next.js.", "exports": { ".": "./src/eslint-plugin-internal.js" diff --git a/packages/eslint-plugin-next/package.json b/packages/eslint-plugin-next/package.json index 0e3f7b1d930b..eaf8662db9e8 100644 --- a/packages/eslint-plugin-next/package.json +++ b/packages/eslint-plugin-next/package.json @@ -1,6 +1,6 @@ { "name": "@next/eslint-plugin-next", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "ESLint plugin for Next.js.", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/font/package.json b/packages/font/package.json index 8ee570b81f90..12bc21e94c5d 100644 --- a/packages/font/package.json +++ b/packages/font/package.json @@ -1,7 +1,7 @@ { "name": "@next/font", "private": true, - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "repository": { "url": "vercel/next.js", "directory": "packages/font" diff --git a/packages/next-bundle-analyzer/package.json b/packages/next-bundle-analyzer/package.json index ffe6d68bf8b3..e5ccb617655d 100644 --- a/packages/next-bundle-analyzer/package.json +++ b/packages/next-bundle-analyzer/package.json @@ -1,6 +1,6 @@ { "name": "@next/bundle-analyzer", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "main": "index.js", "types": "index.d.ts", "license": "MIT", diff --git a/packages/next-codemod/package.json b/packages/next-codemod/package.json index cfcc5d8955d5..2cc80858a406 100644 --- a/packages/next-codemod/package.json +++ b/packages/next-codemod/package.json @@ -1,6 +1,6 @@ { "name": "@next/codemod", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "license": "MIT", "repository": { "type": "git", diff --git a/packages/next-env/package.json b/packages/next-env/package.json index 18a6ac84857b..369d9d17f947 100644 --- a/packages/next-env/package.json +++ b/packages/next-env/package.json @@ -1,6 +1,6 @@ { "name": "@next/env", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "keywords": [ "react", "next", diff --git a/packages/next-mdx/package.json b/packages/next-mdx/package.json index be976813f679..e29cf35322fe 100644 --- a/packages/next-mdx/package.json +++ b/packages/next-mdx/package.json @@ -1,6 +1,6 @@ { "name": "@next/mdx", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "main": "index.js", "license": "MIT", "repository": { diff --git a/packages/next-playwright/package.json b/packages/next-playwright/package.json index f7eac3b67864..946a455ba18a 100644 --- a/packages/next-playwright/package.json +++ b/packages/next-playwright/package.json @@ -1,6 +1,6 @@ { "name": "@next/playwright", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "repository": { "url": "vercel/next.js", "directory": "packages/next-playwright" diff --git a/packages/next-plugin-storybook/package.json b/packages/next-plugin-storybook/package.json index 7ea82ade1928..4b9c617a630e 100644 --- a/packages/next-plugin-storybook/package.json +++ b/packages/next-plugin-storybook/package.json @@ -1,6 +1,6 @@ { "name": "@next/plugin-storybook", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "repository": { "url": "vercel/next.js", "directory": "packages/next-plugin-storybook" diff --git a/packages/next-polyfill-module/package.json b/packages/next-polyfill-module/package.json index df26cfe1284b..d2737829d41f 100644 --- a/packages/next-polyfill-module/package.json +++ b/packages/next-polyfill-module/package.json @@ -1,6 +1,6 @@ { "name": "@next/polyfill-module", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "A standard library polyfill for ES Modules supporting browsers (Edge 16+, Firefox 60+, Chrome 61+, Safari 10.1+)", "main": "dist/polyfill-module.js", "license": "MIT", diff --git a/packages/next-polyfill-nomodule/package.json b/packages/next-polyfill-nomodule/package.json index 68738c93b9fb..1c0e47132d25 100644 --- a/packages/next-polyfill-nomodule/package.json +++ b/packages/next-polyfill-nomodule/package.json @@ -1,6 +1,6 @@ { "name": "@next/polyfill-nomodule", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "A polyfill for non-dead, nomodule browsers.", "main": "dist/polyfill-nomodule.js", "license": "MIT", diff --git a/packages/next-routing/package.json b/packages/next-routing/package.json index 9970aeb2fe5b..a1ac3ef65bd8 100644 --- a/packages/next-routing/package.json +++ b/packages/next-routing/package.json @@ -1,6 +1,6 @@ { "name": "@next/routing", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "keywords": [ "react", "next", diff --git a/packages/next-rspack/package.json b/packages/next-rspack/package.json index 703dcc46e67d..bfd9560ee7e1 100644 --- a/packages/next-rspack/package.json +++ b/packages/next-rspack/package.json @@ -1,6 +1,6 @@ { "name": "next-rspack", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "repository": { "url": "vercel/next.js", "directory": "packages/next-rspack" diff --git a/packages/next-swc/package.json b/packages/next-swc/package.json index 1bbc9695726e..e3d80445c3b8 100644 --- a/packages/next-swc/package.json +++ b/packages/next-swc/package.json @@ -1,6 +1,6 @@ { "name": "@next/swc", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "private": true, "files": [ "native/" diff --git a/packages/next/package.json b/packages/next/package.json index 6768fde1d11b..0b796859b0b6 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -1,6 +1,6 @@ { "name": "next", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "The React Framework", "main": "./dist/server/next.js", "license": "MIT", @@ -101,7 +101,7 @@ ] }, "dependencies": { - "@next/env": "16.3.0-canary.22", + "@next/env": "16.3.0-canary.23", "@swc/helpers": "0.5.15", "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", @@ -165,11 +165,11 @@ "@modelcontextprotocol/sdk": "1.18.1", "@mswjs/interceptors": "0.23.0", "@napi-rs/triples": "1.2.0", - "@next/font": "16.3.0-canary.22", - "@next/polyfill-module": "16.3.0-canary.22", - "@next/polyfill-nomodule": "16.3.0-canary.22", - "@next/react-refresh-utils": "16.3.0-canary.22", - "@next/swc": "16.3.0-canary.22", + "@next/font": "16.3.0-canary.23", + "@next/polyfill-module": "16.3.0-canary.23", + "@next/polyfill-nomodule": "16.3.0-canary.23", + "@next/react-refresh-utils": "16.3.0-canary.23", + "@next/swc": "16.3.0-canary.23", "@opentelemetry/api": "1.6.0", "@playwright/test": "1.58.2", "@rspack/core": "1.6.7", diff --git a/packages/react-refresh-utils/package.json b/packages/react-refresh-utils/package.json index faf6bd0f656f..cb5aeb402d82 100644 --- a/packages/react-refresh-utils/package.json +++ b/packages/react-refresh-utils/package.json @@ -1,6 +1,6 @@ { "name": "@next/react-refresh-utils", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "description": "An experimental package providing utilities for React Refresh.", "repository": { "url": "vercel/next.js", diff --git a/packages/third-parties/package.json b/packages/third-parties/package.json index c15be6edca02..afb455428ff6 100644 --- a/packages/third-parties/package.json +++ b/packages/third-parties/package.json @@ -1,6 +1,6 @@ { "name": "@next/third-parties", - "version": "16.3.0-canary.22", + "version": "16.3.0-canary.23", "repository": { "url": "vercel/next.js", "directory": "packages/third-parties" @@ -27,7 +27,7 @@ "third-party-capital": "1.0.20" }, "devDependencies": { - "next": "16.3.0-canary.22", + "next": "16.3.0-canary.23", "outdent": "0.8.0", "prettier": "2.5.1", "typescript": "6.0.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d2ee28ebc79c..edaec9faea43 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -986,7 +986,7 @@ importers: packages/eslint-config-next: dependencies: '@next/eslint-plugin-next': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../eslint-plugin-next eslint: specifier: '>=9.0.0' @@ -1063,7 +1063,7 @@ importers: packages/next: dependencies: '@next/env': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../next-env '@swc/helpers': specifier: 0.5.15 @@ -1184,19 +1184,19 @@ importers: specifier: 1.2.0 version: 1.2.0 '@next/font': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../font '@next/polyfill-module': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../next-polyfill-module '@next/polyfill-nomodule': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../next-polyfill-nomodule '@next/react-refresh-utils': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../react-refresh-utils '@next/swc': - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../next-swc '@opentelemetry/api': specifier: 1.6.0 @@ -1930,7 +1930,7 @@ importers: version: 1.0.20 devDependencies: next: - specifier: 16.3.0-canary.22 + specifier: 16.3.0-canary.23 version: link:../next outdent: specifier: 0.8.0