Aller au contenu
verdict:

Nuxt 3.21.10

digest

note: la synthèse et les notes de version sont en anglais

note: pas de synthèse pour cette release digest

Les releases digest sont listées sans synthèse. Les notes de version originales de cette version sont ci-dessous.

release-notesgithub.com/nuxt/nuxt · 70 lignes
  1. > ⚠️ **This is a security release.** We recommend upgrading as soon as possible with `npx nuxt upgrade --dedupe`.
  2. It fixes server-side RCE and unauthorized component instantiation via server island props, a route rule authorization bypass, server component DoS, and dev server path disclosure. Refreshing your lockfile also pulls in `@nuxt/devtools@3.3.1`, which fixes a separate critical development-only RCE.
  3. If you already upgraded for the earlier route rule advisory ([CVE-2026-53721](https://github.com/nuxt/nuxt/security/advisories/GHSA-mm7m-92g8-7m47)), you still need this release: one of the fixes addresses a regression introduced by that fix.
  4. Full details: [Nuxt Security Patch Releases](https://nuxt.com/blog/v4-5-security) and [GitHub Security Advisories](https://github.com/nuxt/nuxt/security/advisories).
  5. ## 👉 Changelog
  6. [compare changes](https://github.com/nuxt/nuxt/compare/v3.21.9...v3.21.10)
  7. ### 🩹 Fixes
  8. - **nuxt:** Clear hide/reset timeouts in set() ([#35534](https://github.com/nuxt/nuxt/pull/35534))
  9. - **nuxt:** Preserve trailing slash in NuxtLink href when unset ([#35501](https://github.com/nuxt/nuxt/pull/35501))
  10. - **vite:** Resolve SSR inlined CSS module class name mismatch ([#35610](https://github.com/nuxt/nuxt/pull/35610))
  11. - **nuxt:** Sync layout meta during middleware on SSR ([#35633](https://github.com/nuxt/nuxt/pull/35633))
  12. - **nuxt:** Update client URL to match SSR on fatal middleware error ([#35637](https://github.com/nuxt/nuxt/pull/35637))
  13. - **nuxt:** Watch external component directories in development ([#35652](https://github.com/nuxt/nuxt/pull/35652))
  14. - **nuxt:** Don't cross-pollute useAsyncData cache on reactive key change ([#35656](https://github.com/nuxt/nuxt/pull/35656))
  15. - **nuxt:** Return global route for `useRoute` in detached effect scope ([#35659](https://github.com/nuxt/nuxt/pull/35659))
  16. - **nuxt:** Ignore custom `name` or `path` when reusing an existing page in `pages:extend` ([#35661](https://github.com/nuxt/nuxt/pull/35661))
  17. - **nuxt:** Preserve explicit `useFetch` method inference ([#35671](https://github.com/nuxt/nuxt/pull/35671))
  18. - **nuxt:** Correct default export detection in plugin metadata ([#35676](https://github.com/nuxt/nuxt/pull/35676))
  19. - **nuxt:** Reload real page module on HMR of JSX render-function pages ([#35678](https://github.com/nuxt/nuxt/pull/35678))
  20. - **vite:** Ensure server sourcemap-preserver plugin actually runs ([#35680](https://github.com/nuxt/nuxt/pull/35680))
  21. - **nuxt:** Resolve `@unhead/vue/*` from nuxt's dependency tree ([#35690](https://github.com/nuxt/nuxt/pull/35690))
  22. - **nuxt:** Don't apply scroll behaviour after a subsequent nav ([#35719](https://github.com/nuxt/nuxt/pull/35719))
  23. - **vite:** Preserve css suffix when extracting ssr inline styles ([#35714](https://github.com/nuxt/nuxt/pull/35714))
  24. - **nuxt:** Don't exclude client entry module from style extraction ([#35720](https://github.com/nuxt/nuxt/pull/35720))
  25. - **kit:** Avoid mutating layer configs when resolving options ([#35729](https://github.com/nuxt/nuxt/pull/35729))
  26. - **nuxt:** Generate layout types even when pages module is disabled ([#35717](https://github.com/nuxt/nuxt/pull/35717))
  27. - **nitro:** Skip resource hints for stylesheets already rendered as blocking links ([#35691](https://github.com/nuxt/nuxt/pull/35691))
  28. - **nuxt:** Revalidate cached route payloads instead of using `force-cache` ([#35672](https://github.com/nuxt/nuxt/pull/35672))
  29. - **nuxt:** Preserve query params in cached payload extraction ([#35696](https://github.com/nuxt/nuxt/pull/35696))
  30. - **rspack,webpack:** Resolve loaders and runtime deps from nuxt dirs ([#35568](https://github.com/nuxt/nuxt/pull/35568))
  31. - **nuxt:** Render client components in nested server components ([#35669](https://github.com/nuxt/nuxt/pull/35669))
  32. - **nuxt:** Remove dev error overlay when error is cleared ([#35821](https://github.com/nuxt/nuxt/pull/35821))
  33. - **rspack,webpack:** Resolve bundled postcss defaults from builder ([#35823](https://github.com/nuxt/nuxt/pull/35823))
  34. - **schema:** Normalise slashes in `app.buildAssetsDir` ([#35833](https://github.com/nuxt/nuxt/pull/35833))
  35. - **nuxt:** Case-fold route rule keys to match folded lookups ([619963309](https://github.com/nuxt/nuxt/commit/619963309))
  36. - **nitro:** Require loopback peer for chrome devtools workspace endpoint ([00f71bb65](https://github.com/nuxt/nuxt/commit/00f71bb65))
  37. - **nitro:** Bound island props and v-for to prevent unauthenticated DoS ([668cdfdfd](https://github.com/nuxt/nuxt/commit/668cdfdfd))
  38. - **nuxt:** Reject reserved `template` island prop under runtime compiler ([5b60017f7](https://github.com/nuxt/nuxt/commit/5b60017f7))
  39. - **nuxt:** Reject top-level `as` prop for islands ([00a2b0494](https://github.com/nuxt/nuxt/commit/00a2b0494))
  40. ### 📖 Documentation
  41. - Document relative baseURL workarounds ([#34004](https://github.com/nuxt/nuxt/pull/34004))
  42. - Warn about `runtimeCompiler` security best practices ([b76c1a8bd](https://github.com/nuxt/nuxt/commit/b76c1a8bd))
  43. - Warn about validating server component props ([f6d72628d](https://github.com/nuxt/nuxt/commit/f6d72628d))
  44. ### ✅ Tests
  45. - Guard against transient undefined `_route` in gotoPath ([5391e7e6a](https://github.com/nuxt/nuxt/commit/5391e7e6a))
  46. - Raise route-HMR polling timeout to reduce e2e flakiness ([cbc757c63](https://github.com/nuxt/nuxt/commit/cbc757c63))
  47. - **kit:** Scope loadNuxt temp dir so it doesn't delete sibling fixtures ([72e4b5578](https://github.com/nuxt/nuxt/commit/72e4b5578))
  48. ### ❤️ Contributors
  49. - Daniel Roe (@danielroe)
  50. - Florian Heuberger (@Flo0806)
  51. - Matej Černý (@cernymatej)
  52. - bdbch (@bdbch)
  53. - Elecmonkey (@elecmonkey)
  54. - Ryota Watanabe (@wattanx)
  55. - kealan (@KealanAU)
  56. - Julien Huang (@huang-julien)
  57. - Luke Nelson (@luc122c)
  58. - Harlan Wilton (@harlan-zw)
  59. - Mateleo (@Mateleo)
  60. - lutejka (@lutejka)
  61. - Darlan José Batista do Prado (@DarlanPrado)
  62. - Max (@onmax)
  63. - Sushant (@sushantguri)
  64. - raminjafary (@raminjafary)

voir sur githubimported 2026-09-28 via npm