Skip to content

v14.2.0

Compare
Choose a tag to compare
@ijjk ijjk released this 11 Apr 19:57
· 287 commits to canary since this release

Learn more: https://nextjs.org/blog/next-14-2

Core Changes

  • Update build worker warning to use debug: #60847
  • fix: added @sentry/profiling-node to sep list to prevent build/bundle breakage: #60855
  • Optimize build trace ignores: #60859
  • Deprecation warning for config.analyticsId: #60677
  • chore: indicate staleness more prominently in next info output: #60376
  • Telemetry: createComponentTree span: #60857
  • chore: replace micromatch w/ picomatch: #60699
  • Report HMR latency as trace spans for Turbopack: #60799
  • Turbopack: always log HMR rebuild times: #60908
  • Error overlay refactors: #60886
  • Use precompiled source-map in overlay middleware: #60932
  • Use more precompiled deps in react-dev-overlay: #60959
  • Fix next phase for next build: #60969
  • chore: update turbopack: #60980
  • refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc: #59300
  • disable static generation on interception routes: #61004
  • Docs: Address community feedback: #60960
  • avoid output of webpack stats: #61023
  • Revert "refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc": #61021
  • fix useSelectedLayoutSegment's support for parallel routes: #60912
  • Dynamic APIs: #60645
  • Enable next.js version checker in turbopack: #61034
  • chore: Update terser to v5.27.0: #61068
  • Update swc_core to v0.87.28: #60876
  • update turbopack: #61015
  • Implement client_root for edge in Turbopack: #61024
  • fix parallel route top-level catch-all normalization logic to support nested explicit (non-catchall) slot routes: #60776
  • fix(image): warn when animated image is missing unoptimized prop: #61045
  • Fix version checker not displaying when version newer than npm: #61075
  • Fix sitemap generateSitemaps support for string id: #61088
  • ppr: ensure the router state tree is provided for interception routes: #61059
  • Improve the Server Actions SWC transform: #61001
  • Fix instrument bundling as client components: #60984
  • fix(turbopack): use correct layout for 404 page: #61032
  • fix: emotion import source should be enabled in SSR contexts: #61099
  • chore: update turbopack: #61090
  • fix(turbopack): custom page extensions for _app: #60789
  • Disable trace uploads with NEXT_TRACE_UPLOAD_DISABLE: #61101
  • add optimizeServerReact to config-shared: #61106
  • Fix filesystempublicroutes test for Turbopack: #61132
  • chore: upgrade webpack to 5.90.0: #61109
  • Add maxDuration to typescript plugin allowed exports: #59193
  • Upgrade Turbopack: #61190
  • build: remove sentry from the externals list: #61194
  • exclude default routes from isPageStatic check: #61173
  • Add stack trace to client rendering bailout error: #61200
  • chore: refactor image optimization to separate external/internal urls: #61172
  • parallel routes: support multi-slot layouts: #61115
  • Refine revalidatePath warning message: #61220
  • revert changes to process default routes at build: #61241
  • Fix cookie merging in Server Action redirections: #61113
  • Update swc_core to v0.89.x: #61086
  • Fix Server Reference being double registered: #61244
  • Fix Server Action redirection with absolute internal URL: #60798
  • Fix indentation in source code of dev overlay: #61216
  • Update swc_core to v0.89.4: #61285
  • fix: Revert preset-env mode of styled-jsx in webpack mode: #61306
  • DX: add route context to the dynamic errors: #61332
  • Telemetry: add time-to-first-byte signal: #61238
  • Refine logging message of experiments: #61337
  • fix(turbopack): don't parse .ts files as .tsx: #61219
  • Update turbopack: #61381
  • Same as #61360: #61369
  • Always respect NEXT_TRACE_UPLOAD_DISABLED: #61402
  • parallel routes: fix catch-all slots being treated as optional catch-all: #61174
  • fix hmr telemetry reporting: #61420
  • chore: Update swc_core to v0.89.6: #61426
  • Update turbopack: #61433
  • fix a perf problem in VersionedContentMap: #61442
  • Fix next dynamic import named export from client components: #61378
  • fix issues loading CSS in default slots: #61428
  • avoid sending issues turbopack messages to browser: #61443
  • Support crossOrigin in Turbopack: #61461
  • Pass down __NEXT_EXPERIMENTAL_REACT env to webpack build worker explicitly: #61463
  • Replace image optimizer IPC call with request handler: #61471
  • feat(next): trace build dependencies for turborepo: #59553
  • Turbopack: fix telemetry attributes for swc options: #61474
  • Always show version text in error overlay: #61421
  • Fix build worker callback arg missing correct page path : #61347
  • Update font data: #61479
  • build: upgrade edge-runtime: #61030
  • Fix experimental react support in app-route runtime: #61511
  • Fix .env hmr for Node.js runtime in Turbopack: #61504
  • remove unnecessary PPR branch in non-PPR reducer: #61176
  • fix: bump @vercel/nft@0.26.3: #61538
  • chore: update ESLint and plugins to latest: #61544
  • Update turbopack: #61553
  • feat: first pass of next/font manifest: #61424
  • Fix .env HMR for Turbopack in Edge runtime: #61565
  • build(cargo): bump up turbopack: #61590
  • refactor(next-core): consolidate custom ecma transform rules: #61481
  • ensure server action errors notify rejection handlers: #61588
  • feat(turbopack): only preload fonts that opt in: #61591
  • feat(turbopack): serve google fonts locally and allow preloading them: #61596
  • Update font data: #61621
  • Remove unused mockedRes in resolveRoutes: #61635
  • Fix @react-pdf/renderer not working in RSC: #61317
  • Remove extra edge-runtime/primitives override: #61641
  • Encode revalidateTag value fixes #61390: #61392
  • Update README.md: #48717
  • chore: update README.md: #61650
  • avoid processing client components and server actions in route handlers: #60985
  • chore: Update @swc/helpers to v0.5.5: #61659
  • feat(ts): expose MiddlewareConfig interface: #61576
  • Revert "build: upgrade edge-runtime": #61686
  • feat(ts): add JSDoc comments for public APIs: #61649
  • fix(next-core): adjust server alias for the context: #61690
  • fix setAssetPrefix when running on NextCustomServer: #61676
  • fix: status code for 404 props queries to avoid client side navigation with empty props: #60968
  • fix(next-eslint): .eslintrc.json not being created by next lint on App Router: #55104
  • Update React from 60a927d04 to 2bc7d336a: #61522
  • fix(turbopack): read preload option for google fonts: #61679
  • decode magic identifiers: #61658
  • Associate server error digest with browser logged one: #61592
  • chore: update turbopack: #61682
  • fix loading issue when navigating to page with async metadata: #61687
  • fix(ts): ReadonlyURLSearchParams should extend URLSearchParams: #61419
  • fix navigation issue when dynamic param casing changes: #61726
  • Fix next/server api alias for ESM pkg: #61721
  • feat(transforms): enable rsc transforms for the remaining contexts: #61231
  • fix: allow some recursion for middleware subrequests: #60615
  • feat(next-swc): support wasm32-* build target: #61586
  • Turbopack: convert between locations correctly: #61477
  • feat(next/image)!: remove squoosh in favor of sharp as optional dep: #61696
  • Navigation Signals in PPR: #60450
  • Revert "Turbopack: convert between locations correctly (#61477)": #61733
  • Fix duplicate line in README: #61691
  • docs: fix example code missing comma: #59012
  • Reapply "Turbopack: convert between locations correctly (#61477)" (#61733): #61735
  • Fix: Error Fetching _devpagesmanifest.json #17274: #60349
  • fix jsDoc of notFound: #61692
  • feat(next-core): expand matching js extensions for the rules: #61745
  • source map fixes: #61723
  • Add experimental touchstart flag for testing: #61747
  • partially fix css duplication in app dir: #61198
  • build(cargo): add deps for the wasi: #61784
  • fix(ts): match MiddlewareConfig with documentation: #61718
  • Fix attempted import error for react: #61791
  • consolidate prefetch utils & separate build util: #61789
  • Skip client-side data-fetching after ssr error : #51377
  • fix(next-swc): Detect exports.foo from cjs_finder: #61795
  • feat(next-core): build time client|server-only assertion: #61732
  • Fall back loading chunks for sourcemap tracing: #61790
  • Increase Rust stack size: #61809
  • Revert "feat(next/image)!: remove squoosh in favor of sharp as optional dep": #61810
  • DX: fix error overlay flash: #61813
  • feat: Allow specifying useLightningcss for styled-jsx: #61359
  • Guard against restoring router state with missing data: #61822
  • fix: babel usage with next/image: #61835
  • fix:(next/image) handle remotePatterns with a dot in the pathname: #60488
  • Update React from 2bc7d336a to ba5e6a832: #61837
  • DX: fix error overlay flash: #61813
  • feat: Allow specifying useLightningcss for styled-jsx: #61359
  • Guard against restoring router state with missing data: #61822
  • fix: babel usage with next/image: #61835
  • fix:(next/image) handle remotePatterns with a dot in the pathname: #60488
  • Update React from 2bc7d336a to ba5e6a832: #61837
  • update turbopack: #61187
  • conditionally send Next-URL in Vary response: #61794
  • provide interception rewrites to edge runtime: #61414
  • Update app-index to only ever construct the initial data response once: #61869
  • Move turbopack helpers: #61917
  • hot-reloader-turbopack refactors: #61929
  • More hot-reloader-turbopack refactors: #61940
  • fix(next/image): improve warning when fill and sizes="100vw": #61949
  • build(cargo): bump up turbopack to latest: #61952
  • build(cargo): update turbopack for filewatcher fix: #61955
  • ci(workflow): deploy rustdocs for turbopack: #61958
  • Support resuming a complete HTML prerender that has dynamic flight data: #60865
  • Fix empty white page with parallel routes + loading boundaries: #61597
  • Update swc_core to v0.90.7 and update turbopack: #61662
  • Turbopack: remove server addr: #61932
  • More hot-reloader-turbopack refactors: #61993
  • Use destructured object for #61993: #61996
  • only prefix prefetch cache entries if they vary based on Next-URL: #61235
  • seed prefetch cache with initial page: #61535
  • Remove leftover server addr references: #61997
  • log fast refresh in app dir: #61441
  • docs(turbopack): build more docs: #61977
  • fix(next-core): correct error message: #62011
  • docs(turbopack): reduce documentation size: #62016
  • Reduce memory/cache overhead from over loader processing: #62005
  • fix: bump @vercel/nft@0.26.4: #62019
  • refactor(next-core): do not reexport turbopack_binding: #62018
  • build: Update swc_core to v0.90.8: #61976
  • merge pages and app overlays: #60899
  • Rename internal utility naming for clarification : #62048
  • fix: handle multiple x-forwarded-proto headers: #58824
  • Fix server components externals on SSR layer: #61986
  • Fixed useParams hook undesired re-renders and updated it to use PathParamsContext in the app router.: #60708
  • docs(turbopack): conslidate existing links: #62034
  • fix(custom-transform): allow to assert empty program for rsc: #61922
  • fix navigation applying stale data when triggered from global not found: #62033
  • fix(turbopack): react-dom/server in rsc context: #61165
  • refactor(tests): make chain more "correct": #51728
  • Add puppeteer-core to server-external-packages.json: #62063
  • Fix extra swc optimizer applied to node_modules in browser layer: #62051
  • docs(turbopack): revise links: #62062
  • Fix output: export with custom distDir: #62064
  • fix(next-core): apply image-loader alias to the remaining context: #62070
  • More hot-reloader-turbopack refactors: #62055
  • Ensure Turbopack writes font optimization manifest: #62079
  • update turbopack: #62080
  • chore: hide version info network error: #62084
  • Add dev option to Turbopack createProject(): #62083
  • Remove unused app-turbopack files: #62087
  • make router restore action resilient to a missing tree: #62098
  • Turbopack: add support for dynamic requests in require() and import(): #62092
  • docs(turbopack): move docs to separate: #62069
  • Implement Vc: #62099
  • fix: add zeromq to server-external-packages.json: #62105
  • Fix trailing slash for canonical url: #62109
  • Consolidate NextMode checks: #62106
  • Improve the Server Actions SWC transform (part 2): #62052
  • Should not warn metadataBase missing if only absolute urls are present: #61898
  • Update to turbopack-240215.5: #62119
  • Add polyfill for Object.hasOwn: #60437
  • OpenTelemetry: trace API routes in page router: #62120
  • Fix @next/mdx types: #57580
  • DX: hide the webpack info prefix for module paths: #62101
  • Show build errors from Turbopack: #62139
  • Fix issue with ComponentMod being read in Turbopack: #62141
  • Fix handling subpath for server components externals: #62150
  • docs(next-api): trying to document project_update_info_subscribe: #61962
  • add support for esmExternals in pages: #61983
  • docs: updated link in JSDoc for the shallow property in link.tsx: #62181
  • Update font data: #62173
  • Update split chunk handling for edge/node: #62205
  • Ensure webpack build worker defaults on: #62214
  • feat: Lint invalid CSS modules: #62040
  • Add page name to error logged in Turbopack: #62218
  • add turbo.resolveExtensions to allow to customize extensions: #62004
  • fix(turbopack): catchall route matching: #62114
  • fix: clarify Dynamic API calls in wrong context: #62143
  • refactor(turbopack): wrap manifest loading in helper class: #62118
  • refactor(turbopack): resolve routes by page name instead of pathname: #61778
  • Ensure handleRouteType does not throw in production builds: #62234
  • fix: set swr delta: #61330
  • Fix type error in build.ts: #62253
  • fix(next): terser-webpack-plugin path in taskfile.js is missing 'src': #62229
  • Update swc_core to v0.90.10: #62222
  • Add test log prefix for otel: #62258
  • Update turbopack: #62263
  • feat(cli): show available memory/CPU cores in next info: #62249
  • fix(turbopack): print missing slots in debug message: #62280
  • Tree shake the unused exports in direct relative imported client component module: #62238
  • Verify correctness of externals: #62235
  • Renew prefetch cache entry after update from server: #61573
  • fix(next-core): fix aliased free var for edge runtime: #62289
  • update turbopack: #62285
  • Allow fetch to propagate arbitrary init options: #62168
  • Add flag for early import app router modules: #61168
  • Add otel span for client component loading: #62296
  • Fix perf spans: #62306
  • fix(next-core): properly normalize app route for _: #62307
  • fix(next-font): update capsize css so fallbacks are updated with the …: #62309
  • Fix draft mode invariant: #62121
  • Revert "Update split chunk handling for edge/node": #62313
  • Turbopack: reduce tasks needed for emitting: #62291
  • Turbopack: add SSR category to tracing: #62318
  • fix(error-overlay): correct module grouping: #62206
  • Revert "Turbopack: reduce tasks needed for emitting": #62324
  • feat(error-overlay): hide <unknown>/stringify methods in <anonymous> file from stack: #62325
  • eslint-config-next: allow typescript eslint v7: #62137
  • Revert "Revert "Update split chunk handling for edge/node" (#62313)": #62336
  • Revert "Ensure webpack build worker defaults on": #62342
  • avoid loading the page loader chunk on initial page load: #62269
  • output filesystem without watching: #62340
  • Turbopack: limit build concurrency, show progress bar: #62319
  • Update data cache max size error: #62348
  • Add experimental flag for early exit on prerender error: #62367
  • fix(next-swc): Fix span for invalid 'use server' directives: #62259
  • scope issues from subscriptions to the websocket connection: #62344
  • Turbopack: resolve endpoints to avoid extra nesting in tracing: #62317
  • fix(next-lint): fix next lint not throwing exit 1 on error: #62378
  • Remove default fallback behavior when route group is missing a default: #62370
  • Correctly pass prependData and additionalData to sass-loader for Turbopack: #62397
  • chore(docs): mention that next.config.js must have default export: #62341
  • chore(cli): add clarifying comment: #62418
  • OTEL: Add top span for middleware: #62421
  • Turbopack react-refresh: perform full reload on runtime error: #62359
  • Simplify node/edge server chunking some: #62424
  • update configSchema.ts with experimental#useEarlyImport: #62408
  • Fix module-level Server Action creation with closure-closed values: #62437
  • Upgrade vendored react: #62326
  • Turbopack: reduce memory usage: #62432
  • Fixed typo.: #62440
  • fix(turbopack): deal with eventual consistency in get_directory_tree: #62444
  • Telemetry: ensure the ClientComponentLoad metric is only reported when available: #62459
  • [turbopack] update edge alias: #62461
  • Rename currentIssues to currentEntryIssues: #62524
  • update turbopack: #62523
  • add plugin to avoid too many css requests: #62530
  • feat(error-overlay): hide Node.js internals: #62532
  • Create react server condition alias for next/navigation api: #62456
  • Add IssueKey type: #62526
  • OTEL: Ensure that RSC:1 requests get the next.route attr: #62464
  • Display only one hydration error when there's few in error overlay: #62448
  • Upgrade vendored react: #62549
  • Improve TS plugin options: #62438
  • Revert "fix(build-output): show stack during CSR bailout warning": #62592
  • Improve redirection handling: #62561
  • fix router crash on revalidate + popstate: #62383
  • fix: improve error when starting next without building: #62404
  • feat(turbopack): Sort issues: #62566
  • refactor createInfinitePromise to be re-used unresolveable thenable: #62595
  • fix(build-output): show stack during CSR bailout warning: #62594
  • Fix redirect under suspense boundary with basePath: #62597
  • Ensure dynamic routes dont match _next/static unexpectedly: #62559
  • Fix metadata json manifest convention: #62615
  • Migrate locale redirect handling to router-server: #62606
  • fix(next-swc): Provide tokio context required for WASM plugins: #62441
  • Update swc_core to v0.90.12: #62518
  • Update Turbopack: #62632
  • Fix instrumentation with only pages: #62622
  • Fix: generateSitemaps in production giving 404: #62212
  • Refactor flight-manifest-plugin to use compilation.entrypoints directly: #62636
  • Fix Router Error Events in Shallow Routing by Skipping cancelHandler Creation: #61771
  • DX: display highlited pesudo html when bad nesting html error occurred: #62590
  • build(cargo): remove unused features: #62616
  • feat(next-swc): lightningcss binding: #62604
  • fix: Enable SearchParams to be displayed after redirect in Server Action: #62582
  • fix(navigation): allow useSelectedLayoutSegment(s) in Pages Router: #62584
  • Consistently use /_not-found for not found page in App Router: #62679
  • Add experimental config for navigation raf test: #62668
  • Turbopack: remove unused code: #62690
  • Revert "Ensure dynamic routes dont match _next/static unexpectedly": #62691
  • fix(turbopack): don't emit issues for deleted pages: #62012
  • perf: don't emit issues via websocket for now: #59024
  • add native css nesting support: #62644
  • refactor(next-swc): remove unused features: #62696
  • Upgrade mini-css-extract-plugin: #62698
  • Update precompiled for mini-css-extract-plugin: #62699
  • feat: display text diff for text mismatch hydration errors: #62684
  • Fix lint check: #62702
  • chore: remove unused helper: #62701
  • Add param to debug PPR skeleton in dev: #62703
  • Update font data: #62704
  • Turbopack: remove node_modules error filter: #62586
  • fix(error-overlay): improve a11y, minor refactors: #62723
  • Handle top level errors coming from Turbopack entrypoints subscription: #62528
  • Add compiler error for conflicting App Router and Pages Router in Turbopack: #62531
  • fix dev overlay pseudo html collapsing: #62728
  • Route static render error message: remove duplicate word: #62738
  • Update version from backport: #62745
  • Add a flag to disable MergeCssChunksPlugin: #62746
  • refactor(cli): refactor cli to commander: #61877
  • Turbopack: Trace server app render errors through source maps: #62611
  • build(cargo): update turbopack: #62744
  • Turbopack: sass support: #62717
  • refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc: #61832
  • fix: Add stricter check for "use server" exports: #62821
  • fix(next-core): throw on invalid metadata handler: #62829
  • Revert "Add experimental config for navigation raf test (#62668)": #62834
  • Revert "refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc": #62838
  • remove reducer unit tests: #62766
  • fix(next-lint): do not pass absolute path to distDir: #62797
  • Update to latest version: #62850
  • fix "setBlocking is not a function" errors on StackBlitz: #62843
  • Remove extra logic of Server Reference check for registering twice: #62486
  • Update readme of @next/bundle-analyzer package: #62804
  • Don't emit crossorigin attributes for output: "export" by default: #61211
  • apply some transforms on foreign code too: #62827
  • update turbopack: #62884
  • refactor: rename isAppDirEnabled to hasAppDir: #62837
  • bump @edge-runtime/cookies for Partitioned cookie support: #62889
  • refactor(next): fix spacing on auto-generated root layout: #62769
  • fix(cli): fix allowRetry when using port 3000: #62840
  • Fix: missing crossorigin property on manifest link: #62873
  • Turbopack: Trace edge runtime app render errors through source maps: #62901
  • fix merge css plugin to account for css order: #62927
  • fix(next-api): correct font manifest generation: #62916
  • feat(error-overlay): notify about missing html/body in root layout: #62815
  • fix graph update: #62933
  • refactor(error-overlay): improve server code for webpack/Turbopack middleware: #62396
  • feat(error-overlay): version staleness in Pages Router: #62942
  • feat: Introduce lightningcss-loader for webpack users: #61327
  • feat(eslint): enhance no-unwanted-polyfill w/ new endpoints: #62719
  • simplify streamToString method from node-web-streams.helper.ts: #62841
  • Allow ppr only flag in test mode: #62911
  • Upgrade to latest @edge-runtime packages: #62955
  • chore(next-font): update @capsize/metrics package to the latest: #62896
  • Remove Payload from server-external-packages.json: #62965
  • Pass whole prefetch entry rather than status property: #62345
  • build: Update swc_core to v0.90.17: #62924
  • refactor(ts): type fastRefresh: #62848
  • [error overlay] move missing tags error inside error overlay: #62993
  • Update turbopack: #62971
  • fix(next-core): honor basepath for the metadata property: #62846
  • fix(next-core): do not apply ecma transforms for custom js rules: #62831
  • feat(next): fallback lightning if swc/wasm loaded: #62952
  • Fix the plugin state for async modules in webpack plugins: #62998
  • Turbopack + pages router: recover from runtime errors by reloading: #63024
  • Enable minification for Turbopack: #62994
  • app layouts/pages depend on shared main files: #63042
  • DX: add route context to dynamic errors for app routes: #62844
  • Fix metadata url cases should not append with trailing slash: #63050
  • Turbopack: Decode module component when tracing stack frames: #63070
  • build(cargo): bump up turbopack: #63073
  • OTEL: add next.rsc attribute for RSC requests: #63074
  • Correctly deserialize undefined unstable_cache data: #59126
  • refactor(error-overlay): unify Pages/App router error overlay source: #62939
  • feat(turbopack): Enable lightningcss for turbopack by default: #62565
  • ignore fully dynamic requests on server side: #62949
  • Refactor define-env-plugin to have stricter types: #63128
  • [PPR] Support rewrites in middleware: #63071
  • Fix webpack HMR for pages on the edge runtime: #60881
  • fix typo in server/config.ts: #62795
  • ensure mpa navigations to the same URL work after restoring from bfcache: #63155
  • Ensure PromiseLikeOfReactNode is not included in .d.ts files: #63185
  • Ensure undefined values end up being replaced: #63138
  • fix: x-forwarded-port header is 'undefined' when no port in url: #60484
  • Fix generateMetadata race condition: #63169
  • feat(next-core): apply invalid import assertion on the remaining contexts: #63146
  • build(cargo): bump up turbopack: #63205
  • add support for assets in edge: #63209
  • fix: Loose Server Actions runtime check: #63200
  • fix(log): improve error when dynamic code eval is disallowed: #62999
  • fix(error-overlay): strip line+column from webpack internal frames: #63133
  • fix revalidation issue with route handlers: #63213
  • fix(error-overlay): show Turbopack indicator for any staleness level: #63130
  • fix: re-export internal path: #63222
  • build: Update turbopack: #63229
  • make CacheNode properties non-optional: #63219
  • Implement new runtime_type for Turbopack: #63212
  • Use SWC to valid client next/navigation hooks usage in server components: #63160
  • chore: Update swc_core to v0.90.21: #63031
  • fix(turbopack): Do not report hmr timing twice: #63227
  • enable optimizeServerReact by default: #62658
  • feat(turbopack): emit well known error into cli: #63218
  • feat: add deploymentId config: #63198
  • Fix middleware catch-all rewrite case: #63254
  • fix(route-handlers): make sure preflight has CORS headers: #63264
  • fix(turbopack): Remove error overlay when issue is resolved: #62983
  • Disable cache in testmode: #63265
  • Turbopack: app externals test case improvements: #62871
  • build: Update turbopack: #63273
  • fix: hydration error display for text under tag case: #63288
  • Fix URL displayed in Server Action bodysizelimit error: #63295
  • Store loading data in CacheNode: #62346
  • fix(turbopack): Remove error overlay when pages/_app is fixed: #63306
  • Ensure changes in optimizePackageImports invalidate webpack cache: #63284
  • Polish the display color styles for component diff: #63342
  • Turbopack HMR: Log when more errors cause full page reload: #63220
  • Fixes typo in Route handler static generation error handling: #63345
  • Add JSM (ESM) support for next/lib/find-config: #63109
  • fix(error-overlay): matching html tag with brackets in hydration error: #63365
  • add conditions for webpack loader rules: #63333
  • fix transform of files ending with d: #63367
  • Use correct protocol and hostname for internal redirections in Server Actions: #63389
  • bug: Fields truncated when submitting form using Server Actions: #59877
  • New CSS chunking algorithm: #63157
  • Ensure all metadata files have missing default export errors in Turbopack: #63399
  • Code refactor: #63391
  • feat(error-overlay): handle script under html hydration error: #63403
  • Add Bun lockfile to project root resolving heuristic: #63112
  • build(package): pin typescript-eslint/parser for supported node.js: #63424
  • fix(next-core): carry over original segment config to metadata route: #63419
  • fix x-forwarded-port header: #63303
  • build(cargo): bump up turbopack: #63429
  • Turbopack HMR: Reload when recovering from server-side errors: #63434
  • Eliminate unnecessary decode operations in node-web-streams-helpers.ts: #63427
  • Update React from 6c3b8dbfe to 14898b6a9: #63439
  • chore(next/font): update @capsizecss/metrics package to the latest: #63440
  • update turbopack: #63475
  • Fix instant loading states after invalidating prefetch cache: #63256
  • Update tags limit handling for max items: #63486
  • feat(next-core): support unsupported module runtime error: #63491
  • Update RSC etag generation handling: #63336
  • Simplify createRootLayoutValidatorStream: #63484
  • Fix interception/detail routes being triggered by router refreshes: #63263
  • route/middleware/instrumentation use server assets instead of client assets: #62134
  • feat: add support for localizations in sitemap generator: #53765
  • Turbopack: Fail when module type is unhandled: #63535
  • feat(custom-transform): middleware dynamic assert transform: #63538
  • fix: call instrumentationHook earlier for prod server: #63536
  • Revert "feat(next-core): support unsupported module runtime error (#63491)": #63575
  • Upgrades enhanced-resolve: #63499
  • Improve experimental test proxy: #63567
  • Remove the erroring on force-dynamic in static generation for app route: #63526
  • the argument might be written with underscores: #63600
  • Remove lodash from external packages list: #63601
  • upgrade @edge-runtime/cookies: #63602
  • Add alias for react-dom react-server condition: #63588
  • Revert "Revert "feat(next-core): support unsupported module runtime error (#63491)"": #63609
  • Enable all pages under the browser context to proxy to the test proxy: #63610
  • fix(next-core): refine context for unsupported edge imports: #63622
  • Update turbopack: #63541
  • Fix RSC react-dom aliases for edge: #63619
  • Move Playwright to be a peerDependency of next.js: #63530
  • fix(dev-overlay): align codeframe to formatIssue: #63624
  • Improve TypeScript plugin for server boundary: #63667
  • perf: conditionally import Telemetry: #63574
  • feat(error-overlay): style tweaks: #63522
  • Auto map optimizePackageImports to transpilePackages for pages: #63537
  • Add Next.js version to process title: #63686
  • generate the same next/font modules for the same options: #63513
  • feat(log): improve dev/build logs: #62946
  • Update font data: #63691
  • Polish dev-overlay text styling: #63721
  • [PPR] Dynamic API Debugging: #61798
  • Rename encryption key generation code: #63730
  • ensure null loading boundaries still render a Suspense boundary: #63726
  • perf: download and save mkcert in stream: #63527
  • prevent router markers from leaking: #63606
  • Turbopack: fix allocation inefficiency: #63738
  • Fix ServerAction rejection reason: #63744
  • Respect non 200 status to page static generation response: #63731
  • Turbopack: parallelize app structure: #63707
  • fixes to next.js tracing: #63673
  • fext(next-core): inherit root layout segment config for the routes: #63683
  • add tracing to server actions transform: #63773
  • remove left-over debugging: #63774
  • update turbopack: #63778
  • fix revalidation/refresh behavior with parallel routes: #63607
  • fix router revalidation behavior for dynamic interception routes: #63768
  • feat(custom-transforms): partial page-static-info visitors: #63741
  • Ensure Webpack config shows a warning when using Turbopack: #63822
  • feat(turbopack): emit warning into logger: #63780
  • feat(custom-transform): more static info warning: #63837
  • skip HEAD request in server action redirect: #63819
  • OTEL: use the current context when creating a root span: #63825
  • Turbopack: Fail when next/font is used in _document: #63788
  • Move key generation to the earlier stage: #63832
  • fix double redirect when using a loading boundary: #63786
  • fix: default relative canonical url should not contain search: #63843
  • fix(next-typescript-plugin): allow call expression for server actions: #63748
  • fix: avoid metadata viewport warning during manually merging metadata: #63845
  • feat(next-core): set nextconfigoutput correctly: #63848
  • Ensure we dedupe fetch requests properly during page revalidate: #63849
  • feat(next-swc): Pass names of side-effect-free packages: #63268
  • fix(turbopack): loosen warning log guards: #63880
  • fix: skip checking rewrites with an empty has array in isInterceptionRouteRewrite: #63873
  • fix: bundle fetching with asset prefix: #63627
  • fix logic error in parallel route catch-all normalization: #63879
  • ensure custom amp validator path is used if provided: #63940
  • chore: remove useless any: #63910
  • Update hover behaviour note in Link JSDoc comment: #60525
  • fix: pass nonce to next/script with afterInteractive strategy: #56995
  • add experimental client router cache config: #62856
  • add telemetry events for ppr & staleTimes experimental flags: #63981
  • fix server actions not bypassing prerender cache in all cases when deployed: #63978
  • fix(next): next build --debug log output layout is broken: #63193
  • Fix abort condition for requests: #64000
  • fix(log): skip logging non-route requests: #63973
  • Ensure unstable_cache bypasses for draft mode: #64007
  • fix interception route refresh behavior with dynamic params: #64006
  • fix(turbopack): throws api issues: #64032
  • fix(turbopack): emit loadable manifest for app: #64046
  • feat(turbopack): Print error message for next/font fetching failure: #64008
  • Fix status code for /_not-found route: #64058
  • fix: fixes cookie override during redirection from server action: #61633
  • Add flag for preloading all server chunks: #64084
  • Update rust-toolchain to nightly-2024-04-03: #64048
  • fix refreshing inactive segments that contained searchParams: #64086
  • perf: improve next server static performance: #64098
  • fix(log): tweak coloring: #64106
  • Ensure static generation storage is accessed correctly: #64088
  • Ensure empty config with Turbopack does not show webpack warning: #64109
  • fix encoding for filenames containing ? or #: #58293
  • Rework experimental preload entries handling: #64125
  • Fix @opentelemetry/api aliasing for webpack: #64085
  • style(dev-overlay): refine the error message header styling: #63823
  • hotfix(next):next lint installs eslint@9 which includes breaking changes: #64141
  • feat(turbopack): Align behavior for link rel="preconnect" with webpack mode: #64011
  • feat: allow module: Preserve tsconfig option: #64110
  • ensure seeded prefetch entry is renewed after expiry: #64175
  • Fix hydration error higlight when tag matched multi times: #64133
  • test(turbopack): Add -Wl,--warn-unresolved-symbols to next-swc-napi on Linux: #64049
  • feat: Do not mangle AbortSignal to avoid breaking node-fetch: #58534
  • Turbopack: prefer local opentelemetry version: #64206
  • chore: externalize undici for bundling: #64209
  • Add a mode to next build to make it easier to debug memory issues: #63869
  • forward missing server actions to valid worker if one exists: #64227
  • feat(next/image): add overrideSrc prop: #64221
  • fix(fetch-cache): add check for updated tags when checking same cache key: #63547
  • provide revalidateReason to getStaticProps: #64258
  • chore(cli): fix the order --experimental-debug-memory-usage so it's alphabetical: #64264
  • update turbopack: #64257
  • chore: fix some typos: #64276
  • Ensure configuration is checked for Turbopack build: #64247
  • Update font data: #64277
  • Fix css FOUC in dynamic component: #64294
  • [turbopack] Fix css FOUC in dynamic component: #64021
  • fix: show the error message if images.loaderFile doesn't export a default function: #64036

Documentation Changes

  • docs: Improve useSearchParams bailout error page: #60852
  • docs: fix JS/TS code block: #60854
  • Docs: Update parallel routes docs, add default.js pt 1.: #60806
  • docs: another fix for code block: #60856
  • correct description of skipMiddlewareUrlNormalize in advanced middleware flags: #60841
  • Adds a link to CSP where it's first referenced in the headers docs: #60871
  • Add documentation page on video optimization: #60574
  • docs: small tweaks on video docs: #60902
  • docs: small tweak to videos: #60904
  • docs: clarify redirects behavior with pages router: #60610
  • docs: mention missing optimized by default packages in optimizePackageImports: #60058
  • Improves generateViewport documentation: #60396
  • docs: streaming while self-hosting must disable buffering: #60943
  • Update userScalable property in viewport object and user-scalable in meta tag: #60946
  • docs: updated the getStaticProps function name: #60949
  • update edge and nodejs runtime doc: #60801
  • Docs: Add link to bloom filter example: #60987
  • Update code example on 01-pages-and-layouts.mdx: #60963
  • docs: clarify nginx buffering disable: #61010
  • Docs: Share Redirecting docs with /pages: #61083
  • Fix <AppOnly> typo in docs: #61103
  • Docs: Correct JavaScript React Component File Extension to .jsx in '01-vitest.mdx': #61087
  • Docs: Update wording on opting out of the Router Cache: #61123
  • Fixed typo in docs: #61118
  • Combine Pages/App authentication docs: #60848
  • Docs: Add note about calling redirect after try/catch: #61138
  • OpenTelemetry: update docs for new @vercel/otel: #61044
  • docs: fix Auth0 typo in authentication: #61171
  • Update generate-sitemaps.mdx: #61167
  • Add dot to regex chars in rewrites.mdx: #61095
  • Refine revalidatePath type argument: #61159
  • Docs: Add note about revalidatePath invalidating router cache: #61142
  • Docs: Improve and add new parallel routes examples: #60981
  • chore(docs): fix docs for static assets (public): #61225
  • Docs: Adjust message about RootLayout: #61199
  • docs: add Lucia auth: #61255
  • Make server actions maxDuration timeout more clear in documentation: #60005
  • docs(02-jest): fixes failing test in the tutorial: #61272
  • docs: typo in page title: #61267
  • Removed an extra braces and comma from doc (},): #61250
  • Docs: Fix headings in Parallel Routes page: #61328
  • OpenTelemetry: clarify Edge runtime support: #61338
  • chore: update docs around redirect(): #61334
  • add the middleware.ts API reference file convention: #61037
  • Remove the regions option from the config section of the middleware file conventions doc: #61425
  • Docs: Update migration wording for /pages: #61453
  • Docs: Add instrumentation.ts API reference, improve instrumentation docs: #61403
  • Docs: Document prefetch null for App Router: #61203
  • Docs: Add note on default.js receiving params: #61454
  • chore(docs): add // @ts-check to next.config.js docs: #61543
  • Update 03-linking-and-navigating.mdx: #61622
  • chore(docs): add auto closing tag to : #61546
  • Docs: Add Kinde to authentication docs: #61460
  • docs: update useParams examples and pages usage: #61595
  • docs: update style9 to stylex: #61646
  • Mobile Friendly Test was retired: #61647
  • Fixed #61434 : Docs: Duplicated code snippets: #61446
  • Add case-sensitive note for revalidateTag/revalidatePath: #61729
  • fix: showing incorrect filename in example: #61736
  • Update 02-server-actions-and-mutations.mdx: #61756
  • Fix closing a modal example in parallel routes docs: #61819
  • docs: Example mismatch when changing language JS/TS : #61833
  • Fix closing a modal example in parallel routes docs: #61819
  • docs: Example mismatch when changing language JS/TS : #61833
  • docs: add Page Router only section for beforeInteractive: #61839
  • docs: update API reference for <Script> (switch to _document.js): #61875
  • docs: migrating from CRA: #61866
  • Docs: Address community feedback: #61857
  • docs: follow up from CRA docs: #61893
  • docs(cli): fix next info section title and re-order: #61895
  • docs: fix typo: #61943
  • close the missing } in javascript function in image docs page: #61934
  • chore: fix lint: #61950
  • docs(errors): fix typo: #61957
  • docs: update Auth.js name to NextAuth.js: #61974
  • docs: add link to Blob: #62056
  • Add puppeteer-core to serverComponentsExternalPackages.mdx: #62156
  • Fix extra const in video docs: #62155
  • Docs: update link.mdx: #61508
  • docs: fix srclang prop: #62164
  • Fix 02-pages-and-layouts.mdx to show Good to know and contents in the same box: #62203
  • docs: fix page.js file name in 02-pages-and-layouts.mdx: #62221
  • docs(cli): tweak next info docs: #62274
  • docs: Update unstable_cache.mdx with important info about dynamic data: #62202
  • Fix typo in unstable_cache.mdx: #62301
  • docs: add an explanation about prefetch on hover to the link.mdx: #62182
  • docs: fix web-vitals.tsx file path for second example: #62387
  • better reference for what is serializable by React: #62405
  • Updating Cloudinary Video Resources: #61959
  • Revert "docs(errors): fix typo": #62411
  • docs: add current state argument to authenticate function: #62399
  • docs(link): update docs around link prefetch: false: #62414
  • chore: Bump actions/cache: #62422
  • Docs: Add CORS examples: #62439
  • feat(docs): update 14-internationalization.mdx: #62484
  • feat(docs): update 02-app-router-migration.mdx: #62533
  • docs: fix typo: #62543
  • docs: Remove superfluous tags in api-reference/components/link.mdx: #62501
  • docs: fix redirect loop in auth code example: #62589
  • docs: Don't suggest using taintUniqueValue API with phone number: #62600
  • [docs] update analytics doc to use useReportWebVitals (again): #62654
  • Update 05-error-handling.mdx: #62153
  • Correct format for autoplay attribute in NextJS video docs : #62695
  • Update unstable_cache docs for revalidate option: #62689
  • docs: update Next.js CLI docs: #62304
  • docs: clarify client component intro: #62767
  • Update sitemap.mdx: #62809
  • Update 06-src-directory.mdx to mention Typescript paths: #62863
  • Add missing await keyword in code block.: #62919
  • [docs] Fix the TS Type from the function sitemap #62947: #62960
  • docs(cli): add mention of our default port behavior: #62964
  • docs: sync serverComponentsExternalPackages.mdx with implementation: #62966
  • Docs: Clarify fetch caching exceptions: #63004
  • Fix syntax error in the TypeScript example: #63003
  • Docs: Clarify AbortController.signal usage in React fetch memoization: #63009
  • Docs: Document crossOrigin option: #61455
  • docs: change the Router Cache link reference: #62976
  • Docs: Update CRA migration guide: #63037
  • docs: Update route-segment-config.mdx: #63046
  • Details for Turbopack loaders.: #62300
  • Fix typo in 03-environment-variables.mdx: #63067
  • Docs: Note $ACTION_ formData properties: #63048
  • docs: clarify perf benefits of RSC: #63096
  • Joy-UI supports Next.js: #63144
  • Fixed Authentication docs improper nesting of unordered list inside ordered list: #62958
  • docs(link): add good to know comment about scroll behavior: #63152
  • Update route.mdx: #60976
  • docs: replace vercel/otel link to npm: #63173
  • docs: fix punctuation: #63223
  • Update 02-server-actions-and-mutations.mdx - FormData is itself iterable : #62541
  • Update 02-server-actions-and-mutations.mdx - add required generic type and remove unnecessary parameter types: #62551
  • docs: Make a better sentence by connecting with comma: #63355
  • docs: fix typo in route-segment-config.mdx: #63362
  • docs: add Lucia for authentication: #63339
  • docs: fix next/script example causing hydration errors: #63401
  • Rename variable in documentation example: #63425
  • docs: add AWS CloudFront loader for next/image: #63262
  • Update generate-viewport.mdx: #63493
  • Update react-hydration-error.mdx: #63455
  • Update a third-parties docs, GoogleTagManager example: #63448
  • Update opentelemetry docs #63443: #63444
  • Update middleware matcher docs to mention has matching: #63533
  • chore(docs): update React docs link: #63594
  • Update 10-custom-server.mdx: #63543
  • docs: async is missing in a server component: #63661
  • Fix documentation of supported JS Features: #63640
  • Remove obsolete block-all-mixed-content CSP directive: #63595
  • Update middleware docs to include common use cases : #63534
  • Update default.mdx: #63678
  • Update Turbopack docs: #63759
  • Add note about data cache not applying middleware: #63842
  • docs: add details about images options at next.config.js options: #63712
  • Add documentation on debugging memory usage: #63689
  • change aria-disabled on form buttons to disabled: #63852
  • [docs] aria-disabled does not disabled button.: #63888
  • Fix the command to run next build with Node.js --heap-prof flag: #63982
  • "const loginSegment =" should be singular: #64029
  • docs: fix dynamic searchParams copy: #64038
  • Update sitemap.mdx: #64061
  • docs: fix prefetching information: #64039
  • fix the command to install nextjs using bun: #64081
  • docs: add experimental staleTimes resource: #64040
  • docs: fix code snippet in next/script: #64119
  • chore: Replaced more impactful words: #63835
  • docs: improve prerender error message: #64154
  • fix: Update install method for Bun: #64151
  • docs: add note about streaming and Safari limitations: #64179
  • Add additional links to staleTime docs: #64195
  • fix(docs): update width height value on example to sync with demo: #64147
  • docs(cli): re-order profile to match help output: #64267
  • chore(docs): update wrong route in staleTimes.mdx: #64278
  • Update documentation on webpack loaders in Turbopack: #64296

Example Changes

  • upgrade @types/react-dom to v18.2.18 to import useFormState for server actions in with-supabase example: #60822
  • Updates with-supertokens example app: #60901
  • chore: remove lock from with-algolia-react-instantsearch example: #60910
  • Update Redis Cache example with stabilized API: #60800
  • Change "pages" to "apps" in the Image Component Example description.: #60929
  • example: Add Stripe embedded Checkout example : #60378
  • example(with-stripe-typescript): use client required for error components: #61214
  • fix(with-stripe-typescript): Bump apiVersion when initialising Stripe client: #61217
  • chore(examples): switch default from yarn to npm in Dockerfiles: #61348
  • Update blog-starter to App Router: #61170
  • fix: dockerfile npm run build: #61466
  • fix(with-docker): resolve build with pnpm: #61529
  • Fixing a case sensitivity error: #61563
  • enhancement(with-supabase): replace getSession() with getUser(): #61564
  • chore(examples): deduplicate react-dom imports in add-form.tsx: #61751
  • Clean up with-supabase example: #61799
  • Clean up with-supabase example: #61799
  • Turbopack issue report tests: #61845
  • fix(examples): cache-handler-redis implementation may cause error "Socket already opened" on production: #61978
  • fix: Check if the GET comments response was ok, otherwise throw: #62041
  • Patch 2: #62147
  • Add protected page and pending state to with-supabase example: #62211
  • fix: πŸ’― typescript issue with-jest example: #62227
  • Update with-redux example to match the guide in Redux Toolkit docs: #59864
  • Update examples/active-class-name: #62506
  • examples: add favicon.ico for to avoid browser requests: #62511
  • chore(examples): fix with-cypress build: #62614
  • Update with-react-bootstrap to be Turbopack compatible: #62773
  • Fix invalid / import in with-facebook-pixel example: #62772
  • Update with-emotion example: #62771
  • Fix error in api-routes-middleware example: #62788
  • Fix cms-plasmic example: #62790
  • Update auth-with-stytch example to link to the official guide: #62770
  • Update with-webassembly example to fix hydration error: #62807
  • Link to iron-session example: #62808
  • Add missing dependencies to with-mdbreact: #62810
  • Remove with-semantic-ui example: #62811
  • Remove with-reasonml-todo example: #62812
  • Remove deprecated library example: #62813
  • Fix react-native-web example for Turbopack: #62814
  • Fix with-quill-js example: #62819
  • Fix with-supertokens example: #62817
  • Fix with-passport-and-next-connect import: #62874
  • Remove cms-keystonejs-embedded and link to official docs: #62876
  • Fix with-joi example: #62877
  • chore: migrate basic-css example from page router to app router: #62980
  • with-mux-video: move to app router and update packages: #62297
  • chore(blog-starter): update import paths to use aliases: #62986
  • Switch CodeSandbox repros to pnpm: #63038
  • fix internal Markdown links in Sanity example readme: #63069
  • Update Sanity example for App Router: #63045
  • fix(examples): dynamically update page title: #63110
  • fix: permissions in with-docker example: #63134
  • Allow unsafe-eval during development: #55998
  • Revert "fix: permissions in with-docker example": #63165
  • chore(examples): remove duplicate line in .gitignore for progressive-web-app example: #63207
  • Update Sanity example for App Router: #63187
  • Fix pnpm support in Sanity example: #63249
  • Update to the Stable API: #60493
  • Migrate the with-jotai example from page router to app router: #63390
  • update Docker examples to specify HOSTNAME properly: #59756
  • Update Sanity example deps: #63514
  • Fix(example) : Image missing width property in with-redux example: #63546
  • Fix duplication of without on with-docker-compose Readme: #63643
  • chore(examples): migrate mdx from pages router (JS) to app router (TS): #63646
  • Revert "chore(examples): migrate mdx from pages router (JS) to app router (TS)": #63704
  • fix: file name in with-zustand example: #63925
  • Fix last examples for Turbopack: #64020
  • fix(examples): invalid with-apollo and with-graphql-hooks: #64186

Misc Changes

  • Fix last stable tag for release stats: #60850
  • chore: update issue_popular workflow to 90 days: #60860
  • Update Turbopack test manifest: #60870
  • flag test as failing: #60892
  • chore: fix core team members: #60900
  • Fix basic-app benchmark application: #60842
  • Fix image-optimizer tests for Turbopack: #60972
  • Fix image-optimizer test for Turbopack: #60978
  • Skip @next/font tests in Turbopack as next/font is supported: #60982
  • chore: stricter reproduction links: #60988
  • Rust: update http to 0.2.11: #60986
  • chore: upgrade pnpm to 8.14.2: #60995
  • docs: fix rustup download link: #61007
  • Fix ReactRefreshModule test in Turbopack: #61049
  • Skip configurable runtime warnings tests in Turbopack: #61048
  • Acceptance/error-recovery.test.js: Fork Turbopack test: #61051
  • lock reqwest to 0.11.17 due to build issues: #61076
  • Update Turbopack test manifest: #61074
  • Disable Yarn PnP tests for Turbopack: #61040
  • fix: github reproduction link validation: #61026
  • Fix image-from-node-modules tests in Turbopack: #61078
  • Update invalid-image-import test for Turbopack: #61079
  • Fix next-image static tests for Turbopack: #61081
  • Update next-image-new/default for Turbopack: #61096
  • chore: update issue_popular description to 90 days: #61008
  • Update next-image-new/both-basepath-trailingslash for Turbopack: #61097
  • ci(workflow): update artifact actions: #61061
  • Add missing rootlayout to allow-underscored-root-directory test: #61137
  • Skip CSS Modules composes test in Turbopack: #61141
  • Add passing test to Turbopack manifest: #61140
  • Skip new Worker() test in Turbopack: #61127
  • Fix app-dir/externals for Turbopack: #61150
  • ci(workflow): fix wasm upload name collision: #61157
  • ci(workflow): fix download artifact pattern for wasm: #61175
  • Skip create-root-layout for Turbopack: #61191
  • Ensure test upload step fails: #61188
  • Skip resolving test in Turbopack: #61207
  • Fix next-image-new/asset-prefix for Turbopack: #61224
  • Fix edge-light-import-specifier test for Turbopack: #61234
  • Update Turbopack test manifest: #61246
  • Skip barrel optimization tests in Turbopack: #61253
  • Skip build test in Turbopack: #61256
  • Skip test that is also skipped in webpack: #61221
  • Fix test name for jsconfig-baseurl: #61254
  • Fix next-image-legacy/asset-prefix for Turbopack: #61263
  • Fix e2e/swc-warnings: #61265
  • Fix tests in app-dir-export for Turbopack: #61266
  • Skip onlyRemoveTypeImports Babel test for Turbopack: #61268
  • Fix data-ampdevmode test for Turbopack: #61271
  • Update Turbopack test manifest: #61278
  • Fix next-image-legacy/asset-prefix for Turbopack: #61289
  • create-next-app: update tailwind packages and new classes in page.tsx: #61065
  • Fix app-document-import-order for Turbopack: #61295
  • Fix next-image-legacy/base-path for Turbopack: #61311
  • Skip browserslistrc tests: #61294
  • Fix image-optimizer for Turbopack: #61312
  • Fix next-image-new/app-dir for Turbopack: #61282
  • Fix areweturboyet test path: #61314
  • Remove incorrect test: #61335
  • Fix image matcher in test: #61349
  • chore: add good first issue label comment: #61215
  • chore: use real font files for font tests: #61399
  • chore: add resolved label: #61416
  • Update Turbopack test manifest: #61435
  • CNA: exclude ts(js)conf.json as well as .git folder: #61412
  • remove note about updating next.config with hostname as this is not n…: #61458
  • chore(deps): bump swr to 2.2.4: #61480
  • Fix styled-components test for Turbopack: #61496
  • Fix emotion test: #61499
  • Fix env-config tests for Turbopack: #61503
  • chore: update github actions: #61517
  • Skip Relay test for Turbopack: #61578
  • Update Turbopack test manifest: #61608
  • Revert actions/setup-node v4 bump: #61637
  • Revert "Revert actions/setup-node v4 bump": #61640
  • chore: upgrade turbo to 1.12.2: #61643
  • Ensure publish job has correct status on fail: #61645
  • Update to latest version of npm for publishing: #61644
  • Update Turbopack test manifest: #61626
  • Update next/font tests for Turbopack: #61665
  • Upload npm publish log as artifact for debugging: #61680
  • feat(cna): remove autoprefixer from default templates: #55725
  • Fix app-dir/next-font for Turbopack: #61678
  • Update Turbopack test manifest: #61707
  • test: remove unused directory: #61744
  • Update Turbopack test manifest: #61758
  • double default stack size: #61781
  • chore: add pull_request_popular workflow: #61760
  • Turbopack: update more snapshots: #61786
  • test: add test for logging trace of dynamic = error: #61811
  • test(fixture): separate pnpm cache for the test installation: #61783
  • test: add test for logging trace of dynamic = error: #61811
  • test(fixture): separate pnpm cache for the test installation: #61783
  • chore(test): switch a few tests from yarn to pnpm: #61793
  • chore: rename job in pull_request_popular workflow: #61876
  • chore: Update pnpm v8.14.2 to 8.15.1: #61807
  • chore: auto-close non-labeled issues
  • Merge branch 'canary' of https://github.com/vercel/next.js into canary
  • chore(github-workflow): dynamically create pr list (> 1 +1 reaction): #61963
  • chore(github-workflow): update pull_request_popular name: #61967
  • test(fixture): fix manifest update: #61970
  • test(turbopack): Modify a webpack-specific assertion: #62028
  • test: rename node_modules_bak to node_modules: #62066
  • test: Make css deduplication assertion work for turbopack: #62128
  • chore: update test template to use nextTestSetup: #62154
  • Fix sendGAEvent function : #62065
  • Fix sendGAEvent function (for real?): #62192
  • test: Make css bundle assertion work also for turbopack: #62127
  • docs: remove reference to createNextDescribe in favor of nextTestSetup: #62245
  • Update Turbopack test manifest: #62268
  • tests are no longer flaky: #62278
  • fix(create-next-app): add --no-import-alias for non-interactive: #62035
  • Move scss tests into test/integration/scss directory: #62276
  • Move scss tests into individual directories: #62277
  • Update Turbopack test manifest: #62314
  • Fix test flake: #62379
  • Update Turbopack test manifest: #62389
  • Update Turbopack test manifest: #62433
  • Turbopack: skip tests for import trace links: #61831
  • Update Turbopack test manifest: #62476
  • Revert "Update Turbopack test manifest": #62534
  • test: separate mui barrel optimization test: #62545
  • test: also check source code for node:internal related errors: #62542
  • chore: update non-interactive snippet in README.md: #62493
  • Fix the typo in the GTM URL if the dataLayerName property is configured: #62436
  • fix(build-output): show stack during CSR bailout warning
  • fix flakey navigation test: #62598
  • chore: drop npm-run-all: #62642
  • ci(workflow): fix 403 redirect: #62665
  • Revert "chore: drop npm-run-all": #62700
  • Update Turbopack test manifest: #62674
  • Migrate Sass tests to test/e2e: #62321
  • Update Turbopack test manifest: #62715
  • Revert "Migrate Sass tests to test/e2e": #62735
  • chore: add new codeowners for cli refactor: #62749
  • Update error handling in publish scripts: #62754
  • Fix conflicting-app-page-error test for Turbopack: #62747
  • Update start release handling: #62851
  • Update canary semver handling: #62852
  • Use actions/checkout for trigger release: #62854
  • Fix handling for getting latest stable tag: #62858
  • test(fixture): update snapshot: #62894
  • Update to only use preminor when configured: #62904
  • set persist-credentials: false during release workflow: #62905
  • test(integration-cli): fix test name: #62915
  • Update Turbopack test manifest: #62925
  • Add CI check to validate externals doc: #62968
  • chore: update pnpm version from 8.15.1 to 8.15.4: #62979
  • Update Turbopack test manifest: #62981
  • Move timeout to test step and give whole job a bigger timeout: #62997
  • fix broken create-next-app tests: #63019
  • fix flakey app-action test: #63021
  • fix flakey HMR test: #63022
  • fix transpile-packages test: #63023
  • Fix flaky test by removing unecessary NODE_OPTIONS='--inspect': #63025
  • fix dynamic api route test: #63027
  • test(scss): rename test suites: #63060
  • test(manifest): upload areweturboyet kv from test manifest: #63064
  • Update Turbopack test manifest: #63066
  • chore(test): add test for next/image in node_modules with app router: #63139
  • Remove unnecessary 'await' from writeSema.release() call: #63117
  • Switch to .cjs PostCSS config: #58380
  • Update Turbopack test manifest: #63125
  • chore: upgrade turbo to 1.12.5: #63163
  • Fix trigger_release workflow to not publish empty canaries: #63167
  • Update Turbopack test manifest: #63177
  • Update Turbopack test manifest: #63231
  • Add tarball deployments for each build: #62969
  • Update Turbopack test manifest: #63274
  • chore(test): fix typo occured => occurred: #63287
  • Update Turbopack test manifest: #63316
  • test(fixture): update middleware test fixture & manifest: #63340
  • reenable initially skipped tests: #63347
  • Update Turbopack test manifest: #63356
  • Update Turbopack test manifest: #63370
  • Skip worker test in Turbopack: #63398
  • Update switchable runtime snapshot for Turbopack: #63400
  • [Turbopack] update tokio: #63404
  • Update Turbopack workflows to have clearer names: #63407
  • Switch to postcss.config.mjs, add type: #63380
  • Turbopack HMR: use own snapshot in error-recovery: #63417
  • ci(workflow): fix workflow references: #63437
  • Upgrade popular-issues and popular-prs workflows: #63436
  • Update Turbopack test manifest: #63452
  • Rename turbopack-tests-manifest to turbopack-dev-tests-manifest: #63409
  • Implement Turbopack build manifest update: #63461
  • Unique name for production integration tests: #63468
  • Add unique name for GitHub action steps: #63471
  • Use type production for Turbopack tests: #63473
  • Ensure NEXT_TEST_MODE is set for production run: #63474
  • Skip test/integration in Turbopack build runs: #63480
  • test: switch order of tests to avoid flakniess: #63482
  • Don't download latest test result when reporting manifest: #63488
  • refactor(test): expose test mode as re-exported variables: #63240
  • Split dev and build test run for Turbopack: #63511
  • Add reporting of turbopack-dev-examples-manifest.json: #63521
  • chore: fix stale issue closing GH Action: #63523
  • retry pnpm pack: #63519
  • refactor(test): don't use global as any in test utils: #63241
  • test(fixture): update test fixture: #63498
  • refactor(test): switch tests to use pnpm in more places: #63196
  • chore(test): fix false-positive tests: #63242
  • Fix edge-can-use-wasm-files test for Turbopack: #63552
  • Update Turbopack to turbopack-240321.3: #63585
  • Add failing test for SCSS mixin that uses parenthesis: #63562
  • test(manifest): update manifest: #63613
  • add Janka (@lubieowoce) to "created-by: Next.js team" in labeler config: #63618
  • Update Turbopack development test manifest: #63635
  • Remove Turbopack test skip for scss test: #63649
  • Add TURBOPACK_DEV to distinguish dev/build in test suite: #63653
  • Rename process.env.TURBOPACK -> process.env.TURBOPACK_DEV in test skips: #63665
  • add Sebastian (eps1lon) to "created-by: next.js team" in labeler config: #63669
  • Skip test/integration development tests during Turbopack build test run: #63671
  • Enable test/integration for TURBOPACK_BUILD: #63679
  • Add defaults for integration test run schedule: #63684
  • refactor: unnecessary ternary operator: #63374
  • Update Turbopack production test manifest: #63688
  • Revert "Update Turbopack production test manifest": #63699
  • Revert "Revert "Update Turbopack production test manifest"": #63700
  • Ensure production integration test results are uploaded: #63706
  • Fix name of production tests for collection: #63714
  • Update Turbopack development test manifest: #63716
  • Ensure test-firefox-safari is required for tests passing: #63733
  • chore(github-workflow): remove TODO comment: #63737
  • de-flake prerender-prefetch test: #63739
  • improve tilde test case: #63470
  • Update Turbopack development test manifest: #63751
  • Improve handling of failed nextBuild() calls in test suite: #63717
  • Update Turbopack development test manifest: #63776
  • Ensure automated-update-workflow fails on errors: #63807
  • fix flaky prerender test: #63826
  • Use local AMP validator to reduce test flakiness: #63838
  • Skip failing Turbopack build test: #63814
  • Add job to test flakiness of added/changed tests: #63943
  • Tweak flakey on-demand revalidate test: #63953
  • test: Use the correct chunk path for testing: #63859
  • Update Turbopack development test manifest: #63959
  • fix server-actions-relative-redirect types: #63985
  • Parallelize dev/start flake detection: #63954
  • fix(create-next-app): validate --import-alias value: #63855
  • de-flake custom-error integration test: #63994
  • Update flakey prerender fallback test: #64001
  • docs: add link to Next.js Learn repo in issue template switcher: #63964
  • Increase concurrent of daily Turbopack test runs: #63939
  • test(cna): split and refactor: #63921
  • Ensure test flake detection is required status: #64035
  • Update Turbopack development test manifest: #64055
  • Run compile for .github/actions/upload-turboyet-data: #64025
  • test: Use the correct matcher pattern for stack traces: #63927
  • Update Turbopack development test manifest: #64101
  • Fix missing CNA tests env variable: #64092
  • Always throw error when build fails during test: #64116
  • Update Turbopack development test manifest: #64160
  • Update Turbopack development test manifest: #64190
  • Add additional logs to next-integration-stat: #64169
  • chore(deps): Sync dependencies: #64094
  • test: pin eslint version to 8 in test to avoid breaking changes: #64202
  • Stop using baseUrl in root tsconfig: #64117
  • chore: Fix CI: #64233
  • test: Disable next build test for turbopack: #64236
  • Update Turbopack development test manifest: #64285
  • Update turbopack-build-manifest: #64290
  • add test-turbo command: #64284

Credits

Huge thanks to @ijjk, @leerob, @delbaoliveira, @taishikato, @JesseKoldewijn, @samcx, @Evavic44, @feugy, @sokra, @balazsorban44, @liamlaverty, @dvoytenko, @StephDietz, @SukkaW, @wbinnssmith, @rishabhpoddar, @Ethan-Arrowood, @better-salmon, @ziyafenn, @A7med3bdulBaset, @jasonuc, @yossydev, @Prachi-meon, @timneutkens, @InfiniteCodeMonkeys, @huozhi, @ForsakenHarmony, @miketimmerman, @kwonoj, @ztanner, @williamli, @gnoff, @kdy1, @jsteele-stripe, @chungweileong94, @styfle, @shuding, @WITS, @sogoagain, @junioryono, @eisafaqiri, @yannbolliger, @feedthejim, @aramikuto, @rocketman-21, @kenji-webdev, @michaelpeterswa, @Dannymx, @vpaflah, @zeevo, @chrisweb, @stefangeneralao, @tknickman, @Kikobeats, @ubinatus, @code-haseeb, @hmmChase, @byhow, @DanielRivers, @wojtekmaj, @paramoshkinandrew, @OMikkel, @theitaliandev, @oliviertassinari, @Ishaan2053, @Sandeep-Mani, @alyahmedaly, @Lezzio, @devjiwonchoi, @juliusmarminge, @wyattjoh, @szmazhr, @eddiejaoude, @itz-Me-Pj, @AndersDJohnson, @gentamura, @tills13, @dijonmusters, @SaiGanesh21, @vordgi, @ryota-murakami, @tszhong0411, @officialrajdeepsingh, @alexpuertasr, @AkifumiSato, @Jonas-PFX, @icyJoseph, @florian-lp, @pbzona, @erfanium, @remcohaszing, @bernardobelchior, @willashe, @kevinmitch14, @smakosh, @mnjongerius, @asobirov, @theoholl, @suu3, @ArianHamdi, @adrianha, @Sina-Abf, @kuzeykose, @meenie, @nphmuller, @javivelasco, @belgattitude, @Svetoslav99, @johnslemmer, @colbyfayock, @mehranmf31, @m-nakamura145, @ryo8000, @aryaemami59, @bestlyg, @jinsoul75, @petrovmiroslav, @nattui, @zhuyedev, @dongwonnn, @nhducit, @flotwig, @Schmavery, @abhinaypandey02, @rvetere, @coffeecupjapan, @cjimmy, @Soheiljafarnejad, @jantimon, @zengspr, @wesbos, @neomad1337, @MaxLeiter, @devr77, @jcbhmr, @AlmazHecker, @tdanecker, @rezof, @ryanhalliday, @KaygNas, @elenistvr, @jmikrut, @ariannargesi, @lhfmartin, @decepulis, @nauvalazhar, @dnhn, @karlhorky, @anthonyshew, @Fingel, @alexravenna, @mattddean, @stipsan, @caseyocampo, @KimJeonghun91, @pacexy, @Kinbaum, @devnyxie, @sleepdotexe, @apostolos, @landoncolburn, @yuvalotem, @maksympc, @chironjit, @pwbriggs, @ellertsmari, @michaltarasiuk, @phanect, @saul-atomrigs, @chogyejin, @rwieruch, @TryingToImprove, @KonkenBonken, @piotrekwitkowski, @chrisjstott, @fursich, @ValentinH, @LuiGeeDev, @raferdev, @ctkc, @FoSuCloud, @arcanis, @agadzik, @bb8dd, @SouthLink, @lubieowoce, @setodeve, @ykzts, @Juneezee, @grajen3, @IvoBiaus, @mknichel, @vespertilian, @evelynhathaway, @Netail, @byseop, @CreeJee, @ademilter, @kevva, @fellipeutaka, @mindmind, @Eunkyung-Son, @thekavikumar, @technikhil314, @Dragate, @Pyr33x, @Zaid-maker, @bgw, @hjick, @eps1lon, @ahmoin, @tjabbe, and @ojj1123 for helping!