Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Apr 23, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@nuxtjs/i18n (source) 9.5.3 -> 9.5.4 age adoption passing confidence
@nuxtjs/tailwindcss 6.13.2 -> 6.14.0 age adoption passing confidence
@tiptap/core (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/extension-bubble-menu (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/extension-text-align (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/extension-text-style (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/extension-typography (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/pm (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/starter-kit (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@tiptap/vue-3 (source) 2.11.7 -> 2.11.9 age adoption passing confidence
@types/node (source) 22.14.1 -> 22.15.3 age adoption passing confidence
esbuild 0.25.2 -> 0.25.3 age adoption passing confidence
nuxt (source) 3.16.2 -> 3.17.1 age adoption passing confidence
rollup (source) 4.40.0 -> 4.40.1 age adoption passing confidence

Release Notes

nuxt-modules/i18n (@​nuxtjs/i18n)

v9.5.4

Compare Source

   🐞 Bug Fixes
    View changes on GitHub
nuxt-modules/tailwindcss (@​nuxtjs/tailwindcss)

v6.14.0

Compare Source

compare changes

🚀 Enhancements
  • Add initial tw4 support in v6 (#​980)
  • defineConfig: Enable conditional return (#​979)
🩹 Fixes
  • Content resolution for [...path].vue pages (#​965)
  • Try resolving tailwindcss from module (#​974)
  • config-hmr: InteropDefault when importing config changes (d3e4de7)
  • content: Move strict scanning to experimental (75efd5c)
  • types: Mark as optional (4a4af2c)
  • content: Spa-loading-template path with nuxt 4 app dir (3f59d4a)
  • content: Revert pages to only app as layers also inherit it (4eea740)
  • Only show Tailwind v4 warning when v4 is used (#​983, #​984)
  • defineConfig: Pass cwd path to requireModule (a0da2ee)
💅 Refactors
  • proxy: Use ohash diff to determine changes instead (#​985)
🏡 Chore
  • Move kit back to explicit dependency (#​968)
❤️ Contributors
ueberdosis/tiptap (@​tiptap/core)

v2.11.9

Compare Source

Releases
@​tiptap/extension-text-align@​2.11.9
Patch Changes
  • ab7a2ae: Added new toggleTextAlign command to TextAlign extension to make toggling text alignments easier to handle
@​tiptap/react@​2.11.9
Patch Changes
@​tiptap/starter-kit@​2.11.9
Patch Changes
@​tiptap/vue-2@​2.11.9
Patch Changes
@​tiptap/vue-3@​2.11.9
Patch Changes

v2.11.8

Compare Source

Releases

@​tiptap/core@​2.11.8

Patch Changes
  • 8147cc7: Fixes a bug where you could not unregister multiple plugins.

@​tiptap/react@​2.11.8

Patch Changes

@​tiptap/starter-kit@​2.11.8

Patch Changes

@​tiptap/vue-2@​2.11.8

Patch Changes

@​tiptap/vue-3@​2.11.8

Patch Changes
ueberdosis/tiptap (@​tiptap/pm)

v2.11.9

Compare Source

evanw/esbuild (esbuild)

v0.25.3

Compare Source

  • Fix lowered async arrow functions before super() (#​4141, #​4142)

    This change makes it possible to call an async arrow function in a constructor before calling super() when targeting environments without async support, as long as the function body doesn't reference this. Here's an example (notice the change from this to null):

    // Original code
    class Foo extends Object {
      constructor() {
        (async () => await foo())()
        super()
      }
    }
    
    // Old output (with --target=es2016)
    class Foo extends Object {
      constructor() {
        (() => __async(this, null, function* () {
          return yield foo();
        }))();
        super();
      }
    }
    
    // New output (with --target=es2016)
    class Foo extends Object {
      constructor() {
        (() => __async(null, null, function* () {
          return yield foo();
        }))();
        super();
      }
    }

    Some background: Arrow functions with the async keyword are transformed into generator functions for older language targets such as --target=es2016. Since arrow functions capture this, the generated code forwards this into the body of the generator function. However, JavaScript class syntax forbids using this in a constructor before calling super(), and this forwarding was problematic since previously happened even when the function body doesn't use this. Starting with this release, esbuild will now only forward this if it's used within the function body.

    This fix was contributed by @​magic-akari.

  • Fix memory leak with --watch=true (#​4131, #​4132)

    This release fixes a memory leak with esbuild when --watch=true is used instead of --watch. Previously using --watch=true caused esbuild to continue to use more and more memory for every rebuild, but --watch=true should now behave like --watch and not leak memory.

    This bug happened because esbuild disables the garbage collector when it's not run as a long-lived process for extra speed, but esbuild's checks for which arguments cause esbuild to be a long-lived process weren't updated for the new --watch=true style of boolean command-line flags. This has been an issue since this boolean flag syntax was added in version 0.14.24 in 2022. These checks are unfortunately separate from the regular argument parser because of how esbuild's internals are organized (the command-line interface is exposed as a separate Go API so you can build your own custom esbuild CLI).

    This fix was contributed by @​mxschmitt.

  • More concise output for repeated legal comments (#​4139)

    Some libraries have many files and also use the same legal comment text in all files. Previously esbuild would copy each legal comment to the output file. Starting with this release, legal comments duplicated across separate files will now be grouped in the output file by unique comment content.

  • Allow a custom host with the development server (#​4110)

    With this release, you can now use a custom non-IP host with esbuild's local development server (either with --serve= for the CLI or with the serve() call for the API). This was previously possible, but was intentionally broken in version 0.25.0 to fix a security issue. This change adds the functionality back except that it's now opt-in and only for a single domain name that you provide.

    For example, if you add a mapping in your /etc/hosts file from local.example.com to 127.0.0.1 and then use esbuild --serve=local.example.com:8000, you will now be able to visit http://local.example.com:8000/ in your browser and successfully connect to esbuild's development server (doing that would previously have been blocked by the browser). This should also work with HTTPS if it's enabled (see esbuild's documentation for how to do that).

  • Add a limit to CSS nesting expansion (#​4114)

    With this release, esbuild will now fail with an error if there is too much CSS nesting expansion. This can happen when nested CSS is converted to CSS without nesting for older browsers as expanding CSS nesting is inherently exponential due to the resulting combinatorial explosion. The expansion limit is currently hard-coded and cannot be changed, but is extremely unlikely to trigger for real code. It exists to prevent esbuild from using too much time and/or memory. Here's an example:

    a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{color:red}}}}}}}}}}}}}}}}}}}}

    Previously, transforming this file with --target=safari1 took 5 seconds and generated 40mb of CSS. Trying to do that will now generate the following error instead:

    ✘ [ERROR] CSS nesting is causing too much expansion
    
        example.css:1:60:
          1 │ a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{a,b{color:red}}}}}}}}}}}}}}}}}}}}
            ╵                                                             ^
    
      CSS nesting expansion was terminated because a rule was generated with 65536 selectors. This limit
      exists to prevent esbuild from using too much time and/or memory. Please change your CSS to use
      fewer levels of nesting.
    
  • Fix path resolution edge case (#​4144)

    This fixes an edge case where esbuild's path resolution algorithm could deviate from node's path resolution algorithm. It involves a confusing situation where a directory shares the same file name as a file (but without the file extension). See the linked issue for specific details. This appears to be a case where esbuild is correctly following node's published resolution algorithm but where node itself is doing something different. Specifically the step LOAD_AS_FILE appears to be skipped when the input ends with ... This release changes esbuild's behavior for this edge case to match node's behavior.

  • Update Go from 1.23.7 to 1.23.8 (#​4133, #​4134)

    This should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain reports from vulnerability scanners that detect which version of the Go compiler esbuild uses, such as for CVE-2025-22871.

    As a reminder, esbuild's development server is intended for development, not for production, so I do not consider most networking-related vulnerabilities in Go to be vulnerabilities in esbuild. Please do not use esbuild's development server in production.

nuxt/nuxt (nuxt)

v3.17.1

Compare Source

3.17.1 is the next patch release.

✅ Upgrading

Our recommendation for upgrading is to run:

npx nuxi@latest upgrade --dedupe

This will deduplicate your lockfile as well, and help ensure that you pull in updates from other dependencies that Nuxt relies on, particularly in the unjs ecosystem.

👉 Changelog

compare changes

🩹 Fixes
  • nuxt: Check if match exists with new unplugin filter (#​31929)
  • nuxt: Reinitialise stale async data (#​31940)
  • nuxt: Skip view transition if user agent is providing one (#​31938)
  • nuxt: Trigger execute when non-immediate fetch key changes (#​31941)
  • nuxt: Don't redirect when route has trailing slash (#​31902)
  • ui-templates: Use escapeHTML from vue (8e4b8d62f)
  • schema: Add @vue/shared dependency (7d445c963)
📦 Build
  • Copy README/LICENSE from repo root (8e287d556)
🏡 Chore
✅ Tests
❤️ Contributors

v3.17.0

Compare Source

👀 Highlights

This release brings a major reworking of the async data layer, a new built-in component, better warnings, and performance improvements!

📊 Data Fetching Improvements

A major reorganization of Nuxt's data fetching layer brings significant improvements to useAsyncData and useFetch.

Although we have aimed to maintain backward compatibility and put breaking changes behind the experimental.granularCachedData flag (disabled by default), we recommend testing your application thoroughly after upgrading. You can also disable experimental.purgeCachedData to revert to the previous behavior if you are relying on cached data being available indefinitely after components using useAsyncData are unmounted.

👉 Read the the original PR for full details (#​31373), but here are a few highlights.

Consistent Data Across Components

All calls to useAsyncData or useFetch with the same key now share the underlying refs, ensuring consistency across your application:

<!-- ComponentA.vue -->
<script setup>
const { data: users, pending } = useAsyncData('users', fetchUsers)
</script>

<!-- ComponentB.vue -->
<script setup>
// This will reference the same data state as ComponentA
const { data: users, status } = useAsyncData('users', fetchUsers)
// When either component refreshes the data, both will update consistently
</script>

This solves various issues where components could have inconsistent data states.

Reactive Keys

You can now use computed refs, plain refs, or getter functions as keys:

const userId = ref('123')
const { data: user } = useAsyncData(
  computed(() => `user-${userId.value}`),
  () => fetchUser(userId.value)
)

// Changing the userId will automatically trigger a new data fetch
// and clean up the old data if no other components are using it
userId.value = '456'
Optimized Data Refetching

Multiple components watching the same data source will now trigger only a single data fetch when dependencies change:

// In multiple components:
const { data } = useAsyncData(
  'users', 
  () => $fetch(`/api/users?page=${route.query.page}`),
  { watch: [() => route.query.page] }
)

// When route.query.page changes, only one fetch operation will occur
// All components using this key will update simultaneously
🎭 Built-In Nuxt Components
<NuxtTime> - A new component for safe time display

We've added a new <NuxtTime> component for SSR-safe time display, which resolves hydration mismatches when working with dates (#​31876):

<NuxtTime :time="new Date()" format="YYYY-MM-DD" />

The component accepts multiple time formats and gracefully handles both client and server rendering.

Enhanced <NuxtErrorBoundary>

The <NuxtErrorBoundary> component has been converted to a Single File Component and now exposes error and clearError from the component - as well as in the error slot types, giving you greater ability to handle errors in your templates and via useTemplateRef (#​31847):

<NuxtErrorBoundary @&#8203;error="handleError">
  <template #error="{ error, clearError }">
    <div>
      <p>{{ error.message }}</p>
      <button @&#8203;click="clearError">Try again</button>
    </div>
  </template>
  
  <!-- Content that might error -->
  <MyComponent />
</NuxtErrorBoundary>
🔗 Router Improvements

<NuxtLink> now accepts a trailingSlash prop, giving you more control over URL formatting (#​31820):

<NuxtLink to="/about" trailing-slash>About</NuxtLink>
<!-- Will render <a href="/about/"> -->
🔄 Loading Indicator Customization

You can now customize the loading indicator with new props directly on the component (#​31532):

  • hideDelay: Controls how long to wait before hiding the loading bar
  • resetDelay: Controls how long to wait before resetting loading indicator state
<template>
  <NuxtLoadingIndicator :hide-delay="500" :reset-delay="300" />
</template>
📚 Documentation as a Package

The Nuxt documentation is now available as an npm package! You can install @nuxt/docs to access the raw markdown and YAML content used to build the documentation website (#​31353).

💻 Developer Experience Improvements

We've added several warnings to help catch common mistakes:

  • Warning when server components don't have a root element #​31365
  • Warning when using the reserved runtimeConfig.app namespace #​31774
  • Warning when core auto-import presets are overridden #​29971
  • Error when definePageMeta is used more than once in a file #​31634
🔌 Enhanced Module Development

Module authors will be happy to know:

  • A new experimental.enforceModuleCompatibility allows Nuxt to throw an error when a module is loaded that isn't compatible with it (#​31657). It will be enabled by default in Nuxt v4.
  • You can now automatically register every component exported via named exports from a file with addComponentExports #​27155
🔥 Performance Improvements

Several performance improvements have been made:

  • Switched to tinyglobby for faster file globbing #​31668
  • Excluded .data directory from type-checking for faster builds #​31738
  • Improved tree-shaking by hoisting the purgeCachedData check #​31785
✅ Upgrading

Our recommendation for upgrading is to run:

npx nuxi@latest upgrade --dedupe

This refreshes your lockfile and pulls in all the latest dependencies that Nuxt relies on, especially from the unjs ecosystem.

👉 Changelog

compare changes

🚀 Enhancements
  • nuxt: Accept hideDelay and resetDelay props for loading indicator (#​31532)
  • nuxt: Warn server components need root element (#​31365)
  • docs: Publish raw markdown/yaml docs as @nuxt/docs (#​31353)
  • kit,nuxt: Pass dotenv values from loadNuxtConfig to nitro (#​31680)
  • nuxt,vite: Support disabling scripts in dev mode (#​31724)
  • nuxt: Warn if user uses reserved runtimeConfig.app namespace (#​31774)
  • kit,schema: Allow throwing error if modules aren't compatible (#​31657)
  • nuxt: Extract middleware when scanning page metadata (#​30708)
  • nuxt: Warn if core auto-import presets are overridden (#​29971)
  • nuxt: Scan named exports with addComponentExports (#​27155)
  • nuxt: Convert <NuxtErrorBoundary> to SFC + expose error/clearError (#​31847)
  • nuxt: Add <NuxtTime> component for ssr-safe time display (#​31876)
  • nuxt: Add trailingSlash prop to <NuxtLink> (#​31820)
🔥 Performance
  • kit,rspack,webpack: Switch to tinyglobby (#​31668)
  • kit: Exclude .data directory from type-checking (#​31738)
  • nuxt: Hoist purgeCachedData check to improve tree-shaking (#​31785)
  • nuxt: Remove oxc-parser manual wasm fallback logic (#​31484)
  • nuxt: Remove unecessary type check for useFetch (#​31910)
🩹 Fixes
  • kit,vite: Ensure all modulesDir paths are added to fs.allow (#​31540)
  • nuxt: Pass slots through to lazy hydrated components (#​31649)
  • vite: Do not return 404 for dev server handlers which shadow /_nuxt/ (#​31646)
  • nuxt: Sync error types for useLazyAsyncData (#​31676)
  • nuxt: Strip base url from error.url (#​31679)
  • nuxt: Render inline styles before app:rendered is called (#​31686)
  • nuxt: Update nitro imports (0bec0bd26)
  • nuxt: Check for fallback attribute when stripping <DevOnly> (c1d735c27)
  • vite: Invalidate files not present in module graph (ecae2cd54)
  • nuxt: Do not add manifest preload when noScripts (c9572e953)
  • nuxt: Do not prompt to update compatibilityDate (#​31725)
  • nuxt: Show brotli size by default when analyzing bundle (#​31784)
  • nuxt: Always pass statusMessage when rendering html error (#​31761)
  • nuxt: Error when definePageMeta is used more than once (#​31634)
  • nuxt: Parse error.data before rendering error.vue (#​31571)
  • nuxt: Use single synced asyncdata instance per key (#​31373)
  • nuxt: Use useAsyncData in console log (#​31801)
  • nuxt: Wait for suspense to resolve before handling NuxtErrorBoundary error (#​31791)
  • vite: Disable preserveModules (#​31839)
  • nuxt: Align pending with status value for v4 (#​25864)
  • nuxt: Consider full path when de-duplicating routes (#​31849)
  • nuxt: Augment nuxt/app in generated middleware and layouts declarations (#​31808)
  • nuxt: Correct order of args passed to withoutBase (f956407bb)
  • vite: Dedupe vue in vite-node dev server (f3882e004)
  • ui-templates: Pass pointer events through spotlight div in error dev template (#​31887)
  • kit: Include user-defined types before internal ones in tsconfig.json (#​31882)
  • nuxt: Do not purge nuxt data if active useNuxtData (#​31893)
  • nuxt: Do not include components of key in useFetch watch sources (#​31903)
  • nuxt: Use first existing modulesDir to store build cache files (#​31907)
💅 Refactors
  • nuxt: Use shallowRef for primitives as well (#​31662)
  • nuxt: Move island renderer into its own event handler (#​31386)
  • nuxt: Remove unneeded import (#​31750)
  • nuxt: Use _replaceAppConfig when applying hmr (#​31786)
  • nuxt: Use new unplugin filter options (#​31868)
  • schema: Do not generate types for ConfigSchema (#​31894)
📖 Documentation
  • Add note on extending auto-imports (#​31640)
  • Improve description of app.vue (#​31645)
  • Use video-accordion video and add more videos (#​31655)
  • Add description of templateParams to seo docs (#​31583)
  • Refine auto-imports documentation (#​31700)
  • Fix nuxt logo on website badge (#​31704)
  • Update tailwindcss link (b5741cb5a)
  • Adjust description of useHydration (#​31712)
  • Remove trailing slash (#​31751)
  • Remove comment about callOnce returning value (#​31747)
  • Use vs. consistently (#​31760)
  • Update nitro addServerHandler example (#​31769)
  • Add supporting shared folder video (#​31651)
  • Update example for component auto-import in nuxt modules (#​31757)
  • Refine nuxt kit components documentation (#​31714)
  • Use trailing slash for vitest link (82de8bcf8)
  • Fix casing (#​31805)
  • Add discord and nuxters links (#​31888)
  • Fix typos (#​31898)
📦 Build
  • nuxt: Use vue-sfc-transformer to process sfcs (#​31691)
🏡 Chore
✅ Tests
  • nuxt: Add customizable test api for pages tests (#​31619)
  • kit: Fix tests when running on Windows (#​31694)
  • Update page metadata snapshot (89a596075)
  • Add basic runtime tests for <NuxtErrorBoundary> (4df92c45f)
  • Add version to mock nuxt (915fae2fd)
  • Update assertion for pendingWhenIdle (08f2224c8)
  • Remove incorrect assertions (fdc4b5343)
  • Update tests for purgeCachedData (c6411eb17)
🤖 CI
  • Add notify-nuxt-website workflow (#​31726)
❤️ Contributors
rollup/rollup (rollup)

v4.40.1

Compare Source

2025-04-28

Bug Fixes
  • Limit hash size for asset file names to the supported 21 (#​5921)
  • Do not inline user-defined entry chunks or chunks with explicit file name (#​5923)
  • Avoid top-level-await cycles when non-entry chunks use top-level await (#​5930)
  • Expose package.json via exports (#​5931)
Pull Requests

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot changed the title chore(deps): update dependency esbuild to v0.25.3 chore(deps): update all non-major dependencies Apr 24, 2025
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 9 times, most recently from e219cd4 to 258c699 Compare April 30, 2025 01:42
@renovate renovate bot changed the title chore(deps): update all non-major dependencies fix(deps): update all non-major dependencies Apr 30, 2025
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 2 times, most recently from 9b08fd0 to 6557d1d Compare April 30, 2025 17:32
@renovate renovate bot force-pushed the renovate/all-minor-patch branch from 6557d1d to 3b85a9d Compare April 30, 2025 23:25
@trobonox trobonox merged commit 096c18c into main May 1, 2025
4 of 5 checks passed
@renovate renovate bot deleted the renovate/all-minor-patch branch May 1, 2025 09:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant