💬 Join the release discussion
🚀 How to Upgrade
Note
Make sure to recreate the lock file in the project in case of any issues after the upgrade.
- Automated:
npx nuxi@latest upgrade --force
- Manual: Bump
nuxt
dependency to3.0.0-rc.11
and then usenpx nuxi@latest cleanup
to cleanup any local caches
⭐ What is New?
Full Static Enhancements
We have introduced Full-Static mode payload extraction in RC.10. Many of the issues from the initial implementation are resolved with this release thanks to your amazing feedback! Notably for SPA routes and state that is now in the initial state.
🧪 We understand that there might be still issues with the new implementation. Please report if spotted any. You can use new experimental.payloadExtraction: false
flag in nuxt.config
to opt-out as well.
IPv6 and HTTPS support for nuxi dev
and vite
Nuxi CLI and unjs/listhen are improved and now support --https
flag and ipv6 hosts out of the box with an auto-generated certificate. You can use --ssl-cert
and --ssl-key
to provide own generated SSL certificates with mkcert for example as well.
Issues with vite HMR and vite-node should be resolved as well. If you were previously using NODE_TLS_REJECT_UNAUTHORIZED
or custom vite.server.hmr
options for a workaround, you can try to remove them.
Note: If you see something like http://[::]:3000/
when running nuxi preview
, it is all normal! The New IPv6 URL works in all modern browsers and is also backward compatible with IPv4 interfaces. If for some reason encountered any issues, try setting HOST
to 0.0.0.0
to disable IPv6 listener.
Nitro Improvements
Nitro is the server engine for Nuxt 3. We had landed several fixes in 0.5.2 and 0.5.3 versions improving stability and bug fixes.
Full Changelog
🚀 Enhancements
🩹 Fixes
- nuxt: Disable payload extraction for spa generated pages (#7535)
- nuxt: Do not pass prefetched class to custom link (#7522)
- cli: Improved self-signed certificate for
nuxi dev --https
(#7545) - vite:
nuxi dev --https
working out of the box (#7547) - schema: Update resolver for
cssSourceMap
with newsourcemap
format [bridge] (#7541) - nuxt: Pass fully resolved path to nitro dist files (#7494)
- nuxt: Remove modulepreload for spa fallback routes with
ssr:true
(#7553) - schema: Only disallow vite server port and host (#7554)
- nuxi, vite: Ipv6 support for
nuxi dev
(#7560) - cli: Print resolved public directory after generate (#7577)
- nuxt: Load payload after middleware and once final route is resolved (#7574)
- nuxt: Keep
state
in the initial state instead of extracting it (#7567) - vite: Normalize vite-node error data from server (#7589)
- vite: Include id and stack in
vite-node
fallback error handler (#7575) - vite: Respect
ctx.nuxt.options.modulesDir
for resolving externals withvite-node
(#7612) - nuxt: Add missing
process.client
for early redirect innavigateTo
(#7625) - vite-node: Include importer in error stack (#7607)
- vite, webpack: Avoid generating keys where a key is already provided (#7622)
- vite, webpack: Handle auto keys for composables without args (#7651)
- nuxt: Don't tree shake client-only fallback templates (#7659)
- nuxt: Strip non-
.vue
extensions from component types (#7673) - nuxt: Only observe tag elements for
<NuxtLink>
prefetching (#7679) - nuxi, vite: Support HTTPS with custom domain and HMR (#7680)
📖 Documentation
- Update auto-imports link (#7530)
- Add note about link prefetching (#7540)
- Improve NuxtLink prefetch explanation (#7540)
- Add testing and
addComponent
to modules and updateaddImports
(#7543) - Fix typo on directory-structure/pages (#7601)
- Fix typo in custom router example (8621c860)
- Fix typo in nitro options in wasm example (#7639)
- Add
addImportsSources
to list of kit utils (#7636) - api: Add
defineNuxtComponent
page (#7618) - testing: Move modules testing section to module authors guide (#7643)
- getting-started: Add views page (#7556)
❤️ Contributors
- Alexander Lichter
- Alper Doğan
- Chenying
- Clément Ollivier
- Damian Głowala
- Daniel Roe
- Julien Huang
- Krutie Patel
- Lexpeartha
- Pooya Parsa
- YIngChenIt