pnpm 是一个快速、节省磁盘空间的软件包管理器。它使用一个内容可寻址的文件系统来存储磁盘上所有模块目录的所有文件。当使用 npm 或 Yarn 时,如果你有 100 个使用 lodash 的项目,你将在磁盘上有 100 份 lodash 的拷贝,而使用 pnpm 时,lodash 将被存储在一个内容可寻址的存储器中。
pnpm 7.19 正式发布,更新内容如下:
改动
- 在工作区根部的 package.json 中支持新的设置:pnpm.requiredScripts。在这个数组中列出的脚本在 workapce 的每个项目中都是必需的。否则,pnpm -r run <script name> 将会失败
- 当使用 hoisted node linker 时,在链接新的依赖关系时保留 node_modules 目录。当安装在已经有 node_modules 目录的项目中时,这提高了性能
- 当使用 hoisted node linker 时,pnpm 不应该在安装过程中多次构建同一个软件包。如果一个包出现在多个位置,因为 hoisting 无法将它们提升到一个目录,那么这个包应该只在其中一个位置构建,并复制到其他位置
补丁
- pnpm rebuild 应该在使用 hoisted node linker 的项目中工作
- pnpm patch 应该打印关于如何提交修改的说明
- 允许在命令 shims 中使用 -S 标志
- 如果没有构建,不要重新链接注入的目录
更多详情可查看:https://github.com/pnpm/pnpm/releases