版本控制和 API 稳定性

版本控制

Scrapy 版本号由三个数字组成: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 功能 1 年。

例如,如果某个功能在 2020 年 6 月 15 日发布的 Scrapy 版本中被弃用,则该功能应继续在 2021 年 6 月 14 日或之前发布的版本中工作。

一年后发布的任何新的 Scrapy 版本都 *可能* 会删除对该弃用功能的支持。

Scrapy 版本中删除的所有弃用功能都会在发行说明中明确说明。