主要观点:
- 过去几年出现新的包管理器如 yarn 和 pnpm 提升了包的下载方式,但 npm 包注册表几乎未进化,与语言的活跃进化形成悖论。
- 当初创建 Node 时无标准模块系统,npm 注册表和 Node 默认 CommonJS,十年前采用 ES 模块语法,但模块分发路径仍复杂,尤其是涉及 TypeScript 时,促使创建 JSR 来改变这一状况。
- JSR 通过简化复杂问题改善代码分发过程,是 ESM 唯一且优先支持 TypeScript 的注册表,通过包评分系统鼓励最佳实践,还能与 npm 兼容。
- Deno 重视 JavaScript 开发的安全性,JSR 提供关于发布者的透明度和安全的发布过程,通过集成 OIDC 令牌等建立信任。
- JavaScript 是通用语言,需要一个中心枢纽,JSR 旨在支持其在软件开发中的持久相关性,是对代码管理和安全的新尝试。
关键信息:
- npm 包注册表最后显著更新是多年前添加的“files” tab。
- 2015 年 JavaScript 采用 ES 模块语法,现多数用 ES 模块但分发路径复杂。
- JSR 是 ESM 唯一和 TypeScript 优先的注册表,有包评分系统等。
- JSR 可与 npm 兼容,允许依赖 npm 包,可在现有 npm 软件中使用。
- Deno 重视安全,JSR 提供安全的发布过程并建立信任。
重要细节:
- 提到不同开发者对 JSR 的推文宣传。
- 列出关于 JSR 的多个相关链接,如 JSR.io、JSR 公告等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。