Skip to content

chore(deps): update all non-major dependencies#221

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/all-minor-patch
Open

chore(deps): update all non-major dependencies#221
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/all-minor-patch

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented May 18, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence Type Update
@angular/build ^21.2.11^21.2.14 age confidence devDependencies patch
@angular/cli ^21.2.11^21.2.14 age confidence devDependencies patch
@angular/common (source) ^21.2.12^21.2.16 age confidence dependencies patch
@angular/compiler (source) ^21.2.12^21.2.16 age confidence dependencies patch
@angular/compiler-cli (source) ^21.2.12^21.2.16 age confidence devDependencies patch
@angular/core (source) ^21.2.12^21.2.16 age confidence devDependencies patch
@angular/core (source) ^21.2.12^21.2.16 age confidence dependencies patch
@angular/forms (source) ^21.2.12^21.2.16 age confidence dependencies patch
@angular/platform-browser (source) ^21.2.12^21.2.16 age confidence dependencies patch
@angular/router (source) ^21.2.12^21.2.16 age confidence dependencies patch
@eslint-react/eslint-plugin (source) ^5.7.7^5.8.10 age confidence devDependencies patch
@tanstack/react-query (source) ^5.100.10^5.101.0 age confidence dependencies minor
@tanstack/react-query-devtools (source) ^5.100.10^5.101.0 age confidence dependencies minor
@types/react (source) ^19.2.14^19.2.16 age confidence devDependencies patch
@vitejs/plugin-react (source) ^6.0.1^6.0.2 age confidence devDependencies patch
actions/checkout v6.0.2v6.0.3 age confidence action patch
changesets/action v1.8.0v1.9.0 age confidence action minor
dayjs (source) ^1.11.20^1.11.21 age confidence dependencies patch
eslint (source) ^10.3.0^10.4.1 age confidence devDependencies patch
knip (source) ^6.13.1^6.15.0 age confidence devDependencies patch
nx (source) ^22.7.1^22.7.5 age confidence devDependencies patch
pnpm (source) 11.1.111.5.1 age confidence packageManager minor
pnpm (source) >=11.0.0>=11.5.1 age confidence engines minor
preact (source) ^10.29.1^10.29.2 age confidence devDependencies patch
preact (source) ^10.29.1^10.29.2 age confidence dependencies patch
react (source) ^19.2.6^19.2.7 age confidence devDependencies patch
react (source) ^19.2.6^19.2.7 age confidence dependencies patch
react-dom (source) ^19.2.6^19.2.7 age confidence dependencies patch
solid-js (source) ^1.9.12^1.9.13 age confidence devDependencies patch
solid-js (source) ^1.9.12^1.9.13 age confidence dependencies patch
tinyglobby (source) ^0.2.16^0.2.17 age confidence devDependencies patch
tsdown (source) ^0.22.0^0.22.1 age confidence devDependencies patch
vite (source) ^8.0.12^8.0.16 age confidence devDependencies patch
vitest (source) ^4.1.6^4.1.8 age confidence devDependencies patch
zizmorcore/zizmor-action v0.5.3v0.5.6 age confidence action patch

Release Notes

angular/angular-cli (@​angular/build)

v21.2.14

Compare Source

@​angular/cli
Commit Type Description
aed448748 fix expand package groups for newly added peer dependencies in update schematic
@​angular/build
Commit Type Description
d46c082fb fix prevent esbuild service child process leakage
angular/angular (@​angular/common)

v21.2.16

Compare Source

angular/angular (@​angular/compiler)

v21.2.16

Compare Source

common
Commit Type Description
f6d8e642b0 fix only strip a literal /index.html suffix from URLs
compiler
Commit Type Description
ae1c8a1f7a fix move projection attributes into constants
core
Commit Type Description
3fd6897a67 fix harden inherit definition feature against polluted prototypes
7e38336dc7 fix use Object.create(null) for LOCALE_DATA as a hardening measure
platform-server
Commit Type Description
66821c4ed5 fix throw on suspicious URLs and restrict protocol-relative URLs
d3170031b6 fix update domino to latest version
Rel1cx/eslint-react (@​eslint-react/eslint-plugin)

v5.8.10

Compare Source

🐞 Fixes
  • react-dom/no-unused-class-component-members: Aligned preset details in rule documentation (#​1825).
  • react-dom/no-unsafe-iframe-sandbox, react-x/context-name, react-x/id-name, react-x/ref-name, react-x/no-unnecessary-use-prefix, react-x/no-string-style-prop: Fixed missing or incorrect presets in rule documentation (#​1826).
📝 Documentation
  • naming-convention: Expanded examples and annotated Ok cases for context-name, id-name, and ref-name rules (#​1819).
  • Recipes: Refactored MyComponent examples to Button component in custom rules of props and function component definition recipes (#​1823).
  • Community: Added azat-io eslint-config to the community presets list.
🏗️ Internal
  • jsx: Consolidated whitespace child predicates and added isEmptyStringExpression to the public API (#​1820).
  • Verification: Added preset verification to verify-docs.ts (#​1822).
  • Monorepo: Added AGENTS.md guide for AI coding agents (#​1824).
  • Monorepo: Normalized local package metadata in .pkgs/*.
  • Deps: Bumped vite to ^8.0.15 and ansis to ^4.3.1 across workspace packages.
New Contributors

Full Changelog: Rel1cx/eslint-react@v5.8.9...v5.8.10

v5.8.9

Compare Source

🐞 Fixes
  • react-x/no-direct-mutation-state: Detect nested state mutations and member expressions in assignment expressions (#​1818).
📝 Documentation
  • Updated contributing guide and monorepo structure documentation.
🏗️ Internal
  • Examples: Removed .vscode directories from all examples, added missing engines.node to Preact examples, cleaned up redundant .config/*.ts from tsconfig.node.json, and updated .gitignore.
  • Website: Cleaned up configs and docs.
  • Deps: Patch bumped eslint, tinyglobby, and tsdown across workspace packages; added @fontsource/iosevka-aile to the website; reordered CSS imports in layout.tsx.
  • Updated .sentrux baseline timestamp.

Full Changelog: Rel1cx/eslint-react@v5.8.8...v5.8.9

TanStack/query (@​tanstack/react-query)

v5.101.0

Compare Source

Patch Changes
TanStack/query (@​tanstack/react-query-devtools)

v5.101.0

Compare Source

Patch Changes
actions/checkout (actions/checkout)

v6.0.3

Compare Source

changesets/action (changesets/action)

v1.9.0

Compare Source

Minor Changes
Patch Changes
  • #​535 34f64f6 Thanks @​Andarist! - Fixed an issue with GitHub releases not being created for successfully published packages when some packages failed to be published to the registry.

  • #​632 1d54b9e Thanks @​bluwy! - Simplify internal implementation to get changelog entries for a package version

  • #​629 e0c90aa Thanks @​bluwy! - Fix custom version and publish command argument parsing

  • #​645 f9585d9 Thanks @​Andarist! - Improved force-push handling when using commitMode: "github-api" so updating an existing branch no longer temporarily resets the target branch to the base commit, avoiding cases where GitHub closes open pull requests during the update. This should remove a possibility of a GitHub state race that caused the force-pushed PRs not being reopened.

pnpm/pnpm (pnpm)

v11.5.1

Compare Source

Patch Changes
  • Improve pnpm audit performance by pruning non-vulnerable lockfile subtrees and stopping path enumeration once vulnerable findings reach the path cap.
  • Avoid crashing when the workspace state cache is partially written or malformed.
  • Set npm_config_user_agent for root lifecycle scripts during headless installs.
  • Preserve the integrity field of a remote (non-registry) tarball dependency when its lockfile entry is rebuilt. Re-resolving such a dependency without re-fetching it (for example via pnpm update, or when another dependency changes) produced a resolution with no integrity — URL/tarball resolvers only learn the integrity after the tarball is downloaded — so the previously recorded integrity was dropped, making later installs fail with ERR_PNPM_MISSING_TARBALL_INTEGRITY #​12067.
  • Normalize a string repository field into the { type, url } object form when creating the publish manifest, matching npm's behavior. Some registries (e.g. Gitea/Codeberg) reject a string repository with a 500 Internal Server Error during pnpm publish #​12099.
  • Preserve compatible optional peer versions already present in the lockfile when resolving dependencies.
  • Fixed inconsistent resolution of a peer dependency that is shared through a diamond. When a package peer-depends on both another package and one of that package's own peer dependencies (for example @typescript-eslint/eslint-plugin peer-depends on both @typescript-eslint/parser and typescript, and @typescript-eslint/parser peer-depends on typescript), pnpm no longer reuses a hoisted instance of the shared peer that was resolved against a different version #​12079.

v11.5.0

Compare Source

Minor Changes
  • Added a new hoistingLimits setting for nodeLinker: hoisted installs, mirroring yarn's nmHoistingLimits. It accepts none (the default — hoist as far as possible), workspaces (hoist only as far as each workspace package), or dependencies (hoist only up to each workspace package's direct dependencies). Originally proposed in #​6468, closing #​6457.

  • Replaced enquirer with @inquirer/prompts for all interactive prompts. Fixes the update -i scrolling overflow bug where long choice lists were clipped in the terminal #​6643.

    User-facing changes:

    • pnpm update -i / pnpm update -i --latest: Scrolling now works correctly when many packages are available; the new library uses visual-line-aware pagination via usePagination
    • pnpm audit --fix -i: Same scrolling fix for vulnerability selection
    • pnpm approve-builds: Interactive build approval prompts updated
    • pnpm patch: Version selection and "apply to all" prompts updated
    • pnpm patch-remove: Patch removal selection updated
    • pnpm publish: Branch confirmation prompt updated
    • pnpm login: Credential prompts updated
    • pnpm run / pnpm exec (with verifyDepsBeforeRun=prompt): Confirmation prompt updated

    Vim-style j/k keys still work for up/down navigation in all interactive prompts.

    Internal: The OtpEnquirer and LoginEnquirer DI interfaces changed from { prompt } to { input } / { input, password } respectively. Plugins or custom builds that inject their own enquirer mock will need to update.

  • Staged publishes are now recognized in the trust scale. When a package version's registry metadata carries an approver field, it is treated as the strongest trust evidence (ranked above trusted publishers and provenance attestations), since staged publishes require 2FA publish approvals. This prevents false-positive trust downgrade errors when moving from a staged publish to a lower trust level #​11887.

Patch Changes
  • Fix pnpm hanging during peer resolution when an aliased install pulls in transitive packages with mutual peer cycles at different depths in the dependency tree (for example, pnpm i nuxt@npm:nuxt-nightly@5x). Cycles whose members hit the findHit cache instead of running their own calculateDepPath are now short-circuited by sibling resolutions at the level where the cycle is detected, so the cached path promises no longer deadlock. #​11999.

  • Fix pnpm dist-tag add and pnpm dist-tag rm against npmjs.org failing without --otp with [ERR_PNPM_UNAUTHORIZED] You must be logged in to set dist-tag … "You must provide a one-time pass. Upgrade your client to npm@latest in order to use 2FA.". pnpm now sends npm-auth-type: web on dist-tag writes and surfaces the resulting OTP challenge through the existing browser-based 2FA flow (the same withOtpHandling helper used by pnpm publish), so the browser opens, the user authenticates, and the dist-tag is set on retry. --otp=<code> continues to work via the classic flow.

  • Fix minimumReleaseAgeExclude handling in npm resolution fast paths so excluded packages do not get pinned to stale versions. Excludes are honored consistently during publishedBy metadata selection and cache-mtime shortcuts.

  • Fix the integrity field being dropped from the lockfile entry of a remote (non-registry) https-tarball dependency when an unrelated package is installed afterwards. URL/tarball resolvers do not return an integrity (it is only known after the tarball is downloaded), so when such a dependency was reused from the lockfile without being re-fetched, its integrity was lost. It is now carried over from the existing resolution. With pnpm's lockfile-integrity hardening, the missing integrity made subsequent --frozen-lockfile installs fail with ERR_PNPM_MISSING_TARBALL_INTEGRITY. #​12001.

  • Skip dependency re-resolution when pnpm-lock.yaml is missing but node_modules/.pnpm/lock.yaml exists and still satisfies the manifest. pnpm install now reuses the materialized snapshot to regenerate pnpm-lock.yaml instead of walking the registry to rebuild it from scratch, turning the cache+node_modules variation into a near-no-op for users who deleted the lockfile but kept the install #​11993.

    --frozen-lockfile still refuses to proceed when pnpm-lock.yaml is absent — the regenerated lockfile must be committed, so failing loudly is the correct behavior for CI.

v11.4.0

Compare Source

Minor Changes
  • Treat tarball-integrity mismatches against the lockfile as a hard failure by default. Previously, pnpm install (non-frozen) would log ERR_PNPM_TARBALL_INTEGRITY, silently re-resolve from the registry, and overwrite the locked integrity — which meant a compromised registry, proxy, or republished version could substitute attacker-controlled content on a clean machine even though the project shipped a committed lockfile.

    pnpm install now exits with ERR_PNPM_TARBALL_INTEGRITY and a hint pointing at the new opt-in flag.

    The only opt-in is pnpm install --update-checksums — narrowly scoped to refreshing the locked integrity values from what the registry currently serves. Mirrors yarn's flag of the same name. A warning still prints when the bypass takes effect so the operation is auditable.

    --force and pnpm update deliberately do not bypass the integrity check. They are routine refresh operations; silently overwriting a locked integrity in those flows would erase the protection a committed lockfile is supposed to provide. --frozen-lockfile behavior is unchanged. --fix-lockfile keeps its documented purpose (filling in missing lockfile entries) and is also not a bypass.

  • pnpm runtime set <name> <version> now saves the runtime to devEngines.runtime by default instead of engines.runtime. Pass --save-prod (or -P) to save it to engines.runtime instead #​11948.

Patch Changes
  • Fix a credential disclosure issue where an unscoped _authToken (or _auth, or username + _password, or tokenHelper) defined in one source — ~/.npmrc, ~/.config/pnpm/auth.ini, a workspace .npmrc, CLI flags, etc. — would be sent as an Authorization header to whichever registry a different (potentially untrusted) source named. The same fix extends to client TLS credentials (cert, key) so they aren't presented to a registry their author didn't choose.

    pnpm now rewrites each unscoped per-registry setting (_authToken, _auth, username, _password, tokenHelper, cert, key) to its URL-scoped form at load time, using the registry= value declared in the same source (or the npmjs default registry if the source declares none). A later layer overriding registry= therefore cannot pull an unscoped credential along, because it is already pinned to the URL its author intended. ca/cafile are intentionally not rescoped — they're trust anchors, not credentials, and corporate MITM-proxy setups rely on them applying globally.

    Every rescope emits a deprecation warning telling the user where the setting was pinned and how to write it directly. npm has rejected unscoped credentials outright since npm@9, and pnpm intends to remove support in a future major release. To target a specific registry, write the setting URL-scoped (e.g. //registry.example.com/:_authToken=... or //registry.example.com/:cert=...).

    @pnpm/network.auth-header: removed the defaultRegistry parameter from createGetAuthHeaderByURI and getAuthHeadersFromCreds. Now that credentials are URL-scoped at load time, the merged configByUri never contains the empty-string "default registry" placeholder slot, so re-keying it onto the merged default registry is no longer needed.

  • Fix pnpm deploy crashing with ENOENT: ... lstat '<deployDir>/node_modules' when configDependencies declares pacquet (pacquet or @pnpm/pacquet). The deploy directory never installs config dependencies, so the install engine they designate isn't on disk to invoke; the nested install now skips them.

  • Reject git resolutions whose commit field is not a 40-character hexadecimal SHA before invoking git. A malicious lockfile could otherwise smuggle a value such as --upload-pack=<command> through git fetch / git checkout, which on SSH or local-file transports executes the supplied command.

  • Limit concurrent project manifest reads while listing large workspaces to avoid EMFILE errors.

  • Reject patch files whose diff --git headers reference paths outside the patched package directory. Previously a malicious .patch file added via a pull request could write, delete, or rename arbitrary files reachable by the user running pnpm install.

  • Improve the log message that pnpm prints after auto-adding entries to minimumReleaseAgeExclude when minimumReleaseAge is set without minimumReleaseAgeStrict. The message previously referred to the internal "loose mode" terminology, which wasn't searchable in the docs; it now tells the user to set minimumReleaseAgeStrict to true if they want these updates gated behind a prompt instead #​11747.

  • Reject dependency aliases that contain path-traversal segments (such as @x/../../../../../.git/hooks) when reading them from a package manifest or symlinking them into node_modules. A malicious registry package could otherwise use a transitive dependency key to make pnpm install create symlinks at attacker-chosen paths outside the intended node_modules directory.

  • Reject pnpm-lock.yaml entries whose remote tarball resolution: block is missing the integrity field. Previously the worker that extracts a downloaded tarball skipped hash verification when no integrity was supplied and minted a fresh one from the unverified bytes, so an attacker who could both alter the lockfile (e.g. via a pull request that strips integrity:) and serve modified content at the referenced tarball URL could install a tampered package without any error — including under --frozen-lockfile. pnpm now fails closed at lockfile-read time with ERR_PNPM_MISSING_TARBALL_INTEGRITY. Git-hosted tarballs (gitHosted: true or a URL on codeload.github.com / bitbucket.org / gitlab.com) and file: tarballs are exempt — the commit SHA in a git-host URL and the user-controlled local path already anchor the bytes.

  • Validate devEngines.runtime and engines.runtime version ranges for node, deno, and bun when onFail is set to error or warn. Previously these settings only had an effect with onFail: 'download' — the error and warn modes silently did nothing #​11818. Violations now throw ERR_PNPM_BAD_RUNTIME_VERSION.

  • Require provenance before treating trusted publisher metadata as the strongest trust evidence.

v11.3.0

Compare Source

Minor Changes
  • Added pnpm stage with publish, list, view, approve, reject, and download subcommands for npm staged publishing.

  • Added a new setting trustLockfile. When true, pnpm install skips the supply-chain verification pass that re-applies minimumReleaseAge / trustPolicy='no-downgrade' to every entry in the loaded lockfile. The install treats the lockfile as already-trusted — useful for closed-source projects where every commit comes from a trusted author. Defaults to false; verification stays on by default. Set in pnpm-workspace.yaml.

    Also cut the memory footprint of the verification pass itself: the per-(registry, name) trust-meta cache previously retained the full packument — dependency graphs, scripts, README, and per-version manifests — for the entire install. On large workspaces (~4k lockfile entries with minimumReleaseAge + trustPolicy: no-downgrade enabled) this could OOM CI runners with a 2GB heap cap. The cache now stores only the fields the trust check actually reads (time, per-version _npmUser.trustedPublisher, dist.attestations.provenance). The abbreviated-metadata cache is similarly projected to just the package-level modified field and the set of currently-listed version names. Fixes #​11860.

  • Implemented pnpm pkg command natively, following npm pkg standards.

  • Implemented pnpm repo command natively, following npm repo standards.

  • Implemented pnpm set-script (alias ss) natively. Adds or updates an entry in the scripts field of the project manifest, supporting package.json, package.json5, and package.yaml formats.

  • Add a skip-manifest-obfuscation option for pnpm pack and pnpm publish. When enabled, the original packageManager field and publish lifecycle scripts are kept in the packed/published manifest instead of being stripped. The pnpm-specific pnpm field continues to be omitted.

Patch Changes
  • Fixed pnpm dlx failing with ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND when the installed package's CAS slot is missing its package.json. Observed in the wild for pnpm dlx node@runtime:<version> when the GVS slot was populated without the synthesized manifest runtime archives need (they don't ship a package.json of their own, so the synthesized one is the only way it gets there; an existing slot from an earlier code path that skipped the synthesis stays incomplete). The bin link itself is wired up from the resolution and remains valid, so dlx now falls back to the scopeless package name when the slot's manifest is unreadable — for single-bin packages (the dlx common case, including every runtime: spec) this matches what manifest.bin would have named. Multi-bin packages already require --package=<spec> <bin> to disambiguate and don't enter this code path.
  • Fixed non-determinism in pnpm dedupe and pnpm install when a dependency graph contains packages with transitive peer dependencies on each other (e.g. @aws-sdk/client-sts and @aws-sdk/client-sso-oidc) and auto-install-peers is enabled. The lockfile no longer flips between two equally-valid forms across consecutive runs. The root cause was that resolveDependencies pushed onto its pkgAddresses / postponedResolutionsQueue arrays from inside Promise.all-spawned callbacks, so completion-order timing leaked into the array order and downstream cyclic-peer suffix assignment. Fixes #​8155.
  • Fixed a regression introduced by #​11711 where pnpm add <github-shorthand> (and any other wanted-dependency whose alias can't be parsed from the user-supplied spec, e.g. tarball URLs or pnpm/test-git-fetch#sha) was silently dropped from the manifest update and from pendingBuilds. The alias-keyed lookup added in that PR couldn't find a wantedDependency whose alias was undefined at parse time but resolved to a package name only after fetching, so the entry never made it into specsToUpsert. Restored the original index-based pairing between directDependencies and wantedDependencies; the catalog-protocol preservation that PR was originally fixing is unaffected because it's driven by rdd.catalogLookup.userSpecifiedBareSpecifier, not by the lookup. Fixes the three rebuilds dependencies / rebuilds specific dependencies / rebuild with pending option failures in building/commands/test/build/index.ts.
  • Fixed pnpm add --config leaving orphan entries in pnpm-lock.env.yaml (the optional subdependencies of the previously resolved version of the updated config dependency).

v11.2.2

Compare Source

Patch Changes
  • When the install engine is delegated to pacquet via configDependencies, the user's CLI flags passed to pnpm install (e.g. --no-runtime, --prod, --dev, --no-optional, --node-linker, --cpu/--os/--libc, --offline, --prefer-offline) are now forwarded to pacquet's install subcommand verbatim. Previously pacquet was invoked with a fixed argument list, so flags like --no-runtime were silently dropped. Flag forwarding is gated on the command being install/i; add, update, and dedupe still don't forward (their flag surface doesn't line up with pacquet's install).
  • Fixed pnpm up (and pnpm add / pnpm remove) failing with pacquet_package_manager::outdated_lockfile when pacquet is declared in configDependencies. pnpm now passes --ignore-manifest-check to pacquet so its --frozen-lockfile check doesn't fire against the (pre-mutation) package.json pnpm hasn't written yet #​11797. Requires a pacquet release that supports the flag — bump PACQUET_VERSION in the e2e tests once it ships.

v11.2.1

Compare Source

Patch Changes
  • Mark optional subdependency snapshots of config dependencies with optional: true in the env lockfile, matching how optional dependencies are recorded elsewhere in pnpm-lock.yaml. Previously, snapshots for the platform-specific subdeps pulled in via a config dep's optionalDependencies were written as empty objects, which was inconsistent with the rest of the lockfile and made it look like those non-host platform variants were required.
  • Fix pickRegistryForPackage returning the wrong registry for an unscoped npm: alias under a scoped local name. A manifest entry like "@&#8203;private/foo": "npm:lodash@^1" was routing the lodash fetch through registries["@&#8203;private"], even though lodash is unscoped and doesn't live on that registry. The npm-alias branch now returns the alias target's own scope (or null for an unscoped target, falling through to registries.default) instead of leaking into the local key's scope.
  • Don't print "Installing config dependencies..." when config dependencies are already installed and nothing needs to be fetched, re-linked, or removed.

v11.2.0

Compare Source

Minor Changes
  • Experimental: Adding @pnpm/pacquet (the Rust port of pnpm) to configDependencies in pnpm-workspace.yaml now delegates the materialization phase of pnpm install to the pacquet binary. pnpm still owns dependency resolution; pacquet only fetches and imports from the freshly-written lockfile. This is an opt-in preview of the Rust install engine #​11723.

    To configure pacquet in a project, run:

    pnpm add @&#8203;pnpm/pacquet --config
    

    You'll see changes in pnpm-workspace.yaml and pnpm-lock.yaml that should be committed. If you experience any issues with pacquet, please let us know by mentioning this in the GitHub issue you create.

  • configDependencies now resolve and install one level of optionalDependencies declared by the config dependency, with os/cpu/libc platform filtering applied at install time. This unlocks the esbuild/swc-style pattern where a package ships platform-specific binaries via optionalDependencies — a config dependency can now do the same and have the matching binary symlinked next to it in the global virtual store, so require('pkg-platform-arch') from inside the config dependency resolves correctly.

    The env lockfile records all platform variants regardless of host platform, so it remains portable across machines. Each entry in a config dependency's optionalDependencies must declare an exact version — ranges and tags are rejected to keep installs reproducible.

  • Implement the documented pnpm login --scope <scope> flag. The scope is normalized (a leading @ is added if missing; blank values are ignored) and an @<scope>:registry=<registry> mapping is written to the pnpm auth file alongside the auth token. Subsequent installs of @<scope>/* packages then route to the chosen registry. Previously pnpm login --scope foo errored with Unknown option: 'scope' despite the flag being listed in the online documentation #​11716.

  • pnpm outdated and pnpm update --interactive now report Node.js, Deno, and Bun runtimes installed as project dependencies (runtime: specifiers). Previously these were silently skipped.

Patch Changes
  • Fix cafile=<relative-path> in .npmrc being read from the wrong directory when pnpm is invoked from a different cwd (e.g. pnpm --dir <project> install from a CI wrapper or monorepo script). The path is now resolved against the directory of the .npmrc that declared it, not process.cwd(). Before this fix the CA file silently failed to load — the install proceeded without the configured CA and the user only saw TLS errors against a private registry, with no log line tying back to the wrongly resolved path #​11624.

  • Fix config.registry getting a trailing slash appended when registry is set in .npmrc and no registries.default is provided by pnpm-workspace.yaml. The sync from registries.default to config.registry introduced in #​11744 now only fires when the workspace manifest actually contributes a different default.

  • Fix global add/update to handle minimumReleaseAge policy violations instead of surfacing an internal resolver guardrail error.

  • Fix two crashes with injectWorkspacePackages: true when the lockfile has been pruned (e.g. by turbo prune --docker):

    • Cannot use 'in' operator to search for 'directory' in undefined: a peer-dependency-variant injected snapshot inherits its resolution from the base packages: entry; when a pruner drops that base entry the readers crash. convertToLockfileObject now reconstructs the directory resolution from the file: depPath at load time — a single normalization point, so every reader sees a fully-formed snapshot.
    • ERR_PNPM_ENOENT on node_modules/.bin/<tool>: after prepare/postinstall, runLifecycleHooksConcurrently re-imported each injected workspace package; the scanDir-into-filesMap workaround fed target-internal paths to the importer, which the makeEmptyDir fast path (#​11088) then wiped. Drop the workaround and pass keepModulesDir: true so the importer preserves the target's existing node_modules (bin links + transitive deps) and source files keep their hardlinks.
  • Fixed pnpm login and pnpm logout ignoring registries.default from pnpm-workspace.yaml #​10099.

  • Fix the minimumReleaseAge (publishedBy) maturity shortcut to be inclusive at the cutoff. Previously, abbreviated metadata whose modified field equalled the cutoff fell off the fast path and triggered a full-metadata re-fetch (or a MISSING_TIME error when full metadata wasn't permitted). Since modified is an upper bound on every version's publish time, modified == publishedBy already implies every version passes the per-version <= filter in filterPkgMetadataByPublishDate, so the shortcut now accepts the boundary case directly. Strictly > (was >=) at the rejection branch.

  • Honor publishConfig.access when publishing packages.

v11.1.3

Compare Source

Patch Changes
  • pnpm install now re-validates pnpm-lock.yaml entries against the active minimumReleaseAge and trustPolicy: 'no-downgrade' policies before any tarball is fetched. Lockfiles resolved elsewhere (committed to the repo, restored from a CI cache, produced by an older pnpm) under a weaker or absent policy can no longer install a freshly-published or trust-downgraded version silently. Violating entries abort the install with ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION, ERR_PNPM_TRUST_DOWNGRADE, or the generic ERR_PNPM_LOCKFILE_RESOLUTION_VERIFICATION when both policies trip in the same batch; minimumReleaseAgeExclude and trustPolicyExclude are honored. Verification results are cached so repeat installs against an unchanged lockfile take a fast path, and pnpm shows a transient progress line while the registry round-trip runs.

    When fresh resolution picks an immature version, the behavior depends on minimumReleaseAgeStrict:

    • Loose mode — the default, in effect whenever minimumReleaseAge keeps its built-in 24-hour value — auto-adds the immature picks to minimumReleaseAgeExclude in pnpm-workspace.yaml and lets the install proceed. A single info message lists what was persisted.
    • Strict mode in an interactive terminal collects every immature direct AND transitive pick in one pass and prompts once with the full list. Approving adds them to minimumReleaseAgeExclude and the install continues; declining aborts before the lockfile, package.json, or node_modules is touched.
    • Strict mode in CI (or any non-TTY context) aborts with ERR_PNPM_NO_MATURE_MATCHING_VERSION listing every offending entry, instead of failing on the first one the resolver hit.

    minimumReleaseAgeStrict auto-enables whenever the user explicitly sets minimumReleaseAge (CLI flag, env var, global config.yaml, or pnpm-workspace.yaml); set minimumReleaseAgeStrict: false to keep loose-mode auto-collect even with an explicit minimumReleaseAge value. Closes #​10438, #​10488, [#​11687](https://redirect.gith

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, only on Monday (* 0-3 * * 1)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, 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 requested a review from a team as a code owner May 18, 2026 00:39
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 18, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Pinned zizmor action (v0.5.3 → v0.5.6) and applied coordinated patch/minor dependency bumps across root, packages, and example manifests (Angular, React, Preact, Solid, Vanilla).

Changes

Monorepo dependency and workflow updates

Layer / File(s) Summary
CI: Pin zizmor action revision
.github/workflows/zizmor.yml
Updates the zizmor action commit hash used in the workflow (v0.5.3 → v0.5.6).
Root and internal packages tooling bumps
package.json, packages/*/package.json
Bumps packageManager and dev tooling (eslint, knip, nx, vitest) and updates internal package runtime/dev deps (Angular core, Solid, Preact, React tooling entries).
Examples: Angular manifests aligned
examples/angular/*/package.json
Updates packageManager to pnpm@11.1.3 and bumps @angular/* runtime and @angular/compiler-cli to ^21.2.13 across Angular examples (also bumps vitest).
Examples: React Vite/tooling bumps
examples/react/*/package.json
Bumps @vitejs/plugin-react, @types/react, and vite patch versions across React examples; updates selected @tanstack/react-query entries.
Examples: Preact + Vite bumps
examples/preact/*/package.json
Bumps preact to ^10.29.2 and vite to ^8.0.13 across Preact examples.
Examples: Solid + Vite bumps
examples/solid/*/package.json
Bumps solid-js to ^1.9.13 and vite to ^8.0.13 across Solid examples.
Examples: Vanilla Vite bumps
examples/vanilla/*/package.json
Bumps vite devDependency to ^8.0.13 across Vanilla examples.

Estimated code review effort
🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related issues

Possibly related PRs

Poem

I nibble versions, hop and prune,
pnpm polished by the moon.
Vite and friends, all patched just right,
Angular, Solid, Preact bright.
Workflow pinned — a tidy night. 🐇✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning PR description is truncated and largely auto-generated by Renovate bot without the required sections from the template. Complete the PR description with the required sections: '🎯 Changes' section explaining the motivation and impact, and '✅ Checklist' with checkboxes for contribution guide and testing verification.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: updating all non-major dependencies across the project.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch renovate/all-minor-patch

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
examples/angular/injectAsyncThrottledCallback/package.json (1)

1-1: ⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Critical: Lockfile out of sync with package.json changes.

The pipeline failure indicates pnpm-lock.yaml is not up to date after the dependency updates across the monorepo. The lockfile needs to be regenerated to reflect the new versions of eslint (^10.4.0), knip (^6.14.1), and nx (^22.7.2) in the root package.json.

Run the following to regenerate the lockfile:

pnpm install

Then commit the updated pnpm-lock.yaml.

🤖 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 `@examples/angular/injectAsyncThrottledCallback/package.json` at line 1, The
repo's pnpm-lock.yaml is out of sync with package.json changes (root deps
updated to eslint ^10.4.0, knip ^6.14.1, nx ^22.7.2); regenerate the lockfile by
running pnpm install at repo root, verify pnpm-lock.yaml updates, then commit
the updated pnpm-lock.yaml alongside the modified package.json so the lockfile
matches the new dependency versions.
examples/solid/createDebouncer/package.json (1)

1-1: ⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Regenerate pnpm-lock.yaml to fix the pipeline failure.

The CI failure indicates pnpm-lock.yaml is out of sync with root package.json due to mismatched specifiers for eslint, knip, and nx. Run pnpm install at the repository root to update the lockfile.

🤖 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 `@examples/solid/createDebouncer/package.json` at line 1, Regenerate the
repository lockfile so specifiers for eslint, knip, and nx match the root
package.json: run pnpm install from the repository root to update pnpm-lock.yaml
(ensuring the lockfile reflects the root package.json changes), then commit the
updated pnpm-lock.yaml so CI no longer fails due to mismatched specifiers for
eslint/knip/nx.
🤖 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 `@examples/angular/asyncBatch/package.json`:
- Around line 23-38: The package.json was updated (packageManager/pnpm and
dependency version bumps) but the pnpm-lock.yaml was not regenerated and
committed, causing CI to fail with ERR_PNPM_OUTDATED_LOCKFILE; run pnpm install
to regenerate pnpm-lock.yaml (or pnpm install --lockfile-only) using the updated
package.json, add and commit the new pnpm-lock.yaml alongside the package.json
changes, and push so CI can run pnpm install --frozen-lockfile successfully.

In `@examples/angular/injectQueuedSignal/package.json`:
- Line 23: The repo’s pnpm lockfile is out of sync with updated dependency specs
(packageManager/pnpm version and several root/example deps), causing
ERR_PNPM_OUTDATED_LOCKFILE; regenerate pnpm-lock.yaml and commit it. Run pnpm
install using the declared pnpm version (pnpm@11.1.2) to produce an updated
pnpm-lock.yaml, verify root deps (eslint, knip, nx) and example Angular deps
match package.json entries, and commit the updated pnpm-lock.yaml so
frozen-lockfile CI will pass.

In `@examples/react/rateLimit/package.json`:
- Around line 19-20: The CI failure is caused by an out-of-sync pnpm lockfile
after dependency changes (e.g. "`@vitejs/plugin-react`" and "vite") in
package.json; run `pnpm install` in this workspace to regenerate pnpm-lock.yaml,
verify the lockfile changes, and commit the updated pnpm-lock.yaml alongside
your package.json change so the pipeline picks up the consistent dependencies.

In `@examples/react/useBatcher/package.json`:
- Around line 19-20: The package manifest was bumped (e.g., dependency entries
like "`@vitejs/plugin-react`" and "vite" in package.json) but pnpm-lock.yaml was
not regenerated, causing CI to fail with ERR_PNPM_OUTDATED_LOCKFILE; run pnpm
install (or pnpm install --lockfile-only) at the repo root to regenerate
pnpm-lock.yaml so it matches the updated manifests, verify the lockfile
addresses specifier drift for packages such as eslint/knip/nx, and commit the
updated pnpm-lock.yaml alongside the manifest changes.

In `@examples/react/useQueuerWithPersister/package.json`:
- Around line 20-21: The package.json bump for "`@vitejs/plugin-react`" and "vite"
requires updating the pnpm lockfile so CI won't fail; regenerate and commit an
updated pnpm-lock.yaml by running pnpm install (or pnpm install --lockfile-only
/ pnpm up) in the repo root to sync the lockfile with the new dependency
versions, verify the lockfile changes are staged/committed, and re-run CI to
confirm the ERR_PNPM_OUTDATED_LOCKFILE error is resolved.

In `@package.json`:
- Around line 61-66: The lockfile is out of sync with the bumped dependency
versions (eslint, knip, nx) causing --frozen-lockfile to fail; regenerate
pnpm-lock.yaml by running pnpm install (or pnpm install --lockfile-only) so the
lockfile matches the new specifiers, verify the updated pnpm-lock.yaml reflects
the updated packages (eslint, knip, nx), and commit the changed pnpm-lock.yaml
to the repo so CI can install deterministically.

---

Outside diff comments:
In `@examples/angular/injectAsyncThrottledCallback/package.json`:
- Line 1: The repo's pnpm-lock.yaml is out of sync with package.json changes
(root deps updated to eslint ^10.4.0, knip ^6.14.1, nx ^22.7.2); regenerate the
lockfile by running pnpm install at repo root, verify pnpm-lock.yaml updates,
then commit the updated pnpm-lock.yaml alongside the modified package.json so
the lockfile matches the new dependency versions.

In `@examples/solid/createDebouncer/package.json`:
- Line 1: Regenerate the repository lockfile so specifiers for eslint, knip, and
nx match the root package.json: run pnpm install from the repository root to
update pnpm-lock.yaml (ensuring the lockfile reflects the root package.json
changes), then commit the updated pnpm-lock.yaml so CI no longer fails due to
mismatched specifiers for eslint/knip/nx.
🪄 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: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2024b0f6-f342-4cd9-917f-27fc3cb3b02e

📥 Commits

Reviewing files that changed from the base of the PR and between a894009 and 5124183.

📒 Files selected for processing (167)
  • .github/workflows/zizmor.yml
  • examples/angular/asyncBatch/package.json
  • examples/angular/asyncDebounce/package.json
  • examples/angular/asyncRateLimit/package.json
  • examples/angular/asyncRetry/package.json
  • examples/angular/asyncThrottle/package.json
  • examples/angular/batch/package.json
  • examples/angular/debounce/package.json
  • examples/angular/injectAsyncBatchedCallback/package.json
  • examples/angular/injectAsyncBatcher/package.json
  • examples/angular/injectAsyncDebouncedCallback/package.json
  • examples/angular/injectAsyncDebouncer/package.json
  • examples/angular/injectAsyncQueuedSignal/package.json
  • examples/angular/injectAsyncQueuer/package.json
  • examples/angular/injectAsyncRateLimiter/package.json
  • examples/angular/injectAsyncRateLimiterWithPersister/package.json
  • examples/angular/injectAsyncThrottledCallback/package.json
  • examples/angular/injectAsyncThrottler/package.json
  • examples/angular/injectBatchedCallback/package.json
  • examples/angular/injectBatcher/package.json
  • examples/angular/injectDebouncedCallback/package.json
  • examples/angular/injectDebouncedSignal/package.json
  • examples/angular/injectDebouncedValue/package.json
  • examples/angular/injectDebouncer/package.json
  • examples/angular/injectQueuedSignal/package.json
  • examples/angular/injectQueuedValue/package.json
  • examples/angular/injectQueuer/package.json
  • examples/angular/injectQueuerWithPersister/package.json
  • examples/angular/injectRateLimitedCallback/package.json
  • examples/angular/injectRateLimitedSignal/package.json
  • examples/angular/injectRateLimitedValue/package.json
  • examples/angular/injectRateLimiter/package.json
  • examples/angular/injectRateLimiterWithPersister/package.json
  • examples/angular/injectThrottledCallback/package.json
  • examples/angular/injectThrottledSignal/package.json
  • examples/angular/injectThrottledValue/package.json
  • examples/angular/injectThrottler/package.json
  • examples/angular/queue/package.json
  • examples/angular/rateLimit/package.json
  • examples/angular/throttle/package.json
  • examples/preact/asyncBatch/package.json
  • examples/preact/asyncDebounce/package.json
  • examples/preact/asyncRateLimit/package.json
  • examples/preact/asyncRetry/package.json
  • examples/preact/asyncThrottle/package.json
  • examples/preact/batch/package.json
  • examples/preact/debounce/package.json
  • examples/preact/queue/package.json
  • examples/preact/rateLimit/package.json
  • examples/preact/throttle/package.json
  • examples/preact/useAsyncBatchedCallback/package.json
  • examples/preact/useAsyncBatcher/package.json
  • examples/preact/useAsyncDebouncedCallback/package.json
  • examples/preact/useAsyncDebouncer/package.json
  • examples/preact/useAsyncQueuedState/package.json
  • examples/preact/useAsyncQueuer/package.json
  • examples/preact/useAsyncRateLimiter/package.json
  • examples/preact/useAsyncRateLimiterWithPersister/package.json
  • examples/preact/useAsyncThrottledCallback/package.json
  • examples/preact/useAsyncThrottler/package.json
  • examples/preact/useBatchedCallback/package.json
  • examples/preact/useBatcher/package.json
  • examples/preact/useDebouncedCallback/package.json
  • examples/preact/useDebouncedState/package.json
  • examples/preact/useDebouncedValue/package.json
  • examples/preact/useDebouncer/package.json
  • examples/preact/useQueuedState/package.json
  • examples/preact/useQueuedValue/package.json
  • examples/preact/useQueuer/package.json
  • examples/preact/useQueuerWithPersister/package.json
  • examples/preact/useRateLimitedCallback/package.json
  • examples/preact/useRateLimitedState/package.json
  • examples/preact/useRateLimitedValue/package.json
  • examples/preact/useRateLimiter/package.json
  • examples/preact/useRateLimiterWithPersister/package.json
  • examples/preact/useThrottledCallback/package.json
  • examples/preact/useThrottledState/package.json
  • examples/preact/useThrottledValue/package.json
  • examples/preact/useThrottler/package.json
  • examples/preact/util-comparison/package.json
  • examples/react/asyncBatch/package.json
  • examples/react/asyncDebounce/package.json
  • examples/react/asyncRateLimit/package.json
  • examples/react/asyncRetry/package.json
  • examples/react/asyncThrottle/package.json
  • examples/react/batch/package.json
  • examples/react/debounce/package.json
  • examples/react/queue/package.json
  • examples/react/rateLimit/package.json
  • examples/react/react-query-debounced-prefetch/package.json
  • examples/react/react-query-queued-prefetch/package.json
  • examples/react/react-query-throttled-prefetch/package.json
  • examples/react/throttle/package.json
  • examples/react/useAsyncBatchedCallback/package.json
  • examples/react/useAsyncBatcher/package.json
  • examples/react/useAsyncDebouncedCallback/package.json
  • examples/react/useAsyncDebouncer/package.json
  • examples/react/useAsyncQueuedState/package.json
  • examples/react/useAsyncQueuer/package.json
  • examples/react/useAsyncRateLimiter/package.json
  • examples/react/useAsyncRateLimiterWithPersister/package.json
  • examples/react/useAsyncThrottledCallback/package.json
  • examples/react/useAsyncThrottler/package.json
  • examples/react/useBatchedCallback/package.json
  • examples/react/useBatcher/package.json
  • examples/react/useDebouncedCallback/package.json
  • examples/react/useDebouncedState/package.json
  • examples/react/useDebouncedValue/package.json
  • examples/react/useDebouncer/package.json
  • examples/react/useQueuedState/package.json
  • examples/react/useQueuedValue/package.json
  • examples/react/useQueuer/package.json
  • examples/react/useQueuerWithPersister/package.json
  • examples/react/useRateLimitedCallback/package.json
  • examples/react/useRateLimitedState/package.json
  • examples/react/useRateLimitedValue/package.json
  • examples/react/useRateLimiter/package.json
  • examples/react/useRateLimiterWithPersister/package.json
  • examples/react/useThrottledCallback/package.json
  • examples/react/useThrottledState/package.json
  • examples/react/useThrottledValue/package.json
  • examples/react/useThrottler/package.json
  • examples/react/util-comparison/package.json
  • examples/solid/asyncBatch/package.json
  • examples/solid/asyncDebounce/package.json
  • examples/solid/asyncRateLimit/package.json
  • examples/solid/asyncThrottle/package.json
  • examples/solid/batch/package.json
  • examples/solid/createAsyncBatcher/package.json
  • examples/solid/createAsyncDebouncer/package.json
  • examples/solid/createAsyncQueuer/package.json
  • examples/solid/createAsyncRateLimiter/package.json
  • examples/solid/createAsyncThrottler/package.json
  • examples/solid/createBatcher/package.json
  • examples/solid/createDebouncedSignal/package.json
  • examples/solid/createDebouncedValue/package.json
  • examples/solid/createDebouncer/package.json
  • examples/solid/createQueuedSignal/package.json
  • examples/solid/createQueuer/package.json
  • examples/solid/createRateLimitedSignal/package.json
  • examples/solid/createRateLimitedValue/package.json
  • examples/solid/createRateLimiter/package.json
  • examples/solid/createThrottledSignal/package.json
  • examples/solid/createThrottledValue/package.json
  • examples/solid/createThrottler/package.json
  • examples/solid/debounce/package.json
  • examples/solid/queue/package.json
  • examples/solid/rateLimit/package.json
  • examples/solid/throttle/package.json
  • examples/vanilla/LiteBatcher/package.json
  • examples/vanilla/LiteDebouncer/package.json
  • examples/vanilla/LiteQueuer/package.json
  • examples/vanilla/LiteRateLimiter/package.json
  • examples/vanilla/LiteThrottler/package.json
  • examples/vanilla/liteBatch/package.json
  • examples/vanilla/liteDebounce/package.json
  • examples/vanilla/liteQueue/package.json
  • examples/vanilla/liteRateLimit/package.json
  • examples/vanilla/liteThrottle/package.json
  • package.json
  • packages/angular-pacer/package.json
  • packages/pacer-devtools/package.json
  • packages/preact-pacer-devtools/package.json
  • packages/preact-pacer/package.json
  • packages/react-pacer-devtools/package.json
  • packages/react-pacer/package.json
  • packages/solid-pacer/package.json

Comment thread examples/angular/asyncBatch/package.json Outdated
Comment thread examples/angular/injectQueuedSignal/package.json Outdated
Comment thread examples/react/rateLimit/package.json Outdated
Comment thread examples/react/useBatcher/package.json Outdated
Comment thread examples/react/useQueuerWithPersister/package.json Outdated
Comment thread package.json Outdated
@renovate renovate Bot force-pushed the renovate/all-minor-patch branch from 5124183 to 2d4efc4 Compare May 18, 2026 22:15
@socket-security
Copy link
Copy Markdown

socket-security Bot commented May 18, 2026

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn Medium
Low adoption: npm eslint-plugin-react-jsx

Location: Package overview

From: pnpm-lock.yamlnpm/@eslint-react/eslint-plugin@5.8.10npm/eslint-plugin-react-jsx@5.8.10

ℹ Read more on: This package | This alert | What are unpopular packages?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Unpopular packages may have less maintenance and contain other problems.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/eslint-plugin-react-jsx@5.8.10. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 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 `@examples/angular/asyncBatch/package.json`:
- Around line 25-30: Update the Angular build and CLI package versions to match
the runtime packages: change the `@angular/build` and `@angular/cli` entries to use
^21.2.13 so they align with `@angular/core`, `@angular/common`, `@angular/compiler`,
`@angular/forms`, `@angular/platform-browser`, and `@angular/router`; locate and edit
the `@angular/build` and `@angular/cli` entries in package.json to ensure all
Angular packages are on the same 21.2.13 patch level.
🪄 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: defaults

Review profile: CHILL

Plan: Pro

Run ID: 8ac82c91-3225-4eb0-8072-b2a8db3ee3bb

📥 Commits

Reviewing files that changed from the base of the PR and between 5124183 and 2d4efc4.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (167)
  • .github/workflows/zizmor.yml
  • examples/angular/asyncBatch/package.json
  • examples/angular/asyncDebounce/package.json
  • examples/angular/asyncRateLimit/package.json
  • examples/angular/asyncRetry/package.json
  • examples/angular/asyncThrottle/package.json
  • examples/angular/batch/package.json
  • examples/angular/debounce/package.json
  • examples/angular/injectAsyncBatchedCallback/package.json
  • examples/angular/injectAsyncBatcher/package.json
  • examples/angular/injectAsyncDebouncedCallback/package.json
  • examples/angular/injectAsyncDebouncer/package.json
  • examples/angular/injectAsyncQueuedSignal/package.json
  • examples/angular/injectAsyncQueuer/package.json
  • examples/angular/injectAsyncRateLimiter/package.json
  • examples/angular/injectAsyncRateLimiterWithPersister/package.json
  • examples/angular/injectAsyncThrottledCallback/package.json
  • examples/angular/injectAsyncThrottler/package.json
  • examples/angular/injectBatchedCallback/package.json
  • examples/angular/injectBatcher/package.json
  • examples/angular/injectDebouncedCallback/package.json
  • examples/angular/injectDebouncedSignal/package.json
  • examples/angular/injectDebouncedValue/package.json
  • examples/angular/injectDebouncer/package.json
  • examples/angular/injectQueuedSignal/package.json
  • examples/angular/injectQueuedValue/package.json
  • examples/angular/injectQueuer/package.json
  • examples/angular/injectQueuerWithPersister/package.json
  • examples/angular/injectRateLimitedCallback/package.json
  • examples/angular/injectRateLimitedSignal/package.json
  • examples/angular/injectRateLimitedValue/package.json
  • examples/angular/injectRateLimiter/package.json
  • examples/angular/injectRateLimiterWithPersister/package.json
  • examples/angular/injectThrottledCallback/package.json
  • examples/angular/injectThrottledSignal/package.json
  • examples/angular/injectThrottledValue/package.json
  • examples/angular/injectThrottler/package.json
  • examples/angular/queue/package.json
  • examples/angular/rateLimit/package.json
  • examples/angular/throttle/package.json
  • examples/preact/asyncBatch/package.json
  • examples/preact/asyncDebounce/package.json
  • examples/preact/asyncRateLimit/package.json
  • examples/preact/asyncRetry/package.json
  • examples/preact/asyncThrottle/package.json
  • examples/preact/batch/package.json
  • examples/preact/debounce/package.json
  • examples/preact/queue/package.json
  • examples/preact/rateLimit/package.json
  • examples/preact/throttle/package.json
  • examples/preact/useAsyncBatchedCallback/package.json
  • examples/preact/useAsyncBatcher/package.json
  • examples/preact/useAsyncDebouncedCallback/package.json
  • examples/preact/useAsyncDebouncer/package.json
  • examples/preact/useAsyncQueuedState/package.json
  • examples/preact/useAsyncQueuer/package.json
  • examples/preact/useAsyncRateLimiter/package.json
  • examples/preact/useAsyncRateLimiterWithPersister/package.json
  • examples/preact/useAsyncThrottledCallback/package.json
  • examples/preact/useAsyncThrottler/package.json
  • examples/preact/useBatchedCallback/package.json
  • examples/preact/useBatcher/package.json
  • examples/preact/useDebouncedCallback/package.json
  • examples/preact/useDebouncedState/package.json
  • examples/preact/useDebouncedValue/package.json
  • examples/preact/useDebouncer/package.json
  • examples/preact/useQueuedState/package.json
  • examples/preact/useQueuedValue/package.json
  • examples/preact/useQueuer/package.json
  • examples/preact/useQueuerWithPersister/package.json
  • examples/preact/useRateLimitedCallback/package.json
  • examples/preact/useRateLimitedState/package.json
  • examples/preact/useRateLimitedValue/package.json
  • examples/preact/useRateLimiter/package.json
  • examples/preact/useRateLimiterWithPersister/package.json
  • examples/preact/useThrottledCallback/package.json
  • examples/preact/useThrottledState/package.json
  • examples/preact/useThrottledValue/package.json
  • examples/preact/useThrottler/package.json
  • examples/preact/util-comparison/package.json
  • examples/react/asyncBatch/package.json
  • examples/react/asyncDebounce/package.json
  • examples/react/asyncRateLimit/package.json
  • examples/react/asyncRetry/package.json
  • examples/react/asyncThrottle/package.json
  • examples/react/batch/package.json
  • examples/react/debounce/package.json
  • examples/react/queue/package.json
  • examples/react/rateLimit/package.json
  • examples/react/react-query-debounced-prefetch/package.json
  • examples/react/react-query-queued-prefetch/package.json
  • examples/react/react-query-throttled-prefetch/package.json
  • examples/react/throttle/package.json
  • examples/react/useAsyncBatchedCallback/package.json
  • examples/react/useAsyncBatcher/package.json
  • examples/react/useAsyncDebouncedCallback/package.json
  • examples/react/useAsyncDebouncer/package.json
  • examples/react/useAsyncQueuedState/package.json
  • examples/react/useAsyncQueuer/package.json
  • examples/react/useAsyncRateLimiter/package.json
  • examples/react/useAsyncRateLimiterWithPersister/package.json
  • examples/react/useAsyncThrottledCallback/package.json
  • examples/react/useAsyncThrottler/package.json
  • examples/react/useBatchedCallback/package.json
  • examples/react/useBatcher/package.json
  • examples/react/useDebouncedCallback/package.json
  • examples/react/useDebouncedState/package.json
  • examples/react/useDebouncedValue/package.json
  • examples/react/useDebouncer/package.json
  • examples/react/useQueuedState/package.json
  • examples/react/useQueuedValue/package.json
  • examples/react/useQueuer/package.json
  • examples/react/useQueuerWithPersister/package.json
  • examples/react/useRateLimitedCallback/package.json
  • examples/react/useRateLimitedState/package.json
  • examples/react/useRateLimitedValue/package.json
  • examples/react/useRateLimiter/package.json
  • examples/react/useRateLimiterWithPersister/package.json
  • examples/react/useThrottledCallback/package.json
  • examples/react/useThrottledState/package.json
  • examples/react/useThrottledValue/package.json
  • examples/react/useThrottler/package.json
  • examples/react/util-comparison/package.json
  • examples/solid/asyncBatch/package.json
  • examples/solid/asyncDebounce/package.json
  • examples/solid/asyncRateLimit/package.json
  • examples/solid/asyncThrottle/package.json
  • examples/solid/batch/package.json
  • examples/solid/createAsyncBatcher/package.json
  • examples/solid/createAsyncDebouncer/package.json
  • examples/solid/createAsyncQueuer/package.json
  • examples/solid/createAsyncRateLimiter/package.json
  • examples/solid/createAsyncThrottler/package.json
  • examples/solid/createBatcher/package.json
  • examples/solid/createDebouncedSignal/package.json
  • examples/solid/createDebouncedValue/package.json
  • examples/solid/createDebouncer/package.json
  • examples/solid/createQueuedSignal/package.json
  • examples/solid/createQueuer/package.json
  • examples/solid/createRateLimitedSignal/package.json
  • examples/solid/createRateLimitedValue/package.json
  • examples/solid/createRateLimiter/package.json
  • examples/solid/createThrottledSignal/package.json
  • examples/solid/createThrottledValue/package.json
  • examples/solid/createThrottler/package.json
  • examples/solid/debounce/package.json
  • examples/solid/queue/package.json
  • examples/solid/rateLimit/package.json
  • examples/solid/throttle/package.json
  • examples/vanilla/LiteBatcher/package.json
  • examples/vanilla/LiteDebouncer/package.json
  • examples/vanilla/LiteQueuer/package.json
  • examples/vanilla/LiteRateLimiter/package.json
  • examples/vanilla/LiteThrottler/package.json
  • examples/vanilla/liteBatch/package.json
  • examples/vanilla/liteDebounce/package.json
  • examples/vanilla/liteQueue/package.json
  • examples/vanilla/liteRateLimit/package.json
  • examples/vanilla/liteThrottle/package.json
  • package.json
  • packages/angular-pacer/package.json
  • packages/pacer-devtools/package.json
  • packages/preact-pacer-devtools/package.json
  • packages/preact-pacer/package.json
  • packages/react-pacer-devtools/package.json
  • packages/react-pacer/package.json
  • packages/solid-pacer/package.json
✅ Files skipped from review due to trivial changes (106)
  • examples/react/useQueuerWithPersister/package.json
  • examples/react/asyncDebounce/package.json
  • packages/preact-pacer-devtools/package.json
  • examples/react/throttle/package.json
  • packages/solid-pacer/package.json
  • examples/react/asyncBatch/package.json
  • examples/solid/rateLimit/package.json
  • examples/react/useAsyncBatchedCallback/package.json
  • examples/solid/createThrottledValue/package.json
  • examples/react/useThrottler/package.json
  • examples/react/useDebouncedState/package.json
  • packages/pacer-devtools/package.json
  • examples/react/useQueuer/package.json
  • examples/preact/useDebouncedValue/package.json
  • examples/react/useAsyncDebouncer/package.json
  • examples/react/useAsyncBatcher/package.json
  • examples/react/batch/package.json
  • examples/react/useAsyncDebouncedCallback/package.json
  • examples/preact/useAsyncRateLimiter/package.json
  • examples/react/useDebouncer/package.json
  • examples/preact/asyncThrottle/package.json
  • examples/preact/useQueuedState/package.json
  • examples/react/useRateLimitedValue/package.json
  • examples/solid/asyncBatch/package.json
  • examples/vanilla/liteRateLimit/package.json
  • examples/solid/createBatcher/package.json
  • examples/react/queue/package.json
  • examples/solid/createDebouncedValue/package.json
  • examples/preact/useThrottledValue/package.json
  • examples/react/useAsyncRateLimiter/package.json
  • examples/preact/useAsyncThrottler/package.json
  • examples/react/useThrottledValue/package.json
  • examples/solid/createAsyncRateLimiter/package.json
  • examples/preact/useAsyncDebouncer/package.json
  • examples/react/useQueuedState/package.json
  • examples/preact/useAsyncBatchedCallback/package.json
  • examples/react/useThrottledState/package.json
  • packages/angular-pacer/package.json
  • examples/react/useDebouncedCallback/package.json
  • examples/solid/createRateLimitedSignal/package.json
  • examples/solid/createAsyncBatcher/package.json
  • examples/preact/useRateLimitedValue/package.json
  • examples/vanilla/LiteQueuer/package.json
  • examples/preact/useAsyncRateLimiterWithPersister/package.json
  • examples/preact/useQueuedValue/package.json
  • examples/solid/batch/package.json
  • examples/preact/useAsyncBatcher/package.json
  • examples/vanilla/liteThrottle/package.json
  • examples/react/useRateLimitedState/package.json
  • examples/react/rateLimit/package.json
  • examples/solid/createQueuedSignal/package.json
  • examples/react/util-comparison/package.json
  • examples/vanilla/LiteRateLimiter/package.json
  • examples/react/useAsyncRateLimiterWithPersister/package.json
  • examples/vanilla/liteBatch/package.json
  • examples/angular/rateLimit/package.json
  • examples/preact/useAsyncThrottledCallback/package.json
  • examples/preact/useThrottledState/package.json
  • examples/react/useQueuedValue/package.json
  • examples/solid/asyncRateLimit/package.json
  • package.json
  • examples/solid/createRateLimiter/package.json
  • examples/react/useAsyncThrottledCallback/package.json
  • examples/solid/queue/package.json
  • examples/vanilla/LiteDebouncer/package.json
  • examples/react/useThrottledCallback/package.json
  • examples/solid/createRateLimitedValue/package.json
  • examples/preact/useBatchedCallback/package.json
  • examples/angular/injectDebouncedCallback/package.json
  • examples/react/useDebouncedValue/package.json
  • examples/preact/useAsyncQueuer/package.json
  • examples/react/useBatcher/package.json
  • examples/preact/useDebouncedCallback/package.json
  • examples/preact/useRateLimiterWithPersister/package.json
  • examples/solid/createThrottler/package.json
  • examples/angular/injectBatcher/package.json
  • examples/angular/injectDebouncedValue/package.json
  • examples/angular/injectAsyncBatchedCallback/package.json
  • examples/preact/asyncRateLimit/package.json
  • examples/solid/createAsyncThrottler/package.json
  • packages/react-pacer/package.json
  • examples/solid/createThrottledSignal/package.json
  • examples/preact/debounce/package.json
  • examples/vanilla/LiteThrottler/package.json
  • examples/preact/useRateLimiter/package.json
  • examples/solid/asyncThrottle/package.json
  • examples/preact/useDebouncedState/package.json
  • examples/react/useBatchedCallback/package.json
  • examples/angular/injectRateLimitedSignal/package.json
  • examples/angular/injectQueuerWithPersister/package.json
  • examples/preact/useBatcher/package.json
  • examples/solid/asyncDebounce/package.json
  • examples/preact/rateLimit/package.json
  • examples/angular/asyncDebounce/package.json
  • examples/solid/createQueuer/package.json
  • examples/react/useAsyncQueuer/package.json
  • examples/react/useAsyncQueuedState/package.json
  • examples/angular/injectAsyncQueuedSignal/package.json
  • examples/vanilla/LiteBatcher/package.json
  • examples/solid/createAsyncQueuer/package.json
  • examples/angular/injectRateLimitedCallback/package.json
  • packages/preact-pacer/package.json
  • examples/angular/asyncRetry/package.json
  • examples/preact/queue/package.json
  • examples/angular/queue/package.json
  • examples/solid/createAsyncDebouncer/package.json
🚧 Files skipped from review as they are similar to previous changes (51)
  • examples/preact/useThrottledCallback/package.json
  • examples/preact/useAsyncQueuedState/package.json
  • examples/vanilla/liteQueue/package.json
  • examples/react/debounce/package.json
  • examples/preact/batch/package.json
  • examples/solid/debounce/package.json
  • .github/workflows/zizmor.yml
  • examples/react/asyncRateLimit/package.json
  • examples/angular/injectRateLimiter/package.json
  • examples/preact/asyncBatch/package.json
  • examples/angular/injectThrottledValue/package.json
  • examples/angular/throttle/package.json
  • examples/preact/util-comparison/package.json
  • examples/angular/injectAsyncThrottler/package.json
  • examples/vanilla/liteDebounce/package.json
  • examples/preact/useRateLimitedCallback/package.json
  • examples/angular/injectQueuedValue/package.json
  • examples/preact/useQueuer/package.json
  • examples/angular/debounce/package.json
  • examples/angular/injectAsyncDebouncer/package.json
  • examples/angular/injectAsyncBatcher/package.json
  • examples/react/useRateLimiterWithPersister/package.json
  • examples/solid/throttle/package.json
  • examples/preact/useRateLimitedState/package.json
  • examples/angular/injectRateLimitedValue/package.json
  • examples/angular/injectBatchedCallback/package.json
  • examples/angular/injectAsyncRateLimiterWithPersister/package.json
  • examples/preact/useQueuerWithPersister/package.json
  • examples/react/useRateLimiter/package.json
  • examples/react/useRateLimitedCallback/package.json
  • examples/angular/injectThrottler/package.json
  • examples/react/react-query-queued-prefetch/package.json
  • examples/react/useAsyncThrottler/package.json
  • examples/angular/injectThrottledSignal/package.json
  • packages/react-pacer-devtools/package.json
  • examples/angular/injectQueuer/package.json
  • examples/angular/injectQueuedSignal/package.json
  • examples/angular/injectRateLimiterWithPersister/package.json
  • examples/preact/useDebouncer/package.json
  • examples/preact/asyncRetry/package.json
  • examples/angular/injectAsyncThrottledCallback/package.json
  • examples/solid/createDebouncedSignal/package.json
  • examples/angular/injectAsyncQueuer/package.json
  • examples/angular/injectDebouncer/package.json
  • examples/angular/batch/package.json
  • examples/preact/useAsyncDebouncedCallback/package.json
  • examples/angular/asyncThrottle/package.json
  • examples/angular/injectThrottledCallback/package.json
  • examples/angular/injectDebouncedSignal/package.json
  • examples/angular/injectAsyncRateLimiter/package.json
  • examples/preact/asyncDebounce/package.json

Comment thread examples/angular/asyncBatch/package.json Outdated
@renovate renovate Bot force-pushed the renovate/all-minor-patch branch 14 times, most recently from 32c7c10 to ed96a2e Compare May 26, 2026 08:48
@renovate renovate Bot force-pushed the renovate/all-minor-patch branch 9 times, most recently from 268a849 to 9afed2b Compare May 31, 2026 14:35
@renovate renovate Bot force-pushed the renovate/all-minor-patch branch 3 times, most recently from 9ec03bb to 62a7596 Compare June 2, 2026 11:45
@renovate renovate Bot force-pushed the renovate/all-minor-patch branch 3 times, most recently from bee1aca to af6d5fb Compare June 3, 2026 10:37
@renovate renovate Bot force-pushed the renovate/all-minor-patch branch from af6d5fb to 70d0c39 Compare June 3, 2026 17:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants