diff --git a/rust-toolchain.toml b/rust-toolchain.toml
index e7fbc0c176d98..41eb67abca569 100644
--- a/rust-toolchain.toml
+++ b/rust-toolchain.toml
@@ -1,4 +1,4 @@
[toolchain]
-channel = "nightly-2025-04-10"
+channel = "nightly-2025-02-12"
components = ["rustfmt", "clippy", "rust-analyzer"]
profile = "minimal"
diff --git a/test/e2e/app-dir/navigation/navigation.test.ts b/test/e2e/app-dir/navigation/navigation.test.ts
index 9f998b1b88d9d..9e484e56e94f7 100644
--- a/test/e2e/app-dir/navigation/navigation.test.ts
+++ b/test/e2e/app-dir/navigation/navigation.test.ts
@@ -893,7 +893,7 @@ describe('app dir - navigation', () => {
.elementByCss("[href='/metadata-await-promise/nested']")
.click()
- await waitFor(resolveMetadataDuration)
+ await waitFor(resolveMetadataDuration + 500)
expect(await browser.elementById('page-content').text()).toBe('Content')
expect(await browser.elementByCss('title').text()).toBe('Async Title')
@@ -912,9 +912,11 @@ describe('app dir - navigation', () => {
.click()
if (!isNextDev) {
- expect(await browser.elementByCss('title').text()).toBe('Async Title')
-
- await waitFor(resolveMetadataDuration + 500)
+ expect(
+ await browser
+ .waitForElementByCss('title', resolveMetadataDuration + 500)
+ .text()
+ ).toBe('Async Title')
}
expect(await browser.elementById('page-content').text()).toBe('Content')
diff --git a/test/lib/browsers/playwright.ts b/test/lib/browsers/playwright.ts
index d0a19e75d97eb..7e5f7c8132f75 100644
--- a/test/lib/browsers/playwright.ts
+++ b/test/lib/browsers/playwright.ts
@@ -348,7 +348,7 @@ export class Playwright extends BrowserInterface {
}
elementByCss(selector: string) {
- return this.waitForElementByCss(selector)
+ return this.waitForElementByCss(selector, 5_000)
}
elementById(sel) {
@@ -427,7 +427,7 @@ export class Playwright extends BrowserInterface {
)
}
- waitForElementByCss(selector, timeout?: number) {
+ waitForElementByCss(selector, timeout = 10_000) {
return this.chain(() => {
return page
.waitForSelector(selector, { timeout, state: 'attached' })
diff --git a/test/rspack-build-tests-manifest.json b/test/rspack-build-tests-manifest.json
index 9457238234eec..2b2d69923dbb5 100644
--- a/test/rspack-build-tests-manifest.json
+++ b/test/rspack-build-tests-manifest.json
@@ -1447,6 +1447,19 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/back-forward-cache/back-forward-cache.test.ts": {
+ "passed": [
+ "back/forward cache React state is preserved when navigating back to a page with different search params than before ",
+ "back/forward cache React state is preserved when navigating back/forward with links",
+ "back/forward cache React state is preserved when navigating with back/forward buttons",
+ "back/forward cache bfcache only preserves up to N entries",
+ "back/forward cache navigate back and forth repeatedly between the same pages without evicting"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/binary/rsc-binary.test.ts": {
"passed": [
"RSC binary serialization should correctly encode/decode binaries and hydrate"
@@ -1596,7 +1609,6 @@
"css-order loose should load correct styles navigating third -> first-client",
"css-order loose should load correct styles navigating third -> second",
"css-order loose should load correct styles navigating third -> second-client",
- "css-order loose should load correct styles on big-interleaved-b",
"css-order loose should load correct styles on first",
"css-order loose should load correct styles on first-client",
"css-order loose should load correct styles on interleaved-a",
@@ -1661,11 +1673,8 @@
"css-order strict should load correct styles navigating third -> first-client",
"css-order strict should load correct styles navigating third -> second",
"css-order strict should load correct styles navigating third -> second-client",
- "css-order strict should load correct styles on big-interleaved-b",
"css-order strict should load correct styles on first",
"css-order strict should load correct styles on first-client",
- "css-order strict should load correct styles on global-first",
- "css-order strict should load correct styles on global-second",
"css-order strict should load correct styles on interleaved-a",
"css-order strict should load correct styles on interleaved-b",
"css-order strict should load correct styles on pages-first",
@@ -1677,10 +1686,6 @@
"css-order strict should load correct styles on pages-reversed-b",
"css-order strict should load correct styles on pages-second",
"css-order strict should load correct styles on pages-third",
- "css-order strict should load correct styles on partial-reversed-a",
- "css-order strict should load correct styles on partial-reversed-b",
- "css-order strict should load correct styles on reversed-a",
- "css-order strict should load correct styles on reversed-b",
"css-order strict should load correct styles on second",
"css-order strict should load correct styles on second-client",
"css-order strict should load correct styles on third",
@@ -1701,6 +1706,7 @@
],
"failed": [
"css-order loose should load correct styles on big-interleaved-a",
+ "css-order loose should load correct styles on big-interleaved-b",
"css-order strict should load correct styles navigating back again first -> first-client -> first -> first-client",
"css-order strict should load correct styles navigating back again first -> second -> first -> second",
"css-order strict should load correct styles navigating back again first -> second-client -> first -> second-client",
@@ -1723,6 +1729,13 @@
"css-order strict should load correct styles navigating back again third -> second -> third -> second",
"css-order strict should load correct styles navigating back again third -> second-client -> third -> second-client",
"css-order strict should load correct styles on big-interleaved-a",
+ "css-order strict should load correct styles on big-interleaved-b",
+ "css-order strict should load correct styles on global-first",
+ "css-order strict should load correct styles on global-second",
+ "css-order strict should load correct styles on partial-reversed-a",
+ "css-order strict should load correct styles on partial-reversed-b",
+ "css-order strict should load correct styles on reversed-a",
+ "css-order strict should load correct styles on reversed-b",
"css-order true should load correct styles navigating back again first -> first-client -> first -> first-client",
"css-order true should load correct styles navigating back again first -> second -> first -> second",
"css-order true should load correct styles navigating back again first -> second-client -> first -> second-client",
@@ -3655,6 +3668,16 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/not-found-with-pages-i18n/not-found-with-pages.test.ts": {
+ "passed": [
+ "not-found-with-pages should prefer the app router 404 over the pages router 404 when both are present",
+ "not-found-with-pages should write all locales to the pages manifest"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/not-found/basic/index.test.ts": {
"passed": [
"app dir - not-found - basic should include not found client reference manifest in the file trace",
@@ -4341,6 +4364,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/ppr-middleware-rewrite-force-dynamic-ssg-dynamic-params/ppr-middleware-rewrite-force-dynamic-ssg-dynamic-params.test.ts": {
+ "passed": [
+ "ppr-middleware-rewrite-force-dynamic-generate-static-params should have correct dynamic params"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/ppr-missing-root-params/ppr-missing-root-params.test.ts": {
"passed": [
"ppr-missing-root-params (multiple) should result in a build error",
@@ -4619,6 +4651,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/rewrite-with-search-params/rewrite-with-search-params.test.ts": {
+ "passed": [
+ "rewrite-with-search-params should not contain params in search params after rewrite"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/rewrites-redirects/rewrites-redirects.test.ts": {
"passed": [
"redirects and rewrites navigation using button should redirect from middleware correctly",
@@ -4713,6 +4754,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/rsc-basic/rsc-basic-react-experimental.test.ts": {
+ "passed": [
+ "react@experimental should opt into the react@experimental when enabling $flag"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/rsc-basic/rsc-basic.test.ts": {
"passed": [
"app dir - rsc basics client references with TLA (edge) should support TLA in lazy client reference",
@@ -4721,8 +4771,6 @@
"app dir - rsc basics client references with TLA (node) should support TLA in sync client reference imports",
"app dir - rsc basics next internal shared context should not error if just load next/navigation module in pages/api",
"app dir - rsc basics next internal shared context should not error if just load next/router module in app page",
- "app dir - rsc basics react@experimental should opt into the react@experimental when enabling ppr",
- "app dir - rsc basics react@experimental should opt into the react@experimental when enabling taint",
"app dir - rsc basics should be able to call legacy react-dom/server APIs in client components",
"app dir - rsc basics should be able to navigate between rsc routes",
"app dir - rsc basics should correctly render component returning null",
@@ -4763,6 +4811,16 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/rsc-query-routing/rsc-query-routing.test.ts": {
+ "passed": [
+ "rsc-query-routing should contain rsc query in rsc request when redirect the page",
+ "rsc-query-routing should contain rsc query in rsc request when rewrite the page"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/rsc-webpack-loader/rsc-webpack-loader.test.ts": {
"passed": [
"app dir - rsc webpack loader should support webpack loader rules"
@@ -5878,6 +5936,7 @@
},
"test/e2e/app-dir/worker/worker.test.ts": {
"passed": [
+ "app dir - workers should not bundle web workers with string specifiers",
"app dir - workers should support module web workers with dynamic imports",
"app dir - workers should support web workers with dynamic imports"
],
@@ -8105,6 +8164,13 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/swc-plugins/index.test.ts": {
+ "passed": ["swcPlugins supports swcPlugins basic case"],
+ "failed": [],
+ "pending": ["swcPlugins invalid plugin name shows a redbox in dev"],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/swc-warnings/index.test.ts": {
"passed": [
"can force swc should not have warning",
@@ -8238,6 +8304,16 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/turbopack-turbo-config-compatibility/index.test.ts": {
+ "passed": [],
+ "failed": [],
+ "pending": [
+ "turbopack-turbo-config-compatibility including both turbopack and deprecated experimental turbo config prefers turbopack config over deprecated experimental turbo config",
+ "turbopack-turbo-config-compatibility only including deprecated experimental turbo config still uses the deprecated experimental turbo config"
+ ],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/type-module-interop/index.test.ts": {
"passed": [
"Type module interop should render client-side",
@@ -9859,6 +9935,7 @@
"CSS Modules Composes Ordering useLightnincsss(true) production mode should have correct color on index page (on nav from other)",
"CSS Modules Composes Ordering useLightnincsss(true) production mode should not change color on hover",
"Data URLs production mode should compile successfully",
+ "Data URLs production mode should have emitted expected files",
"Ordering with Global CSS and Modules (dev) useLightnincsss(false) should have the correct color (css ordering)",
"Ordering with Global CSS and Modules (dev) useLightnincsss(false) should have the correct color (css ordering) during hot reloads",
"Ordering with Global CSS and Modules (dev) useLightnincsss(false) should not execute scripts in any order",
@@ -9872,7 +9949,6 @@
"should handle unresolved files gracefully production mode should build correctly"
],
"failed": [
- "Data URLs production mode should have emitted expected files",
"should handle unresolved files gracefully production mode should have correct file references in CSS output"
],
"pending": [
@@ -14748,9 +14824,10 @@
"flakey": [],
"runtimeError": false
},
- "test/integration/invalid-href/test/index.test.js": {
+ "test/integration/invalid-href/test/index.test.ts": {
"passed": [
- "Invalid hrefs production mode does not show error in production when https://google.com is used as href on Link",
+ "Invalid hrefs production mode does not show error in production when exotic protocols are used in href in Link",
+ "Invalid hrefs production mode does not show error in production when https:// is used in href on Link",
"Invalid hrefs production mode does not show error in production when mailto: is used as href on Link",
"Invalid hrefs production mode does not show error when internal href is used with external as",
"Invalid hrefs production mode doesn't fail on invalid url",
@@ -14760,7 +14837,8 @@
],
"failed": [],
"pending": [
- "Invalid hrefs development mode does not show error when https://google.com is used as href on Link",
+ "Invalid hrefs development mode does not show error when exotic protocols are used in href in Link",
+ "Invalid hrefs development mode does not show error when https:// is used as href in Link",
"Invalid hrefs development mode does not show error when mailto: is used as href on Link",
"Invalid hrefs development mode does not throw error when dynamic route mismatch is used on Link and params are manually provided",
"Invalid hrefs development mode doesn't fail on invalid url",
@@ -15094,7 +15172,7 @@
"flakey": [],
"runtimeError": false
},
- "test/integration/module-id-strategies/test/index.test.js": {
+ "test/integration/module-ids/test/index.test.js": {
"passed": [],
"failed": [],
"pending": [
diff --git a/test/rspack-dev-tests-manifest.json b/test/rspack-dev-tests-manifest.json
index 797662f1acbbf..88552989a7993 100644
--- a/test/rspack-dev-tests-manifest.json
+++ b/test/rspack-dev-tests-manifest.json
@@ -2013,6 +2013,7 @@
"Error Overlay for server components Class component used in Server Component should show error when Class Component is used",
"Error Overlay for server components Class component used in Server Component should show error when Component is rendered in external package",
"Error Overlay for server components Class component used in Server Component should show error when React.PureComponent is rendered in external package",
+ "Error Overlay for server components Next.js link client hooks called in Server Component should show error when useLinkStatus is called",
"Error Overlay for server components Next.js navigation client hooks called in Server Component should show error when useParams is called",
"Error Overlay for server components Next.js navigation client hooks called in Server Component should show error when usePathname is called",
"Error Overlay for server components Next.js navigation client hooks called in Server Component should show error when useRouter is called",
@@ -2271,8 +2272,8 @@
"runtimeError": false
},
"test/development/app-dir/build-error-logs/build-error-logs.test.ts": {
- "passed": [],
- "failed": ["build-error-logs should only log error a single time"],
+ "passed": ["build-error-logs should only log error a single time"],
+ "failed": [],
"pending": [],
"flakey": [],
"runtimeError": false
@@ -2386,10 +2387,11 @@
},
"test/development/app-dir/edge-errors-hmr/index.test.ts": {
"passed": [
- "develop - app-dir - edge errros hmr should recover from build errors when client component error",
"develop - app-dir - edge errros hmr should recover from build errors when server component error"
],
- "failed": [],
+ "failed": [
+ "develop - app-dir - edge errros hmr should recover from build errors when client component error"
+ ],
"pending": [],
"flakey": [],
"runtimeError": false
@@ -2487,17 +2489,16 @@
"runtimeError": false
},
"test/development/app-dir/hydration-error-count/hydration-error-count.test.ts": {
- "passed": [
+ "passed": [],
+ "failed": [
"hydration-error-count should display correct hydration info in each hydration error view",
+ "hydration-error-count should display runtime error separately from hydration errors",
"hydration-error-count should have correct hydration error count for bad nesting",
"hydration-error-count should have correct hydration error count for html diff"
],
- "failed": [
- "hydration-error-count should display runtime error separately from hydration errors"
- ],
"pending": [],
"flakey": [],
- "runtimeError": true
+ "runtimeError": false
},
"test/development/app-dir/logging-incoming-request/logging-incoming-request-false.test.ts": {
"passed": [
@@ -4764,6 +4765,7 @@
"app dir - basic next/script should pass nonce when using next/font",
"app dir - basic next/script should pass on extra props for beforeInteractive scripts with a src prop",
"app dir - basic next/script should pass on extra props for beforeInteractive scripts without a src prop",
+ "app dir - basic next/script should support next/script and render in correct order",
"app dir - basic rewrites should support rewrites on client-side navigation",
"app dir - basic rewrites should support rewrites on client-side navigation from pages to app with existing pages path",
"app dir - basic rewrites should support rewrites on initial load",
@@ -4830,7 +4832,6 @@
],
"failed": [
"app dir - basic should navigate to pages dynamic route from pages page if it overlaps with an app page",
- "app dir - basic next/script should support next/script and render in correct order",
"app dir - basic should serve polyfills for browsers that do not support modules"
],
"pending": [
@@ -4934,6 +4935,19 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/back-forward-cache/back-forward-cache.test.ts": {
+ "passed": [
+ "back/forward cache React state is preserved when navigating back to a page with different search params than before ",
+ "back/forward cache React state is preserved when navigating back/forward with links",
+ "back/forward cache React state is preserved when navigating with back/forward buttons",
+ "back/forward cache bfcache only preserves up to N entries",
+ "back/forward cache navigate back and forth repeatedly between the same pages without evicting"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/binary/rsc-binary.test.ts": {
"passed": [
"RSC binary serialization should correctly encode/decode binaries and hydrate"
@@ -6262,14 +6276,14 @@
"app-dir - logging with verbose logging for edge runtime should not log _rsc query for client navigation RSC request",
"app-dir - logging with verbose logging for edge runtime should only log requests in development mode",
"app-dir - logging with verbose logging for edge runtime should respect request.init.cache when use with fetch input is instance",
- "app-dir - logging with verbose logging for edge runtime should show cache reason of noStore when use with fetch",
- "app-dir - logging with verbose logging for edge runtime when logging.fetches.hmrRefreshes is true should log requests for HMR refreshes"
+ "app-dir - logging with verbose logging for edge runtime should show cache reason of noStore when use with fetch"
],
"failed": [
"app-dir - logging with default logging should not contain metadata internal segments for dynamic metadata routes",
"app-dir - logging with fetches default logging should not contain metadata internal segments for dynamic metadata routes",
"app-dir - logging with fetches verbose logging should not contain metadata internal segments for dynamic metadata routes",
- "app-dir - logging with verbose logging for edge runtime should not contain metadata internal segments for dynamic metadata routes"
+ "app-dir - logging with verbose logging for edge runtime should not contain metadata internal segments for dynamic metadata routes",
+ "app-dir - logging with verbose logging for edge runtime when logging.fetches.hmrRefreshes is true should log requests for HMR refreshes"
],
"pending": [],
"flakey": [],
@@ -7155,6 +7169,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/not-found-with-pages-i18n/not-found-with-pages.test.ts": {
+ "passed": [
+ "not-found-with-pages should prefer the app router 404 over the pages router 404 when both are present"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/not-found/basic/index.test.ts": {
"passed": [
"app dir - not-found - basic should propagate notFound errors past a segment's error boundary",
@@ -7637,6 +7660,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/ppr-middleware-rewrite-force-dynamic-ssg-dynamic-params/ppr-middleware-rewrite-force-dynamic-ssg-dynamic-params.test.ts": {
+ "passed": [
+ "ppr-middleware-rewrite-force-dynamic-generate-static-params should have correct dynamic params"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/ppr-missing-root-params/ppr-missing-root-params.test.ts": {
"passed": [
"ppr-missing-root-params (multiple) should result in a build error",
@@ -7901,6 +7933,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/rewrite-with-search-params/rewrite-with-search-params.test.ts": {
+ "passed": [
+ "rewrite-with-search-params should not contain params in search params after rewrite"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/rewrites-redirects/rewrites-redirects.test.ts": {
"passed": [
"redirects and rewrites navigation using button should redirect from middleware correctly",
@@ -7998,6 +8039,15 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/rsc-basic/rsc-basic-react-experimental.test.ts": {
+ "passed": [
+ "react@experimental should opt into the react@experimental when enabling $flag"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/rsc-basic/rsc-basic.test.ts": {
"passed": [
"app dir - rsc basics client references with TLA (edge) should support TLA in lazy client reference",
@@ -8006,8 +8056,6 @@
"app dir - rsc basics client references with TLA (node) should support TLA in sync client reference imports",
"app dir - rsc basics next internal shared context should not error if just load next/navigation module in pages/api",
"app dir - rsc basics next internal shared context should not error if just load next/router module in app page",
- "app dir - rsc basics react@experimental should opt into the react@experimental when enabling ppr",
- "app dir - rsc basics react@experimental should opt into the react@experimental when enabling taint",
"app dir - rsc basics should be able to navigate between rsc routes",
"app dir - rsc basics should correctly render component returning null",
"app dir - rsc basics should correctly render component returning undefined",
@@ -8049,6 +8097,16 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/app-dir/rsc-query-routing/rsc-query-routing.test.ts": {
+ "passed": [
+ "rsc-query-routing should contain rsc query in rsc request when redirect the page",
+ "rsc-query-routing should contain rsc query in rsc request when rewrite the page"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/app-dir/rsc-webpack-loader/rsc-webpack-loader.test.ts": {
"passed": [
"app dir - rsc webpack loader should support webpack loader rules"
@@ -9123,6 +9181,7 @@
},
"test/e2e/app-dir/worker/worker.test.ts": {
"passed": [
+ "app dir - workers should not bundle web workers with string specifiers",
"app dir - workers should support module web workers with dynamic imports",
"app dir - workers should support web workers with dynamic imports"
],
@@ -11327,6 +11386,16 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/swc-plugins/index.test.ts": {
+ "passed": [
+ "swcPlugins invalid plugin name shows a redbox in dev",
+ "swcPlugins supports swcPlugins basic case"
+ ],
+ "failed": [],
+ "pending": [],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/swc-warnings/index.test.ts": {
"passed": [
"can force swc should not have warning",
@@ -11456,6 +11525,16 @@
"flakey": [],
"runtimeError": false
},
+ "test/e2e/turbopack-turbo-config-compatibility/index.test.ts": {
+ "passed": [],
+ "failed": [],
+ "pending": [
+ "turbopack-turbo-config-compatibility including both turbopack and deprecated experimental turbo config prefers turbopack config over deprecated experimental turbo config",
+ "turbopack-turbo-config-compatibility only including deprecated experimental turbo config still uses the deprecated experimental turbo config"
+ ],
+ "flakey": [],
+ "runtimeError": false
+ },
"test/e2e/type-module-interop/index.test.ts": {
"passed": [
"Type module interop should render client-side",
@@ -17959,9 +18038,10 @@
"flakey": [],
"runtimeError": false
},
- "test/integration/invalid-href/test/index.test.js": {
+ "test/integration/invalid-href/test/index.test.ts": {
"passed": [
- "Invalid hrefs development mode does not show error when https://google.com is used as href on Link",
+ "Invalid hrefs development mode does not show error when exotic protocols are used in href in Link",
+ "Invalid hrefs development mode does not show error when https:// is used as href in Link",
"Invalid hrefs development mode does not show error when mailto: is used as href on Link",
"Invalid hrefs development mode does not throw error when dynamic route mismatch is used on Link and params are manually provided",
"Invalid hrefs development mode doesn't fail on invalid url",
@@ -17971,7 +18051,8 @@
],
"failed": [],
"pending": [
- "Invalid hrefs production mode does not show error in production when https://google.com is used as href on Link",
+ "Invalid hrefs production mode does not show error in production when exotic protocols are used in href in Link",
+ "Invalid hrefs production mode does not show error in production when https:// is used in href on Link",
"Invalid hrefs production mode does not show error in production when mailto: is used as href on Link",
"Invalid hrefs production mode does not show error when internal href is used with external as",
"Invalid hrefs production mode doesn't fail on invalid url",
@@ -18307,7 +18388,7 @@
"flakey": [],
"runtimeError": false
},
- "test/integration/module-id-strategies/test/index.test.js": {
+ "test/integration/module-ids/test/index.test.js": {
"passed": [],
"failed": [],
"pending": [
diff --git a/turbopack/crates/turbo-static/src/main.rs b/turbopack/crates/turbo-static/src/main.rs
index 498f80be8056a..8b996f62c08c5 100644
--- a/turbopack/crates/turbo-static/src/main.rs
+++ b/turbopack/crates/turbo-static/src/main.rs
@@ -194,7 +194,6 @@ fn resolve_concurrency(
for (ident, references) in dep_tree {
for reference in references {
- #[allow(clippy::map_entry)] // This doesn't insert into dep_tree, so entry isn't useful
if !dep_tree.contains_key(&reference.identifier) {
// this is a task that is not in the task list
// so we can't resolve it
diff --git a/turbopack/crates/turbo-tasks-auto-hash-map/src/lib.rs b/turbopack/crates/turbo-tasks-auto-hash-map/src/lib.rs
index 42526ed9e2b25..41998db9992d9 100644
--- a/turbopack/crates/turbo-tasks-auto-hash-map/src/lib.rs
+++ b/turbopack/crates/turbo-tasks-auto-hash-map/src/lib.rs
@@ -1,3 +1,5 @@
+#![feature(hash_extract_if)]
+
pub mod map;
pub mod set;
diff --git a/turbopack/crates/turbo-tasks-fs/src/lib.rs b/turbopack/crates/turbo-tasks-fs/src/lib.rs
index 20f8395e8b2f0..464f8d3867e95 100644
--- a/turbopack/crates/turbo-tasks-fs/src/lib.rs
+++ b/turbopack/crates/turbo-tasks-fs/src/lib.rs
@@ -1,5 +1,6 @@
#![allow(clippy::needless_return)] // tokio macro-generated code doesn't respect this
#![feature(trivial_bounds)]
+#![feature(hash_extract_if)]
#![feature(min_specialization)]
#![feature(iter_advance_by)]
#![feature(io_error_more)]
diff --git a/turbopack/crates/turbo-tasks-macros-tests/tests/function/fail_operation_method_self_type.stderr b/turbopack/crates/turbo-tasks-macros-tests/tests/function/fail_operation_method_self_type.stderr
index 0a167e2e1632d..7fb9a0baa3031 100644
--- a/turbopack/crates/turbo-tasks-macros-tests/tests/function/fail_operation_method_self_type.stderr
+++ b/turbopack/crates/turbo-tasks-macros-tests/tests/function/fail_operation_method_self_type.stderr
@@ -4,15 +4,6 @@ error: methods taking `self` are not supported with `operation`
13 | fn arbitrary_self_type(self: OperationVc) -> Vc<()> {
| ^^^^^^^^^^^^^^^^^^^^^^^
-error[E0307]: invalid `self` parameter type: `OperationVc`
- --> tests/function/fail_operation_method_self_type.rs:13:34
- |
-13 | fn arbitrary_self_type(self: OperationVc) -> Vc<()> {
- | ^^^^^^^^^^^^^^^^^
- |
- = note: type of `self` must be `Self` or some type implementing `Receiver`
- = help: consider changing to `self`, `&self`, `&mut self`, or a type implementing `Receiver` such as `self: Box`, `self: Rc`, or `self: Arc`
-
error[E0277]: the trait bound `fn(...) -> ... {...::arbitrary_self_type_turbo_tasks_function_inline}: IntoTaskFnWithThis<_, _, _>` is not satisfied
--> tests/function/fail_operation_method_self_type.rs:10:1
|
@@ -31,3 +22,12 @@ note: required by a bound in `NativeFunction::new_method`
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `NativeFunction::new_method`
= note: consider using `--verbose` to print the full type name to the console
= note: this error originates in the attribute macro `turbo_tasks::value_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error[E0307]: invalid `self` parameter type: `OperationVc`
+ --> tests/function/fail_operation_method_self_type.rs:13:34
+ |
+13 | fn arbitrary_self_type(self: OperationVc) -> Vc<()> {
+ | ^^^^^^^^^^^^^^^^^
+ |
+ = note: type of `self` must be `Self` or some type implementing `Receiver`
+ = help: consider changing to `self`, `&self`, `&mut self`, or a type implementing `Receiver` such as `self: Box`, `self: Rc`, or `self: Arc`
diff --git a/turbopack/crates/turbo-tasks-memory/src/lib.rs b/turbopack/crates/turbo-tasks-memory/src/lib.rs
index bd2a5476b5b40..9f1f3e3ba67e4 100644
--- a/turbopack/crates/turbo-tasks-memory/src/lib.rs
+++ b/turbopack/crates/turbo-tasks-memory/src/lib.rs
@@ -1,3 +1,4 @@
+#![feature(hash_extract_if)]
#![feature(type_alias_impl_trait)]
#![feature(box_patterns)]
#![feature(int_roundings)]
diff --git a/turbopack/crates/turbo-tasks/src/lib.rs b/turbopack/crates/turbo-tasks/src/lib.rs
index c76166d663222..35a34f3e3f493 100644
--- a/turbopack/crates/turbo-tasks/src/lib.rs
+++ b/turbopack/crates/turbo-tasks/src/lib.rs
@@ -29,6 +29,7 @@
#![feature(trivial_bounds)]
#![feature(min_specialization)]
#![feature(try_trait_v2)]
+#![feature(hash_extract_if)]
#![deny(unsafe_op_in_unsafe_fn)]
#![feature(result_flattening)]
#![feature(error_generic_member_access)]
diff --git a/turbopack/crates/turbopack-css/src/process.rs b/turbopack/crates/turbopack-css/src/process.rs
index 1ca595ce6779b..81120ec02f420 100644
--- a/turbopack/crates/turbopack-css/src/process.rs
+++ b/turbopack/crates/turbopack-css/src/process.rs
@@ -112,7 +112,6 @@ impl StyleSheetLike<'_, '_> {
pub struct UnresolvedUrlReferences(pub Vec<(String, ResolvedVc)>);
#[turbo_tasks::value(shared, serialization = "none", eq = "manual", cell = "new")]
-#[allow(clippy::large_enum_variant)] // This is a turbo-tasks value
pub enum ParseCssResult {
Ok {
code: ResolvedVc,
diff --git a/turbopack/crates/turbopack-node/src/lib.rs b/turbopack/crates/turbopack-node/src/lib.rs
index 606c9022e2b4e..672736fca9388 100644
--- a/turbopack/crates/turbopack-node/src/lib.rs
+++ b/turbopack/crates/turbopack-node/src/lib.rs
@@ -1,6 +1,7 @@
#![feature(min_specialization)]
#![feature(arbitrary_self_types)]
#![feature(arbitrary_self_types_pointers)]
+#![feature(extract_if)]
use std::{iter::once, thread::available_parallelism};