From 6d9f79e54bb490cda34f20773a0ccad4aed48db1 Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Fri, 9 Feb 2024 01:21:02 +0100 Subject: [PATCH] chore(release): 9.0.0-alpha.2 --- pnpm/CHANGELOG.md | 61 ++++++++++++++++++++++++- pnpm/artifacts/exe/package.json | 2 +- pnpm/artifacts/linux-arm64/package.json | 2 +- pnpm/artifacts/linux-x64/package.json | 2 +- pnpm/artifacts/macos-arm64/package.json | 2 +- pnpm/artifacts/macos-x64/package.json | 2 +- pnpm/artifacts/win-x64/package.json | 2 +- pnpm/package.json | 2 +- 8 files changed, 67 insertions(+), 8 deletions(-) diff --git a/pnpm/CHANGELOG.md b/pnpm/CHANGELOG.md index d125874ba3..bfa00e84d9 100644 --- a/pnpm/CHANGELOG.md +++ b/pnpm/CHANGELOG.md @@ -1,6 +1,6 @@ # pnpm -## 9.0.0-alpha.1 +## 9.0.0-alpha.2 ### Major Changes @@ -11,6 +11,61 @@ - Use the same directories on macOS as on Linux. Don't use directories inside `~/Library` on macOS [#7321](https://github.com/pnpm/pnpm/issues/7321). - The default value of the [hoist-workspace-packages](https://pnpm.io/npmrc#hoist-workspace-packages) is `true`. - `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](https://github.com/pnpm/pnpm/pull/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](https://github.com/pnpm/pnpm/issues/3083). +- Use the same directories on macOS as on Linux. Don't use directories inside `~/Library` on macOS [#7321](https://github.com/pnpm/pnpm/issues/7321). + +- Peer dependencies of peer dependencies are now resolved correctly. When peer dependencies have peer dependencies of their own, the peer dependencies are grouped with their own peer dependencies before being linked to their dependents. + + For instance, if `card` has `react` in peer dependencies and `react` has `typescript` in its peer dependencies, then the same version of `react` may be linked from different places if there are multiple versions of `typescript`. For instance: + + ``` + project1/package.json + { + "dependencies": { + "card": "1.0.0", + "react": "16.8.0", + "typescript": "7.0.0" + } + } + project2/package.json + { + "dependencies": { + "card": "1.0.0", + "react": "16.8.0", + "typescript": "8.0.0" + } + } + node_modules + .pnpm + card@1.0.0(react@16.8.0(typescript@7.0.0)) + node_modules + card + react --> ../../react@16.8.0(typescript@7.0.0)/node_modules/react + react@16.8.0(typescript@7.0.0) + node_modules + react + typescript --> ../../typescript@7.0.0/node_modules/typescript + typescript@7.0.0 + node_modules + typescript + card@1.0.0(react@16.8.0(typescript@8.0.0)) + node_modules + card + react --> ../../react@16.8.0(typescript@8.0.0)/node_modules/react + react@16.8.0(typescript@8.0.0) + node_modules + react + typescript --> ../../typescript@8.0.0/node_modules/typescript + typescript@8.0.0 + node_modules + typescript + ``` + + In the above example, both projects have `card` in dependencies but the projects use different versions of `typescript`. Hence, even though the same version of `card` is used, `card` in `project1` will reference `react` from a directory where it is placed with `typescript@7.0.0` (because it resolves `typescript` from the dependencies of `project1`), while `card` in `project2` will reference `react` with `typescript@8.0.0`. + + Related issue: [#7444](https://github.com/pnpm/pnpm/issues/7444). + + Related PR: [#7606](https://github.com/pnpm/pnpm/pull/7606). ### Minor Changes @@ -25,6 +80,10 @@ - `node-gyp` updated to version 10. +- PowerShell completion support added [#7597](https://github.com/pnpm/pnpm/pull/7597). + +- Support `node-options` option inside `.npmrc` file when running scripts [#7596](https://github.com/pnpm/pnpm/issues/7596) + ## 8.15.0 ### Minor Changes diff --git a/pnpm/artifacts/exe/package.json b/pnpm/artifacts/exe/package.json index 01f88eebbf..d1571e4e75 100644 --- a/pnpm/artifacts/exe/package.json +++ b/pnpm/artifacts/exe/package.json @@ -1,7 +1,7 @@ { "name": "@pnpm/exe", "description": "Fast, disk space efficient package manager", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "publishConfig": { "tag": "next-9", "bin": { diff --git a/pnpm/artifacts/linux-arm64/package.json b/pnpm/artifacts/linux-arm64/package.json index f8b5713766..0adc1d45e4 100644 --- a/pnpm/artifacts/linux-arm64/package.json +++ b/pnpm/artifacts/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/linux-arm64", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "license": "MIT", "publishConfig": { "bin": { diff --git a/pnpm/artifacts/linux-x64/package.json b/pnpm/artifacts/linux-x64/package.json index 408f908732..0170dcde57 100644 --- a/pnpm/artifacts/linux-x64/package.json +++ b/pnpm/artifacts/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/linux-x64", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "license": "MIT", "publishConfig": { "bin": { diff --git a/pnpm/artifacts/macos-arm64/package.json b/pnpm/artifacts/macos-arm64/package.json index eedfa02b02..49c91db102 100644 --- a/pnpm/artifacts/macos-arm64/package.json +++ b/pnpm/artifacts/macos-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/macos-arm64", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "license": "MIT", "publishConfig": { "bin": { diff --git a/pnpm/artifacts/macos-x64/package.json b/pnpm/artifacts/macos-x64/package.json index 9386da2f63..2a2a8ac3f6 100644 --- a/pnpm/artifacts/macos-x64/package.json +++ b/pnpm/artifacts/macos-x64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/macos-x64", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "license": "MIT", "publishConfig": { "bin": { diff --git a/pnpm/artifacts/win-x64/package.json b/pnpm/artifacts/win-x64/package.json index 75500de53d..5abff7984d 100644 --- a/pnpm/artifacts/win-x64/package.json +++ b/pnpm/artifacts/win-x64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/win-x64", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "license": "MIT", "publishConfig": { "bin": { diff --git a/pnpm/package.json b/pnpm/package.json index 55a602b5df..22b44bc01c 100644 --- a/pnpm/package.json +++ b/pnpm/package.json @@ -1,7 +1,7 @@ { "name": "pnpm", "description": "Fast, disk space efficient package manager", - "version": "9.0.0-alpha.1", + "version": "9.0.0-alpha.2", "bin": { "pnpm": "bin/pnpm.cjs", "pnpx": "bin/pnpx.cjs"