Releases: vercel/next.js
v15.4.0-canary.114
Core Changes
- [sourcemaps] ignore-list Webpack runtime: #81229
- Allow
pnpm build
to be run when offline: #81273 - [sourcemaps] Ignore-list sources whose sourcemaps ignore-list everything: #81231
- [dynamicIO] Use owner stacks for dynamic validation errors: #81277
- [dynamicIO] Don't abort prospective render on sync access during SSR: #81258
Misc Changes
- Update Rspack development test manifest: #81219
- [turbopack] Remove unused no_move_vec code: #81141
- Add regression test for conflicting search and route params: #81249
- build: Update
swc_core
tov30.1.1
: #81276 - [test] Keep Playwright stackframes out of tests: #81240
- perf(turbopack): Make
File
=> json faster: #81279 - Turbopack: sourceMappingURL for Node.js runtime chunk: #81300
- Turbopack: fix instrumentation-edge layer name: #81304
- Current behavior for module evaluation sourcemapping: #73737
Credits
Huge thanks to @vercel-release-bot, @lukesandberg, @gaojude, @kdy1, @eps1lon, @mischnic, @unstubbable, and @gnoff for helping!
v15.4.0-canary.113
Core Changes
- [Segment Cache] Support third-party redirects in output: "export" mode: #81247
- [devtool] css imports and share css variables: #81236
- Update matching query and route param handling: #81209
- bugfix: propagate staleTime to seeded prefetch entry: #81263
- Ensure resolvedPathname normalizes trailing slash: #81265
Misc Changes
- Turbopack: codegen modules without module graph: #81238
- Turbopack: delete module_context.remove_unused_exports: #81239
- Ensure default run name is correct for deploy tests: #81255
- Turbopack: prevent ParseResult recomputation: #81244
- [turbopack] Remove a vec clone from
primary_chunkable_referenced_modules
: #81206
Credits
Huge thanks to @mischnic, @acdlite, @ijjk, @huozhi, @lukesandberg, and @ztanner for helping!
v15.4.0-canary.112
v15.4.0-canary.111
Core Changes
- Reuse resolvedPathname from prepare: #81194
- Turbopack: exclude resolve-rewrites if possible: #80939
- [devtool] styling fixes: #81228
- [devtools] Omit line/col numbers for anonymous sources: #81223
- Fix NEXT_CPU_PROF during development: #81248
Misc Changes
- Only retry deploy tests for canary: #81207
- Skip alert as well for non-canary e2e deploy: #81210
- Fix if condition in retry workflow: #81211
- Format Turbopack NFT tests: #81199
- Turbopack: add
EcmascriptExports::Unknown
: #81214 - Sync NFT test suite from upstream: #81189
- docs: Getting started pages and search params: #80616
- Fix future Rust warnings: #81217
- Turbopack: fix source map panic: #81212
- chore(turbopack): Remove unused dependencies reported by cargo-shear: #81221
- Docs/after function mdx fix: #81174
- Docs: include effect in docs for default optimized libraries: #81203
- Update caching.mdx: #81185
- perf(next-napi): optimize output assets collection using flat_map: #81222
- [turbopack] Add FileSystemPath.has_extension and optimize module graph operations: #81205
Credits
Huge thanks to @ijjk, @mischnic, @icyJoseph, @ethanniser, @huozhi, @MichalMoravik, @eps1lon, @fireairforce, @lukesandberg, and @timneutkens for helping!
v15.3.5
Note
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- Turbopack: list assert/strict as external (#80884)
- omit searchParam data from FlightRouterState before transport (#80734)
- bugfix: propagate staleTime to seeded prefetch entry (#81263)
Misc Changes
- document turbopack trace viewer (#78184)
Credits
v15.4.0-canary.110
Core Changes
- Turbopack: fix and finish immutable tasks: #80996
- [segment explorer] custom tooltip: #80974
- [segment explorer] refactor boundary trigger with ui primitives: #81147
- Migrate usage of web-server in edge-ssr: #80915
- Upgrade React from
7216c0f0-20250630
to73aa744b-20250702
: #81192 - [segment explorer] fix route path in top navbar: #81195
Misc Changes
- Update caching.mdx: #81129
- build(turbopack): Update
swc_core
tov30.0.1
: #81179 - Turbopack: rename simple tree shaking: #81181
- Disable Turbopack manifest: #81170
- perf(turbopack): let some Clone be conditional in insert_alias_option: #81175
- [turbopack] Move global names onto the NativeFunction object: #81143
- Turbopack: Rewrite IntervalMap using a BTreeMap: #81095
- Bump lightningcss to not include browserslist-rs twice: #81184
- Turbopack: lazily create syntax contexts for scope hoisting: #81193
- feat(turbopack): turbo-esregex support captures method: #81119
- cleanup(turbopack) Show users an error message when Webpack loaders have a glob in only the extension: #81084
Credits
Huge thanks to @maral, @kdy1, @mischnic, @sokra, @xusd320, @huozhi, @lukesandberg, @ijjk, @bgw, @vercel-release-bot, @fireairforce, and @Cy-Tek for helping!
v15.4.0-canary.109
Core Changes
- [dynamicIO] Don't abort on sync request data access: #81162
- [dynamicIO] recognize prerender interrupted errors as well known: #81160
- Fix resolvedPathname for middleware rewrite: #81144
- [node-webstreams] Exhaustive React aliases in App Router: #81040
- [node-webstreams] Use React builds for Node.js: #81048
- Upgrade React from
65c4decb-20250630
to7216c0f0-20250630
: #81133
Misc Changes
- refactor(turbopack): Implement
BackingStorage
forEither
, replaceNextTurboTasks
with a type alias: #80823 - Remove unneccesary step that's making workflow fail: #81164
Credits
Huge thanks to @bgw, @unstubbable, @gnoff, @padmaia, @ijjk, @eps1lon, and @vercel-release-bot for helping!
v15.4.0-canary.108
Core Changes
- [segment explorer] reset error and not-found boundary: #81115
- [devtool] enable segment explorer when new panel present by default: #81152
Example Changes
- chore: fix typos in rust files: #81113
Misc Changes
- Update nextjs-bot config: #81138
- [turbopack] Remove some unnecessary awaits now that FileSystemPath is synchronously available.: #81090
- Run front-sync after deployment tests finish : #81023
- Docs: moved table for Unsupported Metadata to the correct location: #80979
- fix(next-swc): Apply SWC minifier bugfixes: #81098
- Update Rspack development test manifest: #81103
- Update Rspack production test manifest: #81102
- Update Turbopack production test manifest: #81105
- Update Turbopack development test manifest: #81104
- Add more test cases to the
dynamicIO
sync IO access test suite: #81045 - chore(turbo-tasks-backend): Remove unused support for nested database operations: #80816
- Turbopack: simplify
ReducedGraphs
andfind_server_entries
: #81118 - [turbopack] Remove an unnecessary clone: #81153
- [turbopack] Move static type ID variables into getters: #81150
- refactor(turbo-tasks-backend): Remove
ExecuteContextImpl::lower_read_transaction
: #80822
Credits
Huge thanks to @ijjk, @lukesandberg, @padmaia, @aacosta11, @xusd320, @kdy1, @huozhi, @vercel-release-bot, @unstubbable, @bgw, and @mischnic for helping!
v15.4.0-canary.107
Core Changes
Misc Changes
- Fix flakey devtools test: #81127
- [turbopack] Defend against json cyles in our execution tests: #81079
- [turbopack] Implement
Issue::source
on more Issue subtypes: #80874 - Update workflows for nextjs-bot: #81134
Credits
Huge thanks to @mischnic, @lukesandberg, @ijjk, and @huozhi for helping!
v15.4.0-canary.106
Misc Changes
- Fix flakey devtools test: #81127
- [turbopack] Defend against json cyles in our execution tests: #81079
- [turbopack] Implement
Issue::source
on more Issue subtypes: #80874
Credits
Huge thanks to @mischnic and @lukesandberg for helping!