Change8

v3.19.0

📦 nuxtView on GitHub →
8 features🐛 15 fixes🔧 10 symbols

Summary

Nuxt v3.19 introduces experimental Rolldown support, new module hooks (onInstall/onUpgrade), and improved chunk stability via importmaps. It also includes various TypeScript improvements and performance optimizations for route rule caching and manifest watching.

Migration Steps

  1. Run 'npx nuxt upgrade --dedupe' to refresh lockfile and pull latest dependencies.

✨ New Features

  • kit: Add ignore option to resolveFiles
  • kit: Add onInstall and onUpgrade module hooks
  • nuxt,vite: Add experimental support for rolldown-vite
  • nuxt: Extract defineRouteRules to page rules property
  • nuxt,vite: Use importmap to increase chunk stability
  • nuxt: Lazy hydration macros without auto-imports
  • kit,nuxt,schema: Allow modules to specify dependencies
  • kit,nuxt: Add getLayerDirectories util

🐛 Bug Fixes

  • nuxt: Handle satisfies in page augmentation
  • nuxt: Type response in useFetch hooks
  • nuxt: Add TS parenthesis and as expression for page meta extraction
  • nuxt: Use correct unit thresholds for relative time
  • kit: Resolve directories in resolvePath and normalize file extensions
  • schema,vite: Bump requestTimeout and allow configuration
  • nuxt: Deep merge extracted route meta
  • nuxt: Do not expose app components until fully resolved
  • kit: Only exclude node_modules/ if no custom srcDir
  • nuxt: Compare final matched routes when syncing route object
  • nuxt: Make vue server warnings much less verbose in dev mode
  • schema: Allow disabling cssnano/autoprefixer postcss plugins
  • kit: Ensure local layers are prioritised alphabetically
  • nuxt: Support config type inference for defineNuxtModule().with()
  • nuxt: Add validation for nuxt island reviver key

🔧 Affected Symbols

resolveFilesonInstallonUpgraderolldown-vitedefineRouteRulesuseFetchresolvePathrequestTimeoutgetLayerDirectoriesdefineNuxtModule