标准库的稳定化过程已经开始
我们很高兴地宣布,Deno 标准库迎来一个重要里程碑:Deno 标准库的各个包即将稳定到 1.0 版本。这意味着任何使用稳定版 v1 版本的代码都将继续按照语义化版本控制规则正常运行。用户可以使用 @1
版本选择器(例如:jsr:@std/bytes@1
)导入这些包,以在发布时自动接收错误修复。此过程目标于七月完成。
稳定化进程
正如我们在上一篇文章中所述,Deno 标准库现在是 38 个包的集合。
我们将逐个包进行稳定化,而不是一次性稳定整个标准库。我们选择此策略是为了最大限度地减少错误和疏漏的风险,并最大限度地增加社区在最后时刻再次审视每个包设计的机会。
具体来说,每个包都将经历以下过程:
- 包的文档覆盖率达到 100%
- 包的测试覆盖率达到合理的高水平(通常为 100%,但也有例外)
- 当主要维护者同意设计时,发布
1.0.0-rc.1
(发布候选版本)。 - 等待社区反馈一个月。
- 维护者处理并解决社区的反馈。
- 如果在等待期结束后没有剩余问题,则发布
1.0.0
。- 如果存在未解决的问题,等待期将延长,并重复此过程。
稳定化计划
目前已有一个包完成稳定化,另有九个包处于 RC(发布候选)版本。下表描述了每个包的当前状态和未来计划。
包 | 已稳定 | 稳定日期 | RC 计划日期 | 稳定计划日期 |
---|---|---|---|---|
bytes | ✅ | 2024-06-06 | ||
collections | 2024-06-20 | |||
media-types | 2024-06-21 | |||
crypto | 2024-06-30 | |||
encoding | 2024-06-30 | |||
uuid | 2024-06-30 | |||
assert | 2024-07-03 | |||
path | 2024-07-04 | |||
html | 2024-07-05 | |||
toml | 2024-07-06 | |||
url | 2024-07-07 | |||
data-structures | 2024-06-10 | 2024-07-10 | ||
ulid | 2024-06-11 | 2024-07-11 | ||
regexp | 2024-06-12 | 2024-07-12 | ||
text | 2024-06-13 | 2024-07-13 | ||
msgpack | 2024-06-14 | 2024-07-14 | ||
async | 2024-06-17 | 2024-07-17 | ||
cli | 2024-06-18 | 2024-07-18 | ||
io | 2024-06-19 | 2024-07-19 | ||
streams | 2024-06-20 | 2024-07-20 | ||
fmt | 2024-06-21 | 2024-07-21 | ||
net | 2024-06-24 | 2024-07-24 | ||
http | 2024-06-25 | 2024-07-25 | ||
fs | 2024-06-26 | 2024-07-26 | ||
json | 2024-06-27 | 2024-07-27 | ||
testing | 2024-06-28 | 2024-07-28 | ||
jsonc | 2024-07-01 | 2024-07-22 | ||
csv | 2024-07-02 | 2024-07-23 | ||
semver | 2024-07-03 | 2024-07-24 | ||
expect | 2024-07-04 | 2024-07-25 | ||
yaml | 2024-07-05 | 2024-07-26 | ||
front-matter | 2024-07-08 | 2024-07-29 | ||
ini | 2024-07-09 | 2024-07-30 | ||
dotenv | 2024-07-10 | 2024-07-31 |
(注:为缩短时间表,七月后等待期将缩短为三周。)
排除的包
我们决定将以下四个包排除在此次稳定化迭代之外:
包 | 备注 |
---|---|
datetime | 此包将在 Temporal 发布后重新设计。 |
webgpu | 此包被排除是因为 WebGPU 尚未稳定。 |
archive | 此包被排除是因为它正在重新设计中。 |
log | 此包的设计尚未准备就绪。 |
向我们提供反馈
我们期待您对这些包的 RC 版本的反馈。如果您目前正在使用标准库,请尝试 RC 版本并告诉我们您的想法!