Spec-Zone.ru › FastAPI

О версиях FastAPI

FastAPI уже используется в production во многих приложениях и системах. Покрытие тестами при этом составляет 100%. Но разработка по-прежнему ведётся быстрыми темпами.

Новые функции добавляются часто, ошибки регулярно исправляются, а код постоянно совершенствуется.

Именно поэтому текущие версии всё ещё 0.x.x, это означает, что в каждой версии потенциально могут быть критические изменения. Это соответствует соглашениям о семантическом версионировании.

Вы можете создавать production-приложения с помощью FastAPI уже сейчас (и, вероятно, уже какое-то время так и делаете), просто убедитесь, что используете версию, которая корректно работает с остальным кодом.

Зафиксируйте версию fastapi

Прежде всего, вам следует зафиксировать версию FastAPI, которую вы используете, указав конкретную последнюю версию, которая, как вы знаете, корректно работает в вашем приложении.

Например, допустим, в вашем приложении используется версия 0.112.0.

Если вы используете файл requirements.txt, можно указать версию так:

fastapi[standard]==0.112.0

это означает, что будет использоваться именно версия 0.112.0.

Или можно зафиксировать версию так:

fastapi[standard]>=0.112.0,<0.113.0

это означает, что будут использоваться версии 0.112.0 или выше, но ниже 0.113.0. Например, версия 0.112.2 тоже будет допустима.

Если для управления установками вы используете другой инструмент, например uv, Poetry, Pipenv или другие, все они позволяют указывать конкретные версии пакетов.

Доступные версии

Доступные версии (например, чтобы узнать, какая версия является последней) можно посмотреть в примечаниях к выпускам.

О версиях

Согласно соглашениям о семантическом версионировании, в любой версии ниже 1.0.0 потенциально могут появиться критические изменения.

FastAPI также следует соглашению, согласно которому любое изменение версии "PATCH" предназначено для исправления ошибок и внесения изменений, не нарушающих обратную совместимость.

Совет

"PATCH" — это последнее число. Например, в 0.2.3 версия PATCH — 3.

Поэтому вы можете зафиксировать версию, например, так:

fastapi>=0.45.0,<0.46.0

Критические изменения и новые функции добавляются в версиях "MINOR".

Совет

"MINOR" — это число посередине. Например, в 0.2.3 версия MINOR — 2.

Обновление версий FastAPI

Вам следует добавить тесты для своего приложения.

С FastAPI это очень просто (благодаря Starlette). Ознакомьтесь с документацией: Тестирование

После того как вы добавите тесты, можно обновить версию FastAPI до более новой и убедиться, что весь код работает корректно, запустив тесты.

Если всё работает или вы внесли необходимые изменения и все тесты проходят, зафиксируйте fastapi на этой новой версии.

О Starlette

Не следует фиксировать версию starlette.

В разных версиях FastAPI используется определённая более новая версия Starlette.

Поэтому просто позвольте FastAPI использовать подходящую версию Starlette.

О Pydantic

Pydantic включает тесты для FastAPI в собственный набор тестов, поэтому новые версии Pydantic (выше 1.0.0) всегда совместимы с FastAPI.

Вы можете зафиксировать любую версию Pydantic выше 1.0.0, которая вам подходит.

Например:

pydantic>=2.7.0,<3.0.0

© 2018 Sebastián Ramírez
Licensed under the MIT License.
https://fastapi.tiangolo.com/deployment/versions/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API