版本控制和 API 稳定性

版本控制

Scrapy 版本号包含 3 个数字:A.B.C

  • A 是主版本号。这很少改变,代表非常大的改动。

  • B 是发布号。这将包含许多改动,包括新特性和可能破坏向后兼容性的内容,尽管我们努力将这些情况降至最低。

  • C 是错误修复版本号。

向后不兼容性在发布说明中明确提及,在升级前可能需要特别注意。

开发版本不遵循 3 个数字的版本格式,通常以 dev 后缀版本发布,例如 1.3dev

注意

在 Scrapy 0.* 系列中,Scrapy 使用奇数版本号表示开发版本。从 Scrapy 1.0 起不再是这样。

从 Scrapy 1.0 开始,所有版本都应被视为生产就绪版本。

例如

  • 1.1.11.1 系列的第一个错误修复版本(可在生产环境安全使用)

API 稳定性

API 稳定性是 1.0 版本的主要目标之一。

以单下划线 (_) 开头的方法或函数是私有的,绝不应依赖其稳定性。

此外,请记住稳定性不代表完整性:稳定的 API 可能会增加新的方法或功能,但现有方法应保持相同的工作方式。

废弃策略

我们计划至少维持对废弃的 Scrapy 特性的支持一年。

例如,如果在 2020 年 6 月 15 日发布的 Scrapy 版本中弃用了某个特性,该特性应在 2021 年 6 月 14 日或之前发布的版本中继续可用。

一年后的任何新的 Scrapy 版本*可能*会移除对该废弃特性的支持。

在 Scrapy 版本中移除的所有废弃特性都在发布说明中明确提及。