Change8

v3.15.2

📦 nuxtView on GitHub →
2 features🐛 8 fixes🔧 9 symbols

Summary

Nuxt 3.15.2 delivers significant startup performance improvements and a CLI refactor using a new @nuxt/cli distribution. It also includes numerous bug fixes for page metadata extraction, routing, and build-time path resolution.

Migration Steps

  1. Run 'npx nuxi@latest upgrade --force' to update Nuxt and refresh the lockfile.

✨ New Features

  • Significant startup performance improvements for Vite builds.
  • CLI refactor: Switched to a new @nuxt/cli distribution of nuxi which no longer inlines dependencies for better performance.

🐛 Bug Fixes

  • nuxt: Collect all identifiers before extracting page metadata and prevent hoisting of local identifiers in definePageMeta.
  • kit: Reorder #build to the end of tsConfig paths.
  • nuxt: Use fullPath instead of empty string in router HMR.
  • nuxt: Call page:loading:end only once with nested pages.
  • nuxt: Avoid invoking shouldPrefetch on the server side.
  • vite: Provide fallback alias for #app-manifest.
  • nuxt: Allow url-specific chars in VFS and decode IDs before resolving relative imports.
  • nuxt: Prevent incorrect warnings for invalid characters in route groups/catchalls.

🔧 Affected Symbols

@nuxt/clidefinePageMetapage:loading:endshouldPrefetch#build#app-manifestuseFetchuseNuxtDatauseAsyncData