Skip to content
This repository has been archived by the owner on Sep 11, 2024. It is now read-only.

bump(deps): update pnpm to v9 #116

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

bump(deps): update pnpm to v9 #116

wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 17, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
pnpm (source) 8.15.6 -> 9.10.0 age adoption passing confidence
pnpm (source) ^8 <9 -> ^8 <10 age adoption passing confidence

Release Notes

pnpm/pnpm (pnpm)

v9.10.0: pnpm 9.10

Compare Source

Minor Changes

  • Support for a new CLI flag, --exclude-peers, added to the list and why commands. When --exclude-peers is used, peer dependencies are not printed in the results, but dependencies of peer dependencies are still scanned #​8506.

  • Added a new setting to package.json at pnpm.auditConfig.ignoreGhsas for ignoring vulnerabilities by their GHSA code #​6838.

    For instance:

    {
      "pnpm": {
        "auditConfig": {
          "ignoreGhsas": [
            "GHSA-42xw-2xvc-qx8m",
            "GHSA-4w2v-q235-vp99",
            "GHSA-cph5-m8f7-6c5x",
            "GHSA-vh95-rmgr-6w4m"
          ]
        }
      }
    }

Patch Changes

  • Throw an exception if pnpm switches to the same version of itself.
  • Reduce memory usage during peer dependencies resolution.

Platinum Sponsors

Gold Sponsors

Our Silver Sponsors

v9.9.0

Compare Source

v9.8.0

Compare Source

v9.7.1

Compare Source

v9.7.0: pnpm 9.7

Compare Source

Minor Changes

  • Added pnpm version management. If the manage-package-manager-versions setting is set to true, pnpm will switch to the version specified in the packageManager field of package.json #​8363. This is the same field used by Corepack. Example:

    {
      "packageManager": "[email protected]"
    }
  • Added the ability to apply patch to all versions #​8337.

    If the key of pnpm.patchedDependencies is a package name without a version (e.g. pkg), pnpm will attempt to apply the patch to all versions of the package. Failures will be skipped. If there's only one version of pkg installed, pnpm patch pkg and subsequent pnpm patch-commit $edit_dir will create an entry named pkg in pnpm.patchedDependencies. And pnpm will attempt to apply this patch to other versions of pkg in the future.

  • Change the default edit dir location when running pnpm patch from a temporary directory to node_modules/.pnpm_patches/pkg[@&#8203;version] to allow the code editor to open the edit dir in the same file tree as the main project #​8379.

  • Substitute environment variables in config keys #​6679.

Patch Changes

  • pnpm install should run node-gyp rebuild if the project has a binding.gyp file even if the project doesn't have an install script #​8293.
  • Print warnings to stderr #​8342.
  • Peer dependencies of optional peer dependencies should be automatically installed #​8323.

Platinum Sponsors

Gold Sponsors

Our Silver Sponsors

v9.6.0: pnpm 9.6

Compare Source

Minor Changes

  • Support specifying node version (via pnpm.executionEnv.nodeVersion in package.json) for running lifecycle scripts per each package in a workspace #​6720.
  • Overrides now support the catalogs: protocol #​8303.

Patch Changes

  • The pnpm deploy command now supports the catalog: protocol #​8298.
  • The pnpm outdated command now supports the catalog: protocol #​8304.
  • Correct the error message when trying to run pnpm patch without node_modules/.modules.yaml #​8257.
  • Silent reporting fixed with the pnpm exec command #​7608.
  • Add registries information to the calculation of dlx cache hash #​8299.

Platinum Sponsors

Gold Sponsors

Our Silver Sponsors

v9.5.0

Compare Source

v9.4.0

Compare Source

v9.3.0

Compare Source

Minor Changes

  • Semi-breaking. Dependency key names in the lockfile are shortened if they are longer than 1000 characters. We don't expect this change to affect many users. Affected users most probably can't run install successfully at the moment. This change is required to fix some edge cases in which installation fails with an out-of-memory error or "Invalid string length (RangeError: Invalid string length)" error. The max allowed length of the dependency key can be controlled with the peers-suffix-max-length setting #​8177.

Patch Changes

  • Set reporter-hide-prefix to true by default for pnpm exec. In order to show prefix, the user now has to explicitly set reporter-hide-prefix=false #​8174.

Platinum Sponsors

Gold Sponsors

Our Silver Sponsors

v9.2.0

Compare Source

Minor Changes

  • If package-manager-strict-version is set to true, pnpm will fail if its version doesn't exactly match the version in the "packageManager" field of package.json.

Patch Changes

  • Update @yarnpkg/pnp to the latest version, fixing issue with node: imports #​8161.
  • Deduplicate bin names to prevent race condition and corrupted bin scripts #​7833.
  • pnpm doesn't fail if its version doesn't match the one specified in the "packageManager" field of package.json #​8087.
  • exec now also streams prefixed output when --recursive or --parallel is specified just as run does #​8065.

Platinum Sponsors

Gold Sponsors

Our Silver Sponsors

v9.1.4

Compare Source

v9.1.3

Compare Source

v9.1.2

Compare Source

Patch Changes

  • Reduced memory usage during peer dependencies resolution #​8084.
  • Details in the pnpm licenses output are not misplaced anymore #​8071.

Platinum Sponsors

Gold Sponsors

Our Silver Sponsors

v9.1.1

Compare Source

v9.1.0

Compare Source

v9.0.6

Compare Source

v9.0.5

Compare Source

v9.0.4

Compare Source

v9.0.3

Compare Source

v9.0.2

Compare Source

v9.0.1

Compare Source

v9.0.0

Compare Source

Major Changes
  • Node.js v16 support discontinued

    If you still require Node.js 16, don't worry. We ship pnpm bundled with Node.js. This means that regardless of which Node.js version you've installed, pnpm will operate using the necessary Node.js runtime. For this to work you need to install pnpm either using the standalone script or install the @pnpm/exe package.

  • Configuration updates:

    • dedupe-injected-deps: enabled by default.
    • link-workspace-packages: disabled by default. This means that by default, dependencies will be linked from workspace packages only when they are specified using the workspace protocol.
    • hoist-workspace-packages: enabled by default.
    • enable-pre-post-scripts: enabled by default.
    • Use the same directory for state files on macOS as on Linux (~/.local/state/pnpm).
    • pnpm will now check the package.json file for a packageManager field. If this field is present and specifies a different package manager or a different version of pnpm than the one you're currently using, pnpm will not proceed. This ensures that you're always using the correct package manager and version that the project requires.
  • Lockfile changes:

    • Lockfile v9 is adopted. This new format has changes for better readability, and better resistence to Git conflicts.
    • Support for lockfile v5 is dropped. Use pnpm v8 to convert lockfile v5 to lockfile v6 #​7470.
  • Dependency resolution changes:

    • Correct resolution of peer dependencies that have their own peer dependencies.
      Related issue: #​7444.
      Related PR: #​7606.
    • Optional peer dependencies may be resolved from any packages in the dependency graph #​7830.
  • pnpm licenses list prints license information of all versions of the same package in case different versions use different licenses. The format of the pnpm licenses list --json output has been changed #​7528.

  • A new command added for printing completion code to the console: pnpm completion [shell]. The old command that modified the user's shell dotfiles has been removed #​3083.

  • When installing git-hosted dependencies, only pick the files that would be packed with the package #​7638.

Minor Changes
  • It is now possible to install only a subdirectory from a Git repository.

    For example, pnpm add github:user/repo#path:packages/foo will add a dependency from the packages/foo subdirectory.

    This new parameter may be combined with other supported parameters separated by &. For instance, the next command will install the same package from the dev branch: pnpm add github:user/repo#dev&path:packages/bar.

    Related issue: #​4765.
    Related PR: #​7487.

  • node-gyp updated to version 10.

  • PowerShell completion support added #​7597.

  • Support node-options option inside .npmrc file when running scripts #​7596.

  • Added support for registry-scoped SSL configurations (cert, key, and ca). Three new settings supported: <registryURL>:certfile, <registryURL>:keyfile, and <registryURL>:ca. For instance:

    //registry.mycomp.com/:certfile=server-cert.pem
    //registry.mycomp.com/:keyfile=server-key.pem
    //registry.mycomp.com/:cafile=client-cert.pem
    

    Related issue: #​7427.
    Related PR: #​7626.

  • Add a field named ignoredOptionalDependencies. This is an array of strings. If an optional dependency has its name included in this array, it will be skipped #​7714.

  • The checksum of the .pnpmfile.cjs is saved into the lockfile. If the pnpmfile gets modified, the lockfile is reanalyzed to apply the changes #​7662.

  • Added cac


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 these updates again.


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

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

Copy link
Contributor Author

renovate bot commented Apr 17, 2024

⚠ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: pnpm-lock.yaml
 ERR_PNPM_UNSUPPORTED_ENGINE  Unsupported environment (bad pnpm and/or Node.js version)

Your pnpm version is incompatible with "/tmp/renovate/repos/github/levaintech/levain-examples".

Expected version: ^8 <10
Got: 9.1.0

This is happening because the package's manifest has an engines.pnpm field specified.
To fix this issue, install the required pnpm version globally.

To install the latest version of pnpm, run "pnpm i -g pnpm".
To check your pnpm version, run "pnpm -v".

Copy link

vercel bot commented Apr 17, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Updated (UTC)
levain-examples-frontmatter ✅ Ready (Inspect) Visit Preview Sep 9, 2024 4:27pm
levain-examples-neobank ✅ Ready (Inspect) Visit Preview Sep 9, 2024 4:27pm

@github-actions github-actions bot added the kind/dependencies Pull requests that update a dependency file label Apr 17, 2024
Copy link
Contributor Author

renovate bot commented May 13, 2024

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: pnpm-lock.yaml
 ERR_PNPM_UNSUPPORTED_ENGINE  Unsupported environment (bad pnpm and/or Node.js version)

Your pnpm version is incompatible with "/tmp/renovate/repos/github/levaintech/levain-examples".

Expected version: ^8 <10
Got: 9.10.0

This is happening because the package's manifest has an engines.pnpm field specified.
To fix this issue, install the required pnpm version globally.

To install the latest version of pnpm, run "pnpm i -g pnpm".
To check your pnpm version, run "pnpm -v".

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind/dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants