pnpm 12.0:Rust 重写的性能飞跃

pnpm 12.0 正式稳定发布,这是基于 Rust 语言完全重写的版本,旨在提升性能与稳定性。此次更新并非简单的迁移,而是保留了 pnpm 11 的所有命令、标志和锁文件格式,确保平滑过渡。核心改进包括 Git 依赖解析的规范化、循环依赖锁文件的确定性生成,以及在 Linux 上优先使用硬链接以加速安装。新功能亮点纷呈:项目感知的全局二进制文件管理、支持通过 pnpm 安装 npm 和 Yarn 等其他包管理器、以及引入 Registry revisions 机制以在不变更版本号的情况下修复漏洞。此外,pnpm 12.0 还增强了安全性,拒绝在 sudo 下运行全局命令,并优化了审计报告的清理流程。

pnpm 12 是 pnpm 的 Rust 重写版本,它刻意设计为无需迁移:pnpm 11 的所有命令、标志、设置和锁文件格式均完全保留。
  1. BlueGreenMagick

    > 这是 pnpm 的 Rust 重写版

    他们的基准测试 [0] 报告显示,带 lockfile 的干净安装速度快了约 3 倍(7 秒降至 2.2 秒),而无需操作的安装速度快了约 29 倍(517 毫秒降至 18 毫秒)

    [0]: https://pnpm.io/benchmarks

  2. 1matin

    只要你在文章里看到大量长破折号(—),大概率是 Claude 写的。

  3. deanc

    我很好奇,既然文中没提,这次重写有没有带来任何性能提升?

  4. norman784

    我得出的结论是,无聊点挺好。对我来说 NPM 就是最好的工具,它不算快,但考虑到我很少需要从头开始运行,安装速度的差异其实无关紧要。它很稳定,又是 Node 默认的包管理器,所以我没必要在 CI 里额外安装其他工具等等。我的经验是,对于长期维护的项目,就坚持用默认方案,因为几年后第三方工具肯定会变。我的团队就遇到过 Yarn classic 的问题,现在我们用原生 Node 和 NPM 就没什么操心的了。第三方依赖也一样,尽量少用。

  5. xiaoyu2006

    看来是时候跳船了。他们连自己的 changelog 都懒得写。

同日更多故事

2026-08-27