Skip to content
This repository has been archived by the owner on Apr 6, 2023. It is now read-only.

v3.0.0-rc.13

Compare
Choose a tag to compare
@pi0 pi0 released this 04 Nov 11:41
· 787 commits to main since this release
bde9694

👉 Release discussion

⭐ What is New?

🔰 Security Fixes

This release contains multiple security related fixes #8675, #8674 and #8673 reported via huntr.dev platform by OhB00.

We recommend you upgrade to the latest version as soon as possible.

If you encounter "The request URL ... is outside of Vite service allow list" issue, try adding path to vite.server.fs.allow in nuxt.config. read more.

🚀 Performance Improvements

Using a new method to extract definePageMeta improves vite performance and makes lazy compilation of pages possible (#8536).

💯 Strict Config Schema and Types

We have cleaned up the configuration schema (#8487) so that you no longer would be confused with Nuxt 2 options and also can quickly notice any typos in nuxt.config file.

Typescript strict mode is also enabled by default with this release as best practice. (#8667)

🚇 Nitro Development Server Proxy

Using nitro.devProxy option you can now configure proxies for the development server. (learn more)

Changelog

compare changes

⚠️ Breaking Changes

  • nuxt: ⚠️ Use parser to generate page metadata (#8536)
  • schema: ⚠️ Use strict typescript mode by default (#8667)
  • test-utils: ⚠️ Update vitest args (#8325)
  • schema: ⚠️ Disable app.pageTransition and app.layoutTransition by default (#8436)
  • nuxt: ⚠️ Cleanup schema and split nuxt 2 types (#8487)

🚀 Enhancements

  • nuxt: Default router scroll behavior (#3851)
  • nuxt: Make useFetch options reactive (#8374)
  • kit: Add updateTemplates utility (#8413)
  • nuxt: Add dev warnings when setPageLayout is used incorrectly (#8464)
  • Add <devOnly> component (#7950)
  • nuxt: Allow setting name and path for a route in definePageMeta (#8633)
  • kit: Add addServerPlugin utility (#8635)
  • kit, nuxt: Support prerender:routes and addPrerenderRoutes (#8670)

🩹 Fixes

  • nuxt: Don't use or assignment (#8299)
  • nuxt: Pass original request headers to the error page (#7340)
  • nuxt: Scroll to top on dynamic routes with different params (#8327)
  • nuxt: Router defaults overwrite custom options always (#8334)
  • cli: Update analzye main handler (#8339)
  • nuxt: RouterBehavior comparison for hash block (#8383)
  • nuxt: Don't load payloads for external urls (#8370)
  • vite: Invalidate virtual modules with vite-node (#8389)
  • nuxt: Avoid directly importing vue-router inside <NuxtLayout> (#8421)
  • webpack: Print build errors (#8388)
  • kit: Use pathe to resolve aliases (#8453)
  • test-utils: Override NITRO_PORT as well (#8458)
  • nuxt: Call data refresh hook in parallel (#8470)
  • nuxt: Allow responding with custom headers from error.vue (#8469)
  • schema: Disable early hints by default (#8486)
  • kit: Don't require nuxt context when resolving path (#8504)
  • nuxt, nuxi: Improve pages creation and removal DX (#8502)
  • nuxt: Add vue-router to optimized deps (#8544)
  • vite: Handle all vite middleware routes (#8601)
  • nuxt: Pass async-data errors through to client (#8521)
  • nuxt: Check before appending comma in composable keys (#8529)
  • nuxt: ⚠️ Use parser to generate page metadata (#8536)
  • kit: Normalize handler paths (#8626)
  • nuxt: Don't force prerender / if user doesn't have that route (#8639)
  • nuxt: Do not inline global styles in html response (#8666)
  • schema: ⚠️ Use strict typescript mode by default (#8667)
  • nuxt: Disallow directly rendering error page (#8673)
  • Resolve ids to support pnpm (#8671)
  • vite: Enable fs strict mode (#8674)
  • nuxt: Ensure payload url has no protocol (#8675)

💅 Refactors

  • test-utils: ⚠️ Update vitest args (#8325)
  • schema: ⚠️ Disable app.pageTransition and app.layoutTransition by default (#8436)
  • nuxt: ⚠️ Cleanup schema and split Nuxt 2 types (#8487)

📖 Documentation

  • Add route rules to concepts > rendering (#8292)
  • Fix broken link (#8319)
  • Fix link to documentation guide (#8322)
  • Update website-theme to 0.1.7 (dbc2c8ce)
  • Add missing opening <NuxtLayout> tag in a code sample (#8349)
  • Update links for external tools (#8382)
  • Update for clarity and fix typos (#8375)
  • Add missing app key for transitions (#8385)
  • api: Add <ClientOnly> to API docs (#8400)
  • Fix typo (#8427)
  • Disable transitions by default as hotfix (#8434)
  • Add note about runtime config serialization (#8432)
  • Change required node version to be above 16.11 (#8408)
  • Use LinkExample as block component (#8459)
  • Add note about early hints and nginx (#8485)
  • Updated bridge migration guide (#8471)
  • Mention use case for <KeepAlive> in definePageMeta (#8491)
  • Update stability edge banners (#8498)
  • Generate docs for unversioned schema (#8535)
  • Fix transition wording to include layouts (#8600)
  • Add information about type checking to typescript.typeCheck config. (#8632)

📦 Build

  • pkg: Support Node.js 19 (#8324)

🏡 Chore

  • renovate: Ignore monorepo dependency upgrades (f934343b)
  • Upgrade vitest to 0.24 (#6764)
  • nuxt: Add type for headers (#8326)
  • examples: Add missing dependency and script for testing example (#8457)
  • Reenable auto-upgrades for vueuse/head (#8506)
  • Update nitropack to 0.6.1 (5a43e68e)

✅ Tests

  • Add bundle size test (#8133)
  • Update type test for strict mode (#8669)

❤️ Contributors

  • Adewale Adeyemi
  • Anthony Fu
  • Christian Burkhart
  • Clément Ollivier
  • Damian Głowala
  • Daniel Roe
  • David Stack
  • Dawid Stefanko
  • Dmitriy
  • Farnabaz
  • Joel
  • Joel Wenzel
  • Johann Schopplich
  • Johnson Chu
  • Josh Deltener
  • Julien Huang
  • Nils
  • Ondřej Misák
  • Pascal Sthamer
  • Pooya Parsa
  • Rajendra
  • Sacha STAFYNIAK
  • Sébastien Chopin
  • Zecka