Skip to content

chore(deps): update nextjs monorepo to v14 (main) (major)

Ghost User requested to merge renovate/main-major-nextjs-monorepo into main

This MR contains the following updates:

Package Type Update Change
eslint-config-next (source) devDependencies major ^13.5.6 -> ^14.0.0
next (source) dependencies major ^13.5.6 -> ^14.0.0

Release Notes

vercel/next.js (eslint-config-next)

v14.1.0

Compare Source

Core Changes
  • Turbopack: switch to a single client components entrypoint: #​59352
  • Update swc_core to v0.86.98 and turbopack: #​59393
  • Fix cases for the optimize_server_react transform: #​59390
  • Use new JSX transform: #​56294
  • loading.tsx should have no effect on partial rendering when PPR is enabled: #​59196
  • Update font data: #​59426
  • Remove CacheNode.status field: #​59472
  • Rename CacheNode.data → .lazyData : #​59473
  • Generate Params Cleanup: #​59431
  • Fix webpack chunks handling in traces: #​59498
  • Rename CacheNode.subTreeData -> .rsc : #​59491
  • fix NODE_OPTIONS=inspect: #​59530
  • Add CacheNode.prefetchRsc field: #​59537
  • allow passing wildcard domains in serverActions.allowedDomains: #​59428
  • Page Info Cleanup: #​59430
  • Fix force-static and fetch no-store cases: #​59549
  • Should not show no index for client rendering bailout: #​59531
  • Enable build worker by default: #​59405
  • Fork navigateReducer into PPR and non-PPR versions: #​59538
  • cleanup magic segment strings: #​59552
  • chore: update Turbopack: #​59589
  • Fix another magic segment string constant: #​59591
  • Make CacheNodeSeedData match FlightRouterState more closely: #​59590
  • transpilePackages should override default settings for external packages: #​59385
  • move segment constants to separate file: #​59587
  • Revert "Page Info Cleanup (#​59430)": #​59592
  • Fix useOptimistic in server components bug. Add tests for invalid React server APIs: #​59621
  • Partial Pre Rendering Headers: #​59447
  • Add tests for invalid React server APIs: #​59622
  • Refactor setup-dev-bundler to make Turbopack/Webpack split clearer: #​59650
  • refactor and simplify app dynamic components: #​59658
  • Change manifestPath to pagesManifestPath: #​59657
  • Fix issue with outputFileTracingExcludes and pages/api edge runtime: #​59157
  • Update font data: #​59722
  • Remove path normalization logic when uploading .next/trace traces: #​59305
  • LayoutRouter: Support segment value of Promise to asynchronously bail out and trigger a server patch: #​59724
  • fix: Allow start turbopack dev server for a project using middleware: #​59759
  • fix: gracefully shutdown server: #​59551
  • Revert "fix: gracefully shutdown server (#​59551)": #​59792
  • Optionally bundle legacy react-dom/server APIs based on usage: #​59737
  • fix default handling in route groups that handle interception: #​59752
  • Transpile all code on app browser layer: #​59569
  • Initial implementation of PPR client navigations: #​59725
  • fix(turbopack): prevent edge entrypoint from becoming an async module: #​59818
  • Ensure we validate revalidate configs properly: #​59822
  • Update error check in validateRevalidate: #​59826
  • Rename confusing loaders: #​59827
  • Upgrade og dependencies: #​59541
  • [PPR Navs] Bugfix: Dynamic data never streams in if prefetch entry is stale: #​59833
  • fix parallel catch-all route normalization: #​59791
  • fix router prefetch cache key to work with route interception: #​59861
  • Alias nextjs api entry to esm version for app router: #​59852
  • Remove duplicate standalone check: #​60085
  • Remove return on void function: #​60087
  • Ensure NextBuildContext is only used during build: #​60099
  • Add PageExtensions type: #​60108
  • Ensure instrumentation file does not affect middleware count: #​60102
  • Use WebpackError type instead of any: #​60105
  • Remove root parameter: #​60112
  • Remove extra duplicate pages warning: #​60113
  • Add MappedPages type: #​60106
  • Always call createPagesMapping for root paths: #​60107
  • Fix path issues on linux machines when build created on windows: #​60116
  • fix: Fix wrong cjs detection of auto-cjs pass: #​60118
  • chore: update Copyright time from 2023 to 2024: #​60071
  • Filter out duplicate paths in build output: #​59858
  • chore: align webpack config node version: #​59862
  • gracefully handle client router segment mismatches: #​60141
  • Fix start build log being overwritten by logs from page: #​60122
  • Allow using ESM pkg with custom incremental cache: #​59863
  • Fix emitting ESM swc helpers for 3rd parties CJS libs in bundle: #​60169
  • Move cacheDir logic to getCacheDir: #​60133
  • Refactor to unify writeFile, readFile, and add readManifest: #​60137
  • chore: bump @vercel/nft@0.26.2: #​60172
  • fix: <Script> with beforeInteractive strategy ignores additional attributes in App Router: #​59779
  • Fix invalid comment: #​60182
  • Refactor: Separate RSC renderer from SSR wrapping component: #​59676
  • fix: cache next font during development to avoid FOUC: #​60175
  • Add writeManifest: #​60138
  • Add writePrerenderManifest: #​60158
  • Add writeStandaloneDirectory: #​60162
  • Always write FunctionsConfigManifest: #​60163
  • Upgrade @​vercel/og: #​60205
  • Improve consistency of issues and diagnostics for napi calls: #​60198
  • Change server actions cache default to no-store: #​60170
  • Allow undefined environment variables in config: #​58247
  • Add writeFullyStaticExport: #​60200
  • fix: Mark file as ESM if it has an export from auto-cjs pass: #​60216
  • log a dev warning when a missing parallel slot results in a 404: #​60186
  • Fix: Throw an error for empty array return in generateStaticParams with output:export: #​57053
  • Ensure appPathsManifest variable is inside if block: #​60210
  • Remove NEXT_TURBO_FILTER_PAGES internal variable: #​60217
  • fix: add node-web-audio-api to server-external-packages.json: #​60243
  • Disable 2mb limit for custom incrementalCacheHandler: #​59976
  • [PPR Nav] Fix: Page data should always be applied: #​60242
  • Add writeImagesManifest: #​60209
  • feat(next-core): apply rsc transform in turbopack: #​59629
  • Move buildId logic to getBuildId: #​60132
  • fix catch-all route normalization for default parallel routes: #​60240
  • micro fix of the cache limit check: #​60249
  • parallel routes: fix @​children slots: #​60288
  • Bump webpack-bundle-analyzer: #​58442
  • docs: Add docs for next dev --experimental-https: #​60357
  • Update React from 0cdfef1 to f1039be: #​60368
  • Simplify if condition: #​60250
  • Fix dynamic sitemap detection: #​60356
  • chore(font): enable minification: #​60319
  • chore(precompile): remove obsolete precompiled assets : #​60316
  • refactor: simplify the call in lib.picocolors: #​60386
  • chore(precompile): re-add watchpack to the precompile: #​60309
  • refactor(dev-overlay): remove chalk: #​60317
  • Fix: HMR in multi-zone handling 🌱: #​59471
  • HMR development stats: include updatedModules for App Router and Turbopack changes: #​59785
  • Change color of output bundle size: #​60385
  • Fix TypeError when using params in RootLayout with parallel routes: #​60401
  • Fix missing source code display for some jsx errors: #​60390
  • Refactor unstable_cache implementation: #​60403
  • Missing Postpone Detection Fix: #​59891
  • refactor(next/core): reorganize next.js custom transforms for next-swc/turbopack: #​60400
  • Fix custom cache handler importing on windows: #​60312
  • Display original failed fetch trace: #​60274
  • feat(app-router): introduce experimental.missingSuspenseWithCSRBailout flag: #​57642
  • update turbopack: #​60208
  • update turbopack: #​60478
  • feat(turbopack): support named client references properly: #​59578
  • Fix intercepted segments with basepath: #​60485
  • parallel routes: fix client reference manifest grouping for catch-all segments: #​60482
  • Group small chunks in shared js section of output: #​60479
  • filter default segments from prerender manifest: #​60499
  • Add experimental options for more parallelization in webpack builds: #​60177
  • move custom allocator flag and add rustls-tls comment: #​60128
  • fix: redirect logic missing basePath in App Render: #​60184
  • Revert "feat(app-router): introduce experimental.missingSuspenseWithCSRBailout flag": #​60508
  • add retry logic to loadClientReferenceManifest: #​56518
  • Turbopack hmr: record forwarded client spans: #​60500
  • chore(turbopack): check for unsupported next config options instead of supported ones: #​58781
  • Handle non server action post requests safely: #​60526
  • Fix global-error for nested routes: #​60539
  • chore(examples): use default prettier for examples/templates: #​60530
  • Update default error rate for client filter: #​60542
  • Enable windowHistorySupport by default: #​60557
  • Fix logging order of build jobs: #​60564
  • propagate notFound errors past a segment's error boundary: #​60567
  • Tracing: attach Turbopack session value to root span: #​60576
  • [PPR Nav] Fix flash of loading state during back/forward: #​60578
  • Fix react-refresh for transpiled packages: #​60563
  • Ensure client filter with basePath is correct: #​60580
  • Update React from f1039be to 60a927d: #​60619
  • Add cache reason for using fetch with noStore: #​60630
  • chore: remove unused export: #​60647
  • remove next build turbopack version: #​60655
  • fix breakpoints on reload: #​60507
  • Fix hmr updates with rebuilding for build errors: #​60676
  • graceful shutdown: #​60059
  • refactor(next-swc): remove unused crashreporter: #​60593
  • chore(eslint-plugin-next): upgrade glob dependency: #​60732
  • Fix client reference keys of barrel-optimized files: #​60685
  • Fix recursive ignoring case in build traces: #​60740
  • Telemetry: allow disabling of fetch tracing: #​60588
  • chore: typo, responseCookes to responseCookies: #​60654
  • Telemetry code load: #​60594
  • allow to pass available chunk items when creating a chunk group: #​60554
  • separate chunking per layout parts: #​60569
  • feat(next-core): port remaining next.js custom transforms: #​60498
  • Reapply "feat(app-router): introduce experimental.missingSuspenseWithCSRBailout flag" (#​60508): #​60751
  • Skip postcss config location resolving in node_modules: #​60697
  • apply page transforms only on pages: #​60779
  • fix layout segment key to match up with manifest: #​60783
  • Fix locale domain public files check: #​60749
  • Stabilize custom cache handlers and changing memory size.: #​57953
  • feat: stabilize unstable_getImgProps() => getImageProps(): #​60739
  • Fix Server Actions compiler bug: #​60794
  • Dev Server: Preserve globals overwrites in the initialization hook: #​60796
  • add missing function call to normalize-catchall-routes test case: #​60777
  • Use snapshots for component-stack tests: #​60768
  • Support next/og usage in ESM nextjs app: #​60818
  • fix(ts): auto-complete next/headers: #​60817
  • Remove the warning for build worker when custom webpack present: #​60820
  • chore(deps): update browserslist and caniuse-lite: #​60827
  • feat: support custom image loaders in turbopack: #​60736
  • Ensure request specific caches for revalidate are reset: #​60810
  • Add metrics names for unstable_cache: #​60802
  • Fix: respect init.cache if fetch input is request instance: #​60821
  • Revert "Fix: Throw an error for empty array return in generateStaticParams with output:export": #​60831
  • turbopack: rename custom cache handler configs: #​60828
  • dx: warn the deprecated cache configs are used: #​60836
  • Enable missing suspense bailout by default: #​60840
Documentation Changes
  • Docs: Update Server Actions Docs: #​59080
  • Docs: Polish Server Actions Page 💅🏼 : #​59400
  • Update 10-route-handlers.mdx: #​59443
  • docs: remove broken link: #​59487
  • Docs: Add App Router Testing Guides and update /examples: #​59268
  • docs: fix bad closed tag: #​59575
  • Fix closing tags for jest docs: #​59579
  • Docs: Fix formatting in testing docs and update examples dependencies: #​59572
  • Docs: Add missing closing tag: #​59581
  • Docs: Review and update getServerSideProps page: #​59545
  • docs: add note for environment variables on Vercel deployment: #​59237
  • docs(accessibility): updates WCAG version to 2.2: #​59646
  • docs: small tweaks: #​59638
  • docs: fix broken backtick for link: #​59717
  • Docs: Document generateSitemaps: #​59626
  • Docs: Polish testing section: #​59618
  • docs: improve docs around geolocation and IP headers: #​59719
  • Docs: Review and Typo Fix - getServerSideProps: #​59616
  • docs: fix vitest example link in testing with vitest: #​59659
  • docs: fix grammar issue in 03-get-server-side-props.mdx: #​59670
  • Includes section to @next/third-parties documentation for Google Analytics: #​59671
  • Change file extension to .tsx: #​59763
  • docs: clarify data fetching pattern: #​59602
  • change 'themeColor' to 'viewport' in the viewport section: #​59764
  • docs: add missing comma to sitemap.mdx: #​59788
  • Chore docs fix runon and definition of trailing slash redirect: #​59889
  • Minor grammar edits: #​59887
  • Introduce cache version history in cache API: #​59799
  • docs: correct type in sitemap.mdx: #​59787
  • chore(docs): Remove typesafe-i18n from thrid-party i18n options: #​59624
  • docs: Add Chakra UI setup guide: #​59275
  • Update not-found.mdx: #​59478
  • Updates references for styled-components configuration in next.config.js: #​59495
  • Update 05-mdx.mdx: #​57988
  • Mention remark-mdx-frontmatter in frontmatter docs: #​59238
  • Docs: Rename React Query to TanStack Query: #​59004
  • Add cwd to VSCode debugging setup steps: #​58689
  • [Docs]: fix tiny typo: #​59897
  • [docs] Add sensible name for Cookie deleting functions: #​57893
  • Update generate-viewport.mdx: #​57701
  • Update opengraph-image.mdx: #​57810
  • [docs] Update example links.: #​57891
  • docs: clarify setting and reading cookies from Route Handlers: #​59915
  • docs: add Sirv loader for next/image: #​57102
  • docs: fix prettier lint: #​59918
  • docs: Add media example for icon metadata: #​56141
  • Fix typo in generate-sitemaps.mdx docs: #​59964
  • Update 02-server-actions-and-mutations.mdx: #​59935
  • Update 08-parallel-routes.mdx: #​59966
  • Updates "No Before Interactive" error message for App router: #​56033
  • docs: Update Middleware docs on ignoring prefetches: #​56799
  • docs: add note that contentlayer is unmaintained: #​59927
  • docs: small changes to linking docs: #​59982
  • docs: opengraph / twitter image needs absolute URL: #​59985
  • docs: fix typo for useFormState: #​60010
  • docs: clarify using redirect with client components: #​60056
  • Update documentation to reflect added support for 'userScalable' field in 'viewport': #​60033
  • docs: Add section for CSP without nonces: #​60067
  • docs: update install count: #​60072
  • docs: fix version history order in sitemap.mdx: #​60054
  • docs: clarify generateStaticParams and dynamicParams: #​60083
  • docs: update maxDuration info: #​60086
  • docs: ⌘+Enter for forms: #​60090
  • Clarify measurement ID in Optimizing: Third Party Libraries: #​60136
  • Update 03-css-in-js.mdx : fix typo: #​60114
  • docs: small wording fix for 03-linking-and-navigating.mdx: #​60089
  • Docs: If revalidatePath's path has dynamic segment path, type must be page.: #​59149
  • docs: improve grammar: #​60149
  • Fix config code in the CSS-in-JS chapter: #​60164
  • Updating example with required content type in header: #​59990
  • Adds a section to Optimizing: Third Party Libraries on tracking pageviews for Google Analytics: #​60176
  • Update route-segment-config.mdx: #​60179
  • docs: Fix typo on generate-sitemaps.mdx: #​60188
  • small correction in 11-middleware.mdx: #​60189
  • docs(trailingSlashes): add note for SSG generation: #​57628
  • docs: fix typos and broken links in the image.mdx: #​60221
  • Docs: Fix revalidate type annotation: #​60230
  • Update 02-server-actions-and-mutations.mdx: #​60222
  • fix(docs): add missing docs on external packages: #​60244
  • Docs: Add "Going to production" page for App Router: #​59304
  • Docs: Update compression docs: #​60264
  • Docs: Clarify useSearchParams behavior: #​60257
  • Docs: Add more clarification about compress : #​60268
  • Clarify searchParams is not passed to Layouts: #​60277
  • docs(testing): add bun command to running your tests section: #​60281
  • chore(docs): add section for Custom Type Declarations: #​60282
  • docs: small corrections to bundle analyzer docs: #​60285
  • docs: typo fix in compression page: #​60318
  • docs: add example of webhooks with App Router: #​60276
  • docs: add optional catch-all segments typescript example: #​60237
  • Update use-search-params.mdx: #​55357
  • docs: address a few open issues: #​60329
  • docs: next/head: Document error cases with head/body-tags; add subheadings: #​56412
  • Fix bundle analyzer NPM package name in documentation: #​60339
  • [doc] Update 03-linking-and-navigating.mdx: #​60345
  • add missing types: #​60346
  • docs: update docs for remotePatterns to mention what happens when prop is omitted: #​60387
  • Docs: Update note on @next/third-parties being experimental: #​60372
  • chore(docs): fix 14 upgrade guide mentioning export: #​60429
  • chore(docs/errors): Improve documentation grammar: #​60452
  • Docs: Address Community Feedback: #​60476
  • for #​59178 - addition to robots.mdx - Customize user-agent rules: #​60361
  • Docs: Document windowHistorySupport flag, and add pushState/replaceState examples: #​60374
  • docs: correct windowHistorySupport title: #​60503
  • chore: correct subject-verb conjugation in Client Components doc: #​60538
  • Add "Redirecting" page in the Routing section: #​60435
  • docs: small fix in Redirecting page: #​60583
  • fix(mdx): update word order, fix typo: #​60466
  • Add documentation for client router filter: #​60585
  • docs: Update Google Analytics error doc: #​60612
  • docs: remove Next 13 mention for App Router: #​60632
  • Fix Typo in Testing Documentation Description: #​60601
  • chore: remove duplicate package name: #​60652
  • chore(docs): add docs for .svg unoptimized behavior: #​60735
  • add authentication docs page: #​60388
  • chore(docs): fix example documentation for Art Direction: #​60823
  • docs: add build worker optout error back with upgrade advice: #​60826
  • Docs: Use JS comment for MDX: #​60825
  • Fix error from the auth docs.: #​60829
Example Changes
  • Updates the with-vitest example. Unlocks the tests passing with server-only usage: #​58902
  • Add text-wrap: balance to CNA template for card descriptions: #​59384
  • fix: Invalid next version tag name in with-cypress example: #​59647
  • Fix: Add matcher for middleware: #​59651
  • examples: Add new NextAuth.js example: #​56914
  • examples: add required env vars to auth example.: #​59901
  • examples: update Redis to App Router: #​59311
  • examples: remove broken deploy button: #​58794
  • examples: progressive enhancement for Redis example: #​59937
  • Update .env.local.example of with-firebase example: #​59954
  • Upgrade with-algolia-react-instantsearch example to latest major version and use app router: #​59961
  • Rename .env.local.example to .env.example: #​59984
  • Update Convex Example: #​59789
  • examples: Update next-forms example: #​60052
  • chore(cms-contentfu): fix contentful instructions: #​60050
  • examples: improve typings for i18n app dir: #​60160
  • chore(examples): migrate image-component example to App Router: #​60289
  • fix(#​58695): improve zustand example: #​58696
  • examples: add allow-unauthenticated option to cloud run deploy: #​58792
  • fixed import path in with-jest template.: #​60332
  • chore(examples): fix image-component example viewsource paths, shimmer page filename: #​60451
  • Update cache-handler-redis example dependencies: #​59458
  • examples: Update hello world: #​60502
  • chore: Fix typo s/desireable/desirable/: #​60518
  • chore: Fix multiple typos: #​60531
  • examples: Update redis example with useOptimistic: #​60596
  • Update README.md: #​60595
  • chore(example): update storybook: #​60737
Misc Changes
  • Revert "Skip latest commit check for stable release": #​59401
  • ci(workflow): restore publish wasm binary: #​59414
  • ci: only run release commit check on canary releases: #​59423
  • test(runner): preserve browser tracing if test fails: #​59469
  • Adding Google analytics to next/third-parties: #​58418
  • ci(test): upload playwright artifacts seperately: #​59496
  • fix integration test workflow: #​59508
  • Fix third party typings: #​59503
  • test(fixture): try to include sources in the snapshot: #​59499
  • chore: bump typescript-eslint to 6.14: #​59514
  • Update Deployment Testing: #​59448
  • fix(playwright): teardown when global quit force terminates browser: #​59548
  • chore(create-next-app): bump prompts to v2.4.2: #​59006
  • types: cover the tests with root tsconfig.json: #​59550
  • Fix test/tsconfig.json alias for internal test utils: #​59570
  • test(integration): adjust fixture to work with turbopack: #​59595
  • Add test for importing client components from server actions: #​59615
  • chore: extends from shared base tsconfig: #​59776
  • Update Turbopack test manifest: #​59798
  • Fix CI: Skip test in PPR dev mode, too: #​59817
  • Add unstable_cache validate test case: #​59828
  • Update swc_core to v0.87.10: #​59834
  • chore: add github bug report item type module resolution: #​60121
  • chore: add myself to created-by: Next.js team: #​60144
  • chore: include required Next.js stages to issue template: #​60142
  • searchParameters test for PPR: #​59678
  • Getting rid of a few TypeScript anys.: #​60017
  • fix responsiveness in starter templates: #​60140
  • fix(generators): update errors gen: #​60233
  • chore: test against latest sharp: #​60226
  • style: enforce prop immutability in new next app: #​58845
  • Update flakey test from port re-use: #​60291
  • chore: update pnpm to the latest (v8.14.0): #​60295
  • docs: update broken link in UPGRADING.md: #​60342
  • Update Turbopack test manifest: #​60306
  • Update Turbopack test manifest: #​60371
  • Update swc_core to v0.87.16: #​60192
  • Add replay.io test suite dependencies: #​60381
  • chore: update turbo to the latest: #​60294
  • Update Turbopack test manifest: #​60413
  • Update testing contributor guide: #​60421
  • chore: skip flaky turbopack navigation test: #​60431
  • ci: skip cron workflows on forks: #​60422
  • Add reproduction for HMR moving / renaming files.: #​57230
  • add tests for incremental-cache: #​60331
  • chore: fix postinstall when using tarball: #​60443
  • test: use replay jest runner to add current test name to recording: #​60438
  • misc: Skip cron workflows on forks: #​60487
  • Handle pages double render for useParams in tests: #​60486
  • Transition some check calls in tests to retry: #​60489
  • Use next.config.mjs for CNA templates: #​60494
  • Update Turbopack test manifest: #​60504
  • run tests from test suite that are not listed in the manifest: #​58401
  • Add --ci to jest tests in CI: #​60432
  • Ensure aliased variable is used in test: #​60428
  • Update Turbopack test manifest: #​60506
  • Skip webpack loader test in Turbopack: #​60509
  • Revert "Skip webpack loader test in Turbopack": #​60513
  • Revert "Revert "Skip webpack loader test in Turbopack"": #​60514
  • Remove unused target: es5 from tsconfig.json in create-next-app: #​60521
  • refactor(cna): make create-next-app even smaller and faster: #​58030
  • Expand hydration error test to check recovery: #​60423
  • chore: update pull_request_approved workflow: #​60537
  • chore: add issue_popular workflow: #​60543
  • Update Turbopack test manifest: #​60553
  • chore: update next-repo-info actions: #​60559
  • chore(git): add .git-blame-ignore-revs: #​60582
  • chore: remove pr_approved workflow & update popular_issues workflow: #​60584
  • test(fixture): update assertion for turbopack: #​60579
  • Remove duplicate pages -> app test: #​60589
  • Update flakey dev middleware test: #​60590
  • Add hasRedbox fix: #​60522
  • Turbopack test updates: #​60662
  • Remove normalizeSnapshot as it is no longer used: #​60664
  • Stabilize flakey edge-module-error test: #​60728
  • Update module-layer test for Turbopack: #​60707
  • chore: bump nissuer: #​60706
  • test(fixture): update assertion for turbopack: #​60750
  • Update developing.md to include "Install Rust and Cargo" as 1st step: #​60761
  • Fix tests exit race condition: #​60757
  • Update ReactRefreshRegression test snapshot for Turbopack: #​60767
Credits

Huge thanks to @​delbaoliveira, @​OlehDutchenko, @​sokra, @​huozhi, @​shuding, @​kwonoj, @​ztanner, @​eps1lon, @​acdlite, @​ebidel, @​leerob, @​janicklas-ralph, @​wyattjoh, @​ijjk, @​JohnPhamous, @​chentsulin, @​akawalsky, @​BlankParticle, @​timneutkens, @​ForsakenHarmony, @​dvoytenko, @​smaeda-ks, @​kenji-webdev, @​rv-david, @​icyJoseph, @​dijonmusters, @​A7med3bdulBaset, @​jenewland1999, @​mknichel, @​kdy1, @​housseindjirdeh, @​max-programming, @​redbmk, @​SSakibHossain10, @​jamesmillerburgess, @​minaelee, @​officialrajdeepsingh, @​LorisSigrist, @​yesl-kim, @​StevenKamwaza, @​manovotny, @​mcexit, @​remcohaszing, @​ryo-manba, @​TranquilMarmot, @​vinaykulk621, @​haritssr, @​divquan, @​IgorVaryvoda, @​LukeSchlangen, @​RiskyMH, @​ash2048, @​ManuWeb3, @​msgadi, @​dhayab, @​ShahriarKh, @​jvandenaardweg, @​DestroyerXyz, @​SwitchBladeAK, @​ianmacartney, @​justinh00k, @​tiborsaas, @​ArianHamdi, @​li-jia-nan, @​aramikuto, @​jquinc30, @​samcx, @​Haosik, @​AkifumiSato, @​arnabsen, @​nfroidure, @​clbn, @​siddtheone, @​styfle, @​zbauman3, @​gnoff, @​anthonyshew, @​alexfradiani, @​CalebBarnes, @​adk96r, @​pacexy, @​hichemfantar, @​michaldudak, @​redonkulus, @​k-taro56, @​mhughdo, @​tknickman, @​shumakmanohar, @​vordgi, @​StephDietz, @​hamirmahal, @​gaspar09, @​JCharante, @​sjoerdvanBommel, @​mass2527, @​N-Ziermann, @​tordans, @​davidthorand, @​rmathew8-gh, @​chriskrogh, @​shogunsea, @​auipga, @​SukkaW, @​agustints, @​wbinnssmith, @​feedthejim, @​OXXD, @​clarencepenz, @​better-salmon, @​808vita, @​coltonehrman, @​tksst, @​hugo-syn, @​JakobJingleheimer, @​Willem-Jaap, @​brandonnorsworthy, @​jaehunn, @​balazsorban44, @​kooya3, @​wan2land, @​AugustinMauroy, and @​williamli for helping!

v14.0.4

Compare Source

Core Changes
  • Remove early return that is duplicated in useSearchParams: #​58545
  • Support passing a relative string to pushState/replaceState: #​58438
  • [.next/trace] Record start-dev-server trace span: #​58469
  • Update React from 593ecee to 2c338b1.: #​58553
  • turbopack: Fix pageExtensions with dots: #​58504
  • fix: revalidation with file-system-cache: #​58508
  • fix: fetch() behavior when "dynamic" is "force-dynamic: #​58484
  • Add cacheNodeSeedData to RSC payload: #​58566
  • Lift subtree data out of React tree: #​58569
  • fix(next-core): allow runtime segment option in pages/api: #​58409
  • Update rust-toolchain to 2023-11-16: #​58558
  • refactor: Add lightningcss mode for turbopack-css: #​58471
  • fix: avoid race condition when download swc wasm: #​58536
  • Removed unused route resolver code: #​58702
  • Add experimental.windowHistorySupport to Turbopack supported options: #​58717
  • Improve Server Actions compiler: #​58391
  • Seed CacheNodes immediately after receiving response: #​58669
  • Turbopack: improve error display: #​58734
  • fix node externals resolving: #​58129
  • disable static prefetching behavior for dynamic segments: #​58609
  • fix: ensure DynamicUsageErrors caught during render bubble up: #​58747
  • fix image.domains deprecation warning: #​58656
  • fix waitUntil handling in pipeToNodeResponse: #​58744
  • Use consistent resolve extensions alias for compiler: #​58725
  • Turbopack: Use styled issue titles and details: #​58743
  • route handlers: make req.cookies opt you into dynamic: #​58769
  • OpenTelemetry: a more reliable way to establish a root context: #​58662
  • Revert "fix: fetch() behavior when "dynamic" is "force-dynamic": #​58735
  • [Instrumentation] Don't treat instrumentation hook as pages: #​58775
  • Fix turboFlag set to false: #​58795
  • [.next/trace] Track server requests and memory usage: #​58690
  • place virtual module inside the project directory: #​58798
  • fix rewrites to edge routes: #​58797
  • Polish unsupported metadata warning with doc link: #​58750
  • Enable .mjs extension config in Turbopack: #​58825
  • Turbopack: align automatic externals code with webpack: #​58851
  • Upgrade Turbopack: #​58859
  • OpenTelemetry: propagate context to sandbox: #​58791
  • fix uniqueness of layers: #​58872
  • disable flushToDisk during generateStaticParams: #​58871
  • Turbopack: enable some node.js builtin in edge runtime: #​58850
  • add NEXT_TRIGGER_URL env var to show request triggering a compilation: #​58762
  • Update swc_core to v0.86.81: #​58517
  • Trace server updates: #​58694
  • remove duplicate util file for redirect status: #​58878
  • fix(windows): workaround for intermittent locks on windows when renaming files: #​58835
  • unify server action detection logic: #​58879
  • Fix nested fetch logging indentation: #​58955
  • Delete preloadComponent module: #​58741
  • Remove cache field from action types: #​58938
  • Add nodejs version check: #​58958
  • Code refactoring: #​58737
  • Fix bugs with baseUrl and mdxRs: #​58968
  • Fix encoding in encryption of Server Actions: #​59000
  • fix(turbopack): treat .mdx as valid ecma asset: #​58985
  • dedupe pending revalidation requests: #​58990
  • fix: Put back type for NavigateOptions.scroll: #​59001
  • Cleanup Render Result: #​58782
  • fix(turbopack): add list of packages that should never be marked as e…: #​59020
  • Testmode: provide test info for rewrite requests: #​59033
  • build(cargo): bump up turbopack: #​59032
  • fix async action queue behavior: #​59038
  • start performance profiling after node.js version is checked: #​59028
  • Fixed stale fetch using when page regenerates: #​58926
  • Enable PPR tests for test suites: #​59030
  • Update font data: #​59043
  • update status codes for redirect and permanentRedirect in action handlers: #​58885
  • Ensure stale build fetch data is not unexpectedly used: #​59076
  • add support for instrumentation: #​59070
  • use 303 status code for redirects in fetch actions: #​59017
  • verify action id before parsing body: #​58977
  • fix interception routes with rewrites: #​59094
  • Fix next internal is missing in flight manifest: #​59085
  • Support generating multi-meta tahs for metadata api other prop: #​59106
  • Turbopack: Align some "Module not found" errors with webpack: #​58518
  • Fix dynamic usage errors logging unexpectedly: #​59133
  • Fix: remove deprecated option from standalone server: #​59036
  • Update font data: #​59138
  • fix typedRoutes when used with webpackBuildWorker: #​59140
  • Add NEXT_MANUAL_SIG_HANDLE handling to start-server.ts: #​59117
  • Support adding CSP nonce with content-security-policy-report-only header: #​59071
  • chore: fix typo in jsDoc: #​58224
  • fix: add maxDuration to PageConfig type: #​55918
  • Fix mixed module swc compilation for app router: #​58967
  • Don't catch ensureMiddleware errors: #​59166
  • fix behavior when revisiting an intercepted route: #​59168
  • Turbopack only enable instrumentationHook with experimental flag: #​59173
  • fix server actions behavior on intercepted routes: #​59175
  • Fix ssgCacheKey in minimal mode: #​59181
  • Update to latest version of @​vercel/nft: #​59183
  • Ensure original history is read in effect: #​58861
  • fix some small turbopack issues: #​59171
  • fix tsconfig alias cycle: #​59232
  • Resolve build issues with symlinked files: #​57412
  • Disable more Turbopack build tests: #​59245
  • Remove mutable field from action types: #​59221
  • Add process.env.__NEXT_PPR to build config: #​59253
  • Fix dynamic transform ssr:false case for pages router with ESM: #​59246
  • Delete unused static prefetch code: #​58783
  • fix(next-core): adjust edge entry path: #​59265
  • feat: support outputFileTracing in App Router: #​59139
  • docs: fix remotePatterns link in image-config.ts: #​59197
  • Testmode: support edge functions inside a sandbox: #​59179
  • Update font data: #​59271
  • fix: properly call normalizeDynamicRouteParams in NextWebServer.handleCatchAllRenderRequest: #​58949
  • add user-level tracing: #​59284
  • Fix app-dir - logging test in Turbopack: #​59261
  • update turbopack: #​59285
  • feat(turbopack): support loading WebAssembly in the edge runtime: #​59013
  • Fix barrel optimization to ignore layers: #​59254
  • fix interception routes with dynamic segments: #​59273
  • Clean up builtin modularizeImports configs: #​59294
  • Enable PPR for dynamic = "force-dynamic": #​58779
  • remove additional static prefetch code: #​59313
  • add module tracing for client reference and next/dynamic walking: #​59306
  • side effects optimization: #​58972
  • Move App Router client-side constants to separate file: #​59239
  • reduce function calls in walk: #​59332
  • update turbopack: #​59334
  • disable unused next/dynamic walking in app dir: #​59338
  • fix hmr in multi-zone handling: #​59307
  • fix edge route catch-all param parsing: #​59343
  • add logLevel support to @next/bundle-analyzer: #​59228
  • Fix server output bundling packages module resolving: #​59369
  • fix inconsistent scroll restoration behavior: #​59366
  • test: ability to use node debugger: #​56277
  • fixes the logging by showing full URLs only on demand: #​58088
  • rm console.log: #​59381
Documentation Changes
  • docs: Fix grammar in Caching section: #​58070
  • Update 01-installation.mdx: #​58555
  • Fix naming: #​58539
  • docs: clarify route handler caching: #​58541
  • [Next.js Docs] Adds useOptimistic link: #​58706
  • Docs: Add missing diagram : #​59008
  • Docs: Update revalidate example: #​59002
  • docs: patch upgrade guide to pin install version: #​58993
  • Docs: Delete fast refresh example: #​59003
  • docs:Add react hydration error case.: #​59147
  • Correcting the webpack function introduction: #​58663
  • Docs: Fix upgrade guide files: #​59249
  • docs: fix broken link to learn course: #​59288
  • docs fix: Server Action js example: #​59159
  • docs: Remove invalid URL: #​58823
  • Fix incorrect prop name in client component: #​58591
  • update: Firebase link to with-firebase example: #​58621
  • added comma to the props list: #​58596
  • Update 10-route-handlers.mdx: #​59021
  • Add documentation note about middleware and runtimes: #​58873
  • Revert "added comma to the props list": #​59314
Example Changes
  • Update cache-handler-redis example: #​58562
  • Update & Repair LRUCache importation on NextJS Rate Limit API example: #​58060
  • examples with-zustand update to app dir #​52858: #​58042
  • examples: fix import statement for lru-cache: #​58567
  • examples: Remove outdated example: #​58568
  • feat(examples): add upload file example with Server Actions: #​58467
  • migrate with-cypress example to app dir: #​58053
  • fix lint in examples: #​58630
  • examples: add direct link to Dockerfile: #​58793
  • Update Electron Typescript Example with Best Practices: #​58947
  • Enable typechecking on config: #​57892
  • Updates with-supertokens example app: #​58525
Misc Changes
  • fix(turbopack): e2e/404-page-router test: #​58146
  • Turbopack: update to turbopack-231122.3: #​58784
  • make tests more stable: #​58765
  • chore(CI): improve datadog reporting: #​58267
  • chore(CI): add action to auto retry tests on canary and report failures after retries: #​58774
  • ci: unify reset project script: #​58829
  • ci: disable deployment protection for e2e test project: #​58830
  • fix(CI): retry-test action can't use env in if: #​58838
  • Update Turbopack test manifest from GitHub Actions artifact: #​58394
  • Increase default timeout for swc build: #​59035
  • chore: bump nissuer (issue validator): #​59060
  • fix(test): don't use latest sharp: #​59074
  • misc: disable automerge: #​59077
  • Update checkout step: #​59079
  • ci: don't try to upload to datadog for docs only changes: #​59068
  • misc: delete kodiak: #​59082
  • add full PPR e2e tests: #​59025
  • ci: don't retry or notify on failures from forks: #​59118
  • skip release if no new commits: #​59134
  • fix variable name in release workflow: #​59135
  • Update Turbopack test manifest: #​59109
  • fix(next-core): do not panic when parsing segment config: #​59170
  • Correctly skip build test for Turbopack: #​59207
  • Failing test for 59195: #​59210
  • ci: report daily turbo integration test results from this repo: #​58965
  • fix typo in daily turbopack integration test reporting: #​59251
  • fix missing echo in daily turbopack reporting: #​59255
  • fix missing checkout in daily turbopack reporting: #​59256
  • Add app router name to font tests: #​59257
  • Fix non bundler module resolution in ts for third-parties pkg: #​59244
  • fix dev parallelism in daily turbopack tests: #​59287
  • Update Turbopack test manifest: #​59326
  • Update tests for Turbopack: #​59354
  • Update Turbopack test manifest: #​59356
Credits

Huge thanks to @​timneutkens, @​mknichel, @​gnoff, @​jridgewell, @​gtjamesa, @​mugi-uno, @​better-salmon, @​kentobento, @​vivianyentran, @​empflow, @​leerob, @​samennis1, @​mkcy3, @​acdlite, @​kwonoj, @​suhaotian, @​wbinnssmith, @​imevanc, @​ztanner, @​kdy1, @​d3lm, @​wyattjoh, @​manovotny, @​shuding, @​sokra, @​feedthejim, @​dvoytenko, @​ForsakenHarmony, @​huozhi, @​delbaoliveira, @​amannn, @​ijjk, @​hallatore, @​balazsorban44, @​LukeSchlangen, @​Dylan700, @​mpsq, @​mdio, @​christianvuerings, @​A7med3bdulBaset, @​karlhorky, @​simonhaenisch, @​olci34, @​zce, @​LavaToaster, @​rishabhpoddar, @​smaeda-ks, @​jirihofman, @​codercor, @​devjiwonchoi, @​Willem-Jaap, @​JackieLi565, @​thoushif, @​pkellner, @​jpfifer, @​quisido, @​tomfa, and @​raphaelbadia for helping!

v14.0.3

Compare Source

Core Changes
  • Update React from 7468903 to 0e352ea: #​58279
  • fix(turbopack): support middleware in src: #​58218
  • Update font data: #​58317
  • Replace custom Thenable type with native Promises: #​58337
  • fix(eslint): next/script beforeInteractive gives warning on appDir: #​51148
  • fix: import antd from es in modularizeImports: #​57968
  • fix(WellKnownErrorsPlugin): avoid compilation warnings array with empty items: #​57768
  • Add experimental support for history.pushState and history.replaceState: #​58335
  • Fix: expected "catch all routes" are not matched in “parallel routes": #​58368
  • fix: Don't reset shallow URL updates on prefetch: #​58297
  • fix: ensure batch values are sharable: #​58315
  • fix incorrect fetch cache handling: #​58460
  • turbopack: Don't error with legacy server actions boolean: #​58416
  • Update turbopack: #​58408
  • Upgrade vendored React: #​58489
  • Apply next/font to foreign code: #​58461
  • Turbopack: Use structured styled text in issue descriptions: #​58156
  • onHeaders updates for App Pages: #​58410
  • revalidate APIs should make route handlers dynamic: #​58466
  • remove optimistic navigation behavior when prefetch is false: #​58413
  • fix: set x-forwarded-host based on request: #​58500
  • Inline ChildProp: #​58519
  • Remove client only dynamic chunks from edge bundle : #​56761
  • tweak cache + revalidate fetch warning: #​58505
Documentation Changes
  • remove example for router.events as it does not exist: #​58286
  • chore(docs): fix typo: #​58344
  • docs: Update runtime table: #​58361
  • Update 08-parallel-routes.mdx: #​58393
  • Docs: Update middleware example snippet: #​58488
  • update meta variable to metadata variable so that the meta data updat…: #​58396
  • Update 07-error-handling.mdx: #​58236
  • docs: Added Kinde auth provider: #​58231
  • Update index.mdx: #​58210
  • Make example of passing down a Server Action more clear: #​57972
  • docs: Fix grammar in Styling section: #​58071
  • docs: Fix grammar in Client Components section: #​58065
  • docs: Fix grammar in Dynamic Rendering section: #​58062
  • Docs: fix grammatical issue in "Data Fetching Patterns" section: #​58056
  • Update 02-patterns.mdx: #​58032
  • Update 04-ci-build-caching.mdx - Add Jenkins: #​58001
Example Changes
  • examples: Update Middleware for CSP: #​58300
  • Remove copying of request headers to response: #​58304
  • update import path for GeitSans font to address deprecation warning: #​58349
  • Fix hydration error in headers example: #​58383
  • Fix typo: compoment -> component: #​58330
  • Update Dockerfile adding comment: #​56646
  • update(docs): next-forms fix unhandled run time error: #​56600
  • chore(examples): update styled-components: #​56457
  • Upgrade Convex example to convex@1.2.1: #​54910
Misc Changes
  • fix(ci): exclusion regex now actually works instead of ignoring all tests: #​58259
  • Update 15-content-security-policy.mdx
  • Update 15-content-security-policy.mdx
  • Update CLI version for deploy examples job: #​58318
  • fix hmr event, and avoid RSC fetch on any message: #​58403
  • fix branch name: #​58132
  • add test case to failing list for turbopack: #​58435
  • Revert "fix hmr event, and avoid RSC fetch on any message": #​58452
  • Add types to package.json: #​58420
  • chore: replace fs-extra usage in scripts/: #​57215
  • Add performance.mark for next/third-parties for feature measurement: #​57439
Credits

Huge thanks to @​ForsakenHarmony, @​gnoff, @​leerob, @​karlhorky, @​j9141997, @​acdlite, @​devjiwonchoi, @​hongaar, @​MadCcc, @​luismulinari, @​timneutkens, @​dumb-programmer, @​ijjk, @​nonoakij, @​sokra, @​ztanner, @​franky47, @​wyattjoh, @​jridgewell, @​kdy1, @​janicklas-ralph, @​SukkaW, @​shuding, @​delbaoliveira, @​wbinnssmith, @​robbertstevens, @​bryndyment, @​marcosmartini, @​functino, @​kentobento, @​Anisi, @​AdonisAgelis, @​seangray-dev, @​prkagrawal, @​heloineto, @​kn327, @​ihommani, @​MrNiceRicee, @​falsepopsky, @​thomasballinger, @​tmilewski, and @​huozhi for helping!

v14.0.2

Compare Source

Core Changes
  • Fix nested esm package default import resolving mismatch: #​57784
  • [.next/trace] Serialize trace info across workers to preserve .next/trace with webpackBuildWorker: #​57761
  • Add @​highlight-run/node to externals list: #​57783
  • perf: change the chunks configuration for server code: #​57773
  • [.next/trace] Add tags for webpack build worker: #​57818
  • chore: update otel: #​57774
  • refactor: remove unnecessary condition: #​57835
  • chore: remove styfle from .vercel.approvers: #​57841
  • Remove the actionBrowser to RSC client layering issue: #​57842
  • Prevent caching page with 304 status: #​57737
  • Ensure cache soft tags are correct: #​57850
  • Update React from 0c63487 to 08a3953: #​57852
  • Revert "perf: enable webpack build worker (#​57346)": #​57854
  • Add serverActions.allowedForwardedHosts option: #​57529
  • chore: reword in tree-view: #​57884
  • Polish logging segments of page route: #​57834
  • Inherit title and description from metadata into social cards: #​57857
  • remove legacy handling for suspense option of next/dynamic: #​57900
  • fix(next-core): externalcjs resolve options: #​57645
  • ppr: fail static generation if postponed & missing postpone data: #​57786
  • Reduce FS access for incremental cache: #​57902
  • suspend in render, not in reducers: #​56497
  • move static worker IPC server behind experimental flag: #​57943
  • feat(turbopack): Experimental wasm build: #​57906
  • Fix client chunk loading encoding for dynamic route: #​57960
  • misc: fix serverComponentsExternalPackages usage for experimental.bundlePagesExternals: #​57954
  • Improve grammar of removable Babel config warning: #​55088
  • Remove throw for unknown messages in hot-reloader-client: #​57353
  • Improve CSRF protection error in Server Actions: #​57980
  • fix: updates for resuming postponed in minimal mode: #​57375
  • fix: ensure that postponed requests can be resumed in minimal mode: #​58011
  • Use distDir from webpack-config in createWebpackAliases: #​57268
  • use __NEXT_VERSION compile time replacement: #​57512
  • fixes a problem with cache invalidation : #​58079
  • feat: always use SWC Wasm fallback when running in WebContainer: #​58081
  • update turbopack: #​58080
  • fix: normalization and invariant fixes for ppr: #​58105
  • ppr: fix fetch postpone not having correct React version: #​58107
  • Fix incorrect normalizing in minimal mode: #​58116
  • put app client modules into a separate layer: #​58130
  • Revert "Revert "Add retry for fetching subsetted Google Fonts"": #​58075
  • build: Update swc_core to v0.86.40 and update turbopack: #​57904
  • fix(next-core): correct assets url reference condition: #​58101
  • build(package): clean up next-swc* pkg properties: #​57908
  • fix PPR build output logs: #​58149
  • Update React from 08a3953 to 2983249.: #​58154
  • fix: rsc normalization fixes: #​58145
  • Fix resume stream handling: #​58159
  • Forward headers from React to static output and dynamic render: #​58162
  • refactor(next-core): separate options context for pages/api: #​58148
  • update turbopack: #​58172
  • refactor(next-api): remove unused distDir: #​57789
  • Change allowed forwarded hosts to be allowed origins for Server Actions: #​58023
  • fail build if not using Next canary with PPR flag: #​58203
  • Reduce max header length emitted: #​58204
  • ensure experimental warning shows up when using PPR: #​58206
  • skip ppr throw for tests: #​58208
  • interception routes: fix interception for dynamic routes: #​58198
  • Update React from 2983249 to 7508dcd: #​58216
  • tweak postpone error copy & fix link: #​58219
  • Add helpful context to postpone reason if it's caught and logged or escapes: #​58222
  • Reword PPR caught bail out to avoid "postpone" terminology: #​58223
  • pass postpone through staticGenerationStore: #​58229
  • Updated React from 7508dcd to 7468903: #​58233
  • [Docs]: Fix CLI link to server actions size limit docs: #​58174
  • refactor(next-core): apply correct url rewrite behavior: #​58237
  • update turbopack: #​58243
  • parallel routes: fix catch all route support: #​58215
  • avoid key conflict: #​58249
Documentation Changes
  • [docs] fix next.config.mjs using commonjs in the example: #​57874
  • Move link examples to only Pages Router docs.: #​57758
  • Update 05-mdx.mdx: #​57866
  • docs: Update MDX docs title.: #​57963
  • docs: improve non-encrypted HTTP conn to a secure: #​57998
  • docs: Revert part of sitemap docs change: #​58010
  • docs: useFormState and useOptimistic are now documented: #​58064
  • Correct prop name in server-actions.mdx: #​58108
  • typo: changed from next/server to next/og: #​58143
  • docs: Improve deployment docs on self-hosting.: #​58027
  • docs: small follow up on deployment docs.: #​58158
  • docs: remove duplicate ISR page.: #​58164
  • docs: remove note about generateMetdata: #​58192
  • docs: mention Middleware on src directory page.: #​58193
  • docs: fix typo in composition patterns section: #​58197
  • fix docs link for ISR: #​58207
  • Add PPR option to next.config.js docs: #​58161
  • docs: update analytics docs for useReportWebVitals: #​58196
  • Update 02-app-router-migration.mdx: #​58253
Example Changes
  • Remove `experimental: { serverActions: true } from examples as it is stable in next 14.: #​57598
  • Update Explore the Next.js 13 playground. to Explore starter templates for Next.js: #​57799
  • Chore: simplify with-supabase example: #​57562
  • examples: cleanup: #​57845
  • Chore: refactor to use server actions in with-supabase example: #​57858
  • chore: cleanup more old examples.: #​58066
  • Add a self-hosted shared cache example: #​58000
Misc Changes
  • fix: update Next.js version in create-next-app: #​57532
  • Automatically update Turbopack test manifest: #​57778
  • fix(youtube-embed): each child in a list should have a unique "key" prop: #​57579
  • Update teamname in codeowners: #​57775
  • Simplify createNextInstall return type: #​57760
  • cleanup MR labeler config: #​57827
  • move release undraft step until after canary is fully published: #​57324
  • refactor: remove duplicated conditions
  • Revert "refactor: remove duplicated conditions"
  • Fix typo in run-tests.js: #​57821
  • fix: correctly set x-forwarded-* in Middleware: #​57815
  • chore: remove redundant jest config: #​57151
  • chore(test): run unit tests on node 18 and 20: #​57199
  • Move ReactRefreshLogBox-builtins tests to inline snapshots: #​57952
  • feat(turbo): use turbo gen instead of plop: #​53684
  • Skip webpack only test: #​56929
  • tweak stats action to pull in runtime sizes: #​58005
  • use createNextDescribe for test/development/basic tests: #​58031
  • Remove setPnpmResolutionMode as default is highest: #​57828
  • Remove installCommand on streaming-ssr test: #​58037
  • Remove installCommand on typescript-auto-install and pnpm-support: #​58039
  • Fix should have correct module not found error test: #​57383
  • Fix options of createNextInstall: #​58036
  • Fix update-turbopack-test-manifest.yml workflow: #​58097
  • Adjust update-turbopack-test-manifest.yml to run once per day: #​58104
  • Refactor repo-setup.js: #​58131
  • Update Turbopack test manifest: #​58122
  • Update turbopack label creation: #​58214
  • Fix test: #​58228
  • fix ppr test flake: #​58232
Credits

Huge thanks to @​huozhi, @​mknichel, @​Vadman97, @​feedthejim, @​dnhn, @​jridgewell, @​vinaykulk621, @​RodrigoTomeES, @​padmaia, @​timneutkens, @​ztanner, @​sadikkuzu, @​styfle, @​shuding, @​dijonmusters, @​leerob, @​gffuma, @​ijjk, @​balazsorban44, @​Schniz, @​kwonoj, @​wyattjoh, @​wbinnssmith, @​joulev, @​Athrun-Judah, @​tknickman, @​rasvanjaya21, @​rashidul0405, @​sokra, @​d3lm, @​nguyenbry, @​kdy1, @​Mwimwii, @​gnoff, @​sebmarkbage, @​dumb-programmer, @​manovotny, @​molebox, @​better-salmon, and @​mrr11k for helping!

v14.0.1

Compare Source

Core Changes
  • Add Next.js 14 codemods to CLI output.: #​57552
  • OpenTelemetry: propagate a configured context(s) to root requests: #​57084
  • debug: Add tags to next build traces to track build configuration in the .next/trace file: #​56965
  • [Traces] Await the flush of the trace write stream to make sure trace file is written: #​57641
  • Add node-pty to externals list: #​57640
  • fix: move logging config validation out of experimental: #​57530
  • Update font data: #​57728
  • Support viewport export via TS Plugin: #​57554
  • Fix: Build compilation warning when using middleware: #​57685
  • chore: Update flight-client-entry-plugin.ts typo: #​57734
  • Improve error for missing default export in dynamic metadata routes: #​57711
  • fix gsp tracing issue: #​57766
  • fix(turbopack): don't match empty route groups: #​57647
  • Update React from 8c8ee9e to 0c63487 and types: #​57772
Documentation Changes
  • Add missing dot in codemod command: #​57536
  • docs(fix): example text unescaped entities: #​57255
  • doc: Clarify built-in support for sass after installation: #​57279
  • Update docs with a Good to know box about using redirect in client components: #​56966
  • docs: fix 02-dynamic-routes.mdx: #​57029
  • Fix incorrect link in GTM docs: #​57547
  • Fix typos: #​57592
  • Add apostrophe 07-error-handling.mdx: #​57626
  • Fix: codemods.mdx Incorrect heading structure of next-og-import, meta…: #​57605
  • Typo fix, version "13" to "14": #​57723
  • Fix Google Tag Manager URL in Third Party Libraries documentation: #​57731
Example Changes
Misc Changes
  • update manifest: #​57523
  • update next/third-parties to use Next 14 or 13 as a peer dependency, instead of just 13: #​57515
  • Modify tailwindcss related dependency of create-next-app: #​57262
  • Remove extra CI step and lock Node.js version: #​57769
Credits

Huge thanks to @​dijonmusters, @​sokra, @​philwolstenholme, @​IgorKowalczyk, @​housseindjirdeh, @​Zoe-Bot, @​HanCiHu, @​JackHowa, @​goncy, @​hirotomoyamada, @​pveyes, @​yeskunall, @​vinaykulk621, @​ChendayUP, @​leerob, @​dvoytenko, @​mknichel, @​ijjk, @​hmaesta, @​ajz003, @​its-kunal, @​joelhooks, @​blurrah, @​tariknh, @​Vinlock, @​Nayeem-XTREME, @​aziyatali, @​aspehler, @​huozhi, @​ztanner, @​ForsakenHarmony, @​moka-ayumu, and @​gnoff for helping!

v14.0.0

Compare Source

Core Changes
  • perf: fix server trace file logic : #​56898
  • feat: drop Node.js 16: #​56896
  • Update React from d900fad to 09fbee8. Removes server context and experimental prefix for server action APIs: #​56809
  • feat(env): upgrade dotenv: #​38481
  • Update Babel dependencies: #​51962
  • perf: fix tracing for routes: #​56924
  • build: Update swc_core to v0.86.1: #​56770
  • feat: set status code to 500 if unexpected error occurs before streaming in app router: #​56236
  • cache: add unstable_noStore API: #​56930
  • Adding component to @​next/third-parties: #​56106
  • Replace Promise.withResolvers polyfill with DetachedPromise: #​56954
  • chore(next/image)!: mark onLoadingComplete as deprecated in favor of onLoad: #​56944
  • chore: lower Node.js version requirement: #​56943
  • fix typos: #​56870
  • Update React from 09fbee8 to a419575: #​56970
  • Reland "feat(turbopack): support basic next/dynamic": #​56934
  • Add @mui/icons-material to the default optimizePackageImports list: #​56801
  • add better logs around worker restarts: #​57004
  • Handle Promise Rejections for Streams: #​56976
  • Web Streams cleanup: #​56819
  • chore(next/image): remove deprecation of onLoadingComplete temporarily: #​57020
  • Revert "chore(next/image): remove deprecation of onLoadingComplete temporarily": #​57024
  • Improve performance of String.prototype.split uses: #​56746
  • chore: support progressive jpg with sharp: #​56617
  • Move ImageResponse to next/og: #​56662
  • Prefer module over main on main fields for app router server compiler: #​56960
  • chore: upgrade jest: #​56909
  • chore: drop undici: #​56899
  • Bump packages version to match canary versions: #​57071
  • codemod: migrate ImageResponse imports: #​57074
  • chore(next/image)!: mark domains as deprecated in favor remotePatterns: #​57062
  • Code frame and sourcemapped error support for Turbopack: #​56727
  • Update flakey build trace case: #​57092
  • build: don't error when bundling optional peer deps: #​57073
  • Expose Experimental Taint APIs: #​56507
  • Update font data: #​57094
  • Upgrade edge-runtime/cookies: #​57124
  • Remove warning messages: #​57087
  • Add retry for fetching subsetted Google Fonts: #​56583
  • Update React from a419575 to d803f51: #​57015
  • prefer Option<Vc> over Vc: #​57104
  • chore: drop form-data: #​57141
  • chore: drop web streams polyfilling on globalThis: #​57077
  • chore: create template from next-edge-ssr-loader: #​56715
  • Remove the experimental serverActions flag: #​57145
  • Route Handler Types: #​57070
  • Revert "Add retry for fetching subsetted Google Fonts": #​57154
  • Display experimental features for next build: #​57152
  • Cleanup Request Meta: #​57144
  • chore: move layer from chunking context to asset context: #​57149
  • Turbopack: support more server code in tracing error stack frames: #​57156
  • misc: fix injecting --inspect with NODE_OPTIONS: #​57159
  • Encoding and decoding variables of Server Actions from the closure: #​56377
  • Remove printing fixed issues for Turbopack: #​57188
  • Refactor code: #​57189
  • Polish auto create layout warning color: #​57190
  • improve server actions error when on unsupported node version: #​57191
  • Fix two tests that use exportPathMap for Turbopack: #​57194
  • fix(loader_tree): propagate metadata to corresponding layout: #​56956
  • Polish the error message when using "use client" from a client action: #​57164
  • fix(next-core): align edge chunking context's asset root: #​57022
  • Leverage defineEnv for all environment variables in Turbopack: #​57196
  • perf: memory usage tweaks: #​57163
  • update turbopack: #​57176
  • Move webpack aliases into separate file: #​57233
  • Remove scheduler/tracing alias as the file no longer exists: #​57234
  • test: stablize the metadata url tests: #​57204
  • Polish turbopack start logging: #​57203
  • Remove reactServerCondition property as it is not used: #​57236
  • Add CompilerAliases Type: #​57237
  • Turbopack: fix over-invalidation of node.js assets: #​57240
  • Simplify options passed to createWebpackAliases: #​57239
  • Fix relative metadata url resolving on windows: #​57265
  • Improve encryption of Server Actions closure arguments: #​57227
  • chore: fix a typo: #​57272
  • Fix unmatched WebSocket upgrade requests being closed: #​57245
  • perf: fix memory leaks in the edge runtime in dev: #​57235
  • chore(export)!: remove next export in favor of output: export in next.config.js: #​57085
  • Simplify iv prefixing of Server Actions encryption: #​57274
  • Update Pathname Normalizers: #​57161
  • Move logging option to stable: #​56791
  • Polish compiling and turbopack logging: #​57270
  • Revalidate Header Updates: #​57162
  • Enhance Buffered Transform Stream: #​57267
  • React Aliases: #​57283
  • perf: remove parse-body from the server runtime: #​57280
  • Improve encryption of Server Actions bound values: #​57297
  • Add __nextjs_pure helper : #​57286
  • only log export-no-custom-routes warning if unsupported: #​57298
  • revert "React Aliases (#​57283)": #​57299
  • Fix client reference proxies: #​57301
  • fix(turbopack): write manifests for edge app pages and use proper edge entry: #​56675
  • Partial Prerendering: #​57287
  • Optimize server bundle size: #​57305
  • misc: fix bundling of experimental: #​57311
  • Fix no-store/revalidate 0 inside of unstable_cache: #​57313
  • update turbopack and add HMR test case: #​57304
  • Fix nested unstable_cache revalidating: #​57316
  • Revert "Add __nextjs_pure helper ": #​57318
  • bundle analyzer artifacts: #​57307
  • PPR Fetch Fix: #​57327
  • feat: Add __nextjs_pure back: #​57328
  • Fix trace ignores: #​57331
  • PPR Support: #​57319
  • fix: ensure generateStaticParams isn't required for PPR: #​57333
  • taint flag should enable experimental react in turbopack: #​57315
  • Fix app ISR error handling: #​57332
  • fix metadata url resolving with path posix: #​57343
  • Get rid of semver from the server bundle: #​57321
  • fix(next_core): align remove trailing slash: #​57344
  • perf: avoid using raw-body for server actions: #​57358
  • fix(next-core): apply correct jsx transform context for ssr: #​57300
  • Refactor code: #​57382
  • Fix request body hanging when middleware is preset: #​57381
  • Turbopack: inject chunk group list file into the page for server component CSS: #​57376
  • Viewport exports: #​57302
  • Add websocket to server-external-packages: #​57389
  • turbopack: Implement Server Actions from Client Components: #​57391
  • Refactor swc options: #​57369
  • Ensure unstable_cache revalidate option enables ISR: #​57390
  • Fix logging removed experiments in start logs: #​57373
  • fix(next-core): adjust og alias: #​57431
  • Turbopack: avoid crashing when server actions can't parse the file: #​57424
  • Turbopack: avoid sending serverComponentChanges with errors: #​57425
  • update turbopack: #​57420
  • handle finish building message on client side: #​57363
  • remove invalid argument: #​57438
  • misc: build output rework: #​57440
  • types: mark ImageResponse from next/server deprecated: #​57372
  • Fix deploy id env handling when disabled: #​57374
  • codemods: migrate viewport related metadata export to viewport export : #​57436
  • Process Client -> RSC Server Actions as TS: #​57454
  • Apply react-server transform and valication to middleware: #​57448
  • fix(turbopack): don't emit issues when parsing the segment config for non js files: #​57452
  • fix(next-core): fix determining dynamic route: #​57435
  • Add deprecation warning for disabling swc minifier: #​57453
  • Turbopack: Improve error handling: #​57386
  • refactor: simplify swc loaders configuration: #​57457
  • Ignore postponed rejections: #​57456
  • types: mark ImageResponse from next/server deprecated: #​57372
  • Fix deploy id env handling when disabled: #​57374
  • codemods: migrate viewport related metadata export to viewport export : #​57436
  • Process Client -> RSC Server Actions as TS: #​57454
  • Apply react-server transform and valication to middleware: #​57448
  • fix(turbopack): don't emit issues when parsing the segment config for non js files: #​57452
  • fix(next-core): fix determining dynamic route: #​57435
  • Add deprecation warning for disabling swc minifier: #​57453
  • Turbopack: Improve error handling: #​57386
  • refactor: simplify swc loaders configuration: #​57457
  • Ignore postponed rejections: #​57456
  • use postcss transforms consistently also on server side: #​57434
  • feat(turbopack): add support for parallel routes and route interception: #​57450
  • Apply react-server condition for pages api: #​57459
  • Remove wasm target: #​57437
  • add better messaging around wrapping postpone with try/catch: #​57446
  • misc: fix unhandled err worker hook : #​57465
  • misc: fix build output: #​57466
  • turbopack: Fix Server Actions in Edge runtime: #​57462
  • Fix Regex: #​57461
  • perf: enable webpack build worker: #​57346
  • fix turbopack invalidations: #​57362
  • fix(turbopack): make layout in group not cause a 404: #​57471
  • fix turbopack invalidations: #​57362
  • fix(turbopack): make layout in group not cause a 404: #​57471
  • add node:url alias: #​57478
  • update turbopack: #​57469
  • Turbopack: add HMR update message: #​57476
  • Revert "fix turbopack invalidations (#​57362)": #​57480
  • Filter out CSS files from middleware files and client reference chunks: #​57482
  • turbopack: Support Actions in both RSC and Client layers: #​57475
  • Fix missing SWC transforms for optimized barrel files: #​57474
  • if there are errors during postpone, or postpone was caught, fail static generation: #​57477
  • Add deprecation warning for disabling output file tracing: #​57467
  • Move serverActionsBodySizeLimit to serverActions.bodySizeLimit: #​57433
  • Update React from a998552 to 8c8ee9e: #​57483
  • update turbopack: #​57485
  • fix client-only alias in SSRed client components: #​57484
  • revert ppr logging changes: #​57486
  • Don't terminate PPR renders with dynamicUsageErr: #​57488
  • update turbopack: #​57487
  • revert "Apply react-server condition for pages api (#​57459)": #​57500
  • Revert "Apply react-server transform and valication to middleware (#​5…: #​57504
Documentation Changes
  • Docs: Add documentation for next/third-parties: #​57345
  • Update 05-mdx.mdx . Fix key of the prop: #​56883
  • chore(docs): fix missing fallback on next/image sizes example: #​56718
  • Fix typos in duplicate-sass.mdx: #​57045
Example Changes
  • chore: Refactor with-supabase example to use ssr package: #​57100
  • Fix: catch expected error in with-supabase example: #​57378
Misc Changes
  • improve next-image-proxy test: #​56893
  • chore(test): test remote image from proxy: #​56895
  • ensure kodiak is re-added to apps list after code-freeze action: #​56907
  • chore: reduce fs-extra usage in scripts/: #​56917
  • chore(test): set COREPACK_ENABLE_STRICT: 0 for create-next-app tests: #​56955
  • Add .yarn/install-state.gz to .gitignore: #​56637
  • chore(test): add logs for create-next-app tests: #​56957
  • chore: revert back to moving files w/ fs-extra: #​57030
  • Update CNA tests to avoid publish conflict: #​57025
  • build(cargo): bump up turbopack: #​57081
  • Update CNA tests more: #​57088
  • Update runner for e2e deploy tests: #​57089
  • update test manifest: #​56938
  • make test case less flaky: #​57138
  • Refine eslint rule: #​57143
  • Update eslint config: #​57146
  • Reduce e2e deploy concurrency: #​57142
  • Mark most GTMParams as optional: #​57153
  • chore: Add condition to skip update-fonts workflow on forks: #​57165
  • Fix SCSS and SCSS loader handling tests for Turbopack: #​57192
  • Skip webpack test in Turbopack test run: #​57195
  • Skip output export production tests for Turbopack: #​57197
  • Turbopack: reenable some skipped test cases: #​57177
  • update test manifest: #​57105
  • Update swc_core to v0.86.10: #​57121
  • Import turbo daily integration test workflows: #​57083
  • Skip i18n-ignore-rewrite-source irrelevant tests with turbopack: #​57289
  • Increase concurrency for turbopack test run: #​57290
  • Update unrelated mdx tests with turbopack: #​57294
  • Skip i18n-ignore-rewrite-basepath-source irrelevant tests with turbopack: #​57295
  • Update React from d803f51 to b8e47d9: #​57296
  • Increase build-native CI job timeout: #​57314
  • Revert "Increase build-native CI job timeout (#​57314)": #​57325
  • fix async-modules test: #​57320
  • update turbopack test manifest: #​57357
  • Split jsconfig-paths and jsconfig-paths-wildcard tests: #​57360
  • disable opentelemetry test in turbopack: #​57361
  • test(turbopack): update test manifest: #​57366
  • test(next-image): adjust assertion compatible to turbopack: #​57350
  • disable test temporarily: #​57368
  • update manifest: #​57421
  • enable e2e tests with turbopack: #​57432
  • Turbopack: disable webpack specific test cases: #​57423
  • Update React from b8e47d9 to a998552.: #​57442
  • Update publish-native script for wasm change: #​57472
  • update manifest: #​57468
  • update manifest: #​57468
Credits

Huge thanks to @​A7med3bdulBaset, @​acdlite, @​Andarist, @​berlysia, @​Bsodoge, @​dijonmusters, @​dpnolte, @​feedthejim, @​ForsakenHarmony, @​gnoff, @​housseindjirdeh, @​huozhi, @​ijjk, @​janicklas-ralph, @​jridgewell, @​JuanM04, @​kdy1, @​kwonoj, @​leung018, @​nil1511, @​padmaia, @​philwolstenholme, @​ryo-manba, @​sebmarkbage, @​shuding, @​sokra, @​styfle, @​SukkaW, @​timneutkens, @​tomocchino, @​wbinnssmith, @​WhoAmIRUS, @​wyattjoh, @​xiaolou86, @​Yovach, @​ztanner and @​balazsorban44 for helping!


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about these updates again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Merge request reports