Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: vercel/next.js
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2e7a96a1e8821d88f210a90b4284fd24b71c1821
Choose a base ref
...
head repository: vercel/next.js
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a1c3a0370ef465c1b788c7bf75d770ca92897cf7
Choose a head ref
Loading
Showing with 3,646 additions and 1,994 deletions.
  1. +0 −43 .github/CODEOWNERS
  2. +1 −1 .github/workflows/build_and_deploy.yml
  3. +63 −41 Cargo.lock
  4. +3 −3 Cargo.toml
  5. +3 −4 docs/02-app/01-building-your-application/06-optimizing/13-memory-usage.mdx
  6. +89 −0 docs/02-app/01-building-your-application/10-deploying/03-multi-zones.mdx
  7. +0 −1 docs/02-app/02-api-reference/05-next-config-js/serverComponentsExternalPackages.mdx
  8. +4 −30 docs/03-pages/01-building-your-application/09-deploying/03-multi-zones.mdx
  9. +1 −1 lerna.json
  10. +1 −1 package.json
  11. +1 −1 packages/create-next-app/package.json
  12. +2 −2 packages/eslint-config-next/package.json
  13. +1 −1 packages/eslint-plugin-next/package.json
  14. +1 −1 packages/font/package.json
  15. +17 −7 packages/font/src/google/font-data.json
  16. +1 −1 packages/font/src/google/get-font-axes.test.ts
  17. +37 −4 packages/font/src/google/index.ts
  18. +1 −1 packages/next-bundle-analyzer/package.json
  19. +1 −1 packages/next-codemod/package.json
  20. +1 −1 packages/next-env/package.json
  21. +1 −1 packages/next-mdx/package.json
  22. +1 −1 packages/next-plugin-storybook/package.json
  23. +1 −1 packages/next-polyfill-module/package.json
  24. +1 −1 packages/next-polyfill-nomodule/package.json
  25. +1 −1 packages/next-swc/package.json
  26. +11 −11 packages/next/package.json
  27. +2 −2 packages/next/src/build/babel/loader/get-config.ts
  28. +1 −0 packages/next/src/build/babel/loader/types.d.ts
  29. +2 −2 packages/next/src/build/babel/plugins/react-loadable-plugin.ts
  30. +1 −1 packages/next/src/build/swc/index.ts
  31. +1 −0 packages/next/src/build/webpack-config.ts
  32. +3 −0 packages/next/src/build/webpack/loaders/next-metadata-route-loader.ts
  33. +34 −0 packages/next/src/build/webpack/plugins/css-chunking-plugin.ts
  34. +2 −2 packages/next/src/build/webpack/plugins/define-env-plugin.ts
  35. +2 −2 packages/next/src/build/webpack/plugins/flight-client-entry-plugin.ts
  36. +15 −5 packages/next/src/client/components/app-router.tsx
  37. +3 −3 packages/next/src/client/components/layout-router.tsx
  38. +10 −10 packages/next/src/client/components/react-dev-overlay/internal/helpers/get-socket-url.ts
  39. +2 −22 packages/next/src/client/components/react-dev-overlay/pages/websocket.ts
  40. +4 −1 packages/next/src/client/components/router-reducer/create-initial-router-state.ts
  41. +5 −0 packages/next/src/client/components/router-reducer/fetch-server-response.ts
  42. +8 −2 packages/next/src/client/components/router-reducer/reducers/navigate-reducer.ts
  43. +1 −0 packages/next/src/client/components/router-reducer/reducers/refresh-reducer.ts
  44. +6 −7 packages/next/src/client/components/router-reducer/reducers/server-action-reducer.ts
  45. +4 −1 packages/next/src/client/components/router-reducer/refetch-inactive-parallel-segments.ts
  46. +3 −6 packages/next/src/client/image-component.tsx
  47. +10 −4 packages/next/src/client/link.tsx
  48. +14 −4 packages/next/src/client/script.tsx
  49. +1 −1 packages/next/src/compiled/@edge-runtime/cookies/package.json
  50. +1 −1 packages/next/src/compiled/@edge-runtime/ponyfill/package.json
  51. +1 −1 packages/next/src/compiled/@edge-runtime/primitives/package.json
  52. +1 −1 packages/next/src/compiled/@vercel/nft/index.js
  53. +1 −1 packages/next/src/compiled/acorn/LICENSE
  54. +1 −1 packages/next/src/compiled/acorn/acorn.js
  55. +1 −1 packages/next/src/compiled/edge-runtime/index.js
  56. +1 −1 packages/next/src/compiled/edge-runtime/package.json
  57. +2 −2 packages/next/src/compiled/webpack/bundle5.js
  58. +86 −1 packages/next/src/lib/metadata/resolvers/resolve-url.test.ts
  59. +33 −7 packages/next/src/lib/metadata/resolvers/resolve-url.ts
  60. +3 −1 packages/next/src/lib/patch-incorrect-lockfile.ts
  61. +0 −1 packages/next/src/lib/server-external-packages.json
  62. +8 −0 packages/next/src/lib/url.ts
  63. +19 −8 packages/next/src/server/app-render/app-render.tsx
  64. +1 −1 packages/next/src/server/app-render/dynamic-rendering.ts
  65. +36 −58 packages/next/src/server/base-server.ts
  66. +13 −10 packages/next/src/server/dev/hot-reloader-turbopack.ts
  67. +9 −4 packages/next/src/server/dev/hot-reloader-webpack.ts
  68. +121 −148 packages/next/src/server/future/route-modules/app-route/module.ts
  69. +21 −0 packages/next/src/server/image-optimizer.ts
  70. +0 −13 packages/next/src/server/internal-utils.ts
  71. +68 −51 packages/next/src/server/lib/incremental-cache/fetch-cache.ts
  72. +17 −6 packages/next/src/server/lib/incremental-cache/file-system-cache.ts
  73. +5 −3 packages/next/src/server/lib/incremental-cache/index.ts
  74. +33 −23 packages/next/src/server/lib/router-server.ts
  75. +13 −12 packages/next/src/server/lib/router-utils/resolve-routes.ts
  76. +13 −12 packages/next/src/server/next-server.ts
  77. +35 −0 packages/next/src/server/request-meta.ts
  78. +1 −1 packages/next/src/server/web/adapter.ts
  79. +26 −1 packages/next/src/server/web/spec-extension/unstable-cache.ts
  80. +0 −13 packages/next/src/shared/lib/constants.ts
  81. +16 −0 packages/next/src/shared/lib/normalized-asset-prefix.ts
  82. +5 −1 packages/next/src/shared/lib/router/router.ts
  83. +1 −1 packages/react-refresh-utils/package.json
  84. +2 −2 packages/third-parties/package.json
  85. +8 −1 packages/third-parties/src/types/google.ts
  86. +77 −92 pnpm-lock.yaml
  87. +5 −0 scripts/pull-turbo-cache.js
  88. +806 −869 test/development/basic/hmr.test.ts
  89. +0 −363 test/development/basic/next-dynamic.test.ts
  90. +3 −0 test/development/basic/next-dynamic/next-dynamic-babel-src-dir.test.ts
  91. +2 −0 test/development/basic/next-dynamic/next-dynamic-babel.test.ts
  92. +2 −0 test/development/basic/next-dynamic/next-dynamic-base-path.test.ts
  93. +2 −0 test/development/basic/next-dynamic/next-dynamic-custom-document.test.ts
  94. +321 −0 test/development/basic/next-dynamic/next-dynamic.test.ts
  95. +3 −2 test/e2e/app-dir/app-client-cache/client-cache.experimental.test.ts
  96. +88 −0 test/e2e/app-dir/app-client-cache/client-cache.parallel-routes.test.ts
  97. +2 −1 test/e2e/app-dir/app-client-cache/client-cache.test.ts
  98. +7 −0 test/e2e/app-dir/app-client-cache/fixtures/parallel-routes/app/@breadcrumbs/[id]/page.js
  99. +3 −0 test/e2e/app-dir/app-client-cache/fixtures/parallel-routes/app/@breadcrumbs/page.js
  100. +18 −0 test/e2e/app-dir/app-client-cache/fixtures/parallel-routes/app/[id]/page.js
  101. +12 −0 test/e2e/app-dir/app-client-cache/fixtures/parallel-routes/app/layout.js
  102. +11 −0 test/e2e/app-dir/app-client-cache/fixtures/parallel-routes/app/page.js
  103. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/[id]/loading.js
  104. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/[id]/page.js
  105. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/layout.js
  106. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/null-loading/loading.js
  107. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/null-loading/page.js
  108. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/page.js
  109. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/without-loading/[id]/page.js
  110. 0 test/e2e/app-dir/app-client-cache/{ → fixtures/regular}/app/without-loading/page.js
  111. +1 −1 test/e2e/app-dir/app-external/app-external.test.ts
  112. +15 −0 test/e2e/app-dir/app-prefetch/app/invalid-url/delay.js
  113. +4 −0 test/e2e/app-dir/app-prefetch/app/invalid-url/error.js
  114. +16 −0 test/e2e/app-dir/app-prefetch/app/invalid-url/from-link/page.js
  115. +20 −0 test/e2e/app-dir/app-prefetch/app/invalid-url/from-router-prefetch/page.js
  116. +8 −0 test/e2e/app-dir/app-prefetch/app/invalid-url/invalid-url.js
  117. +18 −0 test/e2e/app-dir/app-prefetch/prefetching.test.ts
  118. +34 −0 test/e2e/app-dir/app-static/app-static.test.ts
  119. +19 −0 test/e2e/app-dir/app-static/app/variable-revalidate/authorization/route-cookies/route.js
  120. +18 −0 test/e2e/app-dir/app-static/app/variable-revalidate/authorization/route-request/route.js
  121. +4 −0 test/e2e/app-dir/css-order/app/base.css
  122. +12 −0 test/e2e/app-dir/css-order/app/global-first/page.tsx
  123. +4 −0 test/e2e/app-dir/css-order/app/global-first/style.css
  124. +12 −0 test/e2e/app-dir/css-order/app/global-second/page.tsx
  125. +4 −0 test/e2e/app-dir/css-order/app/global-second/style.css
  126. +10 −0 test/e2e/app-dir/css-order/app/nav.tsx
  127. +14 −0 test/e2e/app-dir/css-order/css-order.test.ts
  128. +4 −4 test/e2e/app-dir/dynamic-data/dynamic-data.test.ts
  129. +0 −6 test/e2e/app-dir/navigation/app/metadata-await-promise/nested/loading.js
  130. +14 −8 test/e2e/app-dir/navigation/navigation.test.ts
  131. +8 −0 test/e2e/app-dir/next-script/app/layout.tsx
  132. +10 −0 test/e2e/app-dir/next-script/app/page.tsx
  133. +17 −0 test/e2e/app-dir/next-script/next-script.test.ts
  134. +6 −0 test/e2e/app-dir/next-script/next.config.js
  135. +3 −0 test/e2e/app-dir/not-found/default/app/foo/page.js
  136. +7 −0 test/e2e/app-dir/not-found/default/app/layout.js
  137. +27 −0 test/e2e/app-dir/not-found/default/default.test.ts
  138. +1 −1 test/e2e/app-dir/parallel-routes-revalidation/app/page.tsx
  139. +3 −1 test/e2e/app-dir/parallel-routes-revalidation/app/redirect/page.tsx
  140. +34 −1 test/e2e/app-dir/parallel-routes-revalidation/parallel-routes-revalidation.test.ts
  141. +7 −0 test/e2e/app-dir/prefetch-searchparam/app/layout.tsx
  142. +11 −0 test/e2e/app-dir/prefetch-searchparam/app/page.tsx
  143. +6 −0 test/e2e/app-dir/prefetch-searchparam/next.config.js
  144. +25 −0 test/e2e/app-dir/prefetch-searchparam/prefetch-searchparam.test.ts
  145. +11 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/app/actions.ts
  146. +11 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/app/layout.tsx
  147. +3 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/app/redirect/page.tsx
  148. +7 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/app/server-action/_action.ts
  149. +13 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/app/server-action/edge/page.tsx
  150. +13 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/app/server-action/node/page.tsx
  151. +5 −0 test/e2e/app-dir/server-actions-redirect-middleware-rewrite/middleware.ts
  152. +33 −0 ...dir/server-actions-redirect-middleware-rewrite/server-actions-redirect-middleware-rewrite.test.ts
  153. +0 −1 test/e2e/i18n-data-route/i18n-data-route.test.ts
  154. +43 −0 test/e2e/i18n-navigations-middleware/i18n-navigations-middleware.test.ts
  155. +6 −0 test/e2e/i18n-navigations-middleware/middleware.js
  156. +9 −0 test/e2e/i18n-navigations-middleware/next.config.js
  157. +11 −0 test/e2e/i18n-navigations-middleware/pages/dynamic/[id].js
  158. +37 −0 test/e2e/i18n-navigations-middleware/pages/index.js
  159. +11 −0 test/e2e/i18n-navigations-middleware/pages/static.js
  160. +1 −1 test/e2e/middleware-general/test/index.test.ts
  161. +13 −0 test/e2e/middleware-rewrites/app/middleware.js
  162. +22 −0 test/e2e/middleware-rewrites/app/pages/dynamic-no-cache/[id].js
  163. +1 −0 test/e2e/middleware-rewrites/app/pages/index.js
  164. +31 −1 test/e2e/middleware-rewrites/test/index.test.ts
  165. +1 −1 test/integration/create-next-app/lib/utils.ts
  166. +1 −1 test/integration/create-next-app/utils.ts
  167. +2 −1 test/integration/env-config/app/.env
  168. +5 −1 test/integration/env-config/app/pages/index.js
  169. +7 −0 test/integration/env-config/test/index.test.js
  170. +5 −0 test/integration/image-optimizer/app/pages/api/no-header.js
  171. +60 −1 test/integration/image-optimizer/test/util.ts
  172. +1 −1 test/integration/not-found-revalidate/pages/404.js
  173. +7 −5 test/integration/not-found-revalidate/test/index.test.js
  174. +1 −1 test/lib/browsers/base.ts
  175. +4 −0 test/lib/browsers/playwright.ts
  176. +9 −0 test/lib/next-test-utils.ts
  177. +12 −0 test/ppr-tests-manifest.json
  178. +9 −0 test/production/app-dir/fetch-cache/app/api/revalidate/route.ts
  179. +8 −0 test/production/app-dir/fetch-cache/app/layout.tsx
  180. +33 −0 test/production/app-dir/fetch-cache/app/not-changed/page.tsx
  181. +32 −0 test/production/app-dir/fetch-cache/app/page.tsx
  182. +281 −0 test/production/app-dir/fetch-cache/fetch-cache.test.ts
  183. BIN test/production/app-dir/metadata-static-route-cache/app/favicon.ico
  184. BIN test/production/app-dir/metadata-static-route-cache/app/favicon.ico.new
  185. BIN test/production/app-dir/metadata-static-route-cache/app/opengraph-image.png
  186. BIN test/production/app-dir/metadata-static-route-cache/app/opengraph-image.png.new
  187. +52 −0 test/production/app-dir/metadata-static-route-cache/metadata-static-route-cache.test.ts
  188. +6 −1 test/production/deployment-id-handling/app/app/from-app/page.tsx
  189. +24 −0 test/production/deployment-id-handling/app/app/other-app/page.tsx
  190. +1 −1 test/production/deployment-id-handling/app/global.css
  191. +33 −2 test/production/deployment-id-handling/deployment-id-handling.test.ts
  192. +33 −2 test/turbopack-build-tests-manifest.json
43 changes: 0 additions & 43 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,45 +1,2 @@
# Learn how to add code owners here:
# https://help.github.com/en/articles/about-code-owners


* @timneutkens @ijjk @shuding @huozhi @feedthejim @ztanner @wyattjoh
/.git* @vercel/next-js @vercel/devex
/docs/ @vercel/next-js @vercel/devex
/errors/ @vercel/next-js @vercel/devex
/examples/ @vercel/next-js @vercel/devex
/scripts/ @vercel/next-js
/.alex* @vercel/next-js @leerob
/.eslint* @vercel/next-js @leerob
/.prettier* @vercel/next-js @leerob
/*.md @vercel/next-js @vercel/devex
/*.mdx @vercel/next-js @vercel/devex
/packages/create-next-app/ @vercel/next-js
/pnpm-lock.yaml @vercel/next-js @vercel/turbopack

# Next.js CLI

/packages/next/src/bin @timneutkens @ijjk @shuding @samcx
/packages/next/src/cli @timneutkens @ijjk @shuding @samcx

# Image Component (@styfle)

/**/*image* @timneutkens @ijjk @shuding @styfle @huozhi @ztanner @vercel/devex
/**/*image*/** @timneutkens @ijjk @shuding @styfle @huozhi @ztanner @vercel/devex
/**/*img* @timneutkens @ijjk @shuding @styfle @huozhi @ztanner @vercel/devex
/packages/next/client/use-intersection.tsx @timneutkens @ijjk @shuding @styfle
/packages/next/server/lib/squoosh/ @timneutkens @ijjk @shuding @styfle
/packages/next/server/serve-static.ts @timneutkens @ijjk @shuding @styfle @huozhi @ztanner
/packages/next/server/config.ts @timneutkens @ijjk @shuding @styfle @huozhi @ztanner

# Tooling & Telemetry

/packages/next/src/build/ @timneutkens @ijjk @shuding @huozhi @ztanner @feedthejim @vercel/turbopack
/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts @timneutkens @ijjk @shuding @huozhi @feedthejim @ztanner @wyattjoh @vercel/turbopack
/packages/next/src/telemetry/ @timneutkens @ijjk @shuding @padmaia
/packages/next-swc/ @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
Cargo.toml @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
Cargo.lock @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
/.cargo/config.toml @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
/.config/nextest.toml @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
/test/build-turbopack-dev-tests-manifest.js @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
/test/turbopack-dev-tests-manifest.json @timneutkens @ijjk @shuding @huozhi @vercel/turbopack
2 changes: 1 addition & 1 deletion .github/workflows/build_and_deploy.yml
Original file line number Diff line number Diff line change
@@ -283,7 +283,7 @@ jobs:
# issues with turbo caching
- name: pull build cache
if: ${{ matrix.settings.docker }}
run: node ./scripts/pull-turbo-cache.js ${{ matrix.settings.target }}
run: npm i -g turbo@${{ env.TURBO_VERSION }} && node ./scripts/pull-turbo-cache.js ${{ matrix.settings.target }}

- name: check build exists
if: ${{ matrix.settings.docker }}
Loading