Skip to content

Releases: vercel/next.js

v15.0.0-rc.0

23 May 15:05
Compare
Choose a tag to compare
v15.0.0-rc.0 Pre-release
Pre-release

Core Changes

  • fix(next): global not-found not working on multi-root layouts: #63053
  • chore(next): add keywords on package.json: #64173
  • Fix DynamicServerError not being thrown in fetch: #64511
  • fix: lib/helpers/install.ts to better support pnpm and properly respect root argument: #64418
  • fix(next): Metadata.openGraph values not resolving basic values when type is set: #63620
  • disable production chunking in dev: #64488
  • update turbopack: #64501
  • Turbopack: Allow client components to be imported in app routes: #64520
  • refactor: remove always truthy flag: #64522
  • Turbopack: don’t show long internal stack traces on build errors: #64427
  • next/script: Correctly apply async and defer props: #52939
  • chore(next/font): update @capsizecss/metrics package: #64528
  • feat: add information that revalidate interval is in seconds: #64229
  • Typo "Minifer" in config.ts: #64359
  • Enhance types for Node and Edge envionments: #64454
  • feat: Add a validation for postcss with useLightningcss: #64379
  • fix HMR for cases where chunking changes: #64367
  • perf: improve Pages Router server rendering performance: #64461
  • Fix cjs client components tree-shaking: #64558
  • fix refresh behavior for discarded actions: #64532
  • fix: filter out middleware requests in logging: #64549
  • chore: remove unused rust dependencies: #62176
  • fix(next-swc): correctly set wasm fallback for known target triples: #64567
  • memoize layout router context: #64575
  • fix incorrect refresh request when basePath is set: #64589
  • fix TypeError edge-case for parallel slots rendered multiple times: #64271
  • Fix ASL bundling for dynamic css: #64451
  • Revert "fix(next): global not-found not working on multi-root layouts": #64601
  • chore(test): run related E2E deploy tests on PRs: #63763
  • Improve top level await coverage: #64508
  • Upgrade typescript to 5.3: #64043
  • add pathname normalizer for actions: #64592
  • Fix experimental/testmode by removing console.log: #64670
  • Don't output .test.ts files in next/font: #63472
  • Fix reporting when performance.measure doesn't exist (Edge): #64669
  • Reduce amount of data passed to collectBuildTraces: #59665
  • fix(next-server): 'quiet' setting delegate for custom server: #64512
  • Revert "chore(test): run related E2E deploy tests on PRs": #64682
  • update turbopack: #64686
  • Fix: resolve mixed re-exports module as cjs: #64681
  • Revert "fix TypeError edge-case for parallel slots rendered multiple times": #64690
  • Fix typo: 'serverComponentsExtenalPackages' should be 'serverComponentsExternalPackages': #64705
  • prevent erroneous route interception during lazy fetch: #64692
  • Add @appsignal/nodejs to the external packages list: #64503
  • fix root page revalidation when redirecting in a server action: #64730
  • Clean-up fetch metrics tracking: #64746
  • [actions] Enforce body limit using Transform stream: #64694
  • Turbopack: Don’t show stack traces for internal modules: #64228
  • Reapply "chore(test): run related E2E deploy tests on PRs" (#64682): #64712
  • fix(fetch-cache): fix typo: #64786
  • fix: remove traceparent from cachekey should not remove traceparent from original object: #64727
  • fix interception route rewrite regex not supporting hyphenated segments: #64805
  • Disable ncc cache instead of cache cleaning: #64804
  • Move next-swc Turborepo config to packages/next-swc: #64789
  • build: Update swc_core to v0.90.33: #64553
  • Enable loading source maps for Next Server and React: #64527
  • fix: mixing namespace import and named import client components: #64809
  • fext(next): extend next.config for mdxRs support options: #64801
  • skip test_e2e_deploy_related when triggered from a fork: #64893
  • fix(fetch-cache): fix additional typo, add type & data validation: #64799
  • feat(next-core): support parsing matcher config object: #64678
  • Fix mixed exports in server component with barrel optimization: #64894
  • fix: improve tsconfig extends checks: #61413
  • Fix next/image usage in mdx: #64875
  • fix dynamic route interception not working when deployed with middleware: #64923
  • feat(turbopack): Handle fragments in requests: #64232
  • feat(turbopack): Check for duplicate parallel routes: #64181
  • Speed up createNext test suite isolation: #64909
  • fix(rewrites): support external rewrite destination: #64943
  • Ensure edge prerender-manifest is minimal: #64946
  • remove special-cased prefetch kind in dev mode: #64941
  • feat: support import attributes: #59480
  • NextJS App router: add isolated-vm to server-external-packages.json: #64749
  • Add next experimental-test command: #64352
  • Revert "feat: support import attributes": #65001
  • NODE_OPTIONS updates: #65006
  • Update React from 14898b6a9 to c3048aab4: #64798
  • initialize ALS with cookies in middleware: #65008
  • feat(next/image)!: remove squoosh in favor of sharp as optional dependency: #63321
  • fix: Workaround acorn bug/version issue by using SWC: #65021
  • build: Update @swc/core to v1.5.0: #65022
  • Ensure escaped string are parsed in NODE_OPTIONS: #65046
  • chore(fetch-cache): remove zod from fetch cache: #65079
  • support breadcrumb style catch-all parallel routes: #65063
  • Improve initial setup with new App Router TypeScript project: #64826
  • Add experimental trace file field: #65071
  • Fix playwright config merging for webServer property: #65090
  • chore(logging): Disable info logging of critters in production: #62776
  • [unstable_cache] Don't track dynamic fetches in an unstable_cache callback: #65010
  • fix(page-static-info): refine warning message to emit once: #65091
  • update redirect handling on forwarded action requests: #65097
  • Tracing: allow opt-in flag to send build traces to url: #65019
  • Turbopack: Allow client components from foreign code in app routes: #64751
  • fix node.js module warning in middleware: #65112
  • Fix: strip _rsc query for client navigation rsc request: #65084
  • fix unhandled runtime error when notFound() triggered in generateMetadata w/ parallel routes: #65102
  • Use vercel deployment url for metadataBase fallbacks: #65089
  • Fix next/dynamic with babel and src dir: #65177
  • update turbopack: #65191
  • Fix crypto import in edge runtime with Turbopack: #65171
  • Resolve global next Webpack alias last: #65123
  • Add oslo, @node-rs/argon2, and @node-rs/bcrypt to external packages: #65204
  • [trace] Reduce the size of .next/trace files: #65101
  • Remove extra suspense boundary for default next/dynamic: #64716
  • Only apply metadata manifest credentials for preview deployment: #64940
  • fix(next): add missing browser.major type: #65185
  • Turbopack: rename source map prefix: #64965
  • fix(next/image): detect react@19 for fetchPriority prop: #65235
  • Use POST for invokeIpcMethod: #65238
  • fix redirect to url with semicolon: #65165
  • Provide non-dynamic segments to catch-all parallel routes: #65233
  • Fix an issue parsing catchall params: #65277
  • Enable preloading entries by default: #65289
  • Trace uploader: add worker spans to allowed events: #65255
  • Update font data: #65301
  • Update revalidateTag to batch tags in one request: #65296
  • Revert "Remove extra suspense boundary for default next/dynamic": #65309
  • Emit polyfill-nomodule.js into the build manifest polyfillFiles: #65223
  • Remove broken #[turbo_tasks::value(transparent)] attributes: #65336
  • Delete dead concatenate_output_assets function: #65337
  • Upgrade Turbopack: #65320
  • Pages router: Use attribute-based head children reconciler when strictNextHead is enabled: #65408
  • Revert "Implement Turbopack trace server bindings": #65419
  • use correct not-found component when triggered from a parallel route: #65343
  • Implement Turbopack trace server bindings: #65410
  • fix(next/image): bypass icns images: #65414
  • [PPR] Enable incremental adoption: #63847
  • fix: replace deprecated/removed functions in eslint-plugin-next: #64251
  • docs: update revalidatePath & fix cache debug logic: #65365
  • fix(next-core): mark turbopack embed fs to be internals: #65420
  • fix(next/image): add missing svg test and refactor missing types: #65345
  • build(edge): extract buildId into environment: #64521
  • Revert "build(edge): extract buildId into environment": #65425
  • fix(next/image): set max url length to 3072: #65457
  • Support React 19 in App and Pages router: #65058
  • Promote and rename server bundling options serverComponentsExternalPackages and bundlePagesExternals: #65421
  • add experimental flag to allow forcing NODE_ENV=development in builds: #65463
  • Support esm externals in app router: #65041
  • fix: lazy load sharp: #65484
  • make sure children is first in loader tree to fix head css bug on client navigation: #65279
  • Re-land build(edge): extract buildId into environment: #65426
  • improve versioned content map: #65466
  • update turbopack: #65503
  • Remove ineffective webpack rules and unused app-page context modules: #65321
  • add page name to crashes: #65504
  • Bump styled-jsx to 5.1.3: #65485
  • Preload all chunks for next/dynamic in SSR: #65486
  • fix!: add sharp timeout of 10 seconds: #65517
  • Turbopack: new graph aggregation: #65206
  • feat(next): revise server component error message: #65468
  • chore: update prettier to 3.2.5: #65092
  • Revert "Remove ineffective webpack rules and unused app-page context modules": #65558
  • Remove auto appending xml extension to dynamic sitemap routes: #65507
  • Remove rsc esm client module extra exports: #65519
  • Handle nonce on Next.js injected script/link tags: #65508
  • Fix multi-zone test by removing dependency list: #65589
  • remove next-action header when following a redirect: #65615
  • Remove @next/font resolving for font loaders: #65601
  • remove legacy deprecated warnings: #65579
  • feat(turbopack): add support for bundlePagesRouterDependencies: #65520
  • fix(next-swc): load wasm fallback if native bindings fail to load: #65623
  • fix(next-swc): correct path interop to filepath for wasm: #65633
  • Add ...
Read more

v14.3.0-canary.79

23 May 14:55
Compare
Choose a tag to compare
v14.3.0-canary.79 Pre-release
Pre-release

Core Changes

  • fix: ensure prefetch data routes are always added when app has ppr enabled: #66102
  • [Breaking] Disable automatic fetch caching: #66004
  • Update React from 81c5ff2e04 to f994737d14: #66093
  • [ppr] Remove canary requirement: #66112
  • [ppr] Data route fixes: #66109
  • [unstable_after] always use 'waitUntil' from '@next/request-context' if available: #66119
  • Don't fail the build if @types/ packages appear to be missing: #66127
  • Stabilize swrDelta config: #66108
  • Revert "Don't fail the build if @types/ packages appear to be missing": #66130

Misc Changes

  • docs: add missing /: #66105
  • Add release candidate handling to start release: #66107
  • Docs: Next.js 15 updates: #65603
  • Fix validate externals docs

Credits

Huge thanks to @wyattjoh, @ijjk, @eps1lon, @tokkiyaa, @lubieowoce, and @delbaoliveira for helping!

v14.3.0-canary.78

23 May 02:47
Compare
Choose a tag to compare
v14.3.0-canary.78 Pre-release
Pre-release

Core Changes

  • fix: ensure prefetch data routes are always added when app has ppr enabled: #66102
  • [Breaking] Disable automatic fetch caching: #66004
  • Update React from 81c5ff2e04 to f994737d14: #66093

Credits

Huge thanks to @wyattjoh, @ijjk, and @eps1lon for helping!

v14.3.0-canary.77

22 May 23:31
Compare
Choose a tag to compare
v14.3.0-canary.77 Pre-release
Pre-release

Core Changes

  • Update React from 04b058868c to 81c5ff2e04 : #65869
  • implement unstable_rethrow: #65831
  • chore(next/image): remove unused output parameter: #66083
  • next-swc-napi: Enable "plugin" feature by default: #66006
  • [turbopack] Use updated RawOutput API: #65300
  • Skip setting to fetch cache when not modified: #66055
  • [Memory] Add option to reduce memory usage caused by duplicate strings in webpack-sources: #66003
  • Ensure metadata routes dont skip static optimization: #66097
  • [unstable_after] fix occasional dev-mode crash in edge runtime pages: #66099

Misc Changes

  • Tweak flakey metadata error tests: #66060
  • Fix cloudflare transform images url: #66076
  • React sync: Reduce manual tasks: #66095
  • React sync: Handle React PRs landed via ghstack: #66069
  • [Memory] Add docs for new experimental.webpackMemoryOptimizations option: #66096

Credits

Huge thanks to @ijjk, @eps1lon, @todor0v, @ztanner, @styfle, @bgw, @mknichel, and @lubieowoce for helping!

v14.3.0-canary.76

21 May 23:38
Compare
Choose a tag to compare
v14.3.0-canary.76 Pre-release
Pre-release

Core Changes

  • Add dedicated client entry for Turbopack builds: #65824

Credits

Huge thanks to @wbinnssmith for helping!

v14.3.0-canary.75

21 May 21:26
Compare
Choose a tag to compare
v14.3.0-canary.75 Pre-release
Pre-release

Core Changes

  • [Breaking] disable client router cache for page segments: #66039

Example Changes

  • Update Google Analytics example for App Router: #66021

Misc Changes

  • Improve sync-react changelog generator: #66051

Credits

Huge thanks to @qqww08, @ztanner, and @eps1lon for helping!

v14.3.0-canary.74

21 May 20:17
Compare
Choose a tag to compare
v14.3.0-canary.74 Pre-release
Pre-release

Core Changes

  • [Breaking] Disable automatic static generation for route handlers: #65825
  • Fix router.refresh missing canonical url override: #65999
  • Fix typo in JSDoc of ppr flag of next.config.js: #66028
  • Revert webpack bundling layer changes for middleware/pages: #66049
  • Upgrade lightningcss, disable grid prefixing: #65986

Misc Changes

  • Update Turbopack development test manifest: #66002
  • docs: Update Route Handlers docs for dynamic: #66010
  • Update Turbopack production test manifest: #66007
  • Include base commit in changes included by a React sync: #65868
  • add missing "prerenderEarlyExit: false" to dynamic-data test
  • add pre-push hook to guard against accidental pushes directly to canary: #66030
  • Add missing 'prerenderEarlyExit: false' in tests: #66032
  • chore(docs): remove suggestion of manually installing sharp: #66034
  • Update Turbopack development test manifest: #66044
  • Fix swc test path from node_modules: #66047
  • Update create-next-app template CSS: #66043
  • Update lightningcss to 1.0.0-alpha.56: #66046
  • ci(workflow): skip building next-swc with latest turbopack: #66048

Credits

Huge thanks to @ijjk, @gaojude, @leerob, @eps1lon, @lubieowoce, @Nayeem-XTREME, @styfle, @ypessoa, @wbinnssmith, @kwonoj, and @timneutkens for helping!

v14.3.0-canary.73

20 May 23:32
Compare
Choose a tag to compare
v14.3.0-canary.73 Pre-release
Pre-release

Core Changes

  • fix(next/image): prefer sharp defaults, use mozjpeg for JPEG: #65846
  • Update font data: #65961
  • unstable_after: support nested unstable_after calls: #65950
  • Fix revalidateTimings route for catchall index route: #65843
  • fix(next): initial prefetch cache not set properly with different search params: #65977
  • Add additional log to experimental ppr flag in next.config.js: #65944
  • Change default of prerenderEarlyExit to true: #65830
  • short-circuit OPTIONS requests to pages: #65295
  • Turbopack: Implement next/font/local with BeforeResolvePlugin and show custom error message: #65870

Misc Changes

  • docs: clarify gSSP docs for runtime: #65962
  • fix(docs): update styled components option: #65718
  • feat: Add option to enable Turbopack with create-next-app: #65926
  • chore(github-workflow): move issues, prs, features to #next-info channel: #65991

Credits

Huge thanks to @lovell, @leerob, @lubieowoce, @nsams, @devjiwonchoi, @Nayeem-XTREME, @JamBalaya56562, @ijjk, @ztanner, @Arindam200, @samcx, and @wbinnssmith for helping!

v14.3.0-canary.72

20 May 12:57
Compare
Choose a tag to compare
v14.3.0-canary.72 Pre-release
Pre-release

Core Changes

  • experimental: unstable_after: #65038
  • Docs: Replace "twitter.com" to "x.com": #65917

Example Changes

  • chore: Bump react-modal to 3.16.2 in with-router-as-modal example: #65841

Misc Changes

  • Update create-next-app template: #65803
  • Fix send-trace-to-jaeger boolean span values: #65920
  • Mention Renaming of useFormState: #65934

Credits

Huge thanks to @lubieowoce, @ypessoa, @ryohidaka, @icyJoseph, @timneutkens, and @Arinji2 for helping!

v14.3.0-canary.70

17 May 23:40
Compare
Choose a tag to compare
v14.3.0-canary.70 Pre-release
Pre-release

Misc Changes

  • fix: race condition in CLI output in react-compiler test: #65909

Credits

Huge thanks to @lubieowoce for helping!