Change8

v4.4.3

📦 nuxtView on GitHub →
🐛 51 fixes🔧 24 symbols

Summary

This patch release (v4.4.3) focuses heavily on performance improvements across Nitro, Vite, and Webpack, alongside numerous bug fixes related to data fetching, state management, build processes, and hydration.

Migration Steps

  1. If using `addImportsSources`, note that `PackagePreset` type is now available.

🐛 Bug Fixes

  • Handle negative zero in getUserTrace slice boundary.
  • Signal error state and clear timers in loading indicator cleanup.
  • Fix broken hook cleanup in route announcer.
  • Filter `clearNuxtState` key enumeration by useState prefix.
  • Correct `useFetch` `cache` options type.
  • Prevent in-flight requests from overwriting cleared async data.
  • Check response status before parsing payload.
  • Handle TS type assertions on member expression callees in keyed functions parser.
  • Use comment as client component placeholder.
  • Resolve h3 export path in nitro vfs.
  • Use factory resolved options everywhere in `useFetch`.
  • Use hash-based cache for dev payloads.
  • Await parcel watcher subscription before registering close hook.
  • Self-remove hydration error guards after first navigation.
  • Mark portal properties as configurable.
  • Retry manifest fetch after transient failure.
  • Avoid any return type from `callHookWith` in `vue:setup`.
  • Strip DevOnly components with attributes in production builds.
  • Move parcel watcher debug timer outside subscription loop.
  • Preserve falsy prop values in `NuxtTime` data attribute serialization.
  • Clear cached rejected promise in `callOnce`.
  • Correct useAsyncData key type.
  • Set `__buildAssetsURL` before server entry import.
  • Use consistent `[nuxt]` prefix in console warnings.
  • Remove obsolete `writeDevServer` + handle vite-node precomputed.
  • Update impound protection for `nitro/*`.
  • Emit `styles.mjs` when inline styles off (rspack, webpack).
  • Fix FormData body hashing in `useFetch` deduplication key.
  • Generate type re-exports for shared type-only imports.
  • Add `Symbol` serialization for dev server logs (nuxt, nitro).
  • Do not process css files with decorator transform (vite).
  • Ensure leading slash in `/@fs` URLs for Windows (vite).
  • Preserve server-origin errors and surface them via Youch (vite).
  • Do not add import condition for ssr resolve conditions (nitro).
  • Fix callOnce navigation mode alternating execution.
  • Respect configured `test` option (schema, rspack, webpack).
  • Handle custom cookie serialisation before passing to `cookie-es`.
  • Adjust `setPageLayout` props type to allow passing arrays of objects.
  • Restore 'import' condition for ssr resolve (nitro).
  • Re-encode `ssrContext.url` to match vue-router (nitro).
  • Propagate unexpected errors from `isDirectorySync`.
  • Bridge `@nuxt/schema` augmentations into `nuxt/schema`.
  • Sync `_route` when navigating up the route tree.
  • Skip `<NuxtPage>` cached vnode when its suspense is unmounted.
  • Only recommend payload extraction when `ssr` is enabled (nitro).
  • Avoid double-decoding of url (nitro).
  • Flatten buffer before filtering promises and fix rendering of content.
  • Correct async data type inference when using `transform` with `getCachedData`.
  • Avoid transforming `NuxtTeleportIslandComponent` with nuxt-client directive.
  • Resolve layer aliases in css files.
  • Invoke user-supplied error handler when suppressing render errors.

Affected Symbols