Releases: vercel/next.js
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!
v15.4.0-canary.61
Misc Changes
- [turbopack] Create a macro rcstr! for constructing RcStr from string literals.: #79759
Credits
Huge thanks to @lukesandberg for helping!
v15.4.0-canary.60
Core Changes
- [devtools] Add a query parameter to restart endpoint to invalidate the persistent cache: #79425
- Implement handler interface for app-page: #79568
- Migrate app route to handler interface: #80008
- Turbopack Build: Fix underscore path tests: #79778
- Fix watchmode for
taskr
tasks: #80020
Misc Changes
- fix: update rspack production build output snapshot: #79766
Credits
Huge thanks to @SyMind, @bgw, @ijjk, @timneutkens, and @eps1lon for helping!
v15.4.0-canary.59
Core Changes
- Remove
subissues
fromIssue
: #79988
Misc Changes
- [turbopack] Fix URL fragment and query handling in Turbopack: #79993
- chore(turbopack): Cleanup benchmark code: #79943
- chore(ci): Run turbopack benchmark from custom runners: #79979
Credits
Huge thanks to @lukesandberg and @kdy1 for helping!
v15.4.0-canary.57
Core Changes
- fix: preload fonts in template.js: #79417
- feat: using eval source map plugin for Rspack: #79199
- feat: using builtin CssChunkingPlugin for rspack: #79762
- fix(napi): Update generated types, add alias for RcStr: #79915
- [dev-overlay] Fix highlighted line cut off on scroll: #79930
- fix(next/font): allow custom font-family in declarations: #76274
Example Changes
- refactor(napi): Implement napi traits for RcStr: #79806
Misc Changes
- Update Rspack development test manifest: #79772
- chore(turbo-tasks-backend): Fix build with
--features turbo-tasks-backend/lmdb
: #79530 - Turbopack: persist and compare errors and panics: #77935
- Turbopack: add test for reexport cycles: #79792
- [release-new] fix: slack notification only if is a publish workflow: #79933
- Update Rspack production test manifest: #79923
- chore(ci): Configure small benchmark for builds: #79796
Credits
Huge thanks to @lpalmes, @bgw, @SyMind, @raunofreiberg, @sokra, @imskyleen, @devjiwonchoi, and @kdy1 for helping!
v15.3.3
Note
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- Reinstate
vary
(#79939) - fix(next-swc): Fix interestingness detection for React Compiler (#79558)
- fix(next-swc): Fix react compiler usefulness detector (#79480)
- fix(dev-overlay): Better handle edge-case file paths in launchEditor (#79526)
- Client router should discard stale prefetch entries for static pages (#79362)
Credits
Huge thanks to @gaojude, @kdy1, @bgw, and @unstubbable for helping!
v15.4.0-canary.56
Core Changes
- chore: update rspack to 1.3.12: #79428
- Enable repeated
tsc
runs inpackages/next
without having to build first: #79782 - Run
tsc
in watch mode duringpnpm dev
: #79785
Example Changes
- chore: Update the
with-supabase
example to use the Supabase Auth block: #78913
Misc Changes
- Docs: Fix headings: #79777
- Turbopack Build: Fix metadata test: #79776
- chore(turbopack): Update
swc_core
tov26.2.2
: #79756 - re-enable vary header deploy test: #79753
- refactor(turbopack): Preserve indents in dev mode codegen: #79786
- Docs:
force-static
w/ revalidate, revalidatePath, and revalidateTag: #79780 - Turbopack: split meta data and AQMF into separate files: #79659
- Update script location used in
pnpm unpack-next
: #79626 - chore(ci): Configure automated benchmark for turbopack: #79791
- [turbopack] Reduce the size of module graph datastructures: #79706
- chore(ci): Add large benchmark: #79793
- Update Turbopack development test manifest: #79774
- Update Turbopack production test manifest: #79773
- fix(next-swc): Fix specificity issue of
styled-jsx
in lightningcss mode: #79802
Credits
Huge thanks to @SyMind, @delbaoliveira, @timneutkens, @eps1lon, @kdy1, @gaojude, @unstubbable, @icyJoseph, @sokra, @ivasilov, and @lukesandberg for helping!
v15.4.0-canary.55
Core Changes
- misc: remove leftover
clientInstrumentationHook
type: #79701 - cleanup(turbopack): Embed Global vs Specific channel type in the Rust type system: #79291
- [dev-overlay] Show error overlay on any thrown value in /app: #79658
- [dev-overlay] Move error handlers into dispatcher in /app: #79660
- Verify cache-busting param during segment prefetch: #79563
- update(turbopack): Update the messaging UX for timing writing files to disk: #79469
- [dev-overlay] Move Redbox open/close into dispatcher: #79698
Misc Changes
- Turbopack Build: Fix middleware rewrite test: #79697
- Update flakey empty-project test: #79734
- Update Rspack production test manifest: #79645
- Update Turbopack development test manifest: #79646
- Update Rspack development test manifest: #79644
- perf(turbopack): Remove indent in intermediate string: #79754
- fix(turbopack): Use comments instead of AST nodes for unreachables: #79703
Credits
Huge thanks to @r34son, @Cy-Tek, @eps1lon, @timneutkens, @ijjk, @acdlite, and @kdy1 for helping!
v15.4.0-canary.54
Core Changes
- Turbopack: derive de/serialize for loader config: #79581
- Update font data: #79642
- Avoid bundling dev overlay in page template: #79641
- Enable preview builds for forks: #79648
Misc Changes
- chore(turbo-tasks): Remove old and unused
turbo-tasks-memory
backend: #79560 - Update Turbopack development test manifest: #79603
- Enforce consistency between packages in preview builds: #79610
- Turbopack: improve error handling when DB read/deserialization fails: #79545
- Docs IA 2.0: Create Forms guide: #79288
- Docs IA 2.0: Create intercepting and parallel routes API reference: #79405
- Docs IA 2.0: Add examples to layout.js: #79453
- Docs IA 2.0: Update template.js API reference: #79490
- Docs IA 2.0: Create Dynamic Segments API reference, add example to getting started. : #79439
- Turbopack: avoid panics due to eventual consistency: #79242
- Next IA 2.0: Create Route Groups API reference, simplifying wording: #79444
- Update Turbopack production test manifest: #79647
- Docs IA 2.0: Move Redirects page to guides: #79447
- Docs IA 2.0: Add
Caching and Revalidating
page: #79493 - Docs: scrub html in
ld+json
script: #79627 - Turbopack Build: Fix edge _document test: #79628
- Turbopack Build: Fix conflicting page error: #79634
- Turbopack Build: Fix runtime value test: #79654
- Docs IA 2.0: Delete Error Handling page: #79495
- Turbopack Build: Skip edge stacktrace test: #79661
- Fix name tracking for closures in server actions transform: #79657
Credits
Huge thanks to @bgw, @wbinnssmith, @eps1lon, @sokra, @delbaoliveira, @icyJoseph, @timneutkens, @ijjk, and @unstubbable for helping!