Releases: vercel/next.js
v15.0.4-canary.30
Core Changes
- feat(after): unflag unstable_after internals: #73190
- feat(after): allow using unstable_after in generateStaticParams: #73217
- Error on navigation API usage in pages router and middleware: #73100
- Undeprecate revalidate APIs and rename expire APIs: #73193
- Revert "codemod: replace
revalidate(Tag|Path)
toexpire(Tag|Path)
": #73269 - feat(after): wait for after-callbacks before server shutdown: #72590
- Fixed interception on a catch-all route: #72902
- add option to disable experimental CssChunkingPlugin: #73286
Misc Changes
- port turbopack-node to ResolvedVc: #73082
- port turbopack-static to ResolvedVc: #73084
- perf(turbopack): Use
ResolvedVc
fornext-api
, part 1: #73234 - Pin undici in tests: #73263
- Turbopack: use try_join instead of future::try_join_all: #73261
- docs(server-actions): add missing formData type: #73257
- perf(turbopack): Use
ResolvedVc
fornext-api
, part 2: #73235 - docs: update static-tweet to react-tweet: #73253
- docs(fetching):
params
toawait params
: #73254 - convert let keyword to const keyword to data fetching and caching example: #73251
- [Turbopack] instead of depending on all env vars, track them via Proxy in webpack loaders: #73112
- docs: update the demo link of kontent.ai: #73250
- Docs: Fix headings in
Layouts and Pages
: #73268 - remove ResolvedVc from trait functions: #73270
- perf(turbopack): Use
ResolvedVc
fornext-api
, part 3: #73236 - [Turbopack] Revert "refactor filesystem writes to an effect based system": #73287
- Devlow: exit with non-zero code on failure: #73276
Credits
Huge thanks to @arlyon, @lubieowoce, @kdy1, @mischnic, @huozhi, @ijjk, @devpla, @JamBalaya56562, @devjiwonchoi, @ovogmap, @sokra, @delbaoliveira, @Reflex2468, @ztanner, and @wbinnssmith for helping!
v15.0.4-canary.29
Core Changes
- Do not inline CSS in RSC payload for dynamic client nav: #73182
- fix(next/image): dpl query string should only be used for local images, not remote images: #73184
Example Changes
- (example) using
await
params when dynamic routing: #72896 - Updated the example of with-styled-jsx-scss to utilize the App Router.: #70567
- Updated the example of with-styled-jsx-plugins to utilize the App Router: #70663
- Updated the example of with-unstated to utilize the App Router.: #73211
Misc Changes
- docs: Improve Accuracy and Type Safety on Data Fetching Examples: #73122
- docs: eslint flat config: #73167
- perf(turbopack): Use
ResolvedVc
forturbopack-core
: #73065 - perf(turbopack): Use
ResolvedVc
forturbopack
,turbopack-tests
,turbopack-wasm
: #73196 - perf(turbopack): Use
ResolvedVc
forturbopack-nodejs
: #73200 - perf(turbopack): Use
ResolvedVc
forturbopack-env
: #73202 - Getting Started Docs: Add new "Layouts and Pages" page: #73049
- Docs:
forbidden
andunauthorized
nits: #73213 - Turbopack: make client references actual references: #73174
- Docs: Update
turbopack
API Reference: #73215 - Update authentication docs to use useActionState: #72503
- Don't hoist a server function if a compile error was emitted: #73189
- Forbid
super
in static class methods with server function directives: #73061
Credits
Huge thanks to @hyungjikim, @gaojude, @styfle, @devjiwonchoi, @kdy1, @delbaoliveira, @mischnic, @nisabmohd, @unstubbable, and @PapatMayuri for helping!
v15.0.4-canary.28
Core Changes
- Reenable otel test for Turbopack: #73093
- Omit unnecessary cache wrapper import: #73160
- Increase max cache tags to 128: #73124
Misc Changes
- port turbopack-swc-utils to ResolvedVc: #73086
- port turbopack-mdx to use ResolvedVc: #73080
- feat: Update
lightningcss
tov1.0.0-alpha.61
: #73161 - port turbopack-resolve to ResolvedVc: #73083
- move turbopack-image to ResolvedVc: #73079
- Turbopack: more tracing spans: #73010
- Handle server function directives in class methods: #73060
- 15.1 docs:
forbidden
,unauthorized
, andauthInterrupts
: #73039 - Enable another Turbopack build test: #73166
- CNA: replace
.eslintrc.json
witheslint.config.mjs
: #73162 - Turbopack: don't compute all paths for builds: #73036
- perf(turbopack): Use
ResolvedVc
forturbopack-css
: #73172 - Revert change to ReactRefreshRequire test: #73186
- chore(CI): Remove sysroot override for macos arm64: #73188
Credits
Huge thanks to @arlyon, @kdy1, @mischnic, @unstubbable, @delbaoliveira, @devjiwonchoi, @ijjk, @gaojude, and @bgw for helping!
v15.0.4-canary.27
v15.0.4-canary.26
v15.0.4-canary.25
Core Changes
- (E2E) Log which config file is used for
next start
: #73105 - Remove extra space in envionment log: #73108
- remove inheritance from NextCustomServer: #73005
- Align navigation digest with message: #73074
- refactor: move redirect helpers into separate module: #73118
- Update font data: #73115
Misc Changes
- docs: fix static params as promise examples: #72553
- fix: missing await, missing type Promise: #73088
- Disallow multiple server directives at the same level (file or function): #73018
- Docs: Add canary tags to
expirePath
andexpireTag
: #73096 - docs: update pages automatic static optimization rendering page: #72545
- docs(authentication): fix typescript code example: #72533
- docs: add details on React Compiler annotations with
"use memo"
: #73053 - docs: fix code block language on redirecting docs: #73073
- docs(routing): update params type to be async (v15): #73111
- docs: clarify Switching to Dynamic Rendering section: #73113
- Method/function props of exported objects are not server functions: #73058
- Forbid
this
andarguments
in server functions: #73059
Credits
Huge thanks to @gaojude, @ijjk, @emmanuelgautier, @hyungjikim, @unstubbable, @delbaoliveira, @mrhrifat, @lid0a, @leerob, @lubieowoce, @JamBalaya56562, @samcx, and @huozhi for helping!
v15.0.4-canary.24
v15.0.4-canary.23
Core Changes
- create forked impl for Link component: #73019
- remove unnecessary handling in forked Link components: #73020
- Pass down ignored field to error overlay: #72925
- remove locale from app link: #73052
- fix: server action redirects between multiple root layouts: #73063
- Add forbidden and unauthorized APIs: #72785
Misc Changes
- docs: missing
await
when using params: #73044 - docs: incorrect
params.id
: #73045 - Remove hardcoded timeouts in Redbox test helpers: #73000
- perf(turbopack): Enable merging of export fragments: #72813
- Turbopack build: Add bench for Turbopack cache: #73040
- πͺ Understanding Cookie Behavior in Server Components: #73001
- docs: add Fleek's Next.js template: #72988
- docs(fetch): clarify default fetch behavior: #72982
- docs: update staleTimes.mdx: #72967
- docs:
Redirecting
fix route handler path: #72617 - Rename
waitForAndOpenRuntimeError
toopenRedbox
: #72996 - Revert "docs: add Fleek's Next.js template": #73054
- fix benchmark directory: #73057
- hmr-test waits for compile signal: #73064
Credits
Huge thanks to @hyungjikim, @eps1lon, @kdy1, @ztanner, @timneutkens, @huozhi, @themattmayfield, @tobySolutions, @samcx, @kevinmitch14, @leerob, @sokra, and @gaojude for helping!
v15.0.4-canary.22
Core Changes
- Display where the env was loaded from when enabled
typedEnv
: #70951
Misc Changes
- [Turbopack] concurrent write batches and little endian encoding: #72929
- Remove unused
retry
aroundbrowser.eval
: #72999 - [Turbopack] Invalidation and Persisting fixes: #72950
Credits
Huge thanks to @sokra, @eps1lon, and @devjiwonchoi for helping!
v15.0.4-canary.21
Core Changes
- Add support for ignore-listing sources in index maps: #72913
- Turbopack: fix loading of externals on Edge: #72349
- Bump SWC used for transpiling Next.js sources: #72993
- fix: ensure HTML validity for the
next-size-adjust
meta tag: #72994 - Revert "Support custom servers with minimal node modules": #73003
- Allow CacheNode.loading to be a promise: #72872
- Properly encode dynamic access in segment prefetch: #72874
- [Segment Cache] Send during route prefetch: #72890
- fix(next/image): improve svg heuristic for unoptimized: #72970
- [Segment Cache] Initial implementation: #72875
- Turbopack: Change edge wrapper to proxy exports : #72502
- experimental: css inlining: #72195
Misc Changes
- Consolidate
FnExpr
andFnDecl
server function transforms: #72960 - Allow method properties to be server functions: #72969
- Include
debug
script in test directories: #72992 - docs(sitemap): remove extra 's': #73023
- chore(turbopack-core): Delete dead
all_modules_and_affecting_sources
helper function: #73016
Credits
Huge thanks to @unstubbable, @eps1lon, @arlyon, @Goodosky, @gaojude, @acdlite, @styfle, @mischnic, @samcx, and @bgw for helping!