Core Changes
- Turbopack: Add new webpack loader rule/condition syntax in config: #82857
- Turbopack: Un-deprecate the
TurbopackLoaderItem
type: #83070 - Turbopack: Replace heuristics for detecting manually-configured sass or babel loaders with less-fragile ones, configure rules as a vec and not a map: #83131
- Turbopack: Allow arrays to be used as values in
turbopack.rules
config: #83138 - [test] Run all dev tests with sourcemaps enabled: #83173
- [devtools] Immediately set meta key in shortcut recorder: #82301
- Turbopack: fix persistent caching test case: #83170
- Implement runtime prefetching via segment opt-in: #83072
- bugfix: Bad
next.route
onpages
dir OTel spans for404
s /500
s: #77150 - [Breaking] Bump minimum Node.js version to
>=20.9.0
: #83113 - [ppr] RDC for RSCs (redo): #80853
Misc Changes
- Update Rspack development test manifest: #83152
- [turbopack] Change execution and snapshot tests to check for the existence of files rather than directories: #83189
- Update Rspack production test manifest: #83153
- [CNA] use linter preference: #83194
- Turbopack: fix hanging of persistent caching with webpack loaders: #83201
- Turbopack: don't match dynamic pattern for node_modules packages: #83176
- [test] update the metadata deployment cache header tests: #83217
- docs: change API route example file extension to .ts and add JS example with switcher prop: #83044
- [turbopack] Create a simple benchmark to measure the overhead of turbotasks: #82982
Credits
Huge thanks to @vercel-release-bot, @lukesandberg, @bgw, @devjiwonchoi, @sokra, @eps1lon, @mischnic, @acdlite, @huozhi, @evankirkiles, @wo-o29, and @wyattjoh for helping!