共计 816 个字符,预计需要花费 3 分钟才能阅读完成。
Node.js 技术指导委员会 (TSC) 已正式投票决定停止在未来版本的 Node.js 中分发 Corepack。
这项通过加密投票做出的决定将影响未来的 Node.js 版本(即 25+),尽管 Corepack 将在 Node.js 24 及更早版本中作为实验性功能保留。
Corepack 在 Node.js 中的角色
Corepack 是 Node.js 的一个实验性工具,它用于管理 JavaScript 包管理器的版本。JavaScript 包管理器,比如 npm、Yarn 或 pnpm,是用来帮助开发者安装和管理项目依赖的工具。
在 Node.js 中,npm 通常会预装。但是,如果你想使用不同版本的 npm,或者其他包管理器如 Yarn 和 pnpm,你可能需要手动安装它们,并确保你的项目中的所有开发者都使用相同的版本。这是一个挑战,因为每个人都需要手动安装并维护这些工具的正确版本。
这就是 Corepack 发挥作用的地方:它允许你在你的项目中指定所需的包管理器和版本,然后 Corepack 负责自动下载并使用正确的版本。这样,项目中的所有人都将使用完全相同的包管理器,这有助于避免“在我的机器上运行良好”的问题。
为什么要移除 Corepack?
TSC 投票反映了一种偏好,即逐步淘汰 Corepack,而不是将其与 Node.js 一起捆绑。获胜的提案——” 稍后逐步淘汰 ”——确保 Corepack 将不再与未来的 Node.js 版本一起分发,同时在 Node.js 24 中作为实验性功能保留。其他提案,包括将 Corepack 保留在 Node.js 中但默认禁用,未能获得足够的支持。
决定的主要原因:
- 缺乏广泛采用:许多开发人员和团队继续使用他们首选的包管理器安装,完全绕过 Corepack。
- 分发问题:Corepack 包含在 Node.js 二进制文件中被视为不必要地捆绑了一个可以单独安装的工具。
- 长期维护:从 Node.js 分发中移除 Corepack 允许包管理器独立发展,而不需要在 Node.js 本身中进行更改。
正文完