Перейти до змісту

Про версії FastAPI

🌐 Переклад ШІ та людьми

Цей переклад виконано ШІ під керівництвом людей. 🤝

Можливі помилки через неправильне розуміння початкового змісту або неприродні формулювання тощо. 🤖

Ви можете покращити цей переклад, допомігши нам краще спрямовувати AI LLM.

Англійська версія

FastAPI уже використовується у продакшні в багатьох застосунках і системах. Покриття тестами підтримується на рівні 100%. Але розробка все ще рухається швидко.

Нові можливості додаються часто, помилки регулярно виправляються, а код постійно поліпшується.

Тому поточні версії все ще 0.x.x, це відображає те, що кожна версія потенційно може містити несумісні зміни. Це відповідає правилам Семантичного версіонування.

Ви можете створювати продакшн-застосунки з 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