Skip to content

Update pnpm to v10.11.0 #240

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
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Update pnpm to v10.11.0 #240

wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 3, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
pnpm (source) 10.2.1 -> 10.11.0 age adoption passing confidence

Release Notes

pnpm/pnpm (pnpm)

v10.11.0

Compare Source

Minor Changes
  • A new setting added for pnpm init to create a package.json with type=module, when init-type is module. Works as a flag for the init command too #​9463.

  • Added support for Nushell to pnpm setup #​6476.

  • Added two new flags to the pnpm audit command, --ignore and --ignore-unfixable #​8474.

    Ignore all vulnerabilities that have no solution:

    > pnpm audit --ignore-unfixable

    Provide a list of CVE's to ignore those specifically, even if they have a resolution.

    > pnpm audit --ignore=CVE-2021-1234 --ignore=CVE-2021-5678
  • Added support for recursively running pack in every project of a workspace #​4351.

    Now you can run pnpm -r pack to pack all packages in the workspace.

Patch Changes
  • pnpm version management should work, when dangerouslyAllowAllBuilds is set to true #​9472.
  • pnpm link should work from inside a workspace #​9506.
  • Set the default workspaceConcurrency to Math.min(os.availableParallelism(), 4) #​9493.
  • Installation should not exit with an error if strictPeerDependencies is true but all issues are ignored by peerDependencyRules #​9505.
  • Read updateConfig from pnpm-workspace.yaml #​9500.
  • Add support for recursive pack
  • Remove url.parse usage to fix warning on Node.js 24 #​9492.
  • pnpm run should be able to run commands from the workspace root, if ignoreScripts is set tot true #​4858.

v10.10.0

Compare Source

Minor Changes
  • Allow loading the preResolution, importPackage, and fetchers hooks from local pnpmfile.
Patch Changes
  • Fix cd command, when shellEmulator is true #​7838.
  • Sort keys in pnpm-workspace.yaml #​9453.
  • Pass the npm_package_json environment variable to the executed scripts #​9452.
  • Fixed a mistake in the description of the --reporter=silent option.

v10.9.0

Compare Source

Minor Changes
  • Added support for installing JSR packages. You can now install JSR packages using the following syntax:

    pnpm add jsr:<pkg_name>
    

    or with a version range:

    pnpm add jsr:<pkg_name>@&#8203;<range>
    

    For example, running:

    pnpm add jsr:@&#8203;foo/bar
    

    will add the following entry to your package.json:

    {
      "dependencies": {
        "@&#8203;foo/bar": "jsr:^0.1.2"
      }
    }

    When publishing, this entry will be transformed into a format compatible with npm, older versions of Yarn, and previous pnpm versions:

    {
      "dependencies": {
        "@&#8203;foo/bar": "npm:@&#8203;jsr/foo__bar@^0.1.2"
      }
    }

    Related issue: #​8941.

    Note: The @jsr scope defaults to https://npm.jsr.io/ if the @jsr:registry setting is not defined.

  • Added a new setting, dangerouslyAllowAllBuilds, for automatically running any scripts of dependencies without the need to approve any builds. It was already possible to allow all builds by adding this to pnpm-workspace.yaml:

    neverBuiltDependencies: []

    dangerouslyAllowAllBuilds has the same effect but also allows to be set globally via:

    pnpm config set dangerouslyAllowAllBuilds true
    

    It can also be set when running a command:

    pnpm install --dangerously-allow-all-builds
    
Patch Changes
  • Fix a false negative in verifyDepsBeforeRun when nodeLinker is hoisted and there is a workspace package without dependencies and node_modules directory #​9424.
  • Explicitly drop verifyDepsBeforeRun support for nodeLinker: pnp. Combining verifyDepsBeforeRun and nodeLinker: pnp will now print a warning.

v10.8.1

Compare Source

Patch Changes
  • Removed bright white highlighting, which didn't look good on some light themes #​9389.
  • If there is no pnpm related configuration in package.json, onlyBuiltDependencies will be written to pnpm-workspace.yaml file #​9404.

v10.8.0

Compare Source

Minor Changes
  • Experimental. A new hook is supported for updating configuration settings. The hook can be provided via .pnpmfile.cjs. For example:

    module.exports = {
      hooks: {
        updateConfig: (config) => ({
          ...config,
          nodeLinker: "hoisted",
        }),
      },
    };
  • Now you can use the pnpm add command with the --config flag to install new configurational dependencies #​9377.

Patch Changes
  • Do not hang indefinitely, when there is a glob that starts with !/ in pnpm-workspace.yaml. This fixes a regression introduced by #​9169.
  • pnpm audit --fix should update the overrides in pnpm-workspace.yaml.
  • pnpm link should update overrides in pnpm-workspace.yaml, not in package.json #​9365.

v10.7.1: pnpm 10.7.1

Compare Source

Patch Changes

  • pnpm config set should convert the settings to their correct type before adding them to pnpm-workspace.yaml #​9355.
  • pnpm config get should read auth related settings via npm CLI #​9345.
  • Replace leading ~/ in a path in .npmrc with the home directory #​9217.

Platinum Sponsors

Bit Bit Syntax

Gold Sponsors

Discord u|screen
JetBrains Nx
CodeRabbit Route4Me
Workleap Stackblitz

v10.7.0

Compare Source

Minor Changes
  • pnpm config get and list also show settings set in pnpm-workspace.yaml files #​9316.

  • It should be possible to use env variables in pnpm-workspace.yaml setting names and value.

  • Add an ability to patch dependencies by version ranges. Exact versions override version ranges, which in turn override name-only patches. Version range * is the same as name-only, except that patch application failure will not be ignored.

    For example:

    patchedDependencies:
      foo: patches/foo-1.patch
      foo@^2.0.0: patches/foo-2.patch
      [email protected]: patches/foo-3.patch

    The above configuration would apply patches/foo-3.patch to [email protected], patches/foo-2.patch to all foo versions which satisfy ^2.0.0 except 2.1.0, and patches/foo-1.patch to the remaining foo versions.

    [!WARNING]
    The version ranges should not overlap. If you want to specialize a sub range, make sure to exclude it from the other keys. For example:

    # pnpm-workspace.yaml
    patchedDependencies:
      # the specialized sub range
      '[email protected]': patches/foo.2.2.0-2.8.0.patch
      # the more general patch, excluding the sub range above
      'foo@>=2.0.0 <2.2.0 || >2.8.0': 'patches/foo.gte2.patch

    In most cases, however, it's sufficient to just define an exact version to override the range.

  • pnpm config set --location=project saves the setting to a pnpm-workspace.yaml file if no .npmrc file is present in the directory #​9316.

  • Rename pnpm.allowNonAppliedPatches to pnpm.allowUnusedPatches. The old name is still supported but it would print a deprecation warning message.

  • Add pnpm.ignorePatchFailures to manage whether pnpm would ignore patch application failures.

    If ignorePatchFailures is not set, pnpm would throw an error when patches with exact versions or version ranges fail to apply, and it would ignore failures from name-only patches.

    If ignorePatchFailures is explicitly set to false, pnpm would throw an error when any type of patch fails to apply.

    If ignorePatchFailures is explicitly set to true, pnpm would print a warning when any type of patch fails to apply.

Patch Changes
  • Remove dependency paths from audit output to prevent out-of-memory errors #​9280.

v10.6.5

Compare Source

Patch Changes
  • Remove warnings after having explicitly approved no builds #​9296.
  • When installing different dependency packages, should retain the ignoredBuilds field in the .modules.yaml file #​9240.
  • Fix usages of the catalog: protocol in injected local workspace packages. This previously errored with ERR_PNPM_SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER. #​8715
  • Setting workspace-concurrency to less than or equal to 0 should work #​9297.

v10.6.4

Compare Source

Patch Changes
  • Fix pnpm dlx with --allow-build flag #​9263.
  • Invalid Node.js version in use-node-version should not cause pnpm itself to break #​9276.
  • The max amount of workers running for linking packages from the store has been reduced to 4 to achieve optimal results #​9286. The workers are performing many file system operations, so increasing the number of CPUs doesn't help performance after some point.

v10.6.3

Compare Source

Patch Changes
  • pnpm install --prod=false should not crash, when executed in a project with a pnpm-workspace.yaml file #​9233. This fixes regression introduced via #​9211.

  • Add the missing node-options config to recursive run #​9180.

  • Removed a branching code path that only executed when dedupe-peer-dependents=false. We believe this internal refactor will not result in behavior changes, but we expect it to make future pnpm versions behave more consistently for projects that override dedupe-peer-dependents to false. There should be less unique bugs from turning off dedupe-peer-dependents.

    See details in #​9259.

v10.6.2

Compare Source

Patch Changes
  • pnpm self-update should always update the version in the packageManager field of package.json.
  • Fix running pnpm CLI from pnpm CLI on Windows when the CLI is bundled to an executable #​8971.
  • pnpm patch-commit will now use the same filesystem as the store directory to compare and create patch files.
  • Don't show info output when --loglevel=error is used.
  • peerDependencyRules should be set in pnpm-workspace.yaml to take effect.

v10.6.1

Compare Source

Patch Changes
  • The pnpm CLI process should not stay hanging, when --silent reporting is used.
  • When --loglevel is set to error, don't show installation summary, execution time, and big tarball download progress.
  • Don't ignore pnpm.patchedDependencies from package.json #​9226.
  • When executing the approve-builds command, if package.json contains onlyBuiltDependencies or ignoredBuiltDependencies, the selected dependency package will continue to be written into package.json.
  • When a package version cannot be found in the package metadata, print the registry from which the package was fetched.

v10.6.0

Compare Source

Minor Changes
  • pnpm-workspace.yaml can now hold all the settings that .npmrc accepts. The settings should use camelCase #​9211.

    pnpm-workspace.yaml example:

    verifyDepsBeforeRun: install
    optimisticRepeatInstall: true
    publicHoistPattern:
      - "*types*"
      - "!@&#8203;types/react"
  • Projects using a file: dependency on a local tarball file (i.e. .tgz, .tar.gz, .tar) will see a performance improvement during installation. Previously, using a file: dependency on a tarball caused the lockfile resolution step to always run. The lockfile will now be considered up-to-date if the tarball is unchanged.

Patch Changes
  • pnpm self-update should not leave a directory with a broken pnpm installation if the installation fails.
  • fast-glob replace with tinyglobby to reduce the size of the pnpm CLI dependencies #​9169.
  • pnpm deploy should not remove fields from the deployed package's package.json file #​9215.
  • pnpm self-update should not read the pnpm settings from the package.json file in the current working directory.
  • Fix pnpm deploy creating a package.json without the imports and license field #​9193.
  • pnpm update -i should list only packages that have newer versions #​9206.
  • Fix a bug causing entries in the catalogs section of the pnpm-lock.yaml file to be removed when dedupe-peer-dependents=false on a filtered install. #​9112

v10.5.2

Compare Source

Patch Changes
  • The pnpm config set command should change the global .npmrc file by default.
    This was a regression introduced by #​9151 and shipped in pnpm v10.5.0.

v10.5.1

Compare Source

Patch Changes
  • Throw an error message if a pnpm-workspaces.yaml or pnpm-workspaces.yml file is found instead of a pnpm-workspace.yaml #​9170.
  • Fix the update of pnpm-workspace.yaml by the pnpm approve-builds command #​9168.
  • Normalize generated link paths in package.json #​9163
  • Specifying overrides in pnpm-workspace.yaml should work.
  • pnpm dlx should ignore settings from the package.json file in the current working directory #​9178.

v10.5.0

Compare Source

Minor Changes
  • Allow to set the "pnpm" settings from package.json via the pnpm-workspace.yaml file #​9121.

  • Added support for automatically syncing files of injected workspace packages after pnpm run #​9081. Use the sync-injected-deps-after-scripts setting to specify which scripts build the workspace package. This tells pnpm when syncing is needed. The setting should be defined in a .npmrc file at the root of the workspace. Example:

    sync-injected-deps-after-scripts[]=compile
  • The packages field in pnpm-workspace.yaml became optional.

Patch Changes
  • pnpm link with no parameters should work as if --global is specified #​9151.
  • Allow scope registry CLI option without --config. prefix such as --@&#8203;scope:registry=https://scope.example.com/npm #​9089.
  • pnpm link <path> should calculate relative path from the root of the workspace directory #​9132.
  • Fix a bug causing catalog snapshots to be removed from the pnpm-lock.yaml file when using --fix-lockfile and --filter. #​8639
  • Fix a bug causing catalog protocol dependencies to not re-resolve on a filtered install #​8638.

v10.4.1

Compare Source

Patch Changes
  • Throws an error when the value provided by the --allow-build option overlaps with the pnpm.ignoredBuildDependencies list #​9105.
  • Print pnpm's version after the execution time at the end of the console output.
  • Print warning about ignored builds of dependencies on repeat install #​9106.
  • Setting init-package-manager should work.

v10.4.0

Compare Source

Minor Changes
  • pnpm approve-builds --global works now for allowing dependencies of globally installed packages to run postinstall scripts.

  • The pnpm add command now supports a new flag, --allow-build, which allows building the specified dependencies. For instance, if you want to install a package called bundle that has esbuild as a dependency and want to allow esbuild to run postinstall scripts, you can run:

    pnpm --allow-build=esbuild add bundle
    

    This will run esbuild's postinstall script and also add it to the pnpm.onlyBuiltDependencies field of package.json. So, esbuild will always be allowed to run its scripts in the future.

    Related PR: #​9086.

  • The pnpm init command adds a packageManager field with the current version of pnpm CLI #​9069. To disable this behaviour, set the init-package-manager setting to false.

Patch Changes
  • pnpm approve-builds should work after two consecutive pnpm install runs #​9083.
  • Fix instruction for updating pnpm with corepack #​9101.
  • The pnpm version specified by packageManager cannot start with v.

v10.3.0

Compare Source

Minor Changes
  • Added a new setting called strict-dep-builds. When enabled, the installation will exit with a non-zero exit code if any dependencies have unreviewed build scripts (aka postinstall scripts) #​9071.
Patch Changes
  • Fix a false negative of verify-deps-before-run after pnpm install --production|--no-optional #​9019.
  • Print the warning about blocked installation scripts at the end of the installation output and make it more prominent.

Configuration

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

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

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • 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 added the dependencies Pull requests that update a dependency file label Feb 3, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch 2 times, most recently from 2445735 to 99a72be Compare February 9, 2025 17:31
@renovate renovate bot changed the title Update pnpm to v10 Update pnpm to v10 - autoclosed Feb 9, 2025
@renovate renovate bot closed this Feb 9, 2025
@renovate renovate bot deleted the renovate/pnpm-10.x branch February 9, 2025 17:46
@renovate renovate bot changed the title Update pnpm to v10 - autoclosed Update pnpm to v10 Feb 14, 2025
@renovate renovate bot reopened this Feb 14, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from ae222cf to 99a72be Compare February 14, 2025 02:04
@renovate renovate bot changed the title Update pnpm to v10 Update pnpm to v10.3.0 Feb 14, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch 2 times, most recently from 00f33c5 to 9694c26 Compare February 17, 2025 03:02
@renovate renovate bot changed the title Update pnpm to v10.3.0 Update pnpm to v10.4.0 Feb 17, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 9694c26 to 77c828f Compare February 19, 2025 23:30
@renovate renovate bot changed the title Update pnpm to v10.4.0 Update pnpm to v10.4.1 Feb 19, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 77c828f to 8adb5d9 Compare February 28, 2025 15:32
@renovate renovate bot changed the title Update pnpm to v10.4.1 Update pnpm to v10.5.0 Feb 28, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 8adb5d9 to c648ec7 Compare March 1, 2025 13:49
@renovate renovate bot changed the title Update pnpm to v10.5.0 Update pnpm to v10.5.1 Mar 1, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from c648ec7 to 3edba6d Compare March 2, 2025 01:54
@renovate renovate bot changed the title Update pnpm to v10.5.1 Update pnpm to v10.5.2 Mar 2, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 3edba6d to a3b6ded Compare March 9, 2025 14:35
@renovate renovate bot changed the title Update pnpm to v10.5.2 Update pnpm to v10.6.0 Mar 9, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from a3b6ded to ab4fc66 Compare March 10, 2025 02:00
@renovate renovate bot changed the title Update pnpm to v10.6.0 Update pnpm to v10.6.1 Mar 10, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from ab4fc66 to dbba200 Compare March 13, 2025 05:32
@renovate renovate bot changed the title Update pnpm to v10.6.1 Update pnpm to v10.6.2 Mar 13, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from dbba200 to 1e03066 Compare March 16, 2025 18:00
@renovate renovate bot changed the title Update pnpm to v10.6.2 Update pnpm to v10.6.3 Mar 16, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 1e03066 to 648d212 Compare March 20, 2025 17:00
@renovate renovate bot changed the title Update pnpm to v10.6.3 Update pnpm to v10.6.4 Mar 20, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 648d212 to f9e19cc Compare March 22, 2025 13:43
@renovate renovate bot changed the title Update pnpm to v10.6.4 Update pnpm to v10.6.5 Mar 22, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from f9e19cc to 941e855 Compare March 29, 2025 14:59
@renovate renovate bot changed the title Update pnpm to v10.6.5 Update pnpm to v10.7.0 Mar 29, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 941e855 to cab4622 Compare April 4, 2025 15:00
@renovate renovate bot changed the title Update pnpm to v10.7.0 Update pnpm to v10.7.1 Apr 4, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from cab4622 to 475c6dc Compare April 10, 2025 18:56
@renovate renovate bot changed the title Update pnpm to v10.7.1 Update pnpm to v10.8.0 Apr 10, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 475c6dc to 6c144a7 Compare April 17, 2025 11:53
@renovate renovate bot changed the title Update pnpm to v10.8.0 Update pnpm to v10.8.1 Apr 17, 2025
@renovate renovate bot changed the title Update pnpm to v10.8.1 Update pnpm to v10.9.0 Apr 24, 2025
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch 2 times, most recently from 9a76ab0 to 18d2983 Compare May 1, 2025 02:58
@renovate renovate bot changed the title Update pnpm to v10.9.0 Update pnpm to v10.10.0 May 1, 2025
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@renovate renovate bot force-pushed the renovate/pnpm-10.x branch from 18d2983 to 9b042b4 Compare May 16, 2025 20:03
@renovate renovate bot changed the title Update pnpm to v10.10.0 Update pnpm to v10.11.0 May 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant