Управление версиями и стабильность API¶
Управление версиями¶
В версии Scrapy 3 числа: A.B.C
A — это основная версия. Это будет редко меняться и будет означать очень большие изменения.
B — это номер релиза. Это будет включать в себя множество изменений, включая функции и вещи, которые могут нарушить обратную совместимость, хотя мы стремимся свести данные случаи к минимуму.
C — это номер релиза исправления.
Обратная несовместимость явно упоминается в примечаниях к релизу и может потребовать особого внимания перед обновлением.
В выпусках для разработки не используются трехзначные версии, и они обычно выпускаются как версии с суффиксом dev
, например 1.3dev
.
Примечание
С серией Scrapy 0. *, Scrapy использовал версии с нечетными номерами для для релизов разработки . Начиная с Scrapy 1.0, это уже не так.
Начиная с Scrapy 1.0, все релизы следует считать готовыми к производству.
Например:
1.1.1 — это первый релиз с исправлением ошибок в серии 1.1 (безопасен для использования в производственной среде)
Стабильность API¶
Стабильность API была одной из основных целей релиза 1.0.
Методы или функции, которые начинаются с одного тире (_
), являются частными и никогда не должны считаться стабильными.
Кроме того, имейте в виду, что стабильность не означает завершенность: стабильные API могут расширять новые методы или функции, но существующие методы должны продолжать работать так же.
Политика устаревания¶
Мы стремимся поддерживать устаревшие функции Scrapy в течение как минимум 1 года.
Например, если функция устарела в версии Scrapy, выпущенной 15 июня 2020 года, данная функция должна продолжать работать в версиях, выпущенных 14 июня 2021 года или ранее.
Любой новый релиз Scrapy после года может удалить поддержку этой устаревшей функции.
Все устаревшие функции, удаленные в выпуске Scrapy, явно упомянуты в примечаниях к релизу.