Releases: vercel/next.js
v15.4.0-canary.71
Core Changes
- [dev-overlay] Use same bundle for Pages and App Router: #80019
- Revert "Revert "[turbopack] Compute Import Traces for Issues"": #80220
Misc Changes
- Revert "[test] fix flaky test of basepath navigation": #80259
- Turbopack: really fix export collection: #80240
Credits
Huge thanks to @huozhi, @mischnic, @eps1lon, and @lukesandberg for helping!
v15.4.0-canary.70
Core Changes
- fix: invalid middleware configs should fail the build: #80221
- [dev-overlay] Render /app Dev Overlay with a separate React instance: #79699
- [devtool] display segment explorer as tree view: #80261
Misc Changes
- [turbopack] Replace uses of
Value<Pattern>
with justPattern
: #80134 - [test] Unflake back-forward-cache test: #80250
- perf(turbopack): Decode sourcemap partially: #80177
- [turbopack] Replace uses of
Value<ExecutionEnvironment>
with justExecutionEnvironment
: #80135 - [turbopack] Replace uses of
Value<ContentSourceData>
with justContentSourceData
: #80140
Credits
Huge thanks to @lukesandberg, @eps1lon, @kdy1, @ztanner, and @huozhi for helping!
v15.4.0-canary.69
Core Changes
- Replay redirect if RSC parameter is missing: #80180
- [devtool] style the segment explorer as nested view: #80212
- Prerender with streaming metadata during revalidation: #80245
Misc Changes
- [turbopack] Remove Value::new wrapper for ServerContextType parameters: #80133
- Turbopack: fix export collection: #80203
- Docs: Linking and Navigating Page: #80103
- Turbopack Build: docs for unsupported composes handling: #80238
- Turbopack Build: Update manifest for #80238: #80244
- [test] More robust extraction off CSS sources in Flight chunks: #80243
Credits
Huge thanks to @acdlite, @lukesandberg, @mischnic, @delbaoliveira, @timneutkens, @eps1lon, @huozhi, and @unstubbable for helping!
v15.4.0-canary.68
Core Changes
- docs: fix grammar in Code of Conduct section ('them' → 'it') : #80181
- [error-overlay] remove footer message: #80169
- Turbopack: Log persistent cache store time: #80149
- fix(turbopack): Next.js package not found panics in Turbopack: #79572
- [turbopack] Compute Import Traces for Issues: #79351
- Typecheck
require()
calls: #80056 - Revert "[turbopack] Compute Import Traces for Issues": #80215
- remove unique metadata prop from initial RSC payload #79388
Misc Changes
- Update Rspack production test manifest: #80136
- small typo fix: #80171
- build(turbopack): Update
swc_core
tov26.4.4
: #80161 - [turbopack] Remove uses of
Value<ClientContextType>
by makingClientContextType
a TaskInput: #80127 - Update Turbopack development test manifest: #80196
- Update Rspack production test manifest: #80192
- Update Rspack development test manifest: #80193
- Update Turbopack production test manifest: #80195
- [turbopack] Remove uses of
Value<ReferenceType>
by makingReferenceType
a TaskInput: #80130 - Upgrade rust version to 2025-06-04: #80200
- Fix race condition in
types-and-precompiled
: #80162 - Turbopack: ignore module ids config in dev: #80204
- Remove forks to switch back to upstream crates: #80198
- Add a test to show that
'use cache'
works ingenerateMetadata
: #80172 - [test] Add test for dev rendering indicator: #80205
- docs: add Docker development performance guidance for Mac/Windows: #80002
- [test] fix flaky test of basepath navigation: #80213
- [turbopack] Remove Value::new wrapper for Availabilityinfo parameters: #80132
Credits
Huge thanks to @chdeskur, @nakanoh, @kdy1, @lukesandberg, @devjiwonchoi, @mischnic, @eps1lon, @sokra, @Cy-Tek, @unstubbable, @ztanner, and @huozhi for helping!
v15.4.0-canary.67
Core Changes
- [metadata] fix nonce prop for hoist script: #80174
Misc Changes
- Turbopack Build: Fix metadata dynamic force-dynamic: #80167
- [turbopack] Remove turbo_tasks::value attribute from NativeFunction
: #80170 - Turbopack: add tool to print DB structure: #80148
Credits
Huge thanks to @timneutkens, @lukesandberg, @huozhi, and @sokra for helping!
v15.4.0-canary.66
Core Changes
- [dev-overlay] Remove indirection in app dev error boundary : #79984
- Docs: preload entries impact on memory consumption: #80098
- [dev-overlay] Move building indicator into Dev Overlay state: #79985
- [metadata] only render one metadata outlet: #80146
- Add a
regions
property to the Functions Config Manifest file: #80104
Misc Changes
- chore(turbopack): Use label for large benchmark: #80114
- [test] add custom timeout for start server: #80160
- Turbopack: Fix sst filter handling and order for meta files: #80147
Credits
Huge thanks to @eps1lon, @icyJoseph, @kdy1, @huozhi, @agadzik, and @sokra for helping!
v15.4.0-canary.65
Core Changes
- [dev-overlay] Remove unnecessary code from /pages dev error boundary: #79983
- Turbopack Build: Implement helpful error for missing sass package: #80155
- [global-not-found] fix shared css imports not being picked: #80151
- Add experimental flag for RSC request validation: #80157
Credits
Huge thanks to @eps1lon, @timneutkens, @huozhi, and @acdlite for helping!
v15.4.0-canary.64
Core Changes
- [dynamicIO] Document client component remediations for sync IO: #79787
- [dynamicIO] prioritize preprocessing RSC rows when prerendering: #80125
- [dev-overlay] Remove unused
onError
in /pages: #79982 - Remove unused vendored
server-inserted-metadata
module: #80143 - Webpack Build: Use name-contenthash instead of name-chunkhash for dynamic imports: #80153
Misc Changes
- chore(turbopack): Remove unused dependencies reported by cargo-shear: #80121
- [turbopack] Eliminate many calls to
into
and from and cell involving RcStr: #80076 - fix(turbo-persistence): Atomically mark old versioned directories for deletion before deleting them: #80082
- Turbopack: Improve errors when opening SST files: #80106
Credits
Huge thanks to @gnoff, @bgw, @lukesandberg, @eps1lon, @sokra, and @timneutkens for helping!
v15.4.0-canary.63
Core Changes
- [dev-overlay] Parse stacks in reducer not during dispatch: #79788
- Remove obsolete
@ts-expect-error
: #80065 - [dev-tools] Navigation header replaces close button: #80097
- [dev-overlay] Inject
get*Stack
implementation: #79789 - [dev-overlay] Fix dark‐mode styling for
<option>
in Preferences dropdowns: #80025 - Use relative sources in
require()
instead ofnext/dist/
if possible: #80054 - [dev-overlay] Inject
isRecoverableError
implementation: #80003 - [devtool] fix explorer flag consuming and style: #80110
- [dev-tools] add restart dev server button to error overlay: #80060
- [dev-tools] add restart dev server button on dev-tools indicator preferences: #80072
- [chore] remove legacy useEarlyImport flag: #80112
- [testmode] Fix types of
wrapRequestHandler
: #80055 - Extend bot list with googleweblight, Storebot-Google, Google-Inspecti…: #77728
- [dev-overlay] Inject
getSquashedHydrationErrorDetails
implementation: #80046 - [dev-tools] better description for restart server button: #80118
- [dev-tools] style: preferences section title: #80120
- [metadata] refactor to remove async metadata: #78495
Misc Changes
- docs: Manual calls to action should we wrapped in startTransition: #80101
- [dev-tools] Re-focus previous item after closing sub menu: #80099
- perf(turbopack/rcstr): Precompute hash for equality bailout: #78943
- perf(turbopack/rcstr): Use precomputed hash: #80074
- Docs: Improve Turbopack webpack loader documentation: #79523
- fix(turbopack): Allow google font fetch errors to propagate when in production: #79999
- chore(turbopack): Fix building local crates with
--all-features
: #80117 - fix React 18 test failures: #80119
Credits
Huge thanks to @icyJoseph, @eps1lon, @raunofreiberg, @teamleaderleo, @kdy1, @huozhi, @devjiwonchoi, @Cy-Tek, @vitaliemiron, @bgw, and @ztanner for helping!
v15.4.0-canary.62
Core Changes
- Update font data: #80036
- Fix defunct ESLint overrides: #80053
- [devtools] Add an endpoint to poll for server status: #80005
- [dynamicIO] Only report client sync IO errors if they are above a Suspense boundary: #80026
Misc Changes
- Turbopack: add print_cache_item_size feature flag to print cache size per task: #80043
- Turbopack: remove verbose output: #80044
- docs: Reference to statically imported images: #80048
- Docs: Drop innacurate override information for dynamicParams: #79966
- chore: Use same function references in useReportWebVitals examples: #79963
- refactor(turbopack): Do not use
Result
forRope#read
: #80004 - Turbopack Build: Fix next-font test: #80049
- chore(ci): Disable flaky turbopack benchmarks: #80058
- Turbopack Build: Implement locale:false middleware matcher: #80057
- [turbopack] Simplify the definition of AssetIdent: #79805
- Update Rspack production test manifest: #80038
- Update Turbopack production test manifest: #80040
- Update Rspack development test manifest: #80039
- chore(turbopack): Update
rust-sourcemap
tov9.2.2
: #80066 - chore(turbopack): Remove
Lightningcss
prefix for CSS types: #80067 - build(turbopack): Update
swc_core
tov26.3.3
: #80059 - perf(turbopack): Use owned instance of
Code
forminify()
: #79991 - Update Turbopack development test manifest: #80041
Credits
Huge thanks to @sokra, @icyJoseph, @kdy1, @timneutkens, @lukesandberg, @eps1lon, @bgw, and @gnoff for helping!