Update dependency next to v13.5.6
This MR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
next (source) | 13.1.6 -> 13.5.6 |
Release Notes
vercel/next.js (next)
v13.5.6
Core Changes
- Upgrade edge-runtime/cookies #57021
- Patch React with fix for write-after-close for ReadableStream #57011
Credits
Huge thanks to @ijjk @huozhi @gnoff for helping!
v13.5.5
Core Changes
- Update parallelizing tasks with webpackBuildWorker config: #56287
- Misc Typescript and export updates: #55841
- chore: pass defineEnv from next.js to rust directly: #56216
- Expose util internally for debugging: #56381
- App Router - preinitialize chunks during SSR: #54752
- fix: use
fs.existsSync
to avoid race condition: #56387 - Ensure loader generated export default has name: #56388
- Move Edge SSR event
waitUntil
into the handler: #56404 - fix: avoid unnecessary
existSync
call: #56419 - fix: avoid creation of buffers for read ops: #56421
- fix empty externals list, pnpm special case, and project path: #56402
- chore: extract edge-app-route loader template: #56424
- Separate RSC and SSR jsx-runtime modules: #56438
- Async Batcher: #56423
- Fix cli log next.js color: #56448
- Turbopack: Implement Server Actions: #53890
- Component Module Types: #56454
- refactor: rewrite config schema in zod: #56383
- Dev Service: #56442
- feat(turbopack): port next.js template loading logic: #56425
- Chunking Refactor Step 1: #56467
- Use native node:fs in taskfile.js: #56491
- Loose RSC import restrictions for 3rd party packages: #56501
- turbopack: Chunking Refactor Step 2 : #56504
- update turbopack, fix sass peer dependency: #56508
- Remove ServerDirectiveTransformer: #56496
- Improve failed to fetch RSC error: #56517
- misc: fix wrong next start start duration: #56512
- turbopack: Extract as_chunk into shared ChunkType trait: #56506
- Flatten recursive wildcard exports in barrel optimization: #56489
- Turbopack + app router: always use externals for predefined packages: #56440
- fix: log error cause: #56528
- Unsilence Taskr Webpack errors: #56542
- refactor: cleanup app render: #56538
- fix: don't add
isolateModules
totsconfig
when extending from tsconfig withverbatimModuleSyntax
: #54164 - enable
verbatimModuleSyntax
to make type imports/exports explicit: #56551 - Ensure react-server-dom-turbopack-experimental uses the right package: #56560
- Fix build restart log: #56543
- feat(turbopack): add support for edge app pages: #56426
- Improve error handling of Server Actions with skewed deployment: #56618
- misc: split app-render into smaller functions: #56611
- remove unnecessary structuredClone: #56570
- Fix trace ignore handling: #56674
- fix(next-core): allow sass loader for foreign codes: #56679
- Fix SSG query with experimental-compile: #56680
- Ensure rewrites are included in build manifest when using Turbopack: #56692
- fix static worker restart behavior: #56728
- Improve internal waitUntil utility: #56720
- Fix reconnection loop when devserver is offline: #56698
- Fix ensurePage for client-side navigation to / in Turbopack: #56704
- ci: add job summary to the test suite runs: #56742
- Prefer module over main on main fields for app router server compiler: #56532
- Check origins of Server Action requests: #56753
- OpenTelemetry: ignore bubble errors to avoid spamming traces: #56625
- fix(turbopack): always alias
server-only
andclient-only
: #56760 - Utilize Promise.withResolvers: #56764
- Revert "Prefer module over main on main fields for app router server compiler": #56766
- Revalidate Type: #56763
- Revert static worker refactor: #56767
- memoize
useParams
: #56771 - Turbopack: Chunking Refactoring: #56756
- Chunking Refactoring followup fixes: #56789
- put app code into a separate layer: #56800
- fix: add
x-forwarded-*
headers: #56797 - fix(turbopack): middleware path and aliases: #56804
- Implement preferredRegion array in Turbopack: #56743
- Fix build traces case: #56817
- Revert "Drop ipc server headers filters (#56226)": #56836
- Implement getOptimizedModuleAliases for Turbopack: #56839
- chore: bump undici: #56851
- bump: edge-runtime: #56856
- feat(turbopack): support basic next/dynamic: #56389
- Revert "feat(turbopack): support basic next/dynamic": #56885
Documentation Changes
- add digest property to error prop: #56339
- Updates MDX docs: #56378
- Update redirect.mdx: #56414
- docs: add missing word: #56547
- docs: update code snippet for correct file name: #56006
- corrected sentence: #56595
- clarify client components render on server on full page load: #55469
- docs(router): clarify dynamic route slug is about a file name, not "folder": #56596
- Update 01-contribution-guide.mdx: Fix a typo: #56665
- fix(docs): adjust api route documentation examples: #56660
- Updates Large Page Data error message doc to use
JSON.parse
to make reading output easier: #56713 - Docs: Add missing description field: #56749
- Changes codeblock filename delimiter: #56712
- Update supported-browsers.mdx: #56815
- docs: fix cypress script typo in 10-testing.mdx: #56765
- Fix typo: #56863
Example Changes
- Maintenance: minor example dep bumps to fix moderate vulns: #56375
- Update actions.ts: #56579
- updated fauna fql v10: #56185
- fix lint error from fauna example: #56719
- chore(example): bump
@radix-ui/react-icons
: #56452 - fix: http2 example issue: #56768
Misc Changes
- Fix mjs import for Turbopack test: #56354
- Add test case for the
permalink
option ofuseFormState
: #56329 - Fix code freeze disable handling: #56340
- add
cargo fmt
to lint staged: #56430 - fix:
.../templates/*/app/layout.*
import order: #56380 - Update .node-version: #56460
- Fix logging level in actions test: #56473
- Remove app dir warning test: #56350
- Use consistent name for App Router tests: #56352
- Remove isTurbo check in custom-routes test: #56360
- test: speed up isolated next instance test setup: #56525
- Update rust-toolchain to nightly-2023-10-06: #56541
- update test manifest: #56522
- chore: bump pnpm to 8.9: #56649
- fix: next dev with edge runtime on windows: #56502
- invert test filtering logic to exclude known failing: #56663
- (test only) Integration tests: remove flatMap polyfill: #56546
- Use node:fs instead of fs-extra in .github/actions: #56536
- Use unique names for separate test suites: #56695
- misc: tweak stats github action: #56694
- CI: add manual workflow for running e2e on prod: #56738
- Improve chunk encoding test to check right path for Turbopack: #56747
- change those->some for clarity: #56688
- docs: fix typo in Update 02-get-static-paths.mdx: #56757
- Break out E2E deploy test workflow to its own: #56755
- Trigger canary release nightly: #56758
- feat: add self-documenting
.env.example
file: #56469 - update manifest: #56737
- docs: fix several typos: #56788
- Skip artifact download for test e2e deploy workflow: #56807
- Add missing nanoid dependency to app-dir tests: #56830
- Remove specific hash checks for metadata.test.ts: #56843
- Fix CSP test when using Turbopack: #56833
- Skip webpack specific tests in Turbopack test run: #56877
Credits
Huge thanks to @ijjk, @timneutkens, @shuding, @wyattjoh, @Syphini, @manovotny, @ForsakenHarmony, @gnoff, @anonrig, @viktorronnback, @Rylab, @sokra, @hamirmahal, @huozhi, @jridgewell, @SukkaW, @wbinnssmith, @feedthejim, @balazsorban44, @jazsouf, @2XG-DEV, @stefanprobst, @ztanner, @mzab1985, @Mustafadagkiranlar, @JoRyGu, @cmbritten, @styfle, @Krishnanand2517, @bahag-buttf, @kwonoj, @Shadid12, @delbaoliveira, @mayankkamboj47, @dvoytenko, @mayank1513, @himself65, @suravshrestha, @fvaysh, @dianacpg, @joristirado, and @Kikobeats for helping!
v13.5.4
Core Changes
- chore: NextJS -> Next.js: #55961
- fix-failed-to-generate-self-signed-certificate issue:#55891: #55947
- Remove .test.js from dist: #55946
- Turbopack next/font/google: don't insert css rules for multiple weights or styles: #55852
- Fix stale revalidate stream handling: #55978
- turbopack: improve turbopack/test stability: #56024
- Mark testmode fetches internal: #56036
- chore: Remove 'beta.' Subdomain from
beta.nextjs.org
Links: #55924 - Remove experimental.sharedPool: #56021
- fix(worker): pass env to build worker w/
config.experimental.workerThreads
: #55257 - Update
swc_core
tov0.83.26
: #55780 - Revert "Update
swc_core
tov0.83.26
": #56077 - fix reporting of illegal segments when directory only contains irrelevant files: #56076
- Make
permanentRedirect
return 308 in route handlers: #56065 - Remove unneeded next-dev js in next-core: #56039
- Fix: Use
boolean
instead offalse
for experimental logging config: #56110 - chore: remove chalk in favor of picocolors: #55992
- Revert: "Generate prefetch RSC payload during build for SSR paths (#54403)": #56059
- fetching logging on edge: #56108
- Optimize build trace handling: #56048
- Update font data: #56121
- feat(turbopack): port bloom filter to nexturbo: #55678
- Fixes performance problems due to TaskScopes: #55721
- perf: remove react dom legacy from app router: #56082
- perf: replace zod with superstruct: #56083
- perf: externalise ws for bundled server: #56095
- misc: refactor node utils: #56096
- Add support for skipTrailingSlashRedirect and skipMiddlewareUrlNormalize in Turbopack: #56147
- Add experimental.scrollRestoration for Turbopack: #56150
- misc: refactor handleExternals: #56161
- perf: add option to bundle pages externals: #56162
- Allow jest to run with use server directive: #56148
- Update experimental compile cache handling: #56139
- App render related code clean up: #56178
- Add support for i18n config in Turbopack: #56182
- Implement list of config options for Turbopack: #56188
- Turbopack: add support for an assetPrefix and basePath: #56058
- update turbopack: #56197
- Update supported options list to reflect #56188: #56200
- Add support for experimental.logging.level in Turbopack: #56201
- Add next.config.js options to turbopack warning file: #56207
- fix: @libsql/client build error: #56192
- chore: bump
postcss
: #56225 - Add additional handling for experimental-compile: #56224
- Drop ipc server headers filters: #56226
- only override NODE_EXTRA_CA_CERTS when using experimental https flag: #56252
- Pass same mangling option as terser to SWC minifier: #56281
- update turbopack: #56285
- clear require cache only when needed: #56198
- misc: enable source maps for bundled runtime: #56289
- misc: shortcut styled-jsx in external resolution: #56291
- Support serverRuntimeConfig and publicRuntimeConfig in Turbopack: #56310
- Reland static prefetches & fix prefetch bailout behavior: #56228
- fix(#53190): add missing crossOrigin to assetsPrefix resources: #56311
- misc: fix instrumentation with bundled server: #56318
- fix(next/client): keep hash when navigating from app to pages router: #56223
- fix: support both decoded and encoded url requests of conventioned files : #56187
- fix: Invalid URL (404) provided on server actions error: #56323
- Revert "misc: shortcut styled-jsx in external resolution (#56291)": #56334
- Fix build output logging order: #56335
Documentation Changes
- docs: add
not-found
to file conventions page: #55944 - Update 03-linking-and-navigating.mdx: #55907
- docs: Correct place for passing
extension
option tocreateMDX()
: #55967 - docs-55629 update router cache column in cache interactions api table: #55630
- Update 03-linking-and-navigating.mdx: #55969
- Updates "Prerender Error" page for App Router: #56044
- Add the default import alias to create-next-app prompt for clarity: #55896
- Update revalidatePath.mdx to fix confusing wording of arguments section.: #56099
- docs: Renamed function that is used by other name: #56170
- (docs) Document Server Actions
.bind
method: #56164 - docs: Use
Response.json
overNextResponse.json
: #56173 - correcting link to useSearchParams ref: #56169
- docs(sharp-missing-in-production.mdx): update standalone command: #56191
- docs(sharp-missing-in-production.mdx): update standalone command: #56239
- Update image.mdx: #56269
- Update image.mdx: #56266
Example Changes
- chore(examples): bump dependency versions: #55899
- Update to with-supertokens example app: #56035
- Update dependencies in examples : #55993
- Chore/update with supabase demo deploy button: #52483
- chore(examples): remove deprecated dependency from
with-jest
: #56152 - chore(examples): fix
with-jest
types: #56193 - (Examples) update Grafbase example: #54705
- fix: typo in
with-stripe-typescript
example: #56274
Misc Changes
- Skip production tests for Turbopack: #56045
- Fix invalid build-and-test workflow: #56053
- turbopack: Add more skipped tests: #56052
- Skip next build test: #56079
- add flakey test: #56080
- Skip more production tests for turbopack: #56084
- Ensure tests suites have unique names: #56085
- Skip experimental.nextScriptWorkers test for Turbopack: #56086
- Skip production tests for Turbopack: #56089
- Skip Babel tests for Turbopack: #56091
- misc: add node-version file: #55938
- Ensure unique name for app dir css tests: #56088
- Decrease default test timeouts: #56116
- misc: stop hiding node_modules in vscode: #56081
- special case timeout on windows: #56120
- Turbopack: update test manifest: #56133
- More test updates: #56146
- fix(cna): pin dependency versions: #56177
- Update
swc_core
tov0.83.28
: #56134 - Fix middleware-general test for Turbopack: #56211
- More Turbopack test fixes: #56248
- update test mainfest: #56214
- More Turbopack fixes: #56275
- More Turbopack fixes: #56299
- misc: update code owners: #56290
- Fix flaky test for size output: #56303
- update webp crate: #56307
- Remove buildId test as it's no longer relevant: #56316
- Add code freeze GitHub actions for releasing: #56325
- test: add flaky turbopack integration tests to manifest: #56309
Credits
Huge thanks to @balazsorban44, @sdkdeepa, @aayman997, @mayank1513, @timneutkens, @2XG-DEV, @eliot-akira, @hi-matthew, @riobits, @wbinnssmith, @ijjk, @sokra, @dvoytenko, @rishabhpoddar, @manovotny, @A7med3bdulBaset, @huozhi, @jridgewell, @joulev, @SukkaW, @kdy1, @feedthejim, @Fredkiss3, @styfle, @MildTomato, @ForsakenHarmony, @walfly, @bzhn, @shuding, @boylett, @Loki899899, @devrsi0n, @ImBIOS, @vinaykulk621, @ztanner, @sdaigo, @hamirmahal, @blurrah, @omarmciver, and @alexBaizeau for helping!
v13.5.3
Core Changes
- only put css in entry_css_files: #55585
- update taskfile to generate types during
build
: #55628 - refactor: use
fs.existsSync
instead ofaccessSync
: #55675 - Capitalize compiling log: #55685
- Split prerending by route kind: #55622
- turbopack: Update the
next/dist/esm
rewriteResolvePlugin
: #55689 - refactor: modernize get-online with dns/promises: #55674
- ensure
fetchServerResponse
is a valid record when stored in router cache: #55690 - fix(react-refresh-utils): avoid memory leaks caused by prevExports: #53797
- fix(ts): allow auto-import of
next/navigation
: #55743 - remove --watch from
generate_types
task: #55748 - Remove the left padding in
next info
output: #55704 - test(turbopack): remove escape hatches for custom turbopack bindings: #55757
- fix: Invoke cancel, only if the stream is not closed: #55684
- Revert "fix: Invoke cancel, only if the stream is not closed (#55684)": #55764
- fix thenable types & update another incorrect cache record: #55758
- turbopack: Rewrite ESM modules to CJS during client transition: #55693
- Fix output log extra new line: #55770
- Remove unused internal env var: #55762
- fix Image when used with
--experimental-https
: #55775 - chore: update turbopack to
turbopack-230922.2
: #55828 - Move DefineEnv to separate file: #55811
- Remove legacy checks for unstable_getXProps: #55813
- Remove next-typescript check in webpack config: #55819
- Correctly mark turbo sessions in telemetry: #55835
- feat(turbopack): construct output path with distDir next.js config: #55613
- Remove extra type: #55837
- Update rust toolchain to nightly-2023-09-21: #55774
- Remove unused internal env var: #55762
- fix Image when used with
--experimental-https
: #55775 - chore: update turbopack to
turbopack-230922.2
: #55828 - Move DefineEnv to separate file: #55811
- Remove legacy checks for unstable_getXProps: #55813
- Remove next-typescript check in webpack config: #55819
- Correctly mark turbo sessions in telemetry: #55835
- feat(turbopack): construct output path with distDir next.js config: #55613
- Remove extra type: #55837
- Update rust toolchain to nightly-2023-09-21: #55774
- Ensure next-swc-loader types are used: #55846
- Use swc for runtime bundling: #55842
- fix bugs pertaining to server actions + navigation: #55853
- Ensure opentelemetry mismatched version error bubbles: #55868
- test: re-enabled the disabled manifest test: #55810
- Remove unnecessary Object.assign: #55882
- Move experimental.runtime warning to config loading: #55880
- Add experimental.strictNextHead to Turbopack: #55915
- Loose types of app routes return value: #55849
- Add trailingSlash, basePath, and assetPrefix to Turbopack: #55921
- app router: ensure static prefetch renders loading.js: #55950
Documentation Changes
- add tip for case sensitivity of imports: #55662
- Docs - Fix VSCode Full Stack Debugging Regex Pattern: #55670
- Feedback: Remove line saying server actions is dynamic-only: #55746
- Update 01-pages-and-layouts.mdx: #55795
- fix typo in API Reference - Image Component: #55776
- Update 01-pages-and-layouts.mdx: #55795
- fix typo in API Reference - Image Component: #55776
- docs:
useFormState
: #55564 - Update 10-testing.mdx: #55801
- Revert "fix typo in API Reference - Image Component": #55889
- Fix missing async keyword in function declaration: #55887
- docs: Add note that Server Actions work with static routes: #55626
- docs: Add example on query parameters in route handlers: #55789
Example Changes
Misc Changes
- Upgrade to latest NAPI-RS infra: #55505
- ci(tests): enable turbopack /e2e tests: #55681
- chore: bump
nissuer
: #55723 - improve CI log: #55736
- fix(cna): separate
dependencies
/devDependencies
: #55730 - misc: improve profiling script: #55732
- test(fixture): prevent start failure teardowns whole process: #55760
- Update fnm setup for CI: #55765
- test(turbopack): explicitly clean up instance for turbopack: #55772
- Update flakey next-image tests: #55838
- Update flakey next-image tests: #55838
- Allow filtering individual test cases inside test files: #55786
- Move client-navigation test to test/development: #55888
- Ensure Turbopack passing test list is sorted: #55948
Credits
Huge thanks to @sokra, @ztanner, @anonrig, @huozhi, @mayank1513, @travisanderson, @wyattjoh, @jridgewell, @ryanagillie, @Brooooooklyn, @kwonoj, @balazsorban44, @naruaway, @S3Prototype, @feedthejim, @joulev, @icyJoseph, @ijjk, @ForsakenHarmony, @timneutkens, @wbinnssmith, @sdkdeepa, @sdaigo, @leerob, @dominiksipowicz, @joao-vasconcelos, and @mostafaegouda for helping!
v13.5.2
Core Changes
- Remove link to closed discussion: #55596
- test(turbopack) migrate api tests, few image tests: #55552
- fix: handle string nodejs signals: #55606
- Update React from
d6dcad6
to2807d78
: #55590 - Simplified ensure promise handling: #55562
- chore: bump
@vercel/og
andsatori
: #55654 - Fix header resent when error occured: #55619
- Add additional cleanup logic for forked process: #55652
- Polish error icon for error log: #55618
- Fix importing name multiple times with the
named_import
transform: #55664
Documentation Changes
-
create-next-app
templates: Changebun run dev
commands tobun dev
: #55603 - docs: move optimizePackageImports to experimental: #55614
- fix(docs): internationalization middleware example: #55645
Example Changes
- fix: examples/with-fauna/package.json to reduce vulnerabilities: #55594
- fix: examples/with-grafbase/package.json to reduce vulnerabilities: #55593
- chore(examples): upgrade next-translate dependencies: #55637
Misc Changes
- chore: run repro validation only on bug reports: #55610
- Run unit tests in a separate job: #55621
- Run unit tests in a single job run: #55625
Credits
Huge thanks to @padmaia, @mayank1513, @jakeboone02, @balazsorban44, @kwonoj, @huozhi, @Yovach, @ztanner, @wyattjoh, @GabenGar, @timneutkens, and @shuding for helping!
v13.5.1
Core Changes
- Update font data: #54257
- add experimental https support to next dev: #54016
- Fix emotion-js transform for server components: #54284
- Handle basePath for redirect(): #54277
- Remove unused array in router-server: #54278
- app-router: tweak prefetch cache status heuristics: #53864
- Adds nonce to preinit scripts: #54059
- Fix default export of server action utility aliases: #54254
- fix: improve error message when
output: export
in app router: #54202 - ci(trace): allow to opt in to upload full trace: #54347
- fix: server actions blocking navigation events: #54307
- Skip getStaticPaths check for non-dynamic app routes: #54351
- OpenTel: ensure that exceptions are recorded on an active span: #54131
- Testmode: intercept rewrite fetches: #54259
- Polyfill Array.prototype.at: #44436
- Fix missing locale info for middleware data request: #54357
- fix: minimum node version 16.14.0: #54331
- Merge app renderer process: #54143
- Fix data route ordering in dev: #54364
- fix(app): enable React Strict Mode by default: #53375
- Fix swc compiling of client components when directive appears later than exports: #54392
- Upgrade vendored react: #54399
- Code clean up: #54405
- Upgrade precompiled
ua-parser-js
: #54404 - Fix compilation of next/dynamic with
ssr: false
in App Router: #54411 - refactor: Use swc AST to determine use client and server directives: #54358
- Fix not found css not being preloaded while navigation: #53906
- Optimize webpack memory cache garbage collection: #54397
- Use push for Server Action redirections: #54458
- Decreased watchpack aggregate timeout: #54461
- Generate prefetch RSC paylod during build for SSR paths: #54403
- remove HMR polling in favor of more targeted events: #54406
- Trace upload fixup: #54455
- fix: custom incremental cache handlers should work when transpiled: #54472
- upgrade Edge Runtime dependency: #54489
- fix infinite navigate events when Promise is proxied: #54394
- Implement
named_import_transform
: #54530 - fix resolve routes behavior when matching a dynamic segment: #54539
- Turbopack: add edge support for pages apis: #54449
- chore(eslint): bump ESLint plugins: #54490
- Skip copying signal field for revalidate: #54533
- Fix missing new line for certain logs: #54442
- update turbopack: #54558
- fix(DX): More precise error messages for export const config deprecation: #54492
- Revert "Decreased watchpack aggregate timeout": #54515
- Forms and mutations docs.: #54314
-
optimize_barrel
SWC transform and newoptimizePackageImports
config: #54572 - Reuse edgeConditionNames variable: #54594
- Update font data: #54585
- Add cleanup logic to worker.ts: #54500
- chore: add extra error info for rsc info helper: #54609
- Fix router CPU profiling: #54497
- Turbopack: add middleware support for next.rs api dev mode: #54555
- Rename hot-reloader to hot-reloader-webpack: #54628
- Implement hot-reloader interface: #54629
- Remove this as any cases: #54642
- Implement hot reloader interface for Turbopack: #54632
- Fix weight values above 900 not working with Google Fonts: #54339
- add support for app pages to next.rs api: #54668
- Remove unused cssnano-simple file: #54658
- File Reader Improvements: #54645
- Add new
permanentRedirect
function in App Router: #54047 - Default app router not found : #54199
- Cleanup of /_next/data handling in server: #54689
- Trace uploader: fix git binary on windows: #54580
- fix(next/image): import error
preload
is not exported fromreact-dom
: #54688 - turbopack: should only create _not-found when path_prefix is root: #54687
- fix app routes: #54701
- refactor: share utils and optimize segments normalization: #54611
- Improve barrel optimizer with loader caching and wilcard exports: #54695
- Move getBabelConfigFile to separate file: #54716
- Reimplement getBabelConfigFile to be simpler: #54741
- Fix memory watcher reboot: #54760
- Misc Typescript updates: #54734
- Fix unexpected full hmr reload when editing _app: #54690
- update turbopack: #54768
- Use variable for common isNodeOrEdgeCompilation condition: #54763
- Turbopack: Implement HMR in next-api : #54772
- Add
@visx/visx
to the import optimization list: #54778 - Remove experimental.appDir as it's stable: #54785
- Short circut 404's for /favicon.ico in development: #54747
- Remove additional appDir checks: #54788
- Remove experimental.pageEnv: #54789
- Update list of Next.js options in next.rs: #54798
- Fixes for Turbopack HMR: #54790
- Fix the build manifest path for
/
: #54744 - Allow any number of onFetch handlers for a single test: #54846
- Update @vercel/og to latest: #54849
- fix(turbopack): edge api entry path should not have
/route
suffix: #54851 - Don't send tracing spans if performance.measure doesn't return measurements: #54808
- Fix performance measures crashing the app #54858
- Update tag handling for app cache: #53321
- Simplify getPagePaths logic: #54908
- Debug tracing: time devserver startup: #54537
- Update turbopack: #54909
- Add types for hot reloader send method: #54932
- Fix typo in hot-reloader: #54944
- Ensure that barrel files behind wildcards are transformed into shortpath: #54951
- Fix group routes custom root not-found: #54931
- fix: server actions firing twice after navigation: #54948
- docs: fix document format for next_private_export_map: #54952
- Unify serverError hmr event: #54962
- Add serverError action to list of HMR events: #54964
- fix(next-swc): skips client/server only checks when running with Jest to unblock testing: #54891
- Remove pong HMR event as it is not used: #54965
- Add turbopack-connected HMR event: #54976
- Redesign nextjs logging: #54713
- chore: bump
undici
: #55007 - chore: restore options to opt-in for server-side transpilation: #55010
- upgrade edge-runtime: #55005
- [functions-config-manifest] use correct extra config for pages router: #54786
- Client-side HMR message types: #55009
- perf: use split chunks for the node server: #54988
- Remove
react-hot-toast
from the optimizePackageImports list: #55029 - Experimental server optimization: #54925
- Fix duplicated dynamic metadata routes in dev mode: #55026
- Adjust
optimizePackageImports
: #55040 - server: enable minification by default: #54960
- webpack: tweak config for split chunks: #55054
- fix(perf): lazy load
babel/code-frame
: #55024 - remove --turbo, use --experimental-turbo as --turbo: #55063
- fix:
skipTrailingSlashRedirect
being ignored inpages
: #55067 - Debug tracing: include session and anonymous ids: #55021
- Next SWC: Constrain Vc cell values with
Send
: #55077 - test(next-dev): migrate styled-jsx integration test: #55079
- perf: add bundled rendering runtimes: #52997
- chore: add structured app page path type: #55070
- Fixed i18n data route RegExp: #55109
- chore: upgrade to TypeScript 5.2.2: #55105
- fix: ensure mpa navigation render side effects are only fired once: #55032
- Revert "perf: add bundled rendering runtimes (#52997)": #55117
- Strip internal routing headers: #55114
- Add option to support log full request url in verbose mode: #55111
- Filter out pages tree view for app dir only output: #55120
- Check for type of route handler returned value at build time (via the TS plugin) and at runtime: #51394
- Set test headers via page.router API: #55087
- server: re-land bundled runtimes: #55139
- feat(turbopack): add dynamic metadata support: #54995
- server: require hook hotfix : #55146
- Revert swc versions to one that doesn't use lightningcss: #55148
- feat: support expanding urls in nexturbo (and fix static files): #55147
- Update font data: #55155
- server: remove turbopack-specific code when compiling with webpack: #55226
- Ensure
ImageResponse
extendsResponse
: #55187 - Remove render workers in favor of esm loader: #54813
- test(turbopack): migrate 404-related tests from next-dev: #55243
- feat: add reserved port validation: #55237
- build: fix externals resolution when importing from next/dist: #55269
- Make open editor icon size non-shrink in error overlay: #55273
- build: fix minimal trace caching: #55279
- reafactor: renamed pathname -> page: #55282
- feat(next-dev): reenable turbopack beta message: #55116
- Add libsql to external package list: #55266
- fix: removed unused intercepting route definition references: #55285
- refactor(next-font): use next-transform-font: #55252
- Remove unused option and unified ready message into start server: #55289
- remove
--experimental-turbo
from supported next-dev args: #55300 - test(next-dev): clean up 404 tests: #55292
- Use NextJsHotReloaderInterface in router-server: #55317
- server: switch pages to react dom edge renderer: #55318
- Logging improvements: #55298
- Updates Mozilla links to not include language preference: #55326
- fix
react-server-dom-webpack
cache invalidation: #55287 - docs: add explicit units to isrMemoryCacheSize option: #55108
- feat(turbopack): attach type metadata for static metadata item: #55340
- fix duplicated error logging when start server: #55328
- Revert react-server-dom require change: #55345
- fix turbopack HMR, fix disconnect detection: #55361
- Fix CPU profile generation: #55365
- fix memory leak in require.cache cleanup: #55377
- WEB-1135: Update examples and schema for Turbopack loaders config change: #54584
- feat(turbopack): support next.js specific node polyfills: #55343
- Turbopack: Allow Pages entrypoint template to import user's
.ts
files: #55296 - Revert "feat(turbopack): support next.js specific node polyfills": #55385
- Remove leftover worker code and types: #55383
- run validation logic for TURBOPACK too: #55379
- more turbopack HMR fixes and test case: #55368
- Revert "Revert react-server-dom require change": #55382
- Set standalone server default hostname to
0.0.0.0
: #54445 - Revert "Revert "feat(turbopack): support next.js specific node polyfills"": #55392
- Update React from
dd480ef
tod6dcad6
.: #55399 - Memoize serverDistDir generation: #55375
- Remove IncomingMessage type where unused: #55387
- Remove unused file: #55378
- Update useParams typing to assume a given shape: #55126
- Remove setLazyProp from the hot path of all requests: #55391
- fix: server actions initiated from static pages: #51534
- Turbopack: log hmr compile changes: #55406
- fix: server actions initiated from static pages: #51534
- Turbopack: log hmr compile changes: #55406
- Update turbopack: #55402
- fix: sort imports to ensure consistent hash: #55358
- fix manifest load errors when using assetPrefix: #55416
- Turbopack: remap
next/head
on client in App Pages: #55419 - Ensure etags are not generated for static files when disabled: #55376
- use atomic writes to avoid seeing incomplete files: #55424
- fix server-side changes events: #55437
- server: bundle vendored react: #55362
- fix: move sort to loader to also sort query string: #55425
- Don't log error about root_task_dispose: #55458
- Skip JSON.parse in loadClientReferenceManifest: #55457
- Restrict useFormState in Server Components: #55417
- Generate middlewareManifestPath only once: #55489
- Test Mode: report onFetch interceptions in the test: #55456
- Turbopack: Setup HMR for client-only changes in App dir: #55464
- Remove esm loader: #55509
- update turbopack: #55515
- Remove process.env reading in require hook: #55520
- Allow server-only in server targets and client-only in client components targets to be available: #55394
- Make useSearchParams and useParams compatible between app and pages router: #55280
- fix(next-core): enable image extensions: #55460
- build: add aliases for react-dom/server usage in server bundles: #55536
- fix: run turbopack in forked process: #55545
- fix next.js own build on windows: #55544
- Fix notFound status code with ISR in app: #55542
- Disable client-only for middleware and pages api layer: #55541
- Fix missing module.compiled trace file and unhandledRejection in ensurePage: #55553
- Add
mui-core
to the defaultoptimizePackageImports
list: #55554 - Consolidate experimental React opt-in & add
ppr
flag: #55560 - Add react-icons to optimizePackageImports: #55572
- Fix useState function initialiser case for
optimize_server_react
transform: #55551 - Update supported config options for Turbopack: #55556
- Fix react packages are not bundled for metadata routes: #55579
- improve internal error logging: #55582
- fix styled-jsx alias: #55581
Documentation Changes
- docs: Bump minimum Node.js version to 16.14: #54285
- Docs: Fix broken links: #54340
- Docs: Add notes that revalidation is not available in the Edge runtime / only Node.js: #54338
- Docs: Update template.js section: #54370
- Docs: Clarify status codes w/ streaming: #54374
- Docs: Document
manifest
metadata file: #54380 - Docs: Refer users to IDE or MDN for manifest object options: #54385
- Docs: Remove runtime configuration from /app docs: #54336
- docs: Remove unneeded word in caching docs: #54451
- docs: Add
next-i18n-router
as a resource for internationalized routing: #52344 - Update 10-testing.mdx: #54107
- docs: Rewrite Rendering Section and React Essentials Page: #51579
- Docs: Fix formatting issues in the rendering docs: #54517
- docs: fix broken link missing leading slash: #54520
- docs: Add missing parameters to both
useSelectedLayoutSegment
&useSelectedLayoutSegments
: #53602 - chore(docs): add example of sanity image to
loaderFile
config: #54529 - docs: fix source files hash calculation: #54509
- docs: update 10-route-handlers.mdx: #54605
- Docs: Update Edge runtime and data revalidation information: #54499
- Update revalidatePath to revalidateTag: #54633
- docs: Add JS code snippets for forms: #54577
- docs: updates generateMetadata function signature: #54638
- docs: fix small typo: #54656
- Update revalidatePath.mdx: #54631
- Fixed typo in Building your application > 03. Rendering section: #54764
- (Docs) Add missing JS-Code, cookies function names updated accordingly.: #54703
- docs: clarify data type in Forms and Mutations section: #54630
- docs: Change Vite guide title: #54774
- docs: remove typo in
use-selected-layout-segments.mdx
: #54767 - chore: verify missing/invalid/private reproduction links: #54724
- docs: fix syntax error in i18n example code block: #54749
- docs: Add JS/TS code switchers to Middleware: #54726
- docs: define router instance in code block: #54707
- Fix typo in description of error.js: #54933
- docs: Minor formatting fix in Pages Router SSG: #54915
- docs: add
maxDuration
in API Routes config: #54844 - docs: add missing word in client components: #54830
- docs: Clarify the ability to access current route segments in layouts: #53349
- docs: Update Vercel YouTube channel url: #54912
- docs: Move general info about next.config.* to its index page: #53542
- docs: Fix typo in app/building-your-application/caching: #54841
- docs: Add template API reference: #54938
- Update eslint dependencies note in docs: #55023
- docs: Fix typo in getting-started/project-structure: #55035
- docs: fix typo: #54973
- docs: add missing quotation mark: #54968
- docs: Remove
app
reference onpages
doc for runtimes.: #55058 - docs: example of generated nonce to use base64 encoding as per spec: #55039
- Update 01-server-components.mdx: #55085
- docs: fix nested list: #55178
- docs: use
satisfies
for TypeScript code blocks: #55205 - docs: satisfies follow up: #55234
- Fix typo: #55245
- docs: clarify setting cookies docs: #55149
- Update docs for revalidatePath fix: #55083
- Update route-segment-config.mdx for fix broken link: #55212
- docs: Add some App Router FAQs: #55186
- Update 03-forms-and-mutations.mdx: #55386
- docs:
optimizePackageImports
: #55185 - docs: Update streaming section.: #55408
- Add route groups example to revalidatePath doc: #55543
- chore: Fix heading hierarchy in revalidateTag documentation: #55470
- chore: replace issue triaing actions with
nissuer
: #55525
Example Changes
- Update Contentful example for App Router.: #54205
- set hostname to 0.0.0.0: #54342
- (Example) Add CMS Sitecore XM Cloud Example: #54535
- updated sitecore deploy button: #54678
- (Example) Update with-segment-analytics to use segmentio/analytics-next and app layout: #52327
- update dependencies: #53334
- example: Add
elements.update()
to ensure latest payment amount is reflected: #54848 - fix: Fix grammar issues on README.md: #54921
- Fix: slug type issue: #54616
- chore: upgrade playwright example: #53584
- Update Jest and Vitest example for App Router.: #54989
- examples: Update strict-csp example with better nonce: #55131
- Fix/security: #55189
- examples: upgrade @makeswift/runtime from 0.2.2 to 0.10.13: #55203
- examples: update KeystoneJS version: #55201
- fix: upgrade recoil from 0.7.6 to 0.7.7: #55222
- chore(examples): upgrade
@keystone-next/keystone
: #55210 - fix: upgrade date-fns from 2.28.0 to 2.30.0: #55274
- fix: upgrade sharp from 0.29.3 to 0.32.5: #55254
- fix: upgrade react-native-web from 0.11.7 to 0.19.7: #55221
- fix: upgrade @emotion/css from 11.10.0 to 11.11.2: #55352
- example: fix example error: #54599
- fix: examples/cms-keystonejs-embedded/package.json to reduce vulnerabilities: #55354
- Hotfix for missing application/json header in Prepr example: #55517
- Type Error on Event Type payment_intent webhook: #55493
- Correct spelling in playwright docs: #55557
Misc Changes
- Add test for using custom font in metadata image routes: #54274
- Update
swc_core
tov0.79.69
: #54190 - docs: update a small typo in
02-app/01-building-your-application/06-optimizing/01-images.mdx
: #54311 - update readme in nextjs testing: #54322
- add test case for CSP with bootstrap scripts and preinit modules: #54348
- Fix windows next-swc builds: #54353
- test: add case for marking _document with edge runtime: #54316
- Update timeout for release stats: #54363
- Update
swc_core
tov0.79.70
: #54368 - chore(ci): add socket.yaml: #54446
- Update install-native script to avoid pnpm cache: #54462
- Fix failing TS test from new release: #54523
- Enable verbose logging for turbo in CI: #54525
- Update flakey image component tests: #54526
- Update runner labels for MR stats: #54524
- chore(ci): emit env vars that impact ci results: #54534
- Break-up install and build steps for MR stats: #54536
- Update release stats install/build executing: #54576
- Add missing install env for release stats: #54581
- modify bench scripts to not conflict with dev task: #54600
- Implement granular rust caching: #54582
- chore: update gitattributes with linguist-vendored: #54683
- Consider cargo config in granular cache key: #54700
- Updating Third party capital version. : #54418
- chore: label invalid issues: #54826
- chore: update triaging docs: #54828
- use pnpm for
next-with-deps
: #54847 - chore: fix autolabeler: #54916
- Update codeowners: #54966
- Update ready check for MR stats: #55022
- chore(ci): bump pnpm v8.6.11 to v8.7.1: #54873
- test: merge base path tests: #55069
- Update pull_request_template.md: #55098
- Reenable app-static usePathname tests: #55065
- enable all passing turbopack tests for CI: #55100
- test(nexttestsetup): teardown nextinstance gracefully: #55144
- tests(next-dev): migrate basic tailwind tests for turbopack: #55118
- test(fixture): improve finding ports to reduce flaky: #55151
- Test with latest
node@18
: #54000 - fix: upgrade listr2 from 5.0.5 to 5.0.8: #55223
- Update codeowners: #55355
- fix: added support for tests to add resolutions for deps: #55398
- Update
swc_core
tov0.83.12
: #55216 - add test for turbopack refresh error: #55447
- fix inconsistency with pnpm lockfile: #55440
- chore: remove replay from issue template: #55397
- test(integration): fix --turbo tests fixture setup: #55293
- Disable flakey middleware-dev-error test: #55539
- test(turbopack): enable async storage tests: #55413
- docs: add bun run dev command to template readme for create-next-app: #55504
- chore(third-parties): replace rimraf with rm.mjs: #55547
Credits
Huge thanks to @ztanner, @huozhi, @icyJoseph, @kdy1, @timneutkens, @feedthejim, @nbhargava, @shuding, @lauthieb, @leerob, @styfle, @tonskton, @delbaoliveira, @m4salah, @gnoff, @kwonoj, @ijjk, @dvoytenko, @sloanesturz, @balazsorban44, @wyattjoh, @wbinnssmith, @dcporter44, @Kikobeats, @uzairali001, @A7med3bdulBaset, @sokra, @ClementDreptin, @vvo, @Vector73, @ah100101, @chanyeinthaw, @emiliosheinz, @dikaio, @indraantoor, @steven-tey, @krychaxp, @smaeda-ks, @janicklas-ralph, @EdPutans, @vinaykulk621, @michaelangeloio, @mateuszaliyev, @lukebussey, @jridgewell, @Xvezda, @Aryan9592, @sadaffathali, @mayank1513, @ForsakenHarmony, @jsteele-stripe, @okoyecharles, @rob-johansen, @imageck, @ecklf, @Sylith1231, @SonMooSans, @rousan, @robertwbradford, @hiddenest, @innowhat, @sand4rt, @feugy, @ryota-murakami, @hyeewooon, @mewcoder, @CSY54, @csi-lk, @daltonmcphaden, @sidgaikwad, @joulev, @danaugrs, @olingern, @penberg, @sdaigo, @manovotny, @arsenykruglikov, @remorses, @alexandreferreirafr, @acdlite, @li-jia-nan, @wesleydebruijn, @Kevintjuhz, @ytkg, @roigecode, @hoop71, @romeobravo, and @padmaia for helping!
v13.5.0
v13.4.19
Core Changes
- fix: invalid module transform for
@headlessui/react
: #54206 - chore: remove unnecessary type cast in dev-build-watcher: #54221
- fix process.env not being available in standalone mode: #54203
- Fix missing
devPageFiles
collection: #54224 - Add
Route
andLinkProps
stub generics: #54226 - Use
createClientModuleProxy
from Flight Server: #54232 - Add default not found to loader tree of group routes root layer: #54228
- feat(image): add support for custom
loaderFile
whenloader: default
: #53417 - Fix renamed export of Server Actions: #54241
- Ensures App Router Link respects scroll-behavior: smooth when only hash is changed.: #54243
Misc Changes
- Update dd-trace used for internal tools: #54214
- (Fix)Broken
upgrading.mdx
link : #54234 - chore: skip CI run on forks: #54219
- chore(ci): bump
cancel-workflow-action@0.11.0
: #54246
Credits
Huge thanks to @opnay, @styfle, @timneutkens, @ztanner, @shuding, @huozhi, @vinaykulk621, @balazsorban44, @goguda, and @coreyleelarson for helping!
v13.4.18
Core Changes
- refactor: remove edge condition for module proxy path: #54167
- Remove unused variables: #54149
- chore: improve ts types for
position
indev-build-watcher
: #54124 - Turbopack: Strip relative path prefix when generating PageLoaderAsset: #54040
- Add
size
property toReadonlySearchParams
: #53144 - Assign default not-found boundary if custom not-found is not present for root layer only: #54185
- Allow range version for eslint config: #53751
- Automatically modularizeImports for the popular @headlessui/react library: #54188
- fix bfcache restoration behavior: #54198
Misc Changes
- Update rust toolchain: #54130
Credits
Huge thanks to @huozhi, @shuding, @styfle, @jridgewell, @bencmbrook, @cramforce, and @ztanner for helping!
v13.4.17
Core Changes
- fix(next/image): empty blur image when animated #54028
- Do not output pages 404 in tree view if app not-found is used: #54051
- Fix scroll bailout logic when targeting fixed/sticky elements: #53873
- Debug tracing: add updated modules and page to HMR span: #53698
- fix(next-swc): coerce mdxrs default options: #54068
- fix: don't add forceConsistentCasingInFileNames to tsconfig when ts version >= 5.0: #51564
- fix(47299): allow testing pages with metadata in jsdom test environment: #53578
- upgrade edge-runtime dependency: #54117
- Fix root not-found page tree loader structure: #54080
- chore: remove
as any
type cast: #54074 - chore: refactor to use
fs.promises.rm()
: #54076 - Refactor layout router creation in app-render: #54126
- chore(image): remove apple silicon workaround for versions older than
node@16.5.0
: #54125 - fix routing bug when bfcache is hit following an mpa navigation: #54081
- Tracing: add opt-in flag to send a subset of development traces to url: #53880
- fix(edge): override init when cloning with
NextRequest
: #54108 - OpenTel: remove the internal (ipc) fetched from traces in a non-verbose mode: #54083
- cleanup: remove unnecessary effect dep: #54134
- Next build: use exported
handle_issues
from turbopack: #52972 - node-web-streams: remove tee shim, use ReadableStream.tee: #54079
- fix:
cookies().has()
breaks in app-route: #54112 - Revert "fix(47299): allow testing pages with metadata in jsdom test environment": #54160
Documentation Changes
- fix missing
'
in data-fetching/fetching-caching-and-revalidating: #54058
Example Changes
- Update Docker example to remove HOSTNAME: #54102
Misc Changes
- chore: hide "same on new version" without link: #54048
- chore(ci): small notes for the build steps: #54073
- chore: update lock bot wording: #54099
- Update
swc_core
tov0.79.59
: #54082 - install-native.mjs: include
packageManager
field: #54132
Credits
Huge thanks to @balazsorban44, @huozhi, @ztanner, @williamli, @wbinnssmith, @kwonoj, @stefanprobst, @feugy, @timneutkens, @kdy1, @Kikobeats, @styfle, @dvoytenko, @MaxLeiter, and @devjiwonchoi for helping!
v13.4.16
Core Changes
- Concept: test mode for Playwright and similar integration tools: #52520
- Turbopack: fix hiding node_modules warnings in error overlay.: #54022
- ci(next-swc): print glibc version when build: #54026
- Adjust internal action proxy export: #54004
Documentation Changes
- Update 05-client-side-rendering.mdx with latest tanstack query version: #54009
- Open Graph Image font declaration moved to correct place: #53998
- Update opengraph-image.mdx: Fix typo: #54020
Misc Changes
- Remove extra label from runner: #54002
- add standalone testcase for ipv6 hostnames: #53999
- release: add release log generation script: #54006
- test(ci): refine test suite name unique: #54013
- Leverage previous swc build images: #54027
- chore: mark build folder indexable: #54029
- Move turbo outside of build for docker swc builds: #54035
Credits
Huge thanks to @ijjk, @ztanner, @huozhi, @lacymorrow, @dvoytenko, @kylemcd, @kwonoj, @tibi1220, @wbinnssmith, and @shuding for helping!
v13.4.15
Core Changes
- Fix action failures due to state tree encoding: #53655
- Initial HMR Nexturbo API implementation: #52950
- Turbopack: add edge app routes : #53387
- Turbopack: Hide Turbo Engine internals: #53007
- add unit test case for next.rs api: #53679
- Fix not-found rendering in production with edge: #53687
- fix(next/image): don't call ReactDOM.preload if missing, such as jest: #53443
- Add docs page for uncaught DynamicServerErrors: #53402
- Consolidate Server and Routing process into one process: #53523
- fix: Update outdated transform imports lucide-react: #53697
- Update font data: #53759
- Add warnings for static generation bail outs: #53761
- Sort root entries per pageExtensions config for consistency: #53769
- improve error message for conflicting parallel segments: #53803
- Add
changeFrequency
andpriority
attributes to sitemaps: #48484 - Ensure we set cache-control: no-cache for actions: #53824
- Reuse RenderWorker type: #53782
- fix: normalize backslash in
getStaticPaths()
for windows: #53876 - Delete errorneous empty content length header: #53843
- Turbopack: more tests and bugfixes for next.rs api: #53809
- Add
@heroicons/react
tomodularizeImports
: #53902 - Turbopack: Fix debugging in napi for next-api: #53889
- Fix/match resource: #53796
- Use summary_large_image as twitter card if images present by default: #53919
- Turbopack: Emit whether server or client assets changed: #53879
- Limit sharp's concurrency: #53385
- enable @vercel/og support for turbopack: #53917
- feat(image): DataURL placeholder support for : #53442
- Recover not found errors from flight data to render with proper boundary: #53703
- Update React to
18.3.0-canary-1a001dac6-20230812
: #53881 - add "expect" to list of forbidden IPC headers: #53947
- Update swc runners config: #53939
- Better IPv6 support for
next-server
: #53131
Documentation Changes
- Update 11-middleware.mdx: Added Switcher: #53977
- Fix doc grammatical errors: #53672
- Fix a link in incrementalCacheHandlerPath.mdx: #53718
- Fix typo in data fetching documentation: #53772
- Docs: Add option for fetching data using route handlers - from the client: #53793
- docs: Add more information about Server Actions: #53805
- docs: document cache tagging mechanism: #53806
- chore(docs): add missing "try it out": #53815
- docs: Opting out of scrolling with
next/link
anduseRouter
.: #53804 - chore(docs): note cache-control header for preview/draft mode: #53825
- Include instructions for
bun
package manager: #53590 - Docs: Update confusing wording in intercepting routes: #53854
- (docs) Fixes Server Actions example: #53920
- fix typo: #53908
- Docs: fix pnpm command for saving dev deps (#53937): #53938
- The extra word 'the' has been deleted: #53951
Example Changes
- [Examples] Update Example Prepr CMS: #49224
- Update to with-supertokens example app: #53434
- docs(with-stripe-typescript): Update README demo link: #53662
- (example) update github-pages example: #52168
- chore: add light/dark mode theme detection to image component example: #53760
Misc Changes
- Remove tsconfig extending for @next/thrid-parties package: #53991
- Make next as dependency of
@next/third-parties
package: #53996 - update eslint config: #53637
- enable more test cases for next.rs api: #53670
- fix(node): pnpm 8.6 needs node 16.14: #53677
- fix(create-next-app): fix CI defaults (default to typescript): #53686
- fix azure test cases: #53692
- Adding GoogleMaps and Youtube embed components: #52909
- Update env variable for fonts data workflow: #53701
- Move next-rs API tests from unit to e2e: #53771
- test(turbo): allow to run test with --experimental-turbo: #53396
- chore(actions): exclude drafts from MR notificiation: #53669
- Update runner labels: #53925
- Update
swc_core
tov0.79.55
: #53831 - [chore] Upgrade playwright to 1.35.1: #53875
- Update turbo env handling: #53970
Credits
Huge thanks to @iamarpitpatidar, @pythagoras-yamamoto, @alexkirsz, @sokra, @jsteele-stripe, @tknickman, @gaojude, @styfle, @janicklas-ralph, @huozhi, @ijjk, @vinaykulk621, @balazsorban44, @ztanner, @timneutkens, @ericfennis, @JohnAdib, @MiLk, @kwonoj, @delbaoliveira, @leerob, @LuudJanssen, @lucasconstantino, @davecarlson, @colinhacks, @shuding, @jridgewell, @jantimon, @Banbarashik, @ForsakenHarmony, @kdy1, @dvoytenko, @arturbien, @gnoff, @hsrvms, and @DuCanhGH, @tim-hanssen, @Aryan9592, and @rishabhpoddar for helping!
v13.4.13
Core Changes
- Improve internal web stream utils: #53004
- fix: Add
Next-Url
to http vary in consideration of intercept routes.: #52746 - update Turbopack: #53098
- Add app, error, and document entrypoints: #53013
- Turbopack: use edge environment in server-side rendering of client components too: #53099
- refactor(codemod): replace chalk with picocolors: #53115
- move webpack specific logic into a separate file: #53114
- feat(turbopack): emit MODULE_FEATURE telemetry from turbopack: #52356
- Fix not found hangs the build with overridden node env: #53106
- chore: update warning message from
yarn add sharp
tonpm i sharp
: #53130 - fix(edge): allow
Request
cloning viaNextRequest
: #53157 - chore: extract common get-validated-args: #53165
- Fix minimal basePath handling: #53174
- Updates @typescript-eslint/parser to 6.1.0: #52848
- fix(next/image): washed out blur placeholder: #52583
- Handle basePath app-dir minimal case: #53189
Documentation Changes
- (Docs) add missing import.: #52992
- Fix formData code snippet in route handler docs: #52532
- docs: remove unneeded good to know section during installation: #53078
- docs: fix typo in
08-parallel-routes.mdx
: #53069 - chore(docs): Extend the options for custom server init: #52851
- (Docs) Add missing import for
useRef()
: #53015 - (Docs) Remove
FormData
type onformData
defined in.js
file: #53014 - docs: fix codeblock for redirect: #53120
- chore(docs): client-side data fetching loading state: #53164
Example Changes
- feat: remove unused global variable: #51767
Misc Changes
- chore(ci): always run validate-docs-links action: #53022
- update install-native postinstall to use pnpm: #53080
- chore(ci): make
validate-docs-links
required: #53123 - chore(test): fix flaky tsconfig.json test: #53132
- chore(ci): fix validate-docs-links for non-MR: #53129
- Temporarily skip flakey action revalidate: #53134
Credits
Huge thanks to @vinaykulk621, @Lantianyou, @styfle, @shuding, @joulev, @AkifumiSato, @trigaten, @HurSungYun, @DevLab2425, @sokra, @alexkirsz, @ztanner, @leerob, @SukkaW, @kwonoj, @huozhi, @ijjk, @balazsorban44, @daniel-web-developer, @ky1ejs, and @arturbien for helping!
v13.4.12
Core Changes
- Separate routing code from render servers: #52492
- Move Pages API rendering into bundle: #52149
- update Turbopack: #52986
- Turbopack: Refactoring module references: #52930
- Increase timeout for 404 tests: #52998
- Reland "Refine the not-found rendering process for app router": #52985
- Revert "Separate routing code from render servers (#52492)": #53016
Documentation Changes
- "Clarify the 'Existing Projects' section of the TypeScript docs:: #52944
- Update 02-dynamic-routes.mdx: #52975
- chore(docs): fix broken link: #53021
Misc Changes
- Update to latest version of turborepo: #52979
- Update
swc_core
tov0.79.22
: #52945 - chore(ci): add pnpm workspace for github actions: #52976
- Changed package manager for install-native.mjs to pnpm: #52971
- update CODEOWNERS config: #53017
Credits
Huge thanks to @ijjk, @wyattjoh, @sokra, @kdy1, @alexkirsz, @styfle, @ShaunFerris, @syedtaqi95, @Heidar-An, @huozhi, and @ztanner for helping!
v13.4.11
Core Changes
- fix: add missing
<preload>
fornext/image
in App Router: #52425 - Support metadata exports for server components not-found: #52678
- feat(next-swc): try to fallback native bindings with MODULE_NOT_FOUND: #52667
- Turbopack: Vc and Turbo Engine type system improvements : #51792
- Fix runtime edge not-found handling: #52754
- fix: forward NavigateOptions in adaptForAppRouterInstance: #52498
- fix(output): do not slice pathname unless ends with
.txt
: #52640 - Fix tagsManifest initialization check: #52776
- Turbopack: Experimental dev app pages support: #52680
- Turbopack: move Asset::ident to more specific traits: #52683
- Fix tracking of ContextModule: #52795
- Set process.title for router and render workers: #52779
- fix Remove unnecessary await: #52800
- Revert "perf: improve URL validation performance": #52818
- Refactor the client entry plugin: #52798
- Turbopack: Add manifest generation to pages: #52793
- Turbopack: move references() to specific traits: #52822
- Update default
moduleResolution
intsconfig.json
fromnode
tobundler
: #51957 - Turbopack: Next.rs API improvements: #52856
- update turbopack: #52899
- Update vendor @vercel/og: #52897
- Fixed:#52853 Lacking 'color' attribute in IconDescriptor Metadata: #52902
- Support basePath with edge runtime for Custom App Routes: #52910
- improve error DX on pages with RSC build errors: #52843
- fix: allow smooth scrolling if only hash changes (pages & app): #52915
- add edge support for next.rs API: #52885
- Allow general language codes in the Metadata API: #52920
- Fix client reference manifest for interception routes: #52961
- Refine the not-found rendering process for app router: #52790
- app-router: prefetching tweaks: #52949
- Revert "Refine the not-found rendering process for app router": #52977
Documentation Changes
- Update mention of route handlers for forms: #52781
- (Docs) add missing
js
version forgenerateMetadata
.: #52763 - docs : fix typo in React cache example: #52787
- chore(docs): Add mentioning of HOSTNAME env variable for standalone output: #52804
- Fix typo in docs: #52815
- Update 02-edge-and-nodejs-runtimes.mdx: #52888
- chore(docs): add Typescript statically typed links mention in link doc: #52847
- chore(docs): fix typo in generate metadata docs: #52904
- fix example component in MDX documentation: #52753
- wrong content for next.config.mjs for MDX Plugins: #52738
- Update 06-lazy-loading.mdx: Incorrect filename in Example on "Importing Named Imports": #52932
- Change "publically" to "publicly" in the routing docs: #52966
Example Changes
- examples: export
force-dynamic
from all dynamic routes: #52916
Misc Changes
- chore: add "please simplify reproduction" comment: #52631
- update job concurrency: #52788
- Lock node version to 18.16: #52894
- Update runs-on tags
- chore: add GitHub Action to manage "+1" comments: #52866
Credits
Huge thanks to @styfle, @huozhi, @balazsorban44, @kwonoj, @alexkirsz, @ijjk, @Jeffrey-Zutt, @timneutkens, @vinaykulk621, @Ryan-Dia, @sokra, @shuding, @steppefox, @hiro0218, @rjsdnql123, @feedthejim, @fgiuliani, @steven-tey, @AntoineBourin, @adamrhunter, @darshanjain-entrepreneur, @s0h311, @wyattjoh, @ztanner, @djreillo, @dijonmusters, and @cassidoo for helping!
v13.4.10
Core Changes
- Fix trailing slash with locale domain: #52343
- perf: use fs.readdirSync with withFileTypes: #52340
- Make
get_client_chunking_context
independent of context: #51928 - perf: use fs.opendir for better resource usage: #52341
- fix: metadatabase warning message: #52363
- perf: simplify getShortDynamicParamType on app-render: #52355
- fix: prevent infinite dev refresh on nested parallel routes: #52362
- turbopack: add incremental cache for node.js app rendering: #52172
- Refactor metadata og and twitter title to be always presented: #52320
- perf: reduce system calls on eslint plugin: #52359
- Turbopack: Use a different chunking context for web entry: #52404
- Temporarily revert change to pages render: #52407
- Remove integration tests now in vercel/turbo: #52413
- Update Rust nightly toolchain: #51757
- Cache concurrent
ensurePage
requests for the same page: #52360 - [turbopack]: Remove skipped integration tests: #52421
- Fix metadata layer webpack rule for server-only: #52403
- Override file based images with social images property: #52416
- Split the client reference manifest file to be generated per-entry: #52450
- fix(standalone): fixed
output: "standalone"
crashing build when there is noapp/
page: #51993 - fix: add aws packages to default
serverComponentsExternalPackages
: #52388 - refactor: avoid unnecessary async scopes in eslint: #52418
- Ensure useParams return array for catch-all routes: #52494
- turbopack: Module Trait: #52401
- Fix tracking of client reference manifest: #52505
- perf: create an experimental bundled version of the next server: #52206
- Chore: Remove redundant intersection type: #52453
- perf: Refactor recursiveReadDirSync: #52517
- add version to function config manifest: #52507
- Turbopack: Source trait: #52511
- Update id handling for fonts: #52559
- feat(turbopack): support swc transform plugins : #50401
- feat(babel-loader): provide migration help message for babel config: #52565
- Support global-error for ssr fallback: #52573
- Fix ISR case with bot requests: #52581
- fix(next/jest): jest can not load server-only code: #52393
- Turbopack: App Router build POC: #52036
- Avoid loading Next.js config again in render workers: #52587
- Add more extensions to
next-types-plugin
forNode16
/NodeNext
: #52562 - feat(next-swc): report native bindings load err code: #52570
- Move App Pages rendering into bundle: #52290
- feat(turbopack): support native webp: #52285
- Set sizes prop to any for svg icons: #52609
- Turbopack: OutputAsset trait: #52606
- chore(deps): bump
react@18.3.0-canary-9377e1010-20230712
: #52649 - Ensure root layout only render once per request: #52589
- Fix bundle path normalization for /index routes: #52650
- Turobpack: Next.rs API (part 1): #52259
- Clean up promises after resolving: #52656
- Catch layout error in global-error: #52654
- Fix per-entry client reference manifest for grouped and named segments: #52664
Documentation Changes
- chore(docs): fix link to
useSearchParams
: #52348 - docs: Clarify
create-next-app
requires public GitHub URLs.: #52367 - remove unnecessary dot.: #52387
- fix metadata-related typo in MDX documentation: #52446
- docs: Simplify message in React essentials section.: #52469
- docs: Improve error handling docs for server-side errors.: #52302
- docs: Add Playwright/Cypress Discord links: #52084
- docs: Add Kuma to CSS-in-JS supported list.: #52438
- docs: clarify
fetch
request de-duplication: #52100 - docs: Update TypeScript plugin section for VS Code prompt: #52111
- docs: Improve hydration mismatch error guide.: #52481
- docs: add Supabase loader for
next/image
: #52480 - docs: fix the incrementalCacheHandlerPath: #52124
- fixed error #52486 fetchUsers to fetchUser: #52487
- Update 08-parallel-routes.mdx: #52419
- docs: Add
formData
example for Route Handlers: #52358 - chore(docs): Typesafe
metadata
object: #52252 - docs: Update
_app
and_document
: #52479 - docs: add CDN optimization as possible hydration error cause: #52489
- docs: correct TypeScript spelling on the home page: #52500
- chore(docs): fix a few typos in image loader docs: #52508
- docs: fix grammar on Server Actions: #52556
- Fixed grammar in 03-react-essentials.mdx: #52597
- docs: fix typo in CSS Modules Description: #52599
- docs: Fix typo in generate-static-params.mdx: #52595
- docs: move MUI to supported list: #52584
- docs: Add missing closing tag for react hydration error message.: #52607
Example Changes
- examples: Update Convex to latest version (
0.19
): #52473 - Update examples: counter.tsx - Don't need empty space: #52576
Misc Changes
- Update swc_core to
v0.79.13
: #52371 - chore(ci): fix turbo input path globs: #52414
- fix(create-next-app): click event blockage under 1024px by adjusting z-index: #52074
- chore: add label to locked threads: #52497
- fix:
not-found.tsx
withoutput: export
: #52526 - use
npm pack
instead ofyarn pack
: #52563 - ci: skip build-native for docs only change: #52571
- Remove unnecessary
body-parser
: #52580
Credits
Huge thanks to @ijjk, @anonrig, @alexkirsz, @gfgabrielfranca, @styfle, @ztanner, @leerob, @sokra, @huozhi, @Bitbbot, @wyattjoh, @kdy1, @wbinnssmith, @shuding, @jridgewell, @BrennanColberg, @Nick-Mazuk, @delbaoliveira, @thomasballinger, @lucgagan, @nroland013, @SonMooSans, @jenewland1999, @thorwebdev, @jyunhanlin, @darshanjain-entrepreneur, @DuCanhGH, @Gnadhi, @yagogmaisp, @carlos-menezes, @balazsorban44, @ryo-manba, @timneutkens, @feedthejim, @vamcs, @matepapp, @SleeplessOne1917, @ecklf, @djreillo, @kwonoj, @gnoff, @feugy, @karlhorky, @starunaway, @FernandVEYRIER, @Ryan-Dia, @Terro216, @anthonyshew, and @suhaotian for helping!
v13.4.9
Core Changes
- Reland "ReverseTopological -> AdjacencyMap"": #52142
- Change the Server Actions feature flag to be validated at compile time: #52147
- Fix
modularizeImports
transform ofantd
: #52148 - fix: next.config.js with
unstable_getImgProps()
: #52153 - update tests list to include all passing tests: #52026
- Support scroll: false for Link component for app router: #51869
- Memoize useRouter from next/navigation when used in Pages Router: #52177
- chore(deps): bump react
18.3.0-canary-1fdacbefd-20230630
: #52005 - fix: infinite dev reloads when parallel route is treated a page entry: #52061
- disable flaky test cases: #52184
- Revert "chore(deps): bump react
18.3.0-canary-1fdacbefd-20230630
": #52192 - update turbopack: #52186
- Update CustomModuleType import: #52133
- Skip build-time dynamic code checks for specific polyfills in the Edge runtime: #52009
- Update Turbopack: #52198
- Use base36 for the RSC query: #52204
- Fix
dynamicParams
check in TS plugin: #52211 - Fix tree shaking for image generation module: #51950
- fix env reloading for turbopack: #52194
- Remove zod from require-hook: #52197
- Optimize watch ignore: #52238
- Remove the outdated error for find page dir: #52274
- Disable flakey turbopack env test: #52295
- skip hot reload sync event for applying hmr updates: #52270
- Handle 409s in fetch cache: #51652
- chore: remove experimental
appDir: true
from tests: #52291 - fix: correct
modularizeImports
for antd & ant-design/icons: #52169 - Update checksum algorithm to SHA1: #52102
- chore(deps): bump react to
7118f5d
: #52282 - Update eslint-plugin-react-hooks to 5.0.0-canary-7118f5dd7-20230705: #52275
- Named page chunks: #51921
- chore: fix next dev turbopack benchmark: #52328
- Fix to use keep-alive in standalone mode: #50221
- Use 127.0.0.1 as the default host for the standalone server #52283
Documentation Changes
- Update generate-image-metadata.mdx: #52230
- docs(mdx): Add clearer instructions on the storage location of mdx-components files.: #52187
- docs: Improve some of the error messages pages.: #52271
- fix wrong Link import: #52298
- Document redirect parameters: #51987
- Add manual installation instructions for pages: #51995
- Update 10-router-handlers.mdx: #52098
- Add app router example: #52066
- doc: update typo in instrumentation page: #52311
Example Changes
- Remove legacy head.js in examples: #52292
Misc Changes
- Update test result step: #52154
- Update result job condition: #52155
- fix workflow needs: #52180
- chore: update issue template option to "App Router": #52287
- msic: disable otel esm test: #52325
- Test Progressive Enhancement of Server Actions: #52062
- fix(create-next-app): add missing metadata type: #52299
Credits
Huge thanks to @huozhi, @shuding, @ijjk, @styfle, @sokra, @timneutkens, @ztanner, @alexkirsz, @simonswiss, @feikerwu, @lubakravche, @leerob, @masnormen, @bottxiang, @acdlite, @delbaoliveira, @feedthejim, @mhmdrioaf, @tyler-lutz, @sebmarkbage, @vincenthongzy, @yigithanyucedag, and @doinki for helping!
v13.4.8
For a more detailed summary of recent performance improvements around compilation, please see this comment.
Core Changes
- Auto fill title/images/description from openGraph for twitter if missing: #51453
- Route Module Updates: #51433
- fix(typo): rename var name in comment: #51531
- feat: support for numeric separators in revalidate config: #51438
- Support response aborting: #51594
- Next Build Turbo POC (2): #51546
- bugfix: route interception with dynamic paths: #51526
- add edge rendering for app dir for Turbopack: #51631
- Pages Error Route Module Rendering: #51374
- Revert "add edge rendering for app dir for Turbopack": #51659
- Update cache handling in draft mode: #51663
- Add esm entry for next/server and alias @vercel/og: #51651
- Hot reload when conflicted pages detected and when conflicts are resolved: #51516
- Fix standalone rendering for unmatched _next routes: #51611
- add edge rendering for app dir for Turbopack: #51666
- Revert "Update
swc_core
tov0.78.15
": #51716 - type check tests (and convert next-test-utils.js to ts) : #51071
- Add default modularizeImports that breaks up @mui/icons-material, @mui/material, date-fns, lodash, lodash-es, ramda, react-bootstrap: #50900
- Move Pages
render
out of server: #51678 - Add url to patched fetch response: #51665
- Correct Flight client's condition for SSR and
createServerReference
: #51723 - Update manual basePath with trailingSlash: #51726
- feat: add body parser limit for server actions: #51104
- fix: handle 404 errors in HotReload client: #51637
- Add critical next config value to github info: #51715
- Fix not-found handling in turbopack: #51735
- Allow matching against user-agent in rewrites that match headers: #48271
- revalidate should be more than a boolean: #51627
- Rename
serverActionsSizeLimit
asserverActionsBodySizeLimit
and add docs: #51755 - Fix HMR for missing dependencies in next-app-loader: #51778
- fix: interception rewrites should support catch-all segments: #51787
- Remove
execSync
: #51785 - Remove unncessary source matching from loader: #51775
- Fix
NODE_OPTIONS='--inspect'
not running expected: #51467 - Fix tree-shaking for metadata image functions on the Edge runtime: #51762
- Add
WATCHPACK_WATCHER_LIMIT=20
: #51826 - Simplify Flight manifest plugin: #51589
- performance: don't compile on hover on dev: #51830
- Refactor
next-font-manifest-plugin
: #51835 - feat: Introduce eslint rule for async client components: #51547
- fix: webpack target should match node engines: #51852
- Enable compression for Webpack's cache during dev: #51851
- perf: only require nextjs-require-cache-hot-reloader related API in dev mode: #51834
- fix: build stats should properly report root page size in appDir: #51854
- Optimize client entry creation: #51849
- Fix white screen when navigating to pages in certain cases: #51866
- Fix missing request body in DELETE and OPTIONS Route Handlers: #51874
- make stdout blocking on macos: #51883
- Fix windows fill metadata dynamic path: #51885
- Support relative url for openGraph.url and itunes.appArgument: #51877
- feat(next-dev): add a new experimental flag: #51895
- next/node-polyfill-web-streams: fix web stream polyfill for Node v16: #51901
- node-polyfill-web-streams: require from stream/web instead of stream: #51906
- Add retries and clear message to font fetching: #51890
- performance: enable minification for the server bundles: #51831
- Simplify module context invalidation: #51905
- Reduce the client bundle size of App Router: #51806
- fix turbopack mdx import map: #51881
- error recovery during turbopack hydration: #51882
- Ensure
edge
runtime Pages API/App Route handlersAbortSignal
aborts on client disconnect: #51727 - adds payload to server-external-packages.json: #51933
- fix(next): improve error for using outside of document: #45056
- Support react profiling option for app dir client components: #51947
- Add cpu-features to server external packages: #51946
- Add
unstable_getImgProps
export fromnext/image
: #51205 - Fix eslint async client component: #51952
- fix modularizeImports with @mui/material: #51953
- Fix entrypoints.get and entrypoints.stream from turbopack: #50733
- Optimize next-app-loader file resolution: #51924
- fix(typedRoutes): added missing anchor props to LinkRestProps: #51977
- Update
turbopack
andswc_core
tov0.78.24
: #51943 - export config into functions config manifest: #51700
- Add shared input filesystem: #51879
- Make sure DevEx can approve docs MRs / Remove Spaces: #51996
- Filter invalid image descriptor from metadata images: #51992
- Fix NextRequest constructor parameters: #52001
- Update edge-runtime to latest: #51944
- Increase time and size windows for cached on-demand entries: #52019
- Avoid disposing middleware and instrumentation hook during development: #52022
- Update displayed error message for rsc case: #52004
- Refactor some loaders to be synchronous: #51997
- Optimize inlined Flight data array format: #52028
- Revert "Optimize inlined Flight data array format": #52039
- Refactor ContentSources to RouteTree: #51660
- Fix font missing during server HMR: #52033
- Enable Pages Route Module Rendering for Edge: #51894
- Ensure non-implicit unstable_cache tags are propagated: #52058
- Delegate static analyzation task to the router worker: #52104
- Add default modularizeImports for antd / ant-design/icons / ahooks: #52031
- Avoid unnecessary
resolveExternal
calls: #52053 - Remove EnvironmentIntention: #51965
- fix: env hot reload for RSC pages: #51930
Documentation Changes
- added good to know in
/app
based pages and layout in nested layouts: #51558 - docs: Add Panda CSS to CSS-in-JS docs.: #51484
- Add docs for src directory to include tailwindcss: #51619
- Add page router documentation: #51626
- docs: Add 'DO NOT EDIT' comment: #51600
- Fix validator action breaking when MRs originate from forks: #51668
-
docs
: fix generated app icons file extensions: #51562 - Fix typo in 01-typescript.mdx: #51669
- fix(docs): added missing dot: #51718
- Update 01-images.mdx: #51532
- Add app to tailwind.config.js in fonts documentation.: #51671
- Update docs for Google Analytics 4: #51405
- Fix Typo in Optimizing - Open Telemetry docs: #51729
- docs: improve minor grammar mistake: #51758
- fix: typo into 03-css-in-js.mdx page: #51761
- docs: Add updated
next/image
video.: #51790 - docs(deploy): fix GitHub Actions cache key: #51789
- Fix usage of article "an" before a consonant sound: #51803
- Update 10-router-handlers.mdx: #51850
- [docs] fix angle bracket in mdx: #51920
- [docs] Replace the term "hole" with "slot": #51919
- [docs] fix curly brackets in mdx: #51916
- Add separate links in shared documentation: #51733
- Fix run-on sentence: #51956
- docs: make custom image loader a client component.: #51858
- docs: clarify
reactStrictMode: true
by default: #51931 - Remove unnecessary mention of scroll false: #51964
- Update next lint section: #51898
- Docs: Fix broken link: #51991
- chore(docs): explain
NODE_ENV
environment variable: #52003 - fix(create-next-app): consolidate messages to "Would you like to use": #52011
- Docs: Fix missing typings for typescript example: #52076
- docs: Fix broken link: #52092
Example Changes
- examples: improve
with-supabase
example: #51442 - examples: add missing
supabase-js
dependency forwith-supabase
example: #51703 - docs: update with-next-translate example using appdir: #51720
- fix some issues on examples/app-dir-i18n-routing: #51576
- chore(examples): relax pinned versions to fix npm install fail due to peer deps issue: #51636
- Avoiding try-catch block on examples/app-dir-i18n-routing: #51786
- [examples] Update styling for with-supabase example: #51751
Misc Changes
- chore: make next/src/build files indexable on github: #51647
- fix lockfile: #51650
- Remove the 'notify' modifier on .vercel.approvers: #51655
- Move the Next.js team back to github codeowners: #51657
- Revert "[Docs] Fix validator action breaking when MRs originate from …: #51674
- Update
swc_core
tov0.78.15
: #51269 - Update link validator: use checks, fail on MR from forked repo: #51706
- Update page.tsx tw className: #49040
- Update needs for build and deploy: #51731
- Ensure we run cargo-integration on next change: #51736
- Update
swc_core
tov0.78.24
: #51857 - Revert "Update
swc_core
tov0.78.24
": #51940 - Update codeowners: #51935
- lint fix
- Ensure metadata test is not affected by other tests: #51973
- Remove test skip: #51988
- Loosen metatdata test matcher: #52007
- chore(script): improve markdown changelog output in sync-react.js: #52052
- chore(script): fix typo in sync-react.js pull request url: #52057
- fix app-hmr-changes.test.ts by updating next-tweet: #52046
- link validator: log broken links for MRs from forks: #51963
- Renable flaky tests disabled before: #51680
Credits
Huge thanks to @huozhi, @wyattjoh, @dijonmusters, @danger-ahead, @bre30kra69cs, @leerob, @Yash-Singh1, @jridgewell, @alexkirsz, @ztanner, @sokra, @krmeda, @tyler-lutz, @ijjk, @delbaoliveira, @bigyanse, @kdy1, @2-NOW, @ForsakenHarmony, @Mingyu-Song, @morganfeeney, @timneutkens, @aralroca, @nickmccurdy, @adamjmcgrath, @shuding, @devjiwonchoi, @angel1254mc, @cxa, @ibash, @mohanraj-r, @kevinmitch14, @iaurg, @steebchen, @Cow258, @charlesbdudley, @feedthejim, @tyhopp, @Drblessing, @styfle, @kwonoj, @MaxLeiter, @milovangudelj, @SukkaW, @jacobsfletch, @JoshuaKGoldberg, @zignis, @ChristianIvicevic, @mrxbox98, @oliviertassinari, @balazsorban44, @fsansalvadore, @DuCanhGH, @tvthatsme, @gnoff, and @SonMooSans for helping!
v13.4.7
Core Changes
- Route Module Updates Redux: #51373
- Lock down server IPC address: #51378
- Revert "Route Module Updates Redux": #51409
- Fix bundling of Server Actions: #51367
- Fix pnpm lock: #51503
- router: add layout and other file supports to parallel routes: #51413
- Next Build Turbo POC: #49942
- add edge rendering for app dir for Turbopack: #50830
- Fix shared action module in two layers: #51510
- Revert "Next Build Turbo POC (#49942)": #51538
- Fix font styles on react dev overlay: #51518
- fix typo in x-next-revalidate-tag-token header: #51432
- Add docs links to RSC errors: #51557
- Moved new line to warnOnce call: #51552
- Update id env prefix: #51588
- router: support layout/special files as direct children of parallel routes: #51604
- use env var to switch next.js to turbopack mode: #51353
- Revert "add edge rendering for app dir for Turbopack": #51617
- Ensure upgrade request has request meta: #51590
- Revert "Fix standalone not found": #51506
Documentation Changes
- docs: Add streaming AI example.: #51382
- docs: remove copy mentioning appDir as an experimental feature: #51403
- examples: update
with-supabase
example to App Router: #51335 - Fix typo in image alt: #51487
- docs: add better examples to
next/image
docs.: #51457 - Go directly to caching section: #51501
- fix(typo): add missing word: #51490
- fix(typo): add missing comma: #51489
- Remove duplicate bullet point in app router migration docs: #51440
- fix: missing come: #51437
- Linted MDX: #51530
- docs: Fix typo: #51517
- Migrate validate links script from next-site and setup GitHub action: #51365
- Remove extra word in env key error: #51512
- Remove duplicate word in 11-draft-mode.mdx: #51580
- Broken link at 01-static-and-dynamic-rendering.mdx: #51582
- refactor tests for readability: #51051
Example Changes
- Upgrade with-redux example to app router: #49994
Misc Changes
- ci(workflow): upload test trace for deploy e2e: #51389
- Fix pnpm
ERR_INVALID_THIS
on Node 20: #51406 - Update flakey build output test: #51411
- Fix native build: #51522
- Revert "Fix pnpm
ERR_INVALID_THIS
on Node 20": #51539 - Update .vercel.approvers: #51417
- Update broken link validator: #51586
- Temporarily disable flaky test: #51616
- Update flakey build output test: #51625
Credits
Huge thanks to @wyattjoh, @ijjk, @dvakatsiienko, @leerob, @kwonoj, @nickmccurdy, @brunoeduardodev, @dijonmusters, @shuding, @tyler-lutz, @huozhi, @feedthejim, @alexkirsz, @sonam-serchan, @vicsantizo, @leodr, @wiscaksono, @sokra, @delbaoliveira, @ztanner, @hustLer2k, @joshuabaker, and @ForsakenHarmony for helping!
v13.4.6
Core Changes
- Fix windows metadata slashes: #51088
- Do not merge chunkGroups' CSS files: #51103
- Add unique search query for RSC requests to be cacable on CDN: #50970
- add turbopack integration tests to CI: #50904
- Add option for debugging CPU usage: #51174
- Prefer module fields for RSC server layer: #51179
- Update
next/head
warning to link to the correct docs page: #51013 - Revert "Do not merge chunkGroups' CSS files": #51193
- fix: helpful error when
output: export
andnext export -o
: #51191 - Strip _rsc query for navigation between app and page: #51195
- Fix standalone not found: #51172
- fix(cli): add all available options to cli commands, format them consistently: #48708
- update storybook example (copy from vercel/vercel): #50865
- chore: remove useless duplicate code: #50705
- fix: app router hash scrolling should respect scroll-padding: #51268
- Fix build error about trace file and edge route: #50808
- chore(router): fix typo in comment: #50581
- Add mikroORM to external package list: #50487
- [docs] Clarify that merely changing
extension
does not load.md
f…: #49785 - Correct build workers perf issue: #51271
- Remove edge functions tracking in dev server: #51122
- app router: fix double fetch on prefetch={false}: #51292
- Invalidate client cache when cookies have changed in Server Actions: #51290
- feat(turbopack): enable sassOptions: #51259
- Route Module Cleanup: #50936
- Validate i18n locale domain: #50220
- chore: add dark mode for dev overlay: #48601
- chore: update next/font/google font list: #49969
- fix: Incorrect build size outputs for app dir: #50768
- Simplify server CSS handling: #51018
- Allow configuring analyzerMode in bundle-analyzer: #47468
- Revert "Prefer module fields for RSC server layer": #51316
- Fix Server Actions compiler: #51318
- Revert "Route Module Cleanup": #51322
- test(next-dev): hard fail if next-dev runs with turbopack intenral flag: #51308
- Revert "test(next-dev): hard fail if next-dev runs with turbopack intenral flag": #51327
- Update Next.js code owners: #51319
- Fix CSS deploy id case: #51325
- Update turbopack: #51336
- Fix shared layer bundling in Edge Runtime: #51348
Documentation Changes
- Update 01-images.mdx: #51133
- Update next-image-unconfigured-host.md with correct Remote Patterns Documentation link to new docs: #49750
- Fixes the link from components/fonts to api/fonts: #51169
- Docs: Fix useSearchParams link: #51151
- docs: Improve Actions docs.: #51145
- docs: clarify
usePathname
usage as client hook.: #51146 - Fix a typo: #51176
- docs: fix prettier error: #51182
- Update static assets page to filter out information: #51180
- Makes codeblock language and filename extensions consistent: #51056
- Fix a mistake URL in "docs/generate-metadata.mdx/metadataBase": #51199
- Add separate lines to eslint prompt in 02-eslint.mdx: #51143
- [Docs][CSS-in-JS]: Update Vanilla Extract link: #51192
- Fix typo on strategy: #51189
- app-icons: correct valid route segments for icon/favicon/apple-icon : #51188
- docs: fix typos: #51185
- Adds
Note
toGood to know
consistency: #51080 - docs: fix prettier lint: #51222
- [docs] Add missing Edge Runtime APIs: #51224
- docs: Add Tolgee to internationalization section: #49754
- Clarify the limitations of NEXT_PUBLIC_: #49105
- Update 02-fonts.mdx: #51249
- Fix middleware documentation: #48876
- docs: fixed a typo in parallel routes: #51267
- Update module-path-aliases.md: #43592
- CSS concatenation order matches the import order: #39889
- Fix broken link: #51281
- Fix broken links: #51285
- Update images.mdx: #51275
- Docs: Remove extra word in 03-scripts.mdx: #51304
- Update example of Server Actions HoC: #51299
- Adds
env
suggestions: #51312 - docs: fix the url of router event: #51339
Example Changes
- Fix with typescript stripe example fixes #50541: #50574
- fix: cypress component testing - fixes #50283: #50303
- fix deprecated configureStore in with-redux-saga example: #50342
- Show how to utilize the provided .env file in the docker-compose file: #50712
- update(examples): Update with-sentry example: #47855
- Update Player.tsx to improve code readability and styling.: #50275
- Update Docker examples to use Compose v2 command: #51134
- with-facebook-pixel: new implementation with app folder: #49880
- change strapi example to latest one - fixes #51332: #51334
- Auth0 V2 migration update: #45302
- examples: migrate
with-elasticsearch
to TypeScript: #44842
Misc Changes
- Fix getting last stable release stats: #51106
- ci(workflow): consolidate bytesize upload workflow: #51110
- ci(workflow): enable test trace upload: #51107
- Increase remote cache timeout for swc builds: #51270
- Update flakey rsc streaming test: #51274
- fix trigger release step
- Update flakey build output test: #51307
- Skip cargo bench job on release: #51311
- Ensure swc is copied for release stats: #51315
- Update flakey deploy tests: #51314
- Update e2e deploy tests to continue: #51321
Credits
Huge thanks to @ijjk, @huozhi, @kwonoj, @shuding, @shozibabbas, @omarhoumz, @jamespearson, @tristndev, @sokra, @leerob, @AldeonMoriak, @delbaoliveira, @manovotny, @styfle, @mirismaili, @tyler-lutz, @SuttonJack, @jeremydouglas, @MaxLeiter, @Kikobeats, @JanCizmar, @mltsy, @WilderDev, @Guilleo03, @Willem-Jaap, @escwxyz, @wiredacorn, @Ethan-Arrowood, @BaffinLee, @ztanner, @greatSumini, @ciruz, @kijikunnn, @DustinsCode, @riqwan, @joostdecock, @nikolovlazar, @Bowens20832, @JohnAlbin, @timneutkens, @feedthejim, @wyattjoh, @gidgudgod, @maxproske, @dunklesToast, @yyuemii, @mPaella, @mknichel, @niko20, @jyunhanlin, @mkcy3, and @valentinpolitov for helping!
v13.4.5
Core Changes
- Fix static metadata routes runtime when root layout is in edge runtime: #50351
- Ensure App Router and Pages Router modules can't share chunks: #50327
- Fix CJS optimizer: #50376
- fix: edge runtime with
next/legacy/image
: #50343 - Next.js Turbo build: turbopack-ecmascript-runtime and ChunkData: #50375
- fix: eslint not ignoring "/app": #50261
- Pages Route Module: #50070
- Upgrade vendored @vercel/og: #50395
- Fix runtime:edge with large next.config.js: #50396
- Rename header conversion functions: #50389
- Refactor internal modules: #50338
- Add new build and test workflow: #50436
- Add
cache-control
header on 304 response: #50408 - App Router: fix relative query/hash handling in
next/link
and router push/replace: #49521 - Revert "land: Include charset=utf-8 with x-component Content-Type header": #50472
- Optimize Next.js bootup compilation: #50379
- Fix CSS duplication related problems: #50406
- update swc_core and turbopack: #50519
- Fix global SCSS on Node.js <= 14: #50185
- [edge] bump @edge-runtime/* package suite: #49092
- packages/font: run update-google-fonts script: #50608
- [turbopack]: Fix HEAD requests: #50366
- Add experimental id handling: #50470
- fix
@vercel/turbopack-node
types (and more turbopack updates): #50605 - Add new
Google-InspectionTool
token to known bot UA list: #50467 - Ensure user-installed opentelemetry package has the minimal required version: #50554
- Remove
cssFiles
field: #50610 - Perf: reduce metadata RSC payload: #50678
- Fix image loader file emission path for edge runtime: #50683
- fix: a11y issues in the overlay component (HMR): #49782
- next/font: tolerate missing unused fields in capsize map: #50708
- fix: conditional cookies in draft mode: #50660
- Optimize next-app-loader resolving speed: #50745
- Improve compile time on large application: #50792
- fix(next-swc): reenable filesystem cache: #50651
- Update fetch dynamic error handling: #50822
- Shrink the react key size in metadata RSC payload: #50739
- Bail out of 404 page when favicon.ico doesn't exist: #50795
- Pages Route Module Rendering: #50404
- upgrade edge-runtime dependency: #50636
- Update id config handling: #50847
- [turbopack]: Use tip-of-branch for benchmarks: #50615
- Fill basic twitter metadata with opengraph when missing: #50854
- Add layer to module trace: #50851
- Add additional font-loader spans for tracing: #50889
- Update react to latest versions: #50604
- fix: App Router with assetPrefix: /: #49622
- Polish error page styling: #50916
- Update next-swc handling for MR stats: #50933
- Add experimental caseSensitiveRoutes config: #50869
- update turbopack: #50819
- Revert "update turbopack": #50942
- Fix shorthand prop wrongly handled in the Server Actions compiler: #50937
- Revert "Revert "update turbopack"": #50947
- Update codeowners to use Vercel Spaces: #50841
- Drop the
chunks
field in the client manifest for SSR: #50959 - Invalidate prefetch cache when a tag or path has been revalidated on the server: #50848
- Bump @types/node: #50940
- Pick esm main fields and condition names first for RSC server layer: #50548
- Bump to
typescript@5.1
: #50557 - Move required chunk collection to the upper level: #50983
- Upgrade webpack to 5.86.0: #50992
- Turbopack next/font/google: Use capsize's xWidthAvg to compute fallbacks: #50878
- Fix usage of
router.refresh()
with Draft Mode in App Router: #50941 - chore: mark forceOptimisticNavigation as internal: #47905
- Fix rsc payload fetch failures due to state tree encoding: #51017
- edge: use JSON parse instead of inlining the manifests objects: #50960
- Fix esm module import warning for middleware loader: #51014
- Updates prettier to latest version.: #51000
- Ensure headers instance is serialized: #51047
- Ensure id handling applies for dynamic import in pages: #51049
- Avoid server insertion react key warning: #51053
- fix:
verbatimModuleSyntax: true
support in tsconfig.json: #48018 - Update app router revalidate handling on deploy: #51062
- Apply optimization to middleware when using babel: #51067
- fix:
moduleResolution: bundler
support in tsconfig.json: #51065 - Fix another case with app router revalidation: #51076
- Remove redundant condition: #51070
Documentation Changes
- [Next Docs] Migrate new docs from next-site to Next.js repo: #50701
- fix: add missed / at useSelectedLayoutSegment at App routing/Pages and Layout: #50956
- Adds missing
async
to Opengraph Image code example.: #50990 - docs: Correct
useFormStatus
to be a client component: #50991 - Update create-next-app docs: #50981
- Update 12-colocation.mdx: #50975
- Add appDir-specific guidance for next-router-not-mounted error: #50076
- Adds missing JavaScript codeblock in Opengraph Image API reference: #50996
- Update 10-router-handlers.mdx - Switcher Created + Small Syntax Improvement: #51003
- Update 02-eslint.mdx: #50986
- Fix typos in 01-contribution-guide.mdx: #51006
- fix
revalidateTag
import: #51005 - Fix Typo in Metadata API Description: #51024
- Clarify a few things about the
instrumentation.ts
file: #51034 - Add section on how to preview docs changes on VSCode: #51019
- Adds the "why" for
next/image
optimization: #51066 - Remove html from summaries: #51008
- Removes
PORT
from.env
concatenation example: #51063 - Adds missing
and
inHow to Use These Docs
section: #51058 - docs: Clarify manual graceful shutdown in dev server: #51078
- Update 03-linking-and-navigating.mdx: #51084
- Fixed phrasing (extra verb): #51054
Example Changes
- Update Vanilla Extract Example: #50394
- Added Azure Cosmos DB started code, containing a minimal app and README.md: #49128
Misc Changes
- Update build and test workflow branch
- Update workflow cancel handling: #50442
- Update env in new workflow
- Break up large test suites: #50458
- Update flakey rsc manifest test: #50506
- disable test case for Turbopack: #50530
- chore: Update
swc_core
tov0.76.37
: #50311 - Remove old CI workflow: #50584
- Update test concurrency: #50588
- Ensure final workflow job always runs: #50589
- Update telemetry failure logs: #50601
- Fix required check job: #50620
- Ensure swc builds are triggered eagerly: #50632
- chore: Enable
share-generics
: #50673 - ci(workflow): allow to trigger native builds manually: #50703
- Add hello-world test for pages and app: #50780
- ci(workflow): enable datadog traces for the tests: #50619
- Revert "ci(workflow): enable datadog traces for the tests": #50815
- ci(workflow): upload Turbopack bytesize to datadog pipeline: #50600
- change(create-next-app): Get-pkg-manager logic change.: #50372
- Update MR stats next-swc build: #50824
- add auto labeling for edge team: #50842
- Add turbo summary artifact for swc builds: #50857
- Update MR stats workflow: #50853
- Optimize cloning for MR stats: #50859
- ci(workflow): loosen condtions for uploading turbopack bytesize: #50820
- Add ignores to fix jest-haste failures: #50875
- better rust setup in CI: #50905
- remove unused dev dep ts-node: #50939
- fix rust install being skipped when it shouldn't be: #50946
- [Next Docs] Update Git Workflow: #50579
- ci(workflow): enable test trace again: #50817
- Only upload turbopack metrics on cache miss: #50945
- Fix workflow check
- Fix windows build check
- Add corepack env for linkPackages: #50973
- Add test for hidden form fields at the beginning of a Server Action form: #50978
- Add max job timeout for build workflow: #50998
- chore: pin to
npm@9.6.7
: #51044 - chore: drop unused
@webassemblyjs
: #51045 - chore: remove skip to renable tsconfig tests: #51061
- Update response cache test: #51072
- ci(workflow): generate run summary for all build targets: #51057
- Fix race condition with publish: #51105
Credits
Huge thanks to @huozhi, @ijjk, @timneutkens, @shuding, @styfle, @alexkirsz, @devjiwonchoi, @wyattjoh, @SuttonJack, @sokra, @smaeda-ks, @keyz, @kdy1, @Schniz, @MaxLeiter, @jridgewell, @ForsakenHarmony, @koba04, @wbinnssmith, @kwonoj, @vinaykulk621, @Kikobeats, @gnoff, @delbaoliveira, @jiwooIncludeJeong, @manovotny, @ethanmick, @tyler-lutz, @didemkkaslan, @itsmingjie, @v1k1, @thepatrick00, @taylorbryant, @kvnang, @balazsorban44, @alainkaiser, @feedthejim, @simPod, @svarunid, and @pauek for helping!
v13.4.4
Core Changes
- test(turbopack): script to sync latest test lists: #50008
- Pages Module Transition: #49962
- Server Actions: Fix member expr in closure captured values: #50020
- Error in next export when serverActions is enabled: #50039
- [turbopack]: Update renamed SubpathValue: #49636
- Fix default metadata is missing in root not-found: #50044
- Always defer close tags to be the suffix of body stream: #50056
- Fix types of cookies(): #50052
- Fix client references extraction of CJS exports analysis: #50059
- Add
x-forwarded-*
headers to turbopack renders: #50012 - Remove node-sass from peerDependencies: #50065
- Add optional generic parameter to NextResponse: #47526
- feat(turbopack): initial sass-loader support: #49882
- update test snapshots: #50159
- [create-next-app]: respecting the user's
init.defaultBranch
git con…: #49960 - Update
swc_core
tov0.76.18
: #50137 - Fix navigating on not-found: #50047
- Fix env variables set in next.config.js: #50179
- Add warning for edge with force-static: #50182
- fix: add missing
draftMode
type to GetServerSidePropsContext: #50184 - Fix react fetch deduping without next cache: #50187
- Fix pages react alias: #50128
- Add the
node
condition to import resolution: #50007 - test(turbopack): run next.js integration tests with denylist: #50172
- Move debugging variable into useEffect: #50210
- refactor webpack loaders: #49535
- Fix static workers distributing: #50194
- Ensure NEXT_DYNAMIC_NO_SSR_CODE has a unique name: #50219
- fix: Added blockfrost-js, lucid-cardano & mongoose package to srvExtPackages to prevent issue #49783 from happening.: #49938
- change static path to /_next/static/media: #50207
- Add special route types to the link type declaration: #50066
- fix: NODE_OPTIONS='--inspect' in next dev for debugging: #48019
- enable more test cases for turbopack: #50154
- feat(next-swc): Implement CJS optimizer: #49972
- Fix alias for react-dom/server: #50238
- Revert "feat(next-swc): Implement CJS optimizer": #50247
- Fix free port handling: #50248
- feat(next-swc): Add CJS optimizer again: #50249
- Fix edge case in the CJS optimizer: #50258
- Remove static analysis of
process.env
: #50260 - Update next start listening to behave consistently: #50293
- Update server invoke-request: #50296
- Update unstable_cache key to include args: #50301
- Add root detection utils: #50305
- fix sass handling after refactoring: #50259
- Alias next/server for edge runtime: #50268
- [turbopack]: Serve
_devMiddlewareManifest.json
from router: #50241 - Fix catch-all edge app route: #50313
- land: Include charset=utf-8 with x-component Content-Type header: #50314
- do not apply sass loader on existing loaders: #50308
- Add missing react-dom/client alias: #50324
- Fix missing error when using Actions on the client layer without enabling the feature flag: #50257
- remove allowlist, only use denylist, enable newly passing tests: #50325
- Fix SWC loader options for files outside of RSC layers: #50341
Documentation Changes
- Update app-static-to-dynamic-error.md: #50085
- Update invalid-new-link-with-extra-anchor.md: #50036
Example Changes
- fix: use node copyFile for cross-platform support: #48740
- Clerk example updates: #50021
- Fix TypeScript error in with-mongodb example: #50094
- Use correct casing in filenames: #50223
Misc Changes
- test: disable cache flaky test: #50064
- add tracing for turbopack: #49920
- ci: update github token: #50216
- Fix metadata e2e deploy test: #50252
- Fix middleware e2e deploy test: #50317
- Parallelize Turbopack CI tests: #50292
- makeDir should use func: #50136
Credits
Huge thanks to @kwonoj, @wyattjoh, @shuding, @huozhi, @jridgewell, @ijjk, @karlhorky, @lycuid, @MarkAtOmniux, @darshkpatel, @johnta0, @kdy1, @sokra, @timneutkens, @devagrawal09, @ibrahemid, @styfle, @JesseKoldewijn, @padmaia, @Cow258, @javivelasco, and @05lazy for helping!
v13.4.3
Core Changes
- Optimize trace span relationships: #49697
- refactor(next-core): deprecate custom_ecmascript_transforms: #49629
- Remove old-space-size filtering from dev server: #49727
- Rework client router filter handling: #49741
- fix(image): preload should respect referrerPolicy: #49584
- Fix cookies().set missing in types: #49806
- fix: Disable
tracing/release_max_level_off
for wasm, too: #49639 - Apply user-defined PostCSS transforms to foreign code: #49463
- add @swc/core to server external packages: #49721
-
turbo-binding
->turbopack-binding
: #49816 - refactor(next-core): consolidate react_refresh options: #49822
- add support for globally providing mdx components to turbopack: #49818
- Refactor pages structure: #49802
- Fix conflict when re-exporting multiple Client References: #49468
- refactor(next-core): move transforms to plugin: #49621
- Fix chained
.bind
of Server Actions: #49874 - Fix port value for metadataBase: #49924
- Introduce NextMode: #49852
- Port sorted-routes.ts to Rust: #48334
- Move build workers count change behind flag: #49937
- Update default for appDocumentPreloading config for minimalMode: #49952
- Add @vercel/og to external server packages: #49944
- Fix custom server React resolution with app dir and pages both presented: #49805
- Error in
next export
whenserverActions
is enabled: #49959 - Reset not-found and error boundary when navigating: #49855
- Revert "Error in
next export
whenserverActions
is enabled": #50019 - fix: warning fetch for
[object Request]
specified: #50003 - Remove custom handling for prebundled react env: #49954
- fix: set cookies followed by
redirect()
: #49965
Example Changes
- chore: update examples to use draft mode: #49720
- Add mdx page example to examples/app-dir-mdx: #47082
- Update with-supertokens example: #49804
- with-clerk example updated to app router: #49717
- Upgrading react-ga to react-ga4: #48932
- update with-turbopack example: #49332
Misc Changes
- Add trace-to-jaeger to workspace: #49692
- refactor(scripts): apply fmt: #49716
- refactor(scripts): fix clippy errors: #49719
- chore(turbopack): Update
swc_core
tov0.76.6
: #49792 - Fix going back to page after applying hash link: #50006
- build(cargo): update turbopack: #50013
- Suggest a replay in the bug issue template: #50022
Credits
Huge thanks to @timneutkens, @kwonoj, @styfle, @ijjk, @alexanderbluhm, @Fonger, @shuding, @kdy1, @alexkirsz, @souporserious, @ForsakenHarmony, @rishabhpoddar, @devagrawal09, @DevEsteves, @huozhi, and @padmaia for helping!
v13.4.2
Core Changes
- make sure server component externals only apply to files resolvable by node: #49147
- Fix link not being GC'd sometimes: #49318
- Fix issue where nextP is not replaced in searchParams: #49315
- Add typescript version to next-info: #49346
- Upgrade React to 18.3.0-canary-16d053d59-20230506: #49402
- Remove empty config warning: #49435
- app-router: add startTransition call to revalidate dispatcher: #49453
- Inline static data buffer instead of using fs read: #49323
- Revert "Temporarily disable app dir export integration test": #49311
- Add link to Server Actions docs.: #49384
- Replace metadata clone with custom handler in dev: #49343
- Add request-async-storage to the shared layer: #49470
- Fix revalidate: false detection in app: #49473
- Fix metadata image route encoding: #49482
- Fix actions redirect handling: #49483
- Restrict
useOptimistic
anduseFormStatus
APIs on the server layer: #49331 - Fix external rewrite with body: #49487
- fix: better error message with an invalid assetPrefix: #49403
- Fix Node Crypto polyfill: #49288
- Fix: Router.query contains _next when using middleware with dynamic routes: #48753
- type: update React.CSSProperties type to Record: #49186
- Fix server CSS imports and HMR not working properly in specific conditions: #49462
- Fix HMR support for server layer imported SASS and SCSS: #49534
- Support
.bind
syntax with Action functions: #49422 - ci(test): enable turbopack test: #49466
- feat(next-core): relay transform plugin: #48899
- Fix canonical url for dynamic routes: #49512
- Add experimental compile/generate handling: #49491
- chore: cross-platform
rm -rf
script: #49529 - refactor(next-core): remove ast cloning in custom transform: #49560
- fix: a11y issues in react-dev-overlay: #49460
- Add tests for HMR: #49206
- Add stub Route type for typedRoutes: #48099
- Add test for appdir referenced images: #49242
- feat: Allow trace-level logging for non-published release builds: #49564
- Fix unexpected object mutation while resolving Open Graph: #49514
- actions: forward fetch rejections to the action handler: #49577
- actions: make cookies.set revalidate: #49582
- interception route: fix route groups breaking the referrer computation: #49602
- Allow export decl with any init value in the actions compiler: #49600
- Handle unstable_cache in pages: #49624
- Update cache method handling during build: #49633
- Fix fetchCache and no-store handling: #49638
- interception routes: fix rewrites order: #49615
- Ensure initialHeaders are normalized: #49643
- app-router: add support for parallel routes in useParams: #49595
- Add puppeteer to external packages list: #49597
- Add playwright to external package list: #49649
- actions: fill prefetchCache with revalidation payload: #49576
- Rename Turbopack/tasks crates to common prefixes: #49446
- chore(jest): Simplify isServer expression: #48330
- Add missing config vars into Webpack cache key: #49663
- misc: Apply MR comments from #49206: #49647
- fix: Standalone node http server starts accepting requests before next handler is ready: #49548
- Update links from beta to stable docs.: #49349
Documentation Changes
- Fix error message about
preconnect
📝 : #40360 - [docs] Add iOS hydration mismatch details to error page: #43584
- Add note about custom distDir to standalone build docs: #48592
- Add
--use-yarn
flag tocreate-next-app
: #49407
Misc Changes
- Add test case for client sourcemaps: #49308
- Update start release workflow inputs: #49492
- Fix failing actions e2e deploy test: #49497
- Replace var with const: #49379
- test: pages react version with react hook in deployment: #48907
- Add test case for #49235: #49488
- chore: fix flaky middleware matcher test: #49555
- Avoid skipping the required Test Codemods job: #49589
- Update flakey app-actions deploy tests: #49667
Credits
Huge thanks to @shuding, @ijjk, @ForsakenHarmony, @timneutkens, @huozhi, @sanjaiyan-dev, @acdlite, @feedthejim, @styfle, @leerob, @koba04, @g12i, @cesarkohl, @darshkpatel, @josh, @li-jia-nan, @kwonoj, @gabschne, @alexkirsz, @karlhorky, @jridgewell, @sokra, @kdy1, @akd-io, @runjuu, @jocarrd, @nnnnoel, and @ferdingler for helping!
v13.4.1
Core Changes
- actions: update location header: #49223
- Fix serving images referenced from app directory: #49236
- Update dev logs to include request timings: #49191
- Support incrementalCacheHandlerPath for standalone output: #48694
- Apply basePath for metadata image: #49226
- Fix Server Actions defined in both layers in one entry: #49248
- Update tags handling during server action redirect: #49227
- Add experimental verboseRequestLogs flag: #49250
- Fix require-hook with just pages on deploy: #49274
Misc Changes
Credits
Huge thanks to @feedthejim, @jridgewell, @ijjk, @ikryvorotenko, @huozhi, @shuding, and @timneutkens for helping!
v13.4.0
Core Changes
- More fluent GraphTraversal API: #49028
- fix GlobalError interop and add test case: #49033
- Add flag to switch to the experimental channel: #48896
- Fix extra block element in body: #49034
- Fixed
next-types-plugin
causing Typescript errors when"type": "module"
is set: #49027 - Fixed middleware's edge-chunks not being copied in copyTracedFiles: #48723
- Rename
experimentalReact
: #49046 - app router: don't unmount/remount on search param changes: #49047
- style: remove useless React.Fragment tag on
next/image
: #48997 - feat: add draft mode to
next/headers
: #48789 - Fix
next dev
failing for app when__NEXT_DISABLE_MEMORY_WATCHER
is set: #49056 - fix(next-core): interop non string record values in env: #49057
- feat(next-core): support capsize for google font fallback: #48967
- chore: use includes replace indexOf: #48901
- feat: make
enableUndici: true
default and removenode-fetch
: #49061 - fix(next_core): do not apply user config to internal assets: #48210
- update turbopack: #49071
- allow to use different blur placeholder modes: #49070
- Use route metadata to trace in node-file-trace: #49080
- fix quoted env vars from next config: #49090
- find and handle not-found page in app dir: #49095
- Update revalidate handling for app: #49062
- Update turbopack warning: #49051
- Add validation to server methods: #49104
- use ws instead of undici.WebSocket: #49100
- chore: rename draft mode enabled to isEnabled: #49096
- add test cases for error handling: #49093
- improve test case stability: #49036
- Optimize non-dynamic metadata routes to static in production build: #49109
- Allow setting
runtime
in layouts in type declarations: #49117 - Tweak app cache handling for paths: #49108
- add test case for non-enumerable exports: #49106
- Skip handler for POST requests when no action ID is found: #49119
- Fix edge runtime detection from layouts: #49126
- Fix cross-worker revalidate API: #49101
- app router: Fix infinite redirect loop in MPA navigation: #49058
- Only read digest from error instance: #49132
- Static generate dynamic sitemaps: #49114
- Remove writing vscode config: #49133
- Revert "Fix cross-worker revalidate API": #49138
- Revert "Revert "Fix cross-worker revalidate API" (#49138)": #49141
- fix(ts): make
ReadonlyHeaders
more compatible withHeaders
: #49075 - app-router: update prefetch heuristic to traverse until until we hit a loading boundary: #49077
- Forward response to edge runtime for response modification: #49145
- Polyfill
Blob
for Node.js < 18: #49156 - Update compilation target of @next/react-dev-overlay: #49153
- Fix CSS module imports not included in root not-found file: #49155
- app-router: fix stale cache handling: #49160
- Add support for app global and segment 404 pages: #49085
- Tests for Sass warnings: #49151
- Ensure latest react-dom types for experimental release channel are used: #49049
- Update cache methods for app dir: #49165
- Search for lockfiles to find Turbopack root: #49110
- Allow webpack config, but warn if no turbo config: #49170
- Add a generic type for unstable_cache: #49166
- Upgrade React to 18.3.0-canary-b7972822b-20230503: #49158
- Fix server component transforms: #49135
- Fix React channel env missing in custom server: #49168
- app router: support side effects on server requests: #48939
- Fix multipart/form-data handling in the Edge runtime: #49177
- Upgrade React to 18.3.0-canary-aef7ce554-20230503: #49181
- remove startup message by default: #49157
- add test case for bindings in member props: #49134
- Add test case for App Route cookies: #49124
- Fix standalone mode with appDir running in a single process: #49116
- Enable progressive enhanced form actions through decodeAction: #49187
- Use special annotation for
$$bound
if no closure argument is attached: #49188 - Add warning for missing metadataBase in social images: #49180
- Allow override icon rel: #49194
- actions: fix redirect on the edge: #49197
- update turbopack: #49196
- Fix incorrect React env in particular case: #49202
- Add SWC test cases: #49189
- action: add Readable.toWeb "polyfill" for node 16: #49201
- add missing alias for next/dynamic in app dir: #49199
- render app pages with original url: #49198
- action: support not found: #49209
- types: upgrade react/react-dom types: #49213
- Fix metadata routes prerender cache for standalone mode: #49208
- Turbopack alpha -> beta: #49103
- Enable App Router for all applications: #49088
Documentation Changes
- fix: wrong link in docs: #49001
- Simplify CNA prompts a bit: #49063
- Update create-next-app App Router question: #49111
- chore(docs): update next-image-unconfigured-host.md: #49175
Example Changes
Misc Changes
- chore: Update
swc_core
tov0.75.41
: #48982 - Fix failing test on
canary
branch: #49038 - Remove unused font from tailwind
app/page.tsx
: #49035 - Add test case for file uploads: #49048
- chore(cli): remove Route Handlers from App Router templates: #49076
- Fix flaky test: #49178
- disable optimistic_updates: #49211
- test: temporary disable flaky checking: #49217
Credits
Huge thanks to @kdy1, @alexkirsz, @sokra, @shuding, @dciug, @albertothedev, @DuCanhGH, @feedthejim, @li-jia-nan, @styfle, @kwonoj, @patrick91, @timneutkens, @balazsorban44, @ijjk, @padmaia, @Kikobeats, @huozhi, @sophiebits, @eps1lon, @reconbot, @acdlite, @jridgewell, and @sebmarkbage for helping!
v13.3.4
Core Changes
- Ensure app/layout.tsx can export preferredRegion: #49031
Credits
Huge thanks to @timneutkens for helping!
v13.3.3
Core Changes
- Fix duplicated Edge Runtime warnings: #48987
- Update type of preferredRegion: #49003
- Remove unused context providers: #48267
- Update TS plugin type for
preferredRegion
: #49011 - Fix CSS ordering issue with HMR: #49010
Credits
Huge thanks to @shuding, and @timneutkens for helping!
v13.3.2
Core Changes
- Refactor require hooks: #48506
- Use
decodeReplyFromBusboy
in node runtime: #48686 - Do not suggest adding "use client" if using next/router in app: #48680
- Reland "app-router: new client-side cache semantics": #48695
- fix: TS plugin showing warning for
global-error
file'sreset
prop: #48756 - Add support for draft mode: #48669
- Compile Next.js core client-side files using default target: #48750
- Lazy DevHtmlAsset chunk generation: #48768
- Update naming for Next.js Analytics: #48618
- Add support for async instrumentation register: #48575
- Prefer realpathSync.native over realpathSync: #48698
- Fix issue with instrumentation in a standalone build: #48615
- Polyfill
FormData
for Node.js < 18: #48783 - Error on legacy runtime config under app dir: #48774
- Fix Windows path in route join (#48603): #48779
- Add missing
repository
prop to package.json: #48803 - fix: Update
@swc/helpers
tov0.5.1
: #48808 - Fix hash apply after server-patch action: #48813
- Improve typing of resolve metadata: #48670
- Only track client entry modules in the client reference manifest: #48814
- Vendor
react@experimental
: #48697 - fix query for app dir in turbopack: #48828
- Polyfill FormData with edge-runtime primitives: #48826
- Add async context to server request handler: #48626
- Fix accessing
strict
of undefined inwriteConfigurationDefaults
: #48799 - update turbopack: #48846
- Fix issues where saving next.config.js too quickly could result in multiple dev servers running at once: #48857
- Fix scrolling on navigation in app: #48863
- Implement MutableRequestCookies in server entries: #48847
- refactor(next-swc): turbopack_ecmascript_plugins: #48671
- edge: expose Websocket constructor: #48870
- add missing aliases for next/dynamic and next/head: #48871
- Update the mutableCookies class to accept extra options: #48877
- Support generate dynamic sitemaps for dynamic routes: #48867
- refactor(next-core): emit unsupported package warning: #48837
- update turbopack: #48893
- External vercel og for nodejs runtime: #48844
- Make prefetch not async: #48897
- Ensure require-hook env is set properly on deploy: #48902
- add support for static implicit metadata in turbopack: #48823
- Update min Node.js version to v16: #48903
- Fix scrolling when invisible element is targeted: #48874
- Preload css: #48840
- Selectively load runtime CSS modules to avoid rule duplication: #48866
- Ensure PAGE is checked in all cases: #48862
- add missing exports for static generation bailout: #48910
- Change Server Reference creation on client: #48824
- Upgrade Edge Runtime: #46818
- fix: explicit undefined typecheck: #48920
- fix: Enable CJS annotations for next.js files: #48811
- turbopack: parse and propagate
output: 'export'
: #48046 - fixes #48794 : When using pageExtensions like "page.jsx", global css import not working: #48795
- chore: expose
globalThis.crypto
when not available: #48941 - Fix dynamic routes for generateImageMetadata: #48928
- Correct some jest types: #48923
- Error for missing dynamic generated id and refactor metadata image url: #48953
- fix: bump minimum Node.js version to 16.8.0: #48957
- allow using the
nodejs
runtime for route handlers when using turbopack: #48791 - fix(turbopack): ignore underscore_started path: #48792
- Use ProxiedAsset instead of css_chunk_root_path to expose RSC CSS chunks: #48946
- Remove un-necessary undici warnings: #48970
- Ensure WebSocket is polyfilled for node runtime as well: #48924
- Support preferredRegion and Support runtime/preferredRegion on layouts: #48959
- preload fonts using ReactDOM.preload: #48931
- Cleanup "started server on" message: #48972
- add image metadata for svg: #48947
- fix: error when image
width={Infinity}
: #48855 - add test case for esm commonjs interop: #48940
- Update resolve rule for
@swc/helpers
: #48980 - Update google fonts: #48984
- Fix scroll when loading.js/ts is used: #48986
- Add test case for #48506: #48696
- Add npm package provenance on publish: #48693
- Revert "Add npm package provenance on publish (#48693)"
- fix: npm publish provenance permissions: #48757
- Add missing
repository
prop to package.json in swc-wasm: #48805 - test: disable client cache flaky test: #48890
Documentation Changes
- typo: #48716
- docs: update Image props: #48726
- Fix typo in
errors/version-staleness.md
: #48797 - Add missing word to getStaticProps documentation: #48854
- update example Deploy button URLs: #48842
- Start recommending gRPC with otel: #48915
Credits
Huge thanks to @shuding, @huozhi, @wyattfry, @styfle, @sreetamdas, @afonsojramos, @timneutkens, @alexkirsz, @chriswdmr, @jankaifer, @pn-code, @kdy1, @sokra, @kwonoj, @martin-wahlberg, @Kikobeats, @JTaylor0196, @sebmarkbage, @ijjk, @gnoff, @jridgewell, @sagarpreet-xflowpay, @balazsorban44, @cprussin, @ForsakenHarmony, and @li-jia-nan for helping!
v13.3.1
Core Changes
- Fix query normalize on edge deploy: #48045
- Change metadata routes suffix to number and chars: #48026
- fix: show error when "next start" is used with "output" config: #47989
- Update query param prefix to reduce length: #48051
- turbopack: bind server to IPv6 loopback: #47948
- turbopack: pass ENV vars to route handlers: #48048
- parallel routes: fix layout not re-rendering: #48066
- Fix fallback detection logic when multiple generateStaticParams are needed: #47982
- Next Cache Telemetry: #47939
- Remove change leftover from experimental precompiled server: #48107
- Support og image with edge: #48086
- Add flag to control app document preloading: #48115
- Re-land "Vendor
react@experimental
under anexperimentalReact
flag": #48041 - Add experimental React related warning: #47986
- Fix next-flight-loader resourcePath in Windows: #48152
- Enable opening source file in build error overlay: #48194
- Update next/font/google data: #48195
- Fix documentation link for transpilePackages in NextConfig: #48121
- Remove warning for metadataBase fallback: #48196
- Fix typeof expression in layout router: #48245
- fix: Shift route-announcer to top of layout parent: #44853
- Chunking Refactor pt. 2: #47961
- Opt-into worker mode when appDir is enabled: #47857
- app-router: add batching support for RSC router payloads: #48253
- interception routes: add new sibling matcher marker + validation: #48276
- parallel routes: remove the per-route default 404 handler: #48286
- ensure original matcher source is free of mutations: #47980
- Add suffix to static metadata images: #48202
- Update metadata interface types: #48259
- parallel route: fix payload not being sent on refetch: #48294
- feat(turbopack): support initial compiler.emotion / compiler.styledComponents flag: #47991
- Support alt.txt for static metadata og image: #48290
- Fix missing favicon when other icon exist: #48311
- Fix app dir vanilla-extract support: #48306
- Auto collect custom manifest into metadata: #48310
- feat(turbopack): initial mdxrs config support: #47886
- refactor shared logic for turbopack-cli: #48307
- Fix dev case when proxying to self: #48318
- app router: fix scrolling behaviour for parallel routes: #48346
- interception routes: fix support for route groups: #48351
- Add body to router request to fix socket hang up: #48039
- Fix dev getStaticPaths/generateStaticParams calling: #48322
- Update App Route Signature: #48348
- fix: typo localy --> locally: #48193
- [create-next-app]: add mdx files to tailwind content config: #48188
- Ensure we handle 204 responses in fetch: #48354
- Fix fetch cache body handling and update edge-runtime deps: #48365
- Move normalizing of query for edge: #48373
- provide the PORT env var based on server port, update turbopack: #48347
- feat: generate image metadata: #48362
- Allow some more options for Turbopack: #48401
- Add
pg
(Postgres) to server components external packages.: #48402 - chore: add export
ImageResponseOptions
: #48418 - chore: fix a typo in a local variable name: #48456
- Fix turbo cache for @next/env: #48466
- Consolidate two appDir if branches: #48459
- parallel routes: fix catch-all routes taking precedence in dev: #48424
- parallel routes: fix next-provided default.js not being resolved if the config doesn't specify .js: #48446
- interception routes: support middleware rewrites: #48450
- interception routes: fix production rewrites: #48451
- parallel routes: fix incorrect optimistic tree when there are multiple parallel routes: #48449
- Refactor entries.ts: #48460
- Fix misordered CSS resources: #48244
- Revert "Re-land "Vendor
react@experimental
under anexperimentalReact
flag"": #48478 - Change
CacheFs
methods to returnBuffer
: #48237 - app dir fixes: #48025
- Rename originUrl to fetchUrl: #48315
- Make jest config serializable: #47620
- Drop object config export support for app dir: #48489
- Fix server references handling in the edge runtime: #48502
- feat(next-swc): force teardown heap profiler if exists: #47769
- fix(turbopack/transform_options): enforce default react runtime: #48400
- Update swc_core to
v0.75.23
: #48098 - update swc_core and dependencies to 0.75.23: #48521
- Fixed
image-optimizer
crashing when usingoutputFileTracing
: #48513 - Remove unused code from
test-pack
turbo task: #48487 - Fix static opt of routes generation for static metadata files: #48528
- feat(turbopack): support modularizeImports next.js config: #48511
- refactor: move resolving metadata process into async Metadata component: #48536
- Update history in useInsertionEffect: #48553
- Fix instrumentation.js initialization in prod on Vercel: #48557
- Prefer to use deployment url for metadata routes on production: #48556
- Fallback to deployment vercel url if metadataBase is not set on prod: #48570
- build(cargo): move workspaces manifest to top level: #48198
- Remove expired link resources via MutationObserver during development: #48578
- prettier fix for
next-swc
: #47873 - Fix chunk file names in flight manifest: #48583
- Adding missing fields to the
Manifest
type: #48552 - Add updated app dir cache handling: #48516
- Upgrade React: #48589
- use structured images with metainfo (blur placeholder): #48531
- Land reverted fix for chunk file names: #48625
- remove amp error in app dir: #48620
- Add test case for #48583 and ignore hot-update scripts: #48587
- Exclude app from
_devPagesManifest.js
in turbopack: #48633 - replace defined values and add
__NEXT_HAS_REWRITES
define: #48628 - implement /_next/image for local requests: #48622
- Add export runtime test for pages and fully remove experimental.runtime: #48630
- Upgrade
@types/react
to latest 18.x: #48645 - app-router: new client-side cache semantics: #48383
- Fix typo in fetchType annotation: #48646
- Ensure latest React types for experimental release channel are used: #48641
- Fix writeConfigurationDefaults.ts to correctly suggest changes in monorepos: #48668
- Revert "app-router: new client-side cache semantics": #48678
- fix snapshots broken by prettier (also fix .prettierignore): #48586
- Reland app-router: new client-side cache semantics: #48685
- Revert "Reland app-router: new client-side cache semantics": #48688
Documentation Changes
- Update deployment.md: #48062
- Docs: Describe how to manually configure open telemetry: #48071
- Fix typo in script.md: #48225
- Add information about deploy to open telemetry docs: #48241
- docs: fix grammar for dynamic routes catch-all explanation and give better examples: #48181
- Fix grammar and typos in OTEL docs: #48235
- Update instrumentation.md: #48394
- typo: #48495
- docs: fix minimum Node.js version to
14.18.0
: #48545 - Docs: Unify note formatting: #48417
- Fix TYPO in otel docs: #48623
Example Changes
- Fix the typo on README.md: #48274
- fix: Adding search field decorator: #48350
- Update Mux example logo to new Mux brand: #48654
Misc Changes
- Fix stable release start: #48044
- chore: Add
.vscode
to eslintignore: #48020 - Update flakey tests: #48113
- Update codeowner for images: #48239
- chore: split up app-dir-export tests: #48252
- allow anyone to approve a lockfile change: #48261
- Temporarily disable app dir export integration test: #48291
- Only create tarballs once per run-tests: #48321
- Investigate redirect getting stuck: #48343
- Update font handling in CNA templates: #48364
- Add test coverage for pages edge API routes: #48370
- Don't build pages before middleware: #48339
- Extra space removed: #48514
- Update start release flow: #48634
- Fix version bump
- misc: fix flaky prefetch test: #48666
- Re-add kodiak config: #48672
- Add logs to release job: #48690
Credits
Huge thanks to @huozhi, @styfle, @jridgewell, @feedthejim, @cjmling, @shuding, @nabsul, @motopods, @hanneslund, @tunamagur0, @jankaifer, @apeltop, @maranomynet, @alexkirsz, @y-tsubuku, @sokra, @EndangeredMassa, @ykzts, @AviAvinav, @kwonoj, @adilansari, @ForsakenHarmony, @wyattjoh, @charkour, @timneutkens, @delbaoliveira, @agadzik, @Just-Moh-it, @rodrigofeijao, @padmaia, @leerob, @juliusmarminge, @koba04, @cprussin, @Phiction, @DuCanhGH, @jessewarren-aa, @sophiebits, @ryo-manba, @Yovach, @ijjk, @dylanjha, and @eps1lon for helping!
v13.3.0
Core Changes
- Add Zod and router state validation: #46962
- Support default arrow function export in server boundary #46977
- Generate fixed route path for favicon.ico: #46997
- update turbopack: #46994
- Update next/font/google data: #46988
- fix: added jsdom & canvas to the external packages list - fixes #46893: #46990
- Add auto-detection of image/x-icon content type: #47013
- fix: exclude 'mdx-bundler' from being bundled in server components: #46992
- Add /route subpath to metadata static routes: #47030
- Ensure router.refresh() matches revalidatePath('/') behavior: #46723
- Reorganize client references manifest: #46777
- Opt-in to dynamic rendering when reading searchParams: #46205
- Fix CSS not being bundled in app dir: #45787
- feat(standalone): allow configuring KEEP_ALIVE_TIMEOUT via env var: #46052
- i18n Improvements: #47174
- Support manifest.json static and dynamic route: #47240
- Ensure config and fetch revalidate are honored: #47255
- feat: add
fetchPriority
tonext/image
: #47222 - chore: add missing ts type in next-edge-app-route-loader: #47243
- Split app-render functions into separate files: #47282
- fix: typo in output:export error messages: #47252
- fix: handle different cases of React
fetchPriority
: #47302 - [edge] limit the api surface of
util
: #47292 - parallel routes: fix duplicate dev warning: #47317
- next/font/local prep: compartmentalize next/font/google: #47213
- Improve OTEL spans naming: #47209
- fix invalid comment in parseParameter function: #47291
- Add searchParams to leaf cache key: #47312
- Remove duplicated if statement: #47322
- Add a .catch to shared router for ssg fetching.: #47265
- parallel routes: fix nested routes: #47323
- [Nitpick] Remove unnecessary await in
base-server
: #47313 - Warn about default exports with App Routes: #47263
- Add better-sqlite3 to server external packages: #47327
- Change App Route Route Handler signature: #47268
- Calling turbopack from the next build CLI: #46602
- Update Turbopack to turbopack-230321.1: #47342
- parallel routes: fix HMR refetch issue: #47343
- Fix bad route path for custom metadata routes: #47286
- Fix POST fetch request cache heuristic in POST route handler: #47333
- Fix: only apply metadata dynamic image routes convention for app dir: #47367
- Marks app paths in dev as supporting dynamic html: #46848
- fix: add pretty error for
exportPathMap
withapp
dir: #47371 - Skip extra swc builds: #47378
- Simplify moduleProxy alias: #47381
- Skip warning if there is app directory for
no-html-link-for-pages
rule: #42516 - Catch redirect() in root layout: #47345
- Add useParams(): #47373
- Refactor ES chunk evaluate logic into a Runtime trait: #47116
- Add more spans into OTEL instrumentation to wrap all user defined functions: #47368
- Support HOC cases in server entries: #47379
- Support dynamic routes for social images and icons: #47372
- Fix build spinner in TTY env: #47383
- upgrade vendored React to
18.3.0-next-12a1d140e-20230321
: #47405 - Add default meta tags to error page: #47404
- Extend
not-found.js
to catch all unmatched routes: #47328 - Add optional match support of rewrites and redirects in
typedRoutes
: #47398 - Support dynamic routes for social images and icons: #47425
- turbopack: Implement streamed middleware: #47264
- Fix twitter metadata info merging: #47433
- improve source mapping of console output and errors: #47388
- Fix closure and rest params handling in SWC transform: #47401
- feat: change
next build
to emit output withoutput: export
: #47376 - Error during dev if returning
Response
in pages API routes in Node.js runtime: #47442 - Add content hash for dynamic og image routes: #47440
- chore: add telemetry for
output: export
: #47464 - Update fetch cache memory handling: #47465
- add useReportWebVitals that makes use of web-vitals package: #47319
- Ignore folders prefixed by underscore (_) in App Router: #47439
- Finalize HOC support with server entries and add encodeReply & decodeReply: #47438
- Locale fixes for App Directory: #47429
- Fix useSelectedLayoutSegments including PAGE: #47492
- parallel routes: implement default route + fix bugs on navigation: #47436
- Add http.route into root otel span: #47392
- fix: typo in max cache size error message: #47505
- Fix other case for useSelectedLayoutSegments: #47511
- fix error handling and hanging problems: #47457
- restore dynamic directory embedding: #47260
- Remove head.js: #47507
- Return null for useParams in pages: #47490
- Clean up leftover loaders: #46801
- Feat(next-types-plugin): added support for Route Handlers: #47185
- Add warning when deopting page into client rendering entirely: #47531
- Integrating capsize latest: #47428
- Rename app-render/index.tsx to app-render/app-render.tsx: #47285
- refactor(relay): Use transform from
swc/plugins
repository: #47441 - remove unused turbo dependencies: #47557
- Add initial tree shaking refactorings: #47559
- next/font/local support for Turbopack: #47369
- Handle unknown platform triples in next-swc: #47570
- Fix fetch cache config and fetch revalidates: #47573
- Fix instrumentation not being called on edge in some cases: #47495
- Implement automatic font fallback support for
next/font/local
: #47463 - Document various structs and methods in next/font: #47588
- Fix race condition of invalidation: #47586
- add test case for nested imports: #47580
- Underscore Handling Fixes: #47581
- Move App Route handler logic into bundle: #47582
- Revert "Move App Route handler logic into bundle": #47614
- Make sure the global not found route doesn't conflict with existing /not-found route: #47619
- Fix robots.txt generation: #47625
- fix typescript errors in
next-core
: #47607 - Expose metadata types: #47630
- show most recent error first in turbopack error overlay: #47414
- Move App Route handler logic into bundle: #47633
- fix: handle
output: export
withuse client
: #47635 - provide Buffer polyfill to client and edge: #47610
- fix: image
loaderFile
with edge runtime: #47659 - Update vendored react to 18.3.0-next-85de6fde5-20230328: #47675
- fix: improve type of
ExportPathMap
: #47676 - Fix(next-types-plugin): remove unused imports: #47667
- resolve browser modules for edge api in turbopack: #47604
- build(next-swc): introduce turbo-binding: #47512
- Revert "Update vendored react to 18.3.0-next-85de6fde5-20230328": #47687
- Fix
next-types-plugin
generated files forNode16
/NodeNext
: #47571 - Revert "Vendor @vercel/og and expose ImageResponse (#47657": #47711
- fix: handle empty
src
prop onnext/image
: #47695 - Add not found boundary and move head cache to app router: #47688
- Fix turbopack
_devPagesManifest.json
on next-site: #47427 - Update MetadataRoute to namespace: #47674
- Provide default metadataBase for local and vercel deployment: #47568
- Fix duplicated default metadata tags: #47690
- chore(docs): update
next export
tooutput: 'export'
: #47717 - Vendor @vercel/og and expose ImageResponse : #47715
- Turbopack: Fix images.remotePatterns port/protocol serialization: #47721
- Combine Route Handlers with Route Modules: #47679
- feat(next-swc): add compile-time heap profiler flag: #47729
- Add NEXT_RUNTIME process env to turbopack: #47713
- Small fixes to copy of Turbopack errors: #47734
- fix: correctly handle Set-Cookie headers: #47718
- Support relative path for metadata alternates urls: #47743
- remove
next-core
package.json dev script: #47746 - Restart static paths worker after finishing task: #47716
- feat: bump minimum ts version to 4.5.2: #47712
- Turobpack: Implement Streaming App/API rendering: #47476
- Update app router filter handling: #47761
- fix: improve error message pages for
output: export
: #47765 - add consistent import sorting/grouping to rustfmt: #47745
- turbopack: ensure ENV values are available in middleware: #47767
- Fix skipMiddlewareUrlNormalize with i18n: #47773
- Fix typo in error overlay: #47762
- provide full polyfill for process: #47764
- Turbopack: Use
SharedError
for body streaming: #47677 - fix(export): make static export work with worker_threads: #47784
- Skip favicon.js for metadata: #47790
- Fix module resolving error in tracer: #47786
- Fix fetchCache config and On-Demand Revalidate handling: #47803
- Add
computeWorkerKey
to the static optimization worker: #47792 - fix(
next-types-plugin
): addParamCheck
type only forroute.ts
files: #47739 - fix: added tab and carriage to isWhitespace function to make robust: #47785
- Fix prefetch only being applied once: #47797
- Fix failing rust-check: #47811
- Move modularize imports for next/server to next-swc: #47788
- Add initial separated route resolving: #47208
- Fix dev ipc request on node v16: #47825
- Update render IPC handling: #47835
- Fix: fill route params for dynamic route metadata images url: #47829
- Enable context caching for middleware/edge functions in dev: #47840
- New app routes resolving logic for turbopack: #47737
- Polish metadata warnings: #47853
- Memory improvements to static workers: #47823
- Hide internal fetches OTel traces in dev mode and assert duplicate OTel spans are present only in dev mode: #47822
- feat(turbopack): support transform options: #47365
- Update dev IPC request: #47877
- Fix type plugin for NX workspaces: #47534
- Change package path from
gitpkg.now.sh
togitpkg.vercel.app
: #47879 - TS plugin: ensure error and global-error files are client components: #47882
- Decrease required open telemetry peer-dependency version: #47861
- router: implement route interceptions: #47565
- Fix issue where NextServer.prepare wouldn't be called when deployed: #47899
- Add missing
module.hot.accept
call to server CSS modules: #47913 - mark resolve issues inside a try block as warnings: #47763
- Hide not ENOENT errors for not found in ipc server: #47854
- Update react docs link: #47891
- turbopack: defer dev code evaluation until after page render IPC connects: #47888
- add test case for alias field: #47856
- add test case for ignore modules: #47758
- Small refactoring to
build/index.ts
: #47935 - Compare modules' layer when tracking server CSS changes: #47927
- Extend type for streamEntrypoints: #47874
- Add strict next head handling: #47938
- ChunkingContext refactor pt. 1: #47693
- Add dynamic parameter marker to router cache key: #47957
- Vendor
react@experimental
under anexperimentalReact
flag: #47759 - avoid duplicated error output: #47954
- add a warning when using implicit metadata: #47928
- Fallback to localhost for metadataBase when it's used and missing: #47910
- Fix app metadata in edge runtime: #47941
- Auto-restart dev server when next.config.js changes: #47912
- Unify Request types: #47884
- Update search params/route params handling on deploy: #47930
- turbopack: add vary header to app routes: #47946
- Check for null before reading value in useParams: #47875
- Fix metadata nested twitter props rendering: #47972
- Create unique route path for og under group routes: #47985
- allow turbopack HMR to recover from react errors without hard refresh: #47771
- Implement
Route
type for router APIs: #47931 - If prefetching detected as app route, pass "as" to handleHardNavigation instead of "url": #47949
- update turbopack: #47994
- Revert "update turbopack": #48001
- update turbopack: #48006
- Fix css applying for root not found: #47992
- fix code generation for loader tree: #47987
- interception routes: re-implementation: #48027
- parallel routes: return a 404 when a parallel route does not have a default page/do not match: #47872
- Update normalize revalidate params for named matches: #48032
- fix: handle error case for
output: export
innext dev
: #47768 - report error when using "use server" on module level: #47967
- Only cache successful fetches: #48033
- Revert "Vendor
react@experimental
under anexperimentalReact
flag": #48038 - Replaced Reflect with ReflectAdapter: #48000
Documentation Changes
- Improve static export documentation: #47251
- Add note about Windows Defender: #47298
- fix: update capitalization of ISR doc heading: #47370
- Updating the default URL of Amplify Hosting: #47420
- clarify warning about edge + ISR support: #47452
- Update Error Boundaries link to new ReactJS documentation: #47474
- Update react hydration error message page title: #47499
- Docs typo: #47528
- Add note about req to circular-structure error doc: #47162
- docs(image): Update browser bugs section for Safari 16.4 release: #47577
- Switch to ESM Jest config in docs: #42144
- Fix typo: #47634
- Grammar fix: #47600
- docs: clarify returning response in Middleware: #47696
- Replace AWS Serverless to SST in Serverless: #47725
- Linking to SST Next.js tutorial.: #47752
- chore(docs): add
typesafe-i18n
as a new i18n option: #47315 - Document node.js APIs for Edge Runtime: #47760
- Update error-handling.md: #47779
- Update react-strict-mode.md: #47780
- [docs] Update getting-started.md with New react docs link: #47841
- Add documentation on OTEL support: #47194
- Update Local Images Example to Use Assets Folder: #47878
- Docs: Improve Open Telemetry documentation: #47955
- Recommend @opentelemetry/api instead of @vercel/otel reexport: #48013
- fix lint issue: #48023
Example Changes
- fix typo: #47235
- chore(examples): fix Mongoose deprecation warning: #47358
- chore: fix localhost port: #47413
- Update to supertokens example app: #47435
- chore(examples): Fix for destroy is not a function error: #47469
- Updated the versus short form in ssg-ssr example in docs: #47397
- fix-(Examples) Updated link tags in Auth0 example code.: #47518
- Remove incorrect entries for pnpm debug log: #47241
- Use App Router for static export example.: #47584
- Update Convex example to convex@0.12.0: #47175
- Updates with-supertokens example app: #47701
- Update github link: #47900
Misc Changes
- Update next/font/google data: #46988
- fix: added jsdom & canvas to the external packages list - fixes #46893: #46990
- Add auto-detection of image/x-icon content type: #47013
- fix: exclude 'mdx-bundler' from being bundled in server components: #46992
- Add /route subpath to metadata static routes: #47030
- test: update amp test to always check redbox: #47050
- Fix generateStaticParams check in app dir: #47051
- Fix URL anchor position in
going-to-production.md
: #47056 - Rewrite action transform in SWC: #47049
- Cleanup remove directive logic to reduce allocate: #47055
- Initial support of redirection in server handlers (#46944
- Move
next-*
crates from Turbopack: #47019 - chore(examples): upgrade Sentry to support Middleware: #47067
- Merge branch 'canary' into jrl-next-crates
- Merge pull request #47019 from vercel/jrl-next-crates
- [with-jest]: Update to use automatic path aliases: #46982
- Update _mongoClientPromise type error: #46985
- Prevent
handleDisconnect
being called twice: #46959 - Fix next/image config injection during static generation: #47007
- Refactor renderers and RenderResult: #46955
- Update app route handler proxy handling: #47088
- Detect common invalid cases for the server directive: #47069
- Implement route announcer for app dir: #47018
- Fix: Update README templates in
create-next-app
: #47037 - chore(examples): fix
@ts-ignore
in Cloudinary config: #47029 - Add instructions to bug issue template: #47090
- Remove experimental fontLoaders option from next.config.js: #46886
- Verify router state query params can't grow out of control: #47094
- Fix(typedRoutes): fixed empty DynamicRoutes or StaticRoutes causing Route to turn into type string: #46980
- Dynamic routes for toplevel robots and sitemap: #47091
- Correctly list unsupported turbopack experimental options: #47093
- Continue page rendering after handling server requests: #47089
- fix(mdx): export NextMDXOptions interface: #46441
- updated zustand example to 4.3.6, changed out deprecated methods: #46911
- Fix #46621 - include status code in cache: #47096
- Finish up otel example with working docker and small guide in readme: #46819
- Add @feedthejim as a codeowner for docs, examples and errors: #47104
- Add support for scrolling to hash fragment: #46995
- re-enable next-dev-tests: #47087
- feat: add
output: export
support forappDir
: #47022 - Refactor app-render to decouple type definitions (#47128
- update prettier in stats action: #47158
- Fix
RenderOpts
type import: #47167 - Implement custom Turbopack Next transformers: #47137
- Implement server entry creation in client layer (#47127
- chore(ci): automatically deploy selected examples: #47130
- fix: app dir with
next dev
andoutput: export
: #47171 - Fix(typedRoutes): fixed files from directories other than pages and app getting into Route: #47184
- Not apply image loader to metadata images: #47197
- Adjust transpiler to support inlined server functions with annotations: #47186
- improve turbopack error overlay: #47132
- feat(cli): introduce
--tailwind
flag: #46927 - Align on next-transform-font: #47179
- Add OTEL tests: #47149
- Handle defaultLocale on client router filter: #47180
- fix build issue and future incompatibility: #47176
- fix: show error for api route handler with
output: export
: #47219 - Fix missing option in
createFromFetch
: #47216 - Fix failing CI checks: #47223
- docs: commentary correction for i18n app folder: #47226
- Support passing both closure arguments and parameters: #47212
- Fix deploy example: #47228
- next-swc: Switch to testing::fixture: #47183
- update turbopack: #47205
- Update router.md: #47210
- print reason for compilation: #47190
- [edge] support Node.js core modules in edge runtime: #47191
- Generate metadata images generation with app routes: #47225
- Emit late streaming meta tags: #47207
- fix: typo in message for experimental.runtime: #47248
- Fix loader rule with wrong matching conditions (#47261
- Fix contributing.md link in the rendering benchmark: #47303
- fix(cli): handle Tailwind CSS +
src/
correctly: #47238 - Update failing e2e deploy test: #47325
- fix(cli): unify styles/content of templates: #47294
- Replace bg-opacity with bg-color/opacity in tailwindcss templates: #47253
- chore: fix issue labeler: #47206
- chore: add checkout step to issue labeler action: #47346
- Ensure all server entry exports are functions (#47364)Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
- Don't set git config
features.manyFiles
on post install: #47375 - fix(cli): change file name from
route.ts
toroute.js
: #47352 - chore: tweak MR labeler pattern: #47395
- Revert "Support dynamic routes for social images and icons" (#47416
- Update failing e2e checks: #47423
- Add test for force-dynamic and catch-all routes (#47418
- Update CODEOWNERS
- chore: reduce noisy logs when updating timing gist: #47446
- Update failing e2e deploy test: #47453
- chore: clean up CODEOWNERS: #47451
- chore: run all tests for next/image against app dir: #47267
- Update failing i18n e2e deploy test: #47462
- Add workflow to trigger release: #47461
- Fix trigger_release workflow type: #47466
- Update version script
- Tweak trigger release cloning
- chore: tweak CODEOWNERS: #47491
- Fix failing og api e2e test: #47500
- add auto labeling for turbopack/the web-tooling team: #47502
- Update flakey app dev tests: #47504
- Update release package.json scripts: #47529
- Update pre-compiled
- Add ownership of build folder to Web Tooling team: #47508
- test(test-utils): correct --turbo error overlay lookup: #46901
- Update failing i18n e2e deploy test: #47555
- Update some flakey test cases: #47556
- Remove unneeded waiting in otel tests: #47431
- Improve client boundary source type detection (#47532)Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
- ci(workflow): run checks for the test specific features: #47572
- Update test create-next-app running: #47611
- Fix rust-check
- Update pnpm version for trigger release
- Vendor @vercel/og and expose ImageResponse (#47657
- test: disable the flaky test for parallel-routes-and-interception: #47694
- Handle
async
require when importing ESM ininstrumentation.ts
: #47658 - Run turbopack integration tests for next.js changes too: #47608
- Revert "Revert "Update vendored react to 18.3.0-next-85de6fde5-20230328"" (#47700
- test: remove unreliable font test: #47714
- Update CODEOWNERS to override image wildcard: #47722
- chore(ci): fix codemod tests: #47710
- Add tests for Suspensey CSS: #47708
- Add test to ensure image generation works in the Node.js runtime: #47719
- test(turbopack): blocking CI for turbopack integration test: #47709
- Update publish canary to undraft automatically: #47775
- Update metadata e2e test on deploy: #47776
- Tweak canary undrafting: #47777
- Fix docs only check for test-native-integration: #47800
- Tweak Vercel CLI installing for E2E tests: #47804
- Fix flaky css test and remove unused tests deps: #47806
- (Fix)(Tests)Fix typo in unit testing: #47644
- Update to retry undrafting canary: #47826
- Update set-cookies deploy test: #47836
- Update flakey tests and add Node.js setup retrying: #47871
- Test disabling kodiak: #47880
- Ensure GH actions tests run for trunk branches: #47883
- Revert "Test disabling kodiak (#47880)"
- chore: update labels: #47904
- Disable Kodiak for testing
- Add merge_group actions trigger
- Run bench tests as part of CI: #47849
- Increase CI test timeout: #47973
- docs: Add "special" to the Alex allowlist: #48021
- Speed up native dev build: #48028
Credits
Huge thanks to @shuding, @huozhi, @sokra, @hanneslund, @JesseKoldewijn, @kaguya3222, @yangshun, @ijjk, @konomae, @Brooooooklyn, @jridgewell, @zlrlyy, @JohnDaly, @abhiyandhakal, @benjie, @johnnyomair, @nk980113, @dirheimerb, @DerTimonius, @DuCanhGH, @padmaia, @stafyniaksacha, @Gladowar, @zek, @jankaifer, @styfle, @balazsorban44, @wbinnssmith, @chibicode, @ForsakenHarmony, @franktronics, @FSaldanha, @Schniz, @raisedadead, @AdamKatzDev, @wyattjoh, @leerob, @meesvandongen, @vladikoff, @feedthejim, @tka5, @pyjun01, @gdborton, @M3kH, @aretrace, @shivanshubisht, @alexkirsz, @agrattan0820, @vinaykulk621, @heyitsuzair, @mrkldshv, @timneutkens, @furkanmavili, @swaminator, @EndangeredMassa, @DevEsteves, @rishabhpoddar, @schehata, @molebox, @dlehmhus, @akshaynox, @sp00ls, @janicklas-ralph, @tomryanx, @kwonoj, @karlhorky, @kdy1, @dante-robinson, @lachlanjc, @ianmacartney, @hotters, @isaackatayev, @insik-han, @jayair, @ivanhofer, @javivelasco, @SukkaW, @visshaljagtap, @imranbarbhuiya, @nivak-monarch, @HarshaVardhanReddyDuvvuru, @ianldgs, @ricardofiorani, @swarnava, @gustavostz, and @nabsul for helping!
v13.2.4
Core Changes
- Check if server error already had its message updated: #46367
- [next/jest] Support path aliases from
tsconfig
/jsconfig
: #45815 - List unsupported Turbopack config keys: #46582
- Support named exports for server references: #46558
- Fix(typedRoutes): fixed StaticRoutes and DynamicRoutes being empty causing invalid syntax: #46620
- Fix IntelliSense for generateMetadata: #46624
- Update vendored React packages to next-41110021f: #46636
- Add request callback in Flight client: #46650
- fix: distDir in verifyTypeScriptSetup for nextLint: #46630
- Updates
next/image
eslint message to denote that costs may be incurred.: #46640 - Ensure default config passes schema checks: #46656
- Use separate workers for webpackBuildWorker: #46666
- Fix static to dynamic on revalidate: #46668
- Fix the Next.js router in Turbopack when there are no middlewares: #46681
- build(cargo): update turbopack: #46685
- Add build worker exit tracking and enable tests: #46698
- Support
force-static
on App Routes: #46693 - Add viewport field userScalable: #46696
- Update static build workers: #46705
- Refactor build context for better plugin state sharing: #46706
- Support multi title for alternates: #46700
- Ensure test-unit includes package unit tests: #46707
- Disallow wildcard export in server entries: #46710
- Add test for router.refresh preserving unaffected segments: #46687
- Failing test for SWC
shakeExports
and JSX: #35735 - Fix originalRequest not available for edge requests: #46741
- Fix require cache conflict between app and pages: #46736
- Fix Web app manifests docs: #46617
- Update client router filter to separate redirects handling: #46752
- Add support for
output: export
config: #46744 - Pass through original matcher source in manifest: #46753
- Use browser navigation when RSC payload fails to fetch: #46674
- Use set to track CSS imports: #46772
- Fix middleware notFound: true handling: #46759
- Only check app/ for no-head-element-rule: #46773
- Fix redundant TS plugin warning: #46769
- Correct server reference manifest in prod build: #46683
- add argon2 to serverComponentsExternalPackages auto-optOut list: #46779
- Refactor SWC transform to support named default export: #46778
- Remove
experimental.runtime
and emit warning when used: #46631 - Fix(typedRoutes): fixed type Route resolving to type any: #46679
- Improve the readability of full page refresh error in dev mode: #46634
- Port error overlay hydration error to pages directory: #46677
- eslint rule for script strategy should work properly in
app/
: #46609 - fix: Add NODE_OPTIONS for debugging in next-dev: #46757
Documentation Changes
- Documentation: Update link-no-children error page for new link: #46514
- chore(docs): add snippets for common image loaders: #46647
- Fix the doc on how to use the turbo loader in option-less format: #46665
- Fix custom server error handling in the docs: #46671
- docs: clarified the wording: #46691
- Update script.md: #46680
- next/font refactoring and additional unit tests: #46731
Example Changes
- Add @types/mdx to app-dir-mdx example: #46523
Misc Changes
- test(utils): support turbopack-based overlay error text lookup #46589
- chore: improve repo templates: #46629
- Update app-static test page #46645
- test: add preconnect tests and move error tests: #46652
- Refactor and add more tests to next/font/local: #46627
- Add script to automate updating vendored React version: #46663
- Refactor next/font/google and add additional comments: #46692
- Ensure app chunk URLs are encoded properly #46749
- Adjust API route loader #46726
- test: refactor metadata tests to test multi matches easier: #46746
- Support mdx-components file in src directory: #46763
- Fix middleware 404 prefetch case: #46782
- Update view-source.tsx: #46790
- chore: add jsdoc to
output
in next.config.js: #46804 - next/font tests: support Turbopack css module format: #46658
- update dynamic-import.md example: #46787
- Change @next/font to next/font in examples: #46836
- Update vendored React: #46826
- Revert "Update vendored React": #46861
- Update fetch cache handling with POST requests: #46856
- Remove extra exports from filter utils: #46860
- test(unit): add cases for cssnano simple: #46862
- Ensure chained middleware rewrites work properly: #46866
- chore: improve MR labeling, fix, sort, add new team member: #46675
- chore: add App Router template to bug report: #46872
- Add a timeout to next/font/google in dev: #46834
- Support unnamed default export expression #46888
- Only run toSource in next/font codemod if there are changes: #46877
- Add more JSDoc to types: #46897
- Fix TS plugin showing warning for error file's
reset
prop: #46898 - Fix conflict dev entry key between app and pages: #46832
- Update app-static e2e test: #46900
- Revert "Revert "Update vendored React"": #46881
- Add retry to the hmr acceptance test: #46902
- Fix
with-jest
andwith-jest-babel
example test snapshot failure: #46885 - Update generateStaticParams handling with fetch cache: #46906
- Fix unexpected hoist meta tags by react in app dir: #46917
- Update turbopack to
230308.1
: #46909 - Support default export expression for variables: #46896
- Reduce the number of hydration error tests: #46930
- Update Turbopack to 230308.3: #46935
- Use https_proxy environment variable in next/font/google: #46822
- Validate
req.url
in renderer: #46923 - Validate the router state header on the server: #46925
- Rename FontLoaderManifest to NextFontManifest and add better comments: #46922
- Revalidate generateStaticParams/Paths in background in dev: #46940
- Support re-exporting unnamed function expression: #46936
- Support static file robots.txt and sitemap.xml as metadata route: #46963
- Update vendored react: #46970
- Move error overlay recovery tests to new file: #46965
- Improve RSC compiler error in external module: #46953
- Update Turbopack to 230309.2: #46971
- Use turbo remote cache for build-native-test: #46975
- Do not re-assign
process.env
: #46914
Credits
Huge thanks to @hanneslund, @ijjk, @JohnDaly, @jridgewell, @divslinger, @shuding, @DuCanhGH, @balazsorban44, @acdlite, @teobler, @styfle, @manovotny, @huozhi, @smorimoto, @Dannymx, @Janpot, @alexkirsz, @nohr, @Humboorgir, @wyattjoh, @timneutkens, @overlookmotel, @HaNdTriX, @proustibat, @fedeya, @wbinnssmith, @irekrog, @JanKaifer, @SukkaW, @rayrw, @kdy1, @seiry, and @unflxw for helping!
v13.2.3
Core Changes
- build(cargo): update turbopack: #46581
- Fix(typedRoutes): fixed Webpack crashing without redirects/rewrites: #46591
- Fix async generateMetadata type in ts plugin: #46596
- Async Storage Cleanup: #46586
- Ensure URL can be passed to fetch correctly #46592
- Fix static to dynamic error in dev: #46597
- Add page path to repeated slashes in href error: #46557
- Implement middleware support for Turbopack: #46397
Credits
Huge thanks to @jridgewell, @DuCanhGH, @wyattjoh, and @hanneslund for helping!
v13.2.2
Core Changes
- fix(ts): correctly augment
next
whentypedRoutes: true
: #46332 - feat(cssnano-simple): merge into next repo: #46380
- Dedupe next/font preload tags: #46354
- Print command for current packet manager in @next/font warning: #46359
- Loader refactoring: #46304
- Support
server-only
inside pages/api: #46328 - fix: improve next.config.js validation for
images
prop: #46326 - Revert "Support
server-only
inside pages/api": #46388 - Add relative app dir field: #46393
- test(integration): properly pipe turbopack binary stdouts: #46382
- chore: improve error when exporting metadata from client component: #46334
- Update server reference syntax and tests: #46389
- Fix SWC error wrongly formatted : #46412
- Fix(typedRoutes): replaced
readFile
+replaceAll
, hid utils types, fixed duplication in typeRoute
, fixed route groups on Windows: #46378 - Ensure fetch fields are detected with RequestInit: #46398
- Ensure SERVER_REFERENCE_MANIFEST is included in output files: #46420
- Fix duplicate link type asset generation: #46421
- chore: show large data warning once per page on prod: #46323
- fixed spelling mistake: #46446
- Fix(typedRoutes): export createServer from 'next/types/index.d.ts': #46462
- chore: Loss of precision due to Date now amplification: #46344
- Fix next/font/google config not being used: #46484
- Add @latest to next/font codemod warning: #46486
- Add error for styled-jsx in Server Component: #46482
- Refactor style loader code: #46490
- Fix SWC's auto_cjs handling: #46448
- Add theme color media support for metadata: #46502
- Fix(typedRoutes): fixed 'next' imports on TS < 5.0: #46507
- fix: codemod should preserve type only import: #46512
- Add interactive-widget optional property to Viewport type: #46506
- Update router filter to be less sensitive: #46515
- Update fetch cache internal handling: #46522
- Upgrade precompiled react packages: #46365
- fix(error-overlay): hide "Learn more" when up-to-date: #46488
- Refactor route types to include rewrites and redirects: #46327
- Added bcrypt to the serverComponentsExternalPackages auto-optOut list: #46532
- feat: add support for the src folder for the instrumentation hook: #46529
- Fix viewport typing and refactor constants: #46569
- Fix shared entries/invalidators module scope: #46533
- Fix CSS imports not included in entries with a custom extension: #46571
- fix: should not warn when image unmounts: #46567
- fix: generate next-env.d.ts file during next lint command: #46249
- Fix infinite invalidations loop in app dir (#46526)
- Use og:image instead of og:image:url: #46570
- Fix usage of textDecoder to not break utf8 characters: #46564
- Fix app client child entry not being disposed when deleting the file: #46583
- Fix: canonical should allow relative urls: #46584
Documentation Changes
- Docs:
next/font
updates: #46159 - Add note explaining how to import fonts with spaces in name: #46348
- Docs: Fix Railway link: #46381
- Wrong function name: #46546
Example Changes
- Add missing 'key': #46386
Misc Changes
- test(next-script): teardown next-dev instance via jest hooks: #46383
- Apply filtering after rewrite as well (#46390
- Fix fetch cache key inputs and encoding (#46392
- Fix failing app-static deploy test: #46395
- Cover 1st-party examples with tests (#45270)Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com> Co-authored-by: Tim Neutkens tim@timneutkens.nl
- Updates cms-sanity example to use Sanity v3 (#45662
- Support Two-letter Language Codes(ISO-639-1) to metadata HrefLang types (#46285
- [next/codemod]: Preserve type-only imports when using
next-image-to-legacy-image
(#46460 - Remove incorrect comment (#46467)Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
- dynamic = "error" violations should be shown in error overlay (#45893
- Fix typo from next-font (#46468
- Add image generation test to app route: #46449
- Remove baseUrl from create-next-app ts/jsconfig.json: #46458
- Update fetch cache key (#46513
Credits
Huge thanks to @balazsorban44, @delbaoliveira, @SukkaW, @ijjk, @hanneslund, @JanKaifer, @GitRowin, @shuding, @styfle, @mjunix, @kwonoj, @thiskevinwang, @DuCanhGH, @SethFalco, @yun-jay, @harrytothemoon, @timneutkens, @huozhi, @thomasballinger, @aretrace, @JesseKoldewijn, @feedthejim, @serkanbektas, @teobler, and @vadzim for helping!
v13.2.1
Core Changes
- Fix
/
having wrong file size in build output: #46314 - Fix client filter case with redirects: #46317
- Handle same page reload case in filter: #46324
Misc Changes
- fix(cli): add navigation compat types to default
next-env.d.ts
: #46321 - Migrate
create-next-app
and e2e tests to Metadata API.: #45819 - Update isStale checking for fetch cache (#46331
Credits
Huge thanks to @JanKaifer, @balazsorban44, @ijjk, and @leerob for helping!
v13.2.0
Core Changes
- Move reducer types into separate file: #45333
- Move reducers to separate file per action: #45336
- Add support for tsconfig 'nodenext' | 'node16': #44177
- Add support for --experimental-app-only: #45352
- Add shared mutable type in router-reducer: #45369
- Refactor TS plugin code structure: #45375
- Fix trailing slash redirect applying for data request: #45417
- Update robots meta and add verification rendering: #45409
- Check message type before formatting server error: #45406
- Fix invalid source maps from terser-webpack-plugin: #45423
- Add support for navigating to external urls: #45388
- Export the Metadata type: #45445
- Add data attributes on @next/font usage: #45296
- Update error message for dynamic = "error": #45432
- Fix metadata alternate and refactor twitter item: #45480
- Apply traceIgnores to turbotrace: #45405
- misc: refactor webpack build out of build/index (1/6): #45335
- build(cargo): update turbopack to turbopack-230201.1: #45454
- misc: deprecate custom config from being passed to next/build (2/6): #45455
- misc: move entrypoints creation into webpack build step (3/6): #45456
- misc: refactor build context/webpack build step (4/6): #45458
- Support generateMetadata export: #45401
- Split router utils into smaller modules: #45451
- Improve TS experience for metadata: #45493
- Make client boundary unserializable props a warning instead of an error: #45501
- Fix middleware matcher for i18n with negative look ahead: #45504
- Add unit test for navigateReducer and refreshReducer: #45486
- Update SWC transform to attach the export name: #45494
- Add skipEntries option to turbotrace: #45410
- build: remove warning when building with a middleware present: #45518
- Reload on server component change: #45268
- Add more JSDoc to metadata interface: #45526
- Fix image blur cover when
fill
andblurDataURL
: #44317 - Improve error when create root layout fails: #45304
- Error when exporting AMP config in app dir: #45228
- Rename precedence: #45542
- Add unit test for prefetchReducer: #45516
- Avoid overwriting pre-existing VSCode settings: #45311
- Add editor links to module import traces: #45257
- Separate next/dynamic implementation for app and pages: #45565
- Refactor navigateReducer to handle mutable consistently: #45555
- Fix SWC test: #45574
- Improve swc transforms: #45594
- Fix AsyncLocalStorage included in the client bundle: #45589
- Fix invalid sourcemaps in taskfile-swc: #45604
- Optimize size for the error component: #45586
- Implement loader and entry creation for server: #45524
- Emit plugin errors for metadata API in client entries: #45613
- Refactor server-patch-reducer and refresh-reducer to use applyFlightData and handleMutable: #45608
- Fix unexpected polyfills in edge-runtime: #45601
- misc: fix precompiled script generation: #45616
- Fix TS plugin completions: #45634
- Use only 1 worker for type checking and linting: #45639
- Avoid loading project config multiple times: #45637
- Add same-origin to fetchServerResponse: #45648
- Use higher instanceId for redux devtools: #45649
- Fix issue where layout-router wouldn't auto-scroll if we imported styles or fonts: #45487
- Avoid injecting the TS plugin if
extends
is used: #45655 - Support filebased metadata icon and apple touch icons: #45612
- Update app dir react for client reference updates: #45490
- Improve client-only imported in external package error: #45484
- Picking apple-icon instead of apple-touch-icon: #45673
- [ESLint] Add
app
dir to default linting directories: #44426 - Skip prefetching for bots in app-router too: #45678
- Fix directive parsing in SWC: #45671
- Add warning for head.js with metadata docs link: #45680
- Fix missing hasHeader mock during revalidate: #45681
- Fix CSS loaders in pages when app dir is enabled: #45619
- Allow
generateMetadata
to be synchronous: #45696 - Turbopack experimental fields docs and schema: #45560
- Allow setting metadataBase for metadata: #45719
- Add IntelliSense for
generateMetadata
: #45723 - Ensure bundle 404 can be rewritten in dev: #45728
- More explicit errors for invalid exports in SWC: #45679
- Fix global CSS loader behavior when appDir is enabled: #45739
- Return a special result when a route can't be resolved: #45668
- Forward type definition with the TS plugin: #45764
- Prefix basePath in navigate and prefix methods in app router: #45771
- Fix applyFocusAndScroll with server patch: #45782
- Make turbotrace run after the webpack build: #45621
- Apply module default interop for app-dynamic: #45781
- Fix displayName prop access for client reference: #45794
- next-dev: change cluster usage to child process + stabilise inspect port #45745
- Update turbopack to 230209.02: #45776
- Fix type checking for generateStaticParams #45788
- Add experimental route type checking: #45761
- Use text/x-component for RSC response: #45808
- Update server manifest and entry creation: #45722
- Disable un-necessary lint rule by default: #45813
- Update warning links back to new Metadata docs.: #45818
- remove unnecessary await when calling findPagesDir: #45807
- fix wrong variables assignment: #45833
- fix: proper check for plugin in tsconfig: #45831
- Add status code to app-render redirect response: #45846
- Static og and twitter image files as metadata: #45797
- Fix hash in route types: #45820
- Add tests for parallel routes / interception and handle router state patch merging client-side: #45615
- Update middleware prefetch handling: #45772
- fix(next-swc): Enable
ignoreDynamic
for auto_cjs: #45836 - Update default tracing root handling: #45864
- Fix redirect for the root path with i18n and defaultLocale: #45847
- Use text/plain content-type for RSC responses: #45783
- build(cargo): update turbopack: #45863
- Add missing isRootLayout when creating optimistic tree: #45899
- Disable streaming for
pages
: #45895 - Improve TypeScript plugin for metadata: #45876
- Upgrade turbopack: #45861
- Add top-level trace include/exclude config: #44605
- Add warning when mismatching @next/swc version is being used: #45880
- Ensure terminal sequence is reset on dev exit: #45881
- chore(deps): upgrade cross-spawn to 7.0.3: #45839
- Server Router Improvements: #45716
- Use details tag in collapsed call stacks: #45907
- Rename manifest file names: #45877
-
next/navigation
Typescript support forpages/
: #45919 - Improve server-only imported in external package error: #45749
- Make app-render error logging less verbose in dev: #45472
- fix: proper type for typed
Link
: #45915 - test(integration): fix skip retry count logic: #45930
- Fix app routes on deploy: #45931
- fix(link): do not reload when Link is in SVG: #41320
- Freeze resolved metadata object in dev mode: #45923
- Improve type checking with tests: #45940
- Log dev error in Server Router: #45951
- Stop overriding the user's TS config with defaults during
next build
: #45670 - Metadata fields improvements: #45945
- Fix windows path while searching matched page path: #45958
- Skip auto static entries in turbotrace: #45856
- Use metadata API in automatically created root layout: #45938
- Add next/font import: #45891
- Add next/font imports codemod: #45740
- Add edge support for route handlers: #45990
- Fix windows paths for invalid import errors: #45999
- Exclude system entrypoints from client manifest's chunk list: #46010
- Improve RSC related bundling error messages: #45971
- Fix folders included in trace: #46011
- [edge] support edge-light exports when bundling edge functions: #45188
- Skip collecting modules from page dir in the client reference plugin: #46020
- Fix metadata manifest field rendering: #46004
- Remove
swcMinifyDebugOptions
from the config: #45976 - Skip including test files in dist: #46022
- Refactor freezing metadata while resolving and fix title merging: #45965
- Move initial head: #45695
- fix: next-image-experimental codemod: #45970
- chore(deps): use external
@edge-runtime/cookies
: #42736 - Improve generic namings: #46046
- Fix normalization of .rsc extension: #46043
- Fix RSC navigation when overriding headers in middleware: #46049
- @next/font migration warning: #46036
- Add jsdoc examples to metadata: #46035
- Make shebangs portable used in the repo portable: #46028
- Remove stray console.log line (fixes #46027) (#46025)
- feat: show version staleness in error overlay (#44234)
- Revert part of #45971: #46071
- fix: codemod
next/image
within monorepo: #46047 - Check for windows paths in server matchers: #46055
- Fix export conditions in Webpack config: #46066
- Add
loader-runner
to compiled packages: #45962 - Fix next/font error parsing on windows: #46053
- Add
vary
header to responses from pages and Edge SSR: #46073 - chore: Rename internal Webpack plugin: #46088
- Fix manifest error when using route.js: #46102
- fix: typedroute routes for window: #46099
- Fix React key warning when using metadata.twitter.images: #46106
- Detect invalid metadata exports errors in next-swc: #46077
- Polish metadata interface jsdoc: #46116
- speeds O(n^2) execution of detectConflictingPaths: #46080
- chore(ci): add job to test codemods: #46068
- Use tsx parser in built-in-next-font codemod tests: #46140
- Send correct stats in hot reloader sync event: #46150
- fix: OpenGraph metadata images rendering: #46154
- Improve app-render error log with edge runtime: #46157
- feat: add instrumentation hook: #46002
- Update flakey instrumentation test cases: #46165
- Update added instrument check: #46166
- Add icon descriptor property media and fetchPriority: #46149
- Fix "use client" in pages dir errors: #46191
- Fix client boundary defined in a module: #46171
- Adding next-multilingual as a new i18n option: #37452
- Use next/font in create-next-app: #45897
- Update CI test setup: #46138
- build(cargo): update turbopack: #46013
- Add invariant error when the pageData is incorrectly assigned: #46204
- Fix handle extracted CSS modules without layer info: #46200
- Add ISR handling for app routes: #46133
- Fix route.js trailingSlash handling: #46185
- fix file name in next/font unresolved import error: #46187
- fix: image optimization content-type: #46219
- Fix turbopack route resolver (#46206
- Update flaky dev tests: #46179
- Fix flaky script test: #46211
- Update Turbopack to turbopack-230221.3: #46209
- fix: don't append domain to absolute urls when using i18n: #46201
- fix: CNA issues when using
@/
in custom import alias: #46184 - chore(ci): remove
needs: build-native-test
from codemod test: #46192 - Breakup telemetry test further: #46218
- Update app dir cache handling: #46081
- Fix app-dir vary test in deploy mode: #46224
- Skip build step for docs only change: #46225
- Don't enable dev watcher when turbopack is used: #46231
- Fix API route matched as page on Windows in dev: #46238
- Fix missing metadataBase for static tw,og image resolving: #46243
- feat: add OTEL instrumentation for next-server + OTEL example: #46198
- Fix precompiled of react scheduler: #46250
- Make build error urls clickable: #46251
- feat: add
contentDispositionType
config to Image Optimization API: #46254 - Add test for next-found and redirect for metadata: #46248
- update turbopack: #46253
- Remove cache built files step: #46264
- Skip pre-rendering the default param when no params are provided: #46265
- Update app-dir react bundle to leverage edge build: #46208
- Improve type checking: #46276
- Update Turbopack to turbopack-230222.3: #46278
- Rename:
OgTypFields
variable toOgTypeFields
: #46282 - Add client router filter handling: #46283
- Update app dir cache heuristics: #46287
- Update app dir cache handling: #46271
Documentation Changes
- Typo: #45380
- @next/font change default font-display: #45430
- Update i18n-routing.md: #45448
- docs: move getStaticProps before getStaticPaths: #45357
- Remove "standalone" from next export docs: #45539
- Add example for
clearPreviewData
with path to documentation: #45465 - docs: added missing strategy: #45584
- Update react-hydration-error.md: #43671
- Add Cypress component testing to docs & example: #44869
- Update no-img-element.md: #45701
- A repeated description should be updated: #45691
- Update app-static-to-dynamic-error.md: #45704
- chore: update
next/image
docs with unoptimized example: #45720 - Update
NextResponse
section in Middleware docs: #45913 - Update font.md: #45932
- docs(next/router): capitalize React: #45950
- chore(examples): update with-lingui example: #46007
- Fix small error in documentation: #46105
- Update error doc for CSS Modules in third-party deps: #46121
- Update Edge Runtime docs page: #46239
Example Changes
- Update with-redux example tsconfig to use strict: true: #45325
- Update example path for authsignal/passwordless-login: #45387
- Create reproduction template for app dir: #45412
- Example/with apivideo: #45272
- Upgrade librabries and rebranding kontent.ai: #45260
- bump node alpine to version 18 (LTS): #45643
- Fix ts config in reproduction-template-app-dir: #45653
- Simplify with-google-analytics example: #43894
- Define base image for multi-stage build: #45090
- fix(next-mdx): mark
mdx-js/*
as optional: #45440 - Update README for cms-kontent-ai: #45796
- Fix 404 link in example with-turbopack: #45843
- chores(examples): Define base image for multi-stage build: #45862
- Update Convex demo to 0.9.1: #45866
- Add
MDXComponents
type touseMDXComponents
: #45737 - Fix syntax error in supabase auth example: #45926
- Update Material UI examples: #45974
- chore(examples): updates supertokens dependencies: #45985
- chore(examples): more practical jotai example: #45973
- Fixing nextjs-recoil example: #46024
- [examples] Use styletron-react 6.1.0: #45810
- Update @testing-library/react in with-redux example: #46085
- fix: problem in example/blog-starter: #46122
Misc Changes
- Enable file nesting for unit test files in vscode: #45329
- Update more flakey API support checks: #45373
- Remove old CI workflows: #45377
- Revert "Fix release stats": #45164
- Ensure PATH env matches CI locally: #45376
- Fix nested example setup with create-next-app: #45390
- Fix flakey app metadata test: #45391
- Move error recovery test to new file: #45407
- Enable more hydration error overlay tests: #45404
- Add @jankaifer as codeowner of docs, .github and examples: #45446
- chore(github): update issue labeler: #45444
- Some changes in grammar: #45467
- Remove leftover server.js files in test suite: #45408
- chore: fix docs link to minimumCacheTTL: #45502
- Clean up CI logs: #45171
- Refactor
next export
tests : #45227 - fix typo in comment and unused variable remove: #45307
- Add unit test for serverPatchReducer: #45511
- Fix unsafe caching for isolated tests: #45602
- Update @next/font/google data: #45622
- Increase GitHub actions job timeouts: #45638
- migrate from yarn to pnpm: #45652
- Fix error page line height: #45676
- chore: simplify package scripts: #45226
- test(integration): allow to conitnue when test suite fails: #45682
- chore: update issue-labeler: #45706
- Fix CNA file initializing order: #45760
- Support favicon.ico for metadata (#45759
- Move CSS tests out of the main test suite: #45765
- Update CNA tests (#45768
- Separate navigation and hooks tests into new test suites: #45766
- Bring file back to original:
cb195ce
- Add additional tests for @next/mdx: #45585
- Fix typo in
@next/mdx
readme: #45888 - test(integration): allow to partially skip retry: #45914
- Fix flaky rsc-build-error test: #45896
- Remove action adding "linear" label which is not used anymore: #45911
- Replace yarn with pnpm in
createTestDir()
: #45878 - test: update flaky app dir test: #45921
- Include
tsconfig.json
in tests: #45879 - Use latest CLI for E2E tests: #45925
- Update E2E deploy tests: #45929
- Fix flakey app cli output checks: #45960
- Change github issues labeler to upstream repo - our changes were merged: #45986
- test(integration): emits successful test output for continue on error: #46008
- docs: fix contributing guideline: #46005
- Fix cache built files step: #46075
- Disable cache built files step
- Remove built files chown
- Fix failed cache restoring: #46083
- Fix adding-exmaples.md doc: #46051
- Update next/font/google data: #46040
- Fix flaky invalid import test: #46089
- chore: refactor image optimization tests: #46269
- Code refactoring for loader rules: #46277
Credits
Huge thanks to @timneutkens, @loettz, @okcoker, @clive-h-townsend, @shuding, @JanKaifer, @sepiropht, @hanneslund, @huozhi, @aralroca, @balazsorban44, @cristobaldominguez95, @vinaykulk621, @Brooooooklyn, @feedthejim, @samsisle, @MarDi66, @styfle, @therealrinku, @sebmarkbage, @cravend, @hu0p, @kdy1, @ijjk, @juzhiyuan, @IvanKiral, @LukeSchlangen, @wojtekolek, @samdenty, @Josehower, @bennettdams, @SCG82, @mike-plummer, @kwonoj, @David0z, @denchance, @joulev, @wbinnssmith, @alexkirsz, @UnknownMonk, @leerob, @sairajchouhan, @imranbarbhuiya, @jomeswang, @ductnn, @thomasballinger, @chibicode, @jridgewell, @sreetamdas, @Juneezee, @SukkaW, @wyattjoh, @michaeloliverx, @cattmote, @joefreeman, @valentincostam, @qrohlf, @ossan-engineer, @rishabhpoddar, @vasucp1207, @Schniz, @andrii-bodnar, @gergelyke, @abstractvector, @wherehows, @BrodaNoel, @taep96, @abe1272001, @0xadada, @nbouvrette, @teobler, @lubakravche, @molebox, and @hiddenest for helping!
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.