-
Notifications
You must be signed in to change notification settings - Fork 0
fix(deps): update dependency nuxt to v3.19.0 [security] #37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/npm-nuxt-vulnerability
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
All alerts resolved. Learn more about Socket for GitHub. This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored. |
0a40897
to
b8fd3a6
Compare
b8fd3a6
to
5852384
Compare
5852384
to
e1856fd
Compare
b7ef040
to
dca298f
Compare
05ab43f
to
5367a13
Compare
5367a13
to
8b615e1
Compare
8b615e1
to
bdd7ad7
Compare
5722ba9
to
8c997e2
Compare
8c997e2
to
68c4e80
Compare
68c4e80
to
4ec540a
Compare
4ec540a
to
df06d8d
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.
This PR contains the following updates:
3.15.4
->3.19.0
3.14.1592
->3.19.0
GitHub Vulnerability Alerts
CVE-2025-27415
Summary
By sending a crafted HTTP request to a server behind an CDN, it is possible in some circumstances to poison the CDN cache and highly impacts the availability of a site.
It is possible to craft a request, such as
https://mysite.com/?/_payload.json
which will be rendered as JSON. If the CDN in front of a Nuxt site ignores the query string when determining whether to cache a route, then this JSON response could be served to future visitors to the site.Impact
An attacker can perform this attack to a vulnerable site in order to make a site unavailable indefinitely. It is also possible in the case where the cache will be reset to make a small script to send a request each X seconds (=caching duration) so that the cache is permanently poisoned making the site completely unavailable.
Conclusion :
This is similar to a vulnerability in Next.js that resulted in CVE-2024-46982 (and see this article, in particular the "Internal URL parameter and pageProps" part, the latter being very similar to the one concerning us here.)
CVE-2025-59414
Summary
A client-side path traversal vulnerability in Nuxt's Island payload revival mechanism allowed attackers to manipulate client-side requests to different endpoints within the same application domain when specific prerendering conditions are met.
Technical Details
The vulnerability occurs in the client-side payload revival process (revive-payload.client.ts) where Nuxt Islands are automatically fetched when encountering serialized
__nuxt_island
objects. The issue affects the following flow:__nuxt_island
objectdevalue.stringify
and stored in the prerendered pagedevalue.parse
deserializes the payload/__nuxt_island/${key}.json
wherekey
could contain path traversal sequencesPrerequisites for Exploitation
This vulnerability requires all of the following conditions:
nitro.prerender
)useFetch
,useAsyncData
, or similar composablesAttack Scenario
This could cause the client to make requests to
/__nuxt_island/../../../../internal/service.json
if path traversal is not properly handled by the server.Impact Assessment
Mitigation
Action Required:
Temporary Workarounds (if immediate update is not possible):
Fix Details
The fix implemented validation for Island keys in
revive-payload.server.ts
:/^[a-z][a-z\d-]*_[a-z\d]+$/i
Release Notes
nuxt/nuxt (nuxt)
v3.19.0
Compare Source
👀 Highlights
Please see the release notes for Nuxt v4.1 for full details on the features and fixes in Nuxt v3.19.
✅ Upgrading
As usual, our recommendation for upgrading is to run:
This will refresh your lockfile and pull in all the latest dependencies that Nuxt relies on, especially from the unjs ecosystem.
👉 Changelog
compare changes
🚀 Enhancements
ignore
option toresolveFiles
(#32858)onInstall
andonUpgrade
module hooks (#32397)rolldown-vite
(#31812)defineRouteRules
to pagerules
property (#32897)getLayerDirectories
util and refactor to use it (#33098)🔥 Performance
🩹 Fixes
satisfies
in page augmentation (#32902)useFetch
hooks (#32891)resolvePath
and normalize file extensions (#32857)requestTimeout
+ allow configuration (#32874)node_modules/
if no customsrcDir
(#32987)route
object (#32899)defineNuxtModule().with()
(#33081)nuxtApp._runningTransition
on resolve (#33025)💅 Refactors
async/await
inafterEach
(#32999)📖 Documentation
setupTimeout
and addteardownTimeout
(#32868)--nightly
command (#32907)useRoute
and accessing route in middleware (#33004)🏡 Chore
type: 'module'
in playground (#33099)✅ Tests
import.meta.dev
(#33023)findWorkspaceDir
rather than relative paths to repo root (c4c3ada96)expect.poll
(f4354203a)expect.poll
instead ofexpectWithPolling
(15ca5be95)vi.waitUntil
instead of custom retry logic (4c8c13090)🤖 CI
❤️ Contributors
v3.18.1
Compare Source
👉 Changelog
compare changes
🔥 Performance
tinyglobby
inresolveFiles
(#32846)🩹 Fixes
error
variable (#32807)typeCheck
(#32835)null
result from webpack call (65aa17158)reverseResolveAlias
for better errors (#32853)📖 Documentation
🏡 Chore
✅ Tests
defineNuxtComponent
out of e2e test (#32848)🤖 CI
❤️ Contributors
v3.18.0
Compare Source
👀 Highlights
A huge thank you to everyone who's been a part of this release, which is mostly about backporting features + bugfixes from Nuxt v4.
Over the next six months, we'll continue backporting compatible v4 features and bug fixes, so please keep the feedback coming! ❤️
🧪 Lazy Hydration Macros
Building on the delayed hydration support from v3.16, we now support lazy hydration macros (#31192)! These provide a more ergonomic way to control component hydration:
These macros make it possible to use Nuxt's lazy hydration utilities alongside explicit component imports.
♿️ Accessibility Improvements
We've enhanced accessibility by including
<NuxtRouteAnnouncer>
in the built-inapp.vue
(#32621). This means page changes will be announced to screen readers, making navigation more accessible for users with visual impairments. (This only applies if you do not have anapp.vue
in your project. If you do, please keep<NuxtRouteAnnouncer>
in yourapp.vue
!)🛠️ Enhanced Development Experience
Chrome DevTools Workspace Integration
We've added Chrome DevTools workspace integration (#32084), allowing you to edit your Nuxt source files directly from Chrome DevTools. This creates a better debugging experience where changes made in DevTools are reflected in your actual source files.
Better Component Type Safety
Component type safety has been improved with:
<ClientOnly>
and<DevOnly>
(#32707) - better IntelliSense and error checking<NuxtTime>
prop types (#32547) - easier to extend and customizeNew Auto-Import:
onWatcherCleanup
The
onWatcherCleanup
function fromvue
is now available as an auto-import (#32396), making it easier to clean up watchers and prevent memory leaks:📊 Observability Enhancements
Page routes are now exposed to Nitro for observability (#32617), enabling better monitoring and analytics integration with supported platforms. This allows observability tools to track page-level metrics more effectively.
🔧 Module Development Improvements
Module authors get several quality-of-life improvements:
Simplified Server Imports
The
addServerImports
kit utility now supports single imports (#32289), making it easier to add individual server utilities:TypeScript Configuration
Modules can now add to
typescript.hoist
(#32601), giving them more control over TypeScript configuration and type generation.⚡️ Performance Improvements
We've made several performance optimizations:
oxc-walker
(#32250) and oxc foronPrehydrate
transforms (#32045) for faster code transformations🐛 Bug Fixes
This release also includes several important fixes:
scrollBehaviorType
is now only used for hash scrolling (#32622)✅ Upgrading
As usual, our recommendation for upgrading is to run:
This refreshes your lockfile and pulls in all the latest dependencies that Nuxt relies on, especially from the unjs ecosystem.
👉 Changelog
compare changes
🚀 Enhancements
<NuxtTime>
prop types (#32547)addServerImports
(#32289)onWatcherCleanup
to imports presets (#32396)🔥 Performance
🩹 Fixes
typescript.hoist
(#32601)scrollBehaviorType
for hash scrolling (#32622)async
(fd312af03)<ClientOnly>
and<DevOnly>
(#32707)mlly
to parse module paths (#32386)💅 Refactors
oxc-walker
(#32250)onPrehydrate
transform (#32045)installNuxtModule
(228e3585e)📖 Documentation
v3
template to create nuxt examples (03182202f)useNuxtData
in data fetching composable pages (#32589)noUncheckedIndexedAccess
rule change in v4 guide (#32643)npm create nuxt@latest
(#32726).with()
(#32757)🏡 Chore
unbuild
and use absolute path in dev stubs (#32759)✅ Tests
module.exports
export (ac8b02d09)🤖 CI
pkg.pr.new
formain
/3.x
branches as well (ca4f0b1da)3x
tag to latest v3 release (5e8dfc150)❤️ Contributors
v3.17.7
Compare Source
✅ Upgrading
Our recommendation for upgrading is to run:
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
extraPageMetaExtractionKeys
(#32510)loadBuilder
error cause (8f13ce3c2)null
values (c1b83eab5)semver.satisfies
returns true for pre-release versions (#32574)execute being passed to
watch` (#32591)📖 Documentation
NUXT_
(#32223)useAsyncData
anduseFetch
migration (#32560)undefined
tonull
in v3 docs (#32562)async
keyword (#32587)✅ Tests
generateTypes
(c0855439d)<NuxtTime>
test (#32558)❤️ Contributors
v3.17.6
Compare Source
✅ Upgrading
Our recommendation for upgrading is to run:
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
🔥 Performance
🩹 Fixes
nuxt.config
(#32324)nuxt:chunk-reload-immediate
(#32382)set-cookie
headers in error handler (#32483)asyncData
runs if changing key while fetcher is running (#32466)navigateTo
(#32393)<NuxtLink>
's custom on click handler (#32499)inheritAttrs: false
increateClientOnly
fn (#32323)output.generatedCode.symbols
for nitro build (#32358)💅 Refactors
📖 Documentation
h3js
(#32243)clear
function description (#32287)defineNuxtPlugin
function documentation (#32328)<NuxtLink>
encodes query params (#32361)bun.lock
for lockfile (#32427)🏡 Chore
workspace
toprojects
(#32388)✅ Tests
immediate: false
(#32473)🤖 CI
❤️ Contributors
v3.17.5
Compare Source
✅ Upgrading
Our recommendation for upgrading is to run:
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
🔥 Performance
globby
(#31688)🩹 Fixes
useScriptRybbitAnalytics
from script stubs (d275ae1a0)appConfig
sources are not duplicated (#32216)h()
in ClientOnly (#30664)asyncData
state from nuxt app instance (#32232)srcDir
inbuildCache
(#32260)asyncData
watcher (#32247)📖 Documentation
addRouteMiddleware
path in example (#32171)--env-file
(29f6392cd)nuxt
command consistently (#32237)alert
withwarning
in/guide/pages
(#32270)📦 Build
🏡 Chore
✅ Tests
❤️ Contributors
v3.17.4
Compare Source
✅ Upgrading
Our recommendation for upgrading is to run:
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
🔥 Performance
shallowRef
for primitive values (#32152)Intl.Collator
instead oflocaleCompare
(#32167)🩹 Fixes
<ClientOnly>
(#32101)useLazyAsyncData
(#32092)ts-checker-rspack-plugin
(#32115)/
(#32129)DeepPartial
(#31990)<ClientOnly>
(#32131)global
withglobalThis
(#32130)<NuxtLayout>
first renders (#24673)srcDir
to parcel strategy (#32139)📖 Documentation
useNuxtData
default return toundefined
(#32054)imports.dirs
with alias (0dbf314d9)🏡 Chore
✅ Tests
setTimeout
mock (#32142)🤖 CI
❤️ Contributors
v3.17.3
Compare Source
✅ Upgrading
Our recommendation for upgrading is to run:
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
🔥 Performance
🩹 Fixes
FormData
(#32013)ignore
patterns (#32020)useFetch
withwatch: false
(#32019)getCachedData
is provided (#32003)nuxtApp
for asyncData functions run on server (#32038)💅 Refactors
asyncData
(e779d6cd5)📖 Documentation
🤖 CI
bug
/enhancement
labels to issue types (3ff743fe0)❤️ Contributors
Configuration
📅 Schedule: Branch creation - "" in timezone Europe/Paris, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.