nuxt

The Intuitive Vue Framework.

MIT License

Downloads
23.2M
Stars
49.1K
Committers
764

Bot releases are hidden (Show)

nuxt - v3.0.0-rc.4

Published by danielroe over 1 year ago

Originally published at https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.4

See all changes: https://github.com/nuxt/framework/compare/v3.0.0-rc.3...v3.0.0-rc.4

This release contains commutative enhancements from RC.3. Thanks to all of the contributors to the code and documentation πŸ’š

πŸš€ Enhancements

  • vite: Replace global with globalThis (#4958)
  • nuxt: Support auto imports within <template> (#4904)
  • nuxt: Experimental flag to use external vue dependencies (#5083)

🩹 Fixes

  • nuxt: Respect baseurl when redirecting (#4933)
  • nuxt: Check for 404s after user middleware (#4913)
  • cli: Only reload for top level dirs (#4912)
  • vite: Add file:// protocol to vite-node entry file path (#4966)
  • test-utils: Hardcode ipv4 ip for localhost (#4998)
  • nuxt: Fix router redirection on aliased pages (#4982)
  • nuxt: Allow passing extraneous attrs to meta components (#5071)
  • nuxt: Add default empty title to trigger titleTemplate (#5064)
  • nuxt: Default statusCode of navigateTo from 301 to 302 (#5173)
  • schema: Add missed types for title, bodyAttrs and htmlAttrs (#5184)
  • nuxt: Respect navigateTo options using server middleware in server-side (#5145)
  • nuxt: Support RouterView props in NuxtPage (#5272)
  • schema, vite: Resolve mode config correctly (#5255)
  • nuxt: Add ssrContext types on NuxtApp (#5333)
  • types: Tidy types for useAsyncData (#5340)
  • nuxt: Relax server import protections (#5355)
  • nuxt: Keep route param optionality when sibling is an index (#5300)
  • kit: Pass resolved path to isIgnored (#5375)
  • vite, kit, nuxt: Generate safe variable names using knitwork (#4906)
  • webpack: Respect build.transpile (#5043)
  • nuxt: Transform extends layers within node_modules (#5042)
  • nuxt: Throw an error when using unknown route middleware (#5323)
  • nuxt: Don't debounce watcher and include layers (#5002)
  • vite: Don't terminate with escaped delimiters (#5409)
  • nuxt: Exclude non-cwd auto-imports and don't process all files (#5421)
  • nuxt: Ignore whitespace and commas within resolveComponent (#5428)
  • cli: Always set NODE_ENV value with a warning (#5417)
  • nuxt: Don't add macro query to the end of id (#5413)
  • webpack: Enable extractCSS by default (#4388)

πŸ’… Refactors

  • vite, webpack, test-utils: Use caret range for vue peer dependency (#5190)
  • cli: Provide better advice on failing clone (#5155)
  • Fix typo and code improvements (#5344)
  • cli: Improve env update message (#5430)

πŸ“– Documentation

  • Add missing parentheses in the alias example (#4995)
  • Fix typo in environment variable (#4990)
  • data-fetching: Add note about difference between useFetch and useAsyncData (#4974)
  • api: Improve useFetch docs for body type and additional ohmyfetch options (#4985)
  • Minor improvements for the quick start section (#5036)
  • middleware: Add navigateTo options (#5044)
  • Update wording of client-side rendering explanation (#5049)
  • Demonstrate the multiple useState with same key (#5059)
  • config: Correct naming of NUXT_APP_CDN_URL environment variable (#5032)
  • Update logo to better support light and dark mode. (#5094)
  • Fix nuxt app guide linking to a 404 page (#5122)
  • api: Add experimental --prerender flag to nuxi build command (#5112)
  • api: Add key option for useFetch (#5089)
  • roadmap: Nuxt content v2 release (#5129)
  • Add --no-clear flag in the documentation of development server (#5197)
  • deploy: Update default host for node preset (#5228)
  • guide: Add use of NuxtLayout in app.vue with pages (#5225)
  • Small typo in the "catch-all route" description (#5273)
  • pages: Add information for typing page metadata (#5270)
  • Add documentation for titleTemplate (#5093)
  • Fix typo in component migration guide (#5284)
  • Fix typo in programmatic navigation (#5298)
  • Add warning against layout as root element (#5345)
  • Update keepalive key name (#5366)
  • api: Add useRequestEvent (#5326)
  • api: Add docs for useRouter composable (#4949)
  • Update cookie example with defineEventHandler (#5405)
  • Update plugin provide example (#5386)
  • Fix mdn links for 301 and 302 http status (#5416)

🏑 Chore

  • Clean up jsdocs (#5397)
  • Force single version of vite (#5400)

❀️ New Contributors

nuxt -

Published by danielroe over 1 year ago

Originally published at https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.3

πŸš€ Enhancements

Nuxt, Kit

  • #4850 Support serverHandlers/devServerHandlers shortcuts to register custom handlers

Nuxt

  • ⚠️ #4837 Upgrade nitropack to 0.4.x
  • #4834 Custom include option

🩹 Fixes

Nuxt

  • #4770 Use router.resolve to resolve initial url
  • #4781 Ensure url is not empty string
  • #4839 Clear errors after navigation
  • #4842 Check if default slot is provided before calling it
  • #4841 Normalize window location for universal router
  • #4791 Await asyncData if ssr: false
  • #4851 Add missing import to client only wrapper
  • #4857 Avoid redirect with different encoding and trailing slash

Schema

  • #4772 Exclude vite from DeepPartial
  • #4849 Add back PublicRuntimeConfig interface for augmentation

Vite

  • #4844 Use buildAssetsURL for dynamic imports
  • #4822 Ignore virtual imports that aren't in vfs

πŸ’… Refactors

Nuxt

  • #4853 Cleanup renderer entry

πŸ“– Documentation

Data-fetching

  • #4824 Fix and improve data-fetching example

API

  • #4776 Document useRoute composable
  • #4870 Fix api examples

General

  • #4831 Fix example syntax for runtime hook plugin

❀️ New Contributors

nuxt -

Published by danielroe over 1 year ago

Originally published at https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.2

🩹 Fixes

Nuxt

  • #4491 Await for router.push on ssr
  • #4626 Cleanup auto imports on regenerate
  • #4590 Warn to provide a key for useFetch with transform option
  • #4677 Use suspense for child pages on client-side navigation
  • #4666 Mark config head as non-reactive
  • #4210 Improve error types for useAsyncData and useFetch
  • #4645 Process middleware after plugins
  • #4755 Preserve error.data in response

CLI

  • #4595 Don't strip file extensions from dirs in tsconfig
  • #4685 Typo in init message
  • #4612 Improve nuxi init output

Schema

  • #4695 Decrease recursion on DeepPartial

Vite

  • #4512 Transform virtual templates
  • #4442 Use single regex to reduce risk of collisions
  • #4596 Don't match across newlines

✨ Features

Nitro

  • #4304 Add nitro:build:before hook

Pages

  • ⚠️ #4537 Explicitly allow optional params with [[

General

  • #4509 Allow disabling sourcemap generation

πŸ“– Documentation

General

  • #4502 Update migration guide
  • #4506 Simplify example of Head components
  • #4519 Remove duplicate entry for default option
  • #4510 Update stackblitz links
  • #4485 Fix 'alias' usage
  • #4499 Improve netlify deployment
  • #4401 Improve server routes guide
  • #4573 Update environment variable in example
  • #4593 Add layout to match custom header example
  • #4603 Fix some minor typos
  • #4608 Fix typo
  • #4617 Fix typo
  • #4616 Make titleTemplate function form example clearer
  • #4640 Add note and banner about edge channel
  • #4653 Fix edge alert syntax
  • #4679 Fix typos
  • #4675 Add notes about auto imports from composables/ directory
  • #4715 Fix incorrect function declaration in composables
  • #4714 Add note that .env is not read in production
  • #4742 Make useFetch example consistent with others

Features

  • #4563 Complete assets page

Typescript

  • #4660 Typos

Migration

  • #4642 Update to use new runtimeConfig

Readme

  • #4628 Fix typo

Concepts

  • #4601 Change phrasing

API

  • #4549 Fix useAsyncData example

🏑 Chore

General

  • #4453 Setup IssueUp
  • #4664 Enable typecheck ci for packages

Docs

  • #4577 Update social card

⚠️ Breaking Changes

  • #4537 Explicitly allow optional params with [[

If you are relying on [slug] at the end of a route to generate an optional parameter, you will need to rewrite it as [[slug]].

❀️ New Contributors

nuxt -

Published by danielroe over 1 year ago

Originally published at https://github.com/nuxt/framework/releases/tag/v3.0.0-rc.1

🐣 3.0.0-rc.1 "Mount Hope"

Release Announcement

πŸš€ Check out the Announcing Nuxt 3 Release Candidate for more information about this release!

Migrating from nuxt3 edge releases

If you are already a beta tester of nuxt using nuxt3 package, please follow the steps below to use RC.1:

  1. Check out Breaking changes tracker to apply any of the previous possible breaking changes on edge-channel.

  2. Remove .nuxt, package.lock.json, yarn.lock and node_modules

  3. Update nuxt.config to import defineNuxtConfig from nuxt instead of nuxt3:

- import { defineNuxtConfig } from 'nuxt3'
+ import { defineNuxtConfig } from 'nuxt'

export default defineNuxtConfig({ ... })
  1. Update package.json
{
  "devDependencies": {
-    "nuxt3": "latest"
+    "nuxt": "^3.0.0-rc.1"
  }
}

Alternatively, you can use "nuxt": "npm:nuxt3@latest" to keep using the latest edge releases of Nuxt 3.

Migration for module authors

For Nuxt 3 modules created by new module-builder toolchain, also update @nuxt/kit dependency to use RC.1 in package.json:

{
  "dependencies": {
-    "@nuxt/kit": "npm:@nuxt/kit-edge@latest"
+    "@nuxt/kit": "^3.0.0-rc.1"
  }
}
nuxt -

Published by pi0 about 3 years ago

πŸ› Bug Fixes

  • vue-app
    • #9460 Don't normalise route path if it's valid
  • babel
    • #9631 Loose option for babel private-property-in-object
nuxt -

Published by pi0 over 3 years ago

πŸ”° Security advisory

Please upgrade to nuxt@^2.15.7 if using [email protected] or [email protected]

πŸ› Bug Fixes

  • vue-app
    • #9431 Check whether a route exists within the nuxt app before replacing
nuxt -

Published by pi0 over 3 years ago

πŸ› Bug Fixes

nuxt -

Published by pi0 over 3 years ago

πŸ› Bug Fixes

  • babel
    • #9232 Loose option for babel class-properties and private-methods (resolves #9224)
  • vue-app
    • #9201 Use route.replace instead of router.push to trigger navigation guards (resolves #9111)
  • builder
    • #9153 Resolve aliases in build.watch paths (resolves #9045)
  • cli
    • #9152 Add warning for css-loader < 4.2 (resolves #9117)

πŸ’– Thanks to

  • Thomas Beduneau (@enwin)
  • @rlam3
nuxt -

Published by pi0 over 3 years ago

πŸ› Bug Fixes

  • vue-app
    • #8978 Reload page once after loading chunk error (resolves #3389)
    • #9008 Fallback to global nuxt instance of $root is not available (resolves #8995)
    • #9010 Use app.context.route to match components in server (resolves #9009)
    • #9024 Serialize redirect functions in routes (resolves #8979)
    • #9026 Re-call $fetch if data is missing in payload (resolves #9016)
    • #9050 Use app.context.route for resolving components (resolves #9049)
    • #9075 Move internal app runtime config to _app namespace (resolves #9074)
  • config
    • #9014 Set compileType to icss for css-loader v4
  • server
    • #9034 Avoid caching .js assets in development to fix HMR in safari (resolves #3828)
  • cli

πŸ‘• Types

  • #9078 Inline @types/terser-webpack-plugin
  • #9086 Use options from sass-loader rather than sass (resolves #9085)
  • #9053 Css-loader v4 type definitions
  • #9018 Don't require all csp policies as keys (resolves #9017)
  • #9059 Add stub entrypoint to allow node resolution of @nuxt/types (resolves #9030)

πŸ’– Thanks to

  • ChangJoo Park (λ°•μ°½μ£Ό) (@ChangJoo-Park)
  • Evan Ma (@EvanMaFYH)
  • Thomas Beduneau (@enwin)
  • @rinu
  • @zzzmisa
nuxt -

Published by pi0 over 3 years ago

πŸ› Bug Fixes

  • types
    • #8953 Export interface for NuxtConfig instead of type
  • webpack
    • #8951 Update hmr option for extract-css-chunks-webpack-plugin
  • general
    • #8936 Allow force overriding resolve paths
    • #8935 Allow relative public paths
    • #8887 Update @babel/preset-env to 2.13.x
  • vue-renderer
    • #8912 Respect injectScripts for static target

πŸ’– Thanks to

  • Hannes KΓΌttner (@hanneskuettner)
nuxt -

Published by pi0 over 3 years ago

πŸ› Bug Fixes

  • babel-preset-app
    • #8882 Pin @babel/preset-env to ~7.12
    • #8883 Avoid relying on preset-env internal utils

πŸ’– Thanks to

  • HuΓ‘ng JΓΉnliΓ ng (@JLHwung)
nuxt -

Published by pi0 over 3 years ago

πŸ› Bug Fixes

  • renderer
    • Deep merge runtime config for server (resolves #8820)
  • webpack
    • #8846 Transpile ufo (resolves #8838)
  • cli
    • #8841 Don't early return when a dependency isn't installed
  • types
    • #8835 build.html.minify can be false
  • builder
    • #8832 Use path.resolve for pages dir

πŸ’– Thanks to

  • Harlan Wilton (@loonpwn)
  • Kenny (@kn3ny)
nuxt -

Published by pi0 over 3 years ago

πŸ’‘ Highlights

⚠️This release introduces behavior changes. Update with caution ⚠️

  • Minimum supported Node.js version is 12.0.0 (See https://github.com/nuxt/nuxt.js/issues/8327 for why)

  • Using jiti as new require engine with typescript support

  • Plug and play works out of the box

  • Allow opting-in to use postcss@8 (See https://github.com/nuxt/nuxt.js/issues/8546)

    NOTE: postcss-preset-env is disabled in v8 config as it doesn't support postcss v8 for now, so please install all below dependencies explicitly.

    yarn add --dev css-loader@^5.0.0 postcss@^8.1.10 postcss-import@^13.0.0 postcss-loader@^4.1.0 postcss-url@^10.1.1
    # or
    npm i --save-dev css-loader@^5.0.0 postcss@^8.1.10 postcss-import@^13.0.0 postcss-loader@^4.1.0 postcss-url@^10.1.1
    
  • Several encoding issues resolved by consistently using ufo

  • Components updated to v2 (please read migration guide)

  • [Modules] When matching a webpack loader by name or query, should use includes instead of exact match (example)

πŸ› Bug Fixes

  • general
    • #8794 Ignore trailing slash in static payloads manifest
    • #8738 Encoding issues with payload paths
    • #8423 trailingSlash and child routes not working
  • config
    • #8778 Prevent invalid css filenames in webpack output
  • utils
    • #8780 serializeFunction fails with certain functions
  • vue-app
    • #8759 Enable dynamic publicPath on server-side
    • #8701 Static payload fetching bugfixes
    • #8612 Check for Page.options before looking within
    • #8611 Don't remove req, res and query from context unless in full static mode
    • #8608 Ensure link.__prefetch exists before calling it
    • #8596 Add missing id attribute to noopApp
    • #8557 Scroll-to-top on route changes only
    • #8523 Set push on router instance rather than prototype
    • #8486 Do not preserve state when registering client-side dynamic module
    • #8802 Add leading slash for payload hydration
  • server, vue-app
    • #8748 Address encoding issues with query params
  • dev
    • #8697 Clearnup vue installed plugins from server in dev mode
    • #8556 Resolve module required by create-require in jiti
  • cli
    • #8683 Disable parallel build behaviour when generating
  • webpack
    • #8555 Can't resolve absolute url in css
  • server
    • #8593 Fix HMR issue with serverMiddleware when router.base is set
  • babel
    • #8545 Enable polyfilling of proposal core-js features
  • vue-app, vue-renderer, utils
    • #8489 Respect trailingSlash setting for payloads
  • generator
    • #8474 Ensure static manifest dir exists
    • #8803 Normalize trailing slashes before extendRoutes

πŸš€ Features

  • cli
    • #8792 Warn if incompatible node and package versions detected
  • postcss
    • #8546 Support postcss v8 with explict postcss installation
  • config, vue-app, vue-renderer
    • #8520 Support dynamic base and publicPath
  • general
    • #8389 Support plug-and-play, typescript runtime and native modules
    • #8346 Update all dependencies that require node 10.x
  • vue-app
    • #8466 Support custom fetchKey for full static generation
  • vue-renderer
    • #8347 Allow adding async attribute to <script> tags

πŸ’… Refactors

  • utils, vue-app
    • #8765 Use ufo to parse queries and join urls
  • vue-app
    • #8621 Simplify scrollToTop checking
  • general
    • Consistent behavior for resolveModule

🏑 Chore

  • general
    • #8440 Fix router base handling with dev-middleware (closes )
    • #8408 Pin css-loader to 4.x
    • #8808 Simplify contributors
  • cli
    • #8674 Fix typo
  • types
    • #8630 Lint types
  • builder
    • Remove validateTemplate check (ed6e8cd307ea21d9f314a88b6d7603b8e40769ea)
  • readme
    • #8436 Fix invalid links

πŸ‡Ή Types

  • #8784 Add missing ssr option to config types
  • #8767 vue.config types should be optional
  • #8530 Add missing redirect overload to Context interface
  • #8638 Add enablePreview to context
  • #8648 Add missing loadingScreen type definition

πŸ’– Thanks to

  • Alexander Lichter (@manniL)
  • Ahad Birang (@farnabaz)
  • Beorn Facchini (@beornf)
  • Flo Edelmann (@FloEdelmann)
  • @gekkedev
  • @GeopJr
  • @LKHO
  • Maarten Van Hoof (@vanhoofmaarten)
  • Paulo Amosse Cuambe (@paulocuambe)
  • RafaΕ‚ ChΕ‚odnicki (@rchl)

And all nuxters helping everyday with valuable feedbacks πŸ’š

nuxt -

Published by pi0 almost 4 years ago

πŸ› Hot Fixes

  • #8494 Fix issues with URL handling (resolves #8497, #8493, #8458, #8457)

How to upgrade?

Use yarn upgrade nuxt or npm up nuxt

nuxt -

Published by pi0 almost 4 years ago

πŸ› Hot Fixes

  • #8462 Add url-polyfill to fix IE11 issue (URL is not a constructor) (resolves #8458)
  • #8462 Update ufo to preserve relative links (resolves #8457, #8459)
nuxt -

Published by pi0 almost 4 years ago

πŸ› Hot Fixes

  • Normalize routes and decode resolved query (#8430) (resolves #8429, #8442)
  • @nuxt/components v1.2.2 (notes)
nuxt -

Published by pi0 almost 4 years ago

πŸ› Hot Fixes

  • #8421 Only encode non dynamic path params
nuxt -

Published by pi0 almost 4 years ago

πŸ› Bug Fixes

  • webpack
    • #8205 Allow transpiling packages in nested node_modules
  • general
    • #8325 Handle route encodings and update vue-router
  • vue-router
    • #8394 Force chidren to be required if default child is present (resolves #7823)
  • cli
    • #8398 Respect router.trailingSlash when serving static files (resolves #8350)
    • #8337 Handle generate.cache.ignore as a function in ensureBuild
  • generator
    • #8237 Nested route missing trailingSlash (resolves #8165)
    • #8344 Respect publicPath for static assets (resolves #7923, #7815)
  • csp
    • #8352 Apply right csp header when status code is 304 (resolves #8353)
  • vue-app
    • #8314 Handle missing payloads on full static (resolves #7717)
    • #8348 Warn if promises and functions are in fetch state (resolves #8338)
    • #8225 TriggerScroll when transitions is disabled
    • #8289 Use nuxt globalName correctly in nuxt-link and fetch mixin (resolves #8118)
    • #8280 Prevent redirection loop with URI-encoded path (resolves #8116)
  • types
    • #8362 Correct vue.config types
    • #8349 Add missing isFetching and nbFetching to NuxtApp interface
    • #8319 NuxtOptionsHead can be a function
    • #8302 Add missing ssrContext and next typings to Context (resolves #8296)
  • server
    • #8313 Redirect if router.base specified in development

πŸ’… Refactors

  • general
    • #8210 Use nuxt everywhere
  • cli
    • #8219 Grammatical errors (resolves #8217)

πŸ‘“ Tests

  • general
    • #8282 Fix redirect tests

πŸ’– Thanks to

  • Ahad Birang (@farnabaz)
  • Audrius Jakumavicius (@aj-dev)
  • Cain Hall (@cain)
  • Daniel Roe (@danielroe)
  • Mathieu TUDISCO (@mathieutu)
  • Orkhan Alikhanov (@OrkhanAlikhanov)
  • Steve Perkins (@steveperkins)
  • @Zuckjet
  • @padinko
nuxt -

Published by pi0 about 4 years ago

πŸ› Bug Fixes

  • babel-preset-app
    • #8203 Always transpile optional chaining and nullish-coalescing for server
  • cli
    • #8200 Rebuild if process.env changes in nuxt.config
    • #8194 Avoid error about nuxt-edge if installed in parent node_modules
    • #8134 Mode deprecation with explicit spa or universal flag
  • vue-app
    • #8170 Use getter to provide this.$nuxt
    • #8055 ScrollRestoration hasn't set
  • types
    • #8182 Add type for serverMiddleware object format
    • #8169 Make NuxtConfig an interface
  • generator
    • #8166 Handle when no routes.json defined
  • general
    • #8206 Add better logs for DX with target option

πŸ’– Thanks to

  • Daniel Roe (@danielroe)
  • Dmitriy (@Kolobok12309)
nuxt -

Published by pi0 about 4 years ago

πŸ› Bug Fixes

  • babel-preset-app
    • #8085 Allow to specify corejs.version as string
  • vue-app
    • #8067 Always import error layout (resolves #8066, #8093)
    • #8053 Mock $fetch function for SSR with static target (resolves #8043)

πŸ’– Thanks to

  • Daniel Roe (@danielroe)
  • Dmitriy (@Kolobok12309)
  • Yihao Gao (@Yihao-G)
Package Rankings
Top 0.24% on Npmjs.org
Top 3.32% on Proxy.golang.org
Top 16.53% on Repo1.maven.org
Badges
Extracted from project README
Nuxt banner