Releases: vercel/next.js
v15.0.0-canary.141
Core Changes
- [Turbopack] gracefully stop turbo-tasks to allow persisting to complete: #69661
- fix: ensure absolute paths are handled correctly with
--file
option innext lint
command forlint-staged
compatibility: #69220 - dev-overlay: Implement CopyButton without useActionState or async transitions: #69494
- Update
swc_core
tov0.103.1
: #69605 - Run link-ref tests in /app and /pages: #69564
Misc Changes
- Revert "docs: Fix invalid arguments for sendGTMEvent": #69653
- Revert "Revert "docs: Fix invalid arguments for sendGTMEvent"": #69654
- fix trace file reloading: #69655
- Turbopack build: Fix telemetry tests: #68969
- Revert "ci: only trigger slack webhook from canary": #69648
- ci: make inputs.skipNativeInstall do what it says : #69674
- docs: add links to search params on server/client: #69618
- refactor(turbo-tasks) Add a higher-level task-local state API for the Backend trait: #68996
- docs(usePathname): add note about using usePathname with rewrites: #69686
- chore(turbo-tasks): Move Invalidator struct from manager.rs to invalidation.rs: #69073
- [Turbopack] transient when the self argument is transient: #69657
- [Turbopack] store project options in state: #69658
- refactor(turbo-tasks): Add stubs for RawVc::TaskOutput: #68908
- fix merge conflict: #69690
- [Turbopack] use file.read() instead of file.track() in webpack loaders: #69659
- [Turbopack] no need to depend on write completion: #69660
- Update the preview tarball binaries: #69692
- docs: update note on caching and db/orms: #69695
- refactor(github): refactor triage-issues-with-ai to generateObject: #69696
- fix: Allow subset of node.js APIs for edge: #69675
Credits
Huge thanks to @timneutkens, @sokra, @ztanner, @lubieowoce, @leerob, @bgw, @samcx, @ijjk, @sommeeeer, @lumirlumir, @eps1lon, and @kdy1 for helping!
v14.2.8
What's Changed
Note
This release is backporting bug fixes and minor improvements. It does not include all pending features/changes on canary.
Support esmExternals
in app directory
- Support esm externals in app router (#65041)
- Turbopack: Allow client components from foreign code in app routes (#64751)
- Turbopack: add support for esm externals in app dir (#64918)
- other related PRs: #66990 #66727 #66286 #65519
Reading cookies set in middleware in components and actions
- initialize ALS with cookies in middleware (#65008)
- fix middleware cookie initialization (#65820)
- ensure cookies set in middleware can be read in a server action (#67924)
- fix: merged middleware cookies should preserve options (#67956)
Metadata and icons
- support facebook-specific metadata (
fb:app_id
,fb:admins
) in generateMetaData (#65713) - Always collect static icons for all segments (#68712)
- Fix favicon merging with customized icons (#67982)
- Warn metadataBase missing in standalone mode or non vercel deployment (#66296)
Parallel routes fixes
- fix missing stylesheets when parallel routes are present (#69507)
Draft mode and edge improvements
- fix: unstable_cache should not cache new result in draft mode (#67772)
- Add draft mode flag for multi-zone (#68997)
- Fix edge preview props are not matched with cookie (#67779)
- other related PRs: #65426, #67787, #64946, #64313, #64370
next/image
fixes
- Allow external image urls with _next/image pathname to be rendered via Image component (#69586)
Server actions improvements
- optimize server actions (#66523)
- Apply optimization for unused actions (#69178)
- Improve SWC transform ID generation (#69183)
Other changes
- Ensure we match comment minify behavior between terser and swc (#68372)
- send initialCanonicalUrl in array format to prevent crawler confusion (#69509)
Create-next-app updates
- enable @typescript-eslint/recommended in create-next-app --typescript (#52845)
- Update create-next-app template CSS (#66233)
- Update
create-next-app
template CSS (#66043) - Update create-next-app template (#65803)
- add font antialiasing to templates (#67425)
- Move
create-next-app
public/ assets from local folderβ remote URL (#66931) - Use classnames to set font family in Tailwind create-next-app templates (#66374)
- other related PRs: #64478, #68899, #68534, #69021, #67146, #66145
Full Changelog: v14.2.7...v14.2.8
Huge thanks to everyone who contributed to this release:
@abhi12299, @delbaoliveira, @eps1lon, @ForsakenHarmony, @huozhi, @ijjk, @JoshuaKGoldberg, @leerob, @lubieowoce, @Netail, @ronanru, @samcx, @shuding, @sokra, @stylessh, @timfuhrmann, @wbinnssmith, @wyattjoh, @ypessoa, @ztanner
v15.0.0-canary.140
Core Changes
- Add browser devtool inspect url copy button to dev overlay: #69357
- Lazily init fetch dedupe cache: #69492
- Turbopack build: Fix middleware matchers implementation: #69602
- chore(metadata): add clarifying comment: #69549
- Remove unsupported providerImportSource option: #69609
- fix: clientComponentLoading span type: #69295
- Fix typos: #69568
- fix(eslint): allow typescript-eslint v8: #68807
- Allow external image urls with _next/image pathname to be rendered via Image component: #69586
Misc Changes
- Turbopack: emit single CSS chunk per page: #69219
- feat: Report correct errors for missing
use client
in global-errors.ts: #69583 - Turbopack build: Implement
regions
andassets
field in manifest for middleware: #69534 - Docs: Rewrite
cookies
page to follow template, add missing methods: #69614 - Explicitly assert on errors instead of the error number: #69512
- Match peer dependencies in rsc-binary tests: #69515
- fix(scripts): correct globbing, cargo colors, patch path: #69624
- ci: only trigger slack webhook from canary: #69632
- Skip devlow benchmark step for forks: #69633
- perf: Cache Rust
Regex
es: #69585
Credits
Huge thanks to @mischnic, @kdy1, @timneutkens, @delbaoliveira, @eps1lon, @huozhi, @ForsakenHarmony, @samcx, @lubieowoce, @ProchaLu, @luismiramirez, @ijjk, @omahs, @theoludwig, and @abhi12299 for helping!
v15.0.0-canary.139
v15.0.0-canary.138
v15.0.0-canary.137
Example Changes
- Example: Updated the example of rewrites to utilize the App Router: #69495
Misc Changes
- fix(CI): Don't require the GRAPHITE_TOKEN secret, as it's not available in forks: #69517
Credits
Huge thanks to @bgw and @Sam-Phillemon9493 for helping!
v15.0.0-canary.136
Core Changes
- Support turbo: true option for custom server: #69464
- bugfix: aliased prefetches should flow through PPR handling: #69476
Misc Changes
- fix(turbopack-ecmascript-plugins): Accept a partial object for StyledComponentsTransformConfig: #69474
- Turbopack: JSON5 and package.json for postcss config files: #68679
- [after] duplicate test pages for edge instead of next.patch: #69477
- docs: clarify ISR behavior: #69501
Credits
Huge thanks to @bgw, @timneutkens, @mischnic, @ztanner, and @lubieowoce for helping!
v15.0.0-canary.135
Core Changes
- Introduce dynamicIO experiment: #67571
- Add module id strategy option to next config: #69319
- cleanup FlightDataPath array access/slicing: #69241
- normalize flight data after receiving server response: #69460
Example Changes
- Add
cms-umbraco
example: #52777
Misc Changes
- Documentation fixed: removes a confusing double negative: #69429
- docs: fix a calculation mistake: #69363
- Remove redundant code and call module_id_to_lit instead: #69430
- docs: improve no async client components page: #69440
- validate path lengths before writes and attempt to eagerly convert win paths: #69141
- build(pack-next): Add an option for the pack-next script to automate patching package.json: #69396
- Rename trace.log -> trace-turbopack to match .next/trace: #69447
- Make module IDs numbers instead of strings: #69431
- chore(CI): Use Graphite's CI Optimization Feature: #69204
- Revert "validate path lengths before writes and attempt to eagerly convert win paths": #69465
- Fix no ending quotation mark in 09-authentication blog: #69427
- Update index.mdx: #69400
- chore(github): fix tool call: #69470
Credits
Huge thanks to @amikofalvy, @yosefbeder, @gnoff, @LichuAcu, @leerob, @arlyon, @bgw, @timneutkens, @ztanner, @kjac, @woutvanderploeg, @Ocheretovich, and @samcx for helping!
v15.0.0-canary.134
Core Changes
- chore: add logs to download-swc ci job: #69425
- Upgrade React from
19.0.0-rc-f90a6bcc-20240827
to19.0.0-rc-7771d3a7-20240827
: #69417
Example Changes
- examples: Updating WordPress example to Next 14: #62447
Misc Changes
- build: Update
swc_core
tov0.102.0
: #69389
Credits
Huge thanks to @kdy1, @huozhi, and @Bjornnyborg for helping!
v15.0.0-canary.133
Core Changes
- refactor path creation in walkTreeWithFlightRouterState: #69383
- Partial Fallback Prerendering: #68958
- Upgrade React from
eb3ad065-20240822
tof90a6bcc-20240827
: #69415
Example Changes
- examples: Supabase | ui.shadcn, App Router Layouts: #69308
- Fix: Example Template | with-supabase - wrong file name breaking build: #69394
- Fix/ Examples
use-supabase
| Multiple improvements : #69407
Misc Changes
- Change ID generation strategy: #69200
- Fix async dynamic client modules in graph traversal: #69202
- docs: clarify caching: #69391
- docs: fix link in data fetching: #69382
- Fix typo on "additonal" to "additional": #69337
- Create React sync automatically: #69314
- Fix test mode detection: #69416
Credits
Huge thanks to @LichuAcu, @leerob, @ztanner, @MildTomato, @wyattjoh, @hiro0218, and @eps1lon for helping!