chore(deps): update dependencies#1005
Conversation
Deploying nuxt-devtools with
|
| Latest commit: |
7308210
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://c672d28a.nuxt-devtools.pages.dev |
| Branch Preview URL: | https://antfu-update-deps.nuxt-devtools.pages.dev |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThis PR standardizes import ordering across the entire devtools client codebase (50+ files), updates type annotations from Unhead's deprecated Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
playgrounds/tab-pinia/nuxt.config.tsESLint skipped: missing config or dependency (missing-dependency). The ESLint configuration references a package that is not available in the sandbox. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
packages/devtools/src/server-rpc/general.ts (1)
87-89: 💤 Low valueDocument the intentional double cast.
nuxt.options as unknown as NuxtOptionsfully bypasses type checking on the return value. Per the migration, this bridges the discrepancy betweennuxt/schema.NuxtOptions(whereunocssis required) and the@nuxt/schema.NuxtOptionsthatnuxt.optionsresolves to. A brief inline comment will prevent a future reader from "simplifying" this cast and reintroducing the type error.📝 Suggested clarifying comment
- getServerConfig(): NuxtOptions { - return nuxt.options as unknown as NuxtOptions + getServerConfig(): NuxtOptions { + // `nuxt.options` resolves to `@nuxt/schema.NuxtOptions` (unocss optional) while the + // return type uses nuxt/schema.NuxtOptions (unocss required); cast bridges the mismatch. + return nuxt.options as unknown as NuxtOptions },🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/devtools/src/server-rpc/general.ts` around lines 87 - 89, Add a brief inline comment above the double-cast in getServerConfig() explaining why the code uses "nuxt.options as unknown as NuxtOptions" intentionally: it bridges the schema mismatch between nuxt/schema.NuxtOptions (which requires unocss) and the `@nuxt/schema` type returned by nuxt.options, and prevents future maintainers from removing the cast; keep the cast as-is and ensure the comment references both schema types and "unocss" so the intent is clear.packages/devtools/client/components/OpenGraphMissingTabs.vue (1)
2-2: 💤 Low valueAvoid deprecated
@unhead/schemaimport
MetaFlatrename is correct, but@unhead/schemais deprecated and now only re-exportsunhead/types, so update the import inpackages/devtools/client/components/OpenGraphMissingTabs.vue(line 2) to avoid relying on the deprecated alias.♻️ Suggested import update
-import type { MetaFlat } from '`@unhead/schema`' +import type { MetaFlat } from 'unhead/types'🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/devtools/client/components/OpenGraphMissingTabs.vue` at line 2, The import uses the deprecated alias '`@unhead/schema`' for the MetaFlat type; update the import in OpenGraphMissingTabs.vue to import the type directly from 'unhead/types' (replace "import type { MetaFlat } from '`@unhead/schema`'" with "import type { MetaFlat } from 'unhead/types'"), then run typechecking/TS build to ensure no other references need adjusting; target the MetaFlat type usage in this component when applying the change.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/package.json`:
- Line 4: Update the package manager declaration and workspace configs to
account for pnpm@11.4.0 stricter rules: ensure the "packageManager" field
(packageManager) is intentional, regenerate or validate the lockfile and
integrity metadata so lockfile entries include integrity checksums, audit any
auth/registry settings so unscoped credentials aren't leaked, convert git
resolutions to include SHA commits, validate patch files and dependency aliases
for directory traversal, and confirm runtime settings/workspace config
(devEngines.runtime vs engines.runtime) are set appropriately to avoid
install/read-time failures under pnpm@11.4.0.
---
Nitpick comments:
In `@packages/devtools/client/components/OpenGraphMissingTabs.vue`:
- Line 2: The import uses the deprecated alias '`@unhead/schema`' for the MetaFlat
type; update the import in OpenGraphMissingTabs.vue to import the type directly
from 'unhead/types' (replace "import type { MetaFlat } from '`@unhead/schema`'"
with "import type { MetaFlat } from 'unhead/types'"), then run typechecking/TS
build to ensure no other references need adjusting; target the MetaFlat type
usage in this component when applying the change.
In `@packages/devtools/src/server-rpc/general.ts`:
- Around line 87-89: Add a brief inline comment above the double-cast in
getServerConfig() explaining why the code uses "nuxt.options as unknown as
NuxtOptions" intentionally: it bridges the schema mismatch between
nuxt/schema.NuxtOptions (which requires unocss) and the `@nuxt/schema` type
returned by nuxt.options, and prevents future maintainers from removing the
cast; keep the cast as-is and ensure the comment references both schema types
and "unocss" so the intent is clear.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 6ea071a9-e6a2-4fe8-9055-7cd3ba3371bf
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (56)
docs/package.jsonpackage.jsonpackages/devtools-ui-kit/src/components/NButton.tspackages/devtools/client/app.vuepackages/devtools/client/components/AssetDetails.vuepackages/devtools/client/components/AssetDropZone.vuepackages/devtools/client/components/BuildAnalyzeDetails.vuepackages/devtools/client/components/CommandPalette.vuepackages/devtools/client/components/NpmVersionCheck.vuepackages/devtools/client/components/OpenGraphMissingTabs.vuepackages/devtools/client/components/RestartDialogs.vuepackages/devtools/client/components/ServerRouteDetails.vuepackages/devtools/client/components/SideNavItem.vuepackages/devtools/client/components/SplitScreen.vuepackages/devtools/client/components/StorageDetails.vuepackages/devtools/client/components/TerminalView.vuepackages/devtools/client/components/docs/timeline.mdpackages/devtools/client/composables/client.tspackages/devtools/client/composables/dialog.tspackages/devtools/client/composables/editor.tspackages/devtools/client/composables/npm.tspackages/devtools/client/composables/state-commands.tspackages/devtools/client/composables/state-modules.tspackages/devtools/client/composables/state-tabs.tspackages/devtools/client/composables/state.tspackages/devtools/client/composables/utils.tspackages/devtools/client/data/open-graph.tspackages/devtools/client/pages/index.vuepackages/devtools/client/pages/modules/analyze-build.vuepackages/devtools/client/pages/modules/assets.vuepackages/devtools/client/pages/modules/custom-[name].vuepackages/devtools/client/pages/modules/error.vuepackages/devtools/client/pages/modules/hooks.vuepackages/devtools/client/pages/modules/imports.vuepackages/devtools/client/pages/modules/modules.vuepackages/devtools/client/pages/modules/open-graph.vuepackages/devtools/client/pages/modules/overview.vuepackages/devtools/client/pages/modules/pages.vuepackages/devtools/client/pages/modules/payload.vuepackages/devtools/client/pages/modules/pinia.vuepackages/devtools/client/pages/modules/plugins.vuepackages/devtools/client/pages/modules/render-tree.vuepackages/devtools/client/pages/modules/runtime-configs.vuepackages/devtools/client/pages/modules/server-discovery.vuepackages/devtools/client/pages/modules/server-routes.vuepackages/devtools/client/pages/modules/server-tasks.vuepackages/devtools/client/pages/modules/timeline.vuepackages/devtools/client/pages/modules/virtual-files.vuepackages/devtools/client/pages/settings.vuepackages/devtools/client/plugins/floating-vue.tspackages/devtools/client/plugins/global.tspackages/devtools/client/plugins/vue-devtools.tspackages/devtools/src/runtime/plugins/devtools.client.tspackages/devtools/src/runtime/plugins/view/client.tspackages/devtools/src/server-rpc/general.tspnpm-workspace.yaml
| "name": "@nuxt/devtools-docs", | ||
| "private": true, | ||
| "packageManager": "pnpm@11.1.3", | ||
| "packageManager": "pnpm@11.4.0", |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
Does pnpm version 11.4.0 exist and what are the breaking changes or notable updates in pnpm 11.4.0 compared to 11.1.3?
💡 Result:
Yes, pnpm version 11.4.0 exists and was released on May 27, 2026 [1][2]. Compared to version 11.1.3, pnpm 11.4.0 includes significant security enhancements and feature updates introduced in version 11.4 itself, as well as those accumulated since 11.1.3 (such as updates in 11.2.x and 11.3.x). Key updates and changes in 11.4.0 include: Security Enhancements: - Tarball-integrity mismatches: These are now a hard install failure by default, with a new --update-checksums flag available as a narrowly-scoped opt-in [2]. - Lockfile Integrity: pnpm now rejects lockfile entries that lack integrity metadata at read time [2]. - Credential Scoping: Unscoped credentials no longer leak across registries [2]. - Git Resolutions: The system now rejects non-SHA commit fields for git resolutions [2]. - Patch Files: Patch files attempting to write outside the package directory are now rejected [2]. - Dependency Aliases: Dependency aliases containing path-traversal segments are rejected [2]. Other Notable Updates: - Runtime configuration: The pnpm runtime set command now defaults to writing to devEngines.runtime instead of engines.runtime (use --save-prod or -P to save to engines.runtime) [2]. - Previous versions (11.2.x and 11.3.x): These introduced features such as staged publishing (pnpm stage), native implementations of pnpm pkg, pnpm repo, and pnpm set-script, a --skip-manifest-obfuscation flag for publishing, and a new trustLockfile setting to manage supply-chain verification [3]. For a complete history of changes, you can refer to the official pnpm release notes on GitHub [1][4].
Citations:
- 1: https://github.com/pnpm/pnpm/releases/tag/v11.4.0
- 2: https://pnpm.io/blog/releases/11.4
- 3: https://pnpm.io/blog/releases/11.3
- 4: https://github.com/pnpm/pnpm/releases
pnpm@11.4.0 exists; account for stricter integrity/security changes vs 11.1.3
pnpm@11.4.0 is a real release. Compared to 11.1.3, it introduces breaking/behavior changes that can affect installs and workspace config, including:
- Tarball integrity mismatches hard-fail by default (opt-in:
--update-checksums) - Lockfile entries missing integrity metadata are rejected at read time
- Unscoped credentials no longer leak across registries
- Git resolutions require SHA commit fields
- Patch files that write outside the package directory are rejected
- Dependency aliases containing path-traversal segments are rejected
pnpm runtime setnow defaults todevEngines.runtime(instead ofengines.runtime)
Ensure the workspace lockfile/auth/patches/git resolutions are compatible with these stricter rules.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/package.json` at line 4, Update the package manager declaration and
workspace configs to account for pnpm@11.4.0 stricter rules: ensure the
"packageManager" field (packageManager) is intentional, regenerate or validate
the lockfile and integrity metadata so lockfile entries include integrity
checksums, audit any auth/registry settings so unscoped credentials aren't
leaked, convert git resolutions to include SHA commits, validate patch files and
dependency aliases for directory traversal, and confirm runtime
settings/workspace config (devEngines.runtime vs engines.runtime) are set
appropriately to avoid install/read-time failures under pnpm@11.4.0.
Summary
Bumps every entry in the workspace catalogs to its latest version (8 majors, 38 minors, 23 patches) and
pnpmto 11.4.0. Applies the migrations that those bumps required:@unhead/schemav2 → v3: theMetaFlatInputtype was renamed toMetaFlat; updated the two client files that referenced it.nuxt@4.4.6+satisfies Partial<ServerFunctions>: Nuxt's auto-generatedmodules.d.tsnow declaresunocssas required (O | false) onnuxt/schema.NuxtOptions, whilenuxt.optionsstill resolves to@nuxt/schema.NuxtOptionswhere it's optional. Added an explicitNuxtOptionsreturn-type cast ongetServerConfig()to bridge the two.@vueuse/core@14.3now exportsonKeyDown: renamed the colliding local handler inCommandPalette.vuetohandleKeyDownsonuxt-eslint-auto-explicit-import@0.2doesn't try to auto-import the composable into the template.@antfu/eslint-config@9reordered theperfectionist/sort-importsgroups so external modules now come before#imports/#appaliases — applied viaeslint --fixacross ~50 client files.Created with the help of an agent.