pnpm 10.31
· 一分钟阅读
pnpm 10.31 在更新 pnpm-workspace.yaml 时保留注释和格式,并包含大量错误修复。
次要更改
保留 pnpm-workspace.yaml 中的注释
当 pnpm 更新 pnpm-workspace.yaml 时,注释、字符串格式和空格将被保留。
补丁更改
- 在帮助输出中添加了
-F作为--filter选项的简短别名。 - 处理
pnpm why -r中未定义的 pkgSnapshot #10700。 - 修复当项目注入自引用
file:依赖项并在锁文件中解析为link:时,未使用无头安装的问题。 - 修复了多个工作线程同时将同一个包导入全局虚拟存储时出现的竞态条件。 如果另一个线程已经完成了导入,重命名操作现在可以容忍
ENOTEMPTY/EEXIST错误。 - 当
lockfile-include-tarball-url设置为false时,tarball URL 现在总是从锁文件中排除。 以前,对于托管在非标准 URL 下的软件包,tarball URL 仍然可能出现 #6667。 - 修复了当
overrides、packageExtensions、ignoredOptionalDependencies、patchedDependencies或peersSuffixMaxLength更改时,optimisticRepeatInstall跳过安装的问题。 - 修复了在 HOME 未设置或非标准环境(Docker 容器、CI 系统)中,
pnpm patch-commit失败并出现“无法访问 '/.config/git/attributes': 权限被拒绝”错误的问题 #6537。 - 修复当多个工作区包共享同一依赖项时,
pnpm why -r --parseable缺少依赖项的问题 #8100。 - 修复当请求的版本与工作区包的版本不匹配时,
link-workspace-packages=true错误地链接工作区包的问题 #10173。 - 修复
pnpm update --interactive表格与长版本字符串断开,动态计算列宽度,而不是使用硬代码值 #10316。 --allow-build标志设置的参数被写入allowBuilds。- 修复了在
pnpm-workspace.yaml上指定filter会导致 pnpm 检测不到任何项目的 bug。 - 在没有参数和退出的情况下运行 pnpm dlx` 时打印帮助信息。
