pnpm 10.28
· 一分钟阅读
pnpm 10.28 引入了一个新的 beforePacking 钩子,用于在发布时自定义 package.json,提高了过滤安装的性能,并修复了几个错误。
次要更改
beforePacking 钩子
添加了对名为 beforePacking 的新钩子的支持,允许你在发布时自定义 package.json 内容 #3816。
在运行 pnpm pack 或 pnpm publish 时,这个钩子就在创建 tarball 之前被调用。 它允许你修改将包含在已发布软件包中的软件包清单,而不会影响你本地的 package.json 文件。
.pnpmfile.cjs 中的示例用法:
module.exports = {
hooks: {
beforePacking(pkg) {
// 移除仅用于开发的字段
delete pkg.devDependencies
delete pkg.scripts
// 添加发布元数据
pkg.publishedAt = new Date().toISOString()
return pkg
}
}
}
有关更多详细信息,请参阅 .pnpmfile.cjs 文档。
过滤后的安装性能
在某些情况下,使用过滤参数进行安装(即 pnpm install --filter ...)比不带任何过滤参数运行 pnpm install 的速度要慢。 此性能下降问题现已修复。 过滤后的安装速度应该与完整安装一样快或更快 #10408。
