[ FastAPI ] FastAPI 버전
FastAPI는 이미 많은 애플리케이션과 시스템의 실제 제품으로 사용되고 있습니다. 그리고 테스트 커버리지는 100%로 유지되고 있습니다. 그러나 그 개발은 여전히 빠르게 변화하고 있습니다.
새로운 기능이 자주 추가되며, 버그는 정기적으로 수정되고, 코드는 계속해서 개선되고 있습니다.
이것이 어째서 최신 버전이 아직 0.x.x 인 이유이며, 각 버전마다 잠재적으로 다른 것에 영향을 줄 수 있는 변경 사항이 있을 수 있음에 대한 방증입니다. 이는 유의적 버전 규칙을 따릅니다.
지금 당장 FastAPI를 사용해 애플리케이션 제품을 만들고, (아마도 한 동안 동일한 버전으로 했을 것입니다) 나머지 코드로 올바르게 작동하는 버전을 사용 중인지 확인하기만 하면 됩니다.
fastapi 버전 고정
가장 우선적으로 해야 할 일은 사용 중인 FastAPI 버전을 애플리케이션에서 올바르게 작동하는 것으로 알고 있는 특정 최신 버전으로 "고정"하는 것입니다.
예를 들어, 애플리케이션에 0.45.0 버전을 사용 중이라 해봅시다.
requirements.txt 파일을 사용 중이라면 다음과 같이 버전을 명시할 수 있습니다:
이것은 정확히 버전 0.45.0 을 사용한다는 걸 의미합니다.
또는 다음과 같이 고정할 수 있습니다:
이것은 버전 0.45.0 또는 예를 들어, 버전 0.45.2 처럼 0.46.0 미만의 윗 버전을 사용한다는 걸 의미합니다.
만약 Poetry, Pipenv, 또는 기타 다른 설치를 관리하는 도구를 사용한다면, 패키지를 위한 특정 버전을 정의할 수 있는 그들만의 방법이 있습니다.
사용 가능한 버전
배포 노트에서 (이를 테면 가장 최신 버전 같이) 사용 가능한 버전을 확인할 수 있습니다.
버전
유의적 버전 규칙에 따르면, 1.0.0 미만의 모든 버전은 잠재적으로 다른 것에 영향을 줄 수 있는 변경 사항을 추가할 수 있습니다.
FastAPI 또한 버그 수정 및 다른 것에 영향을 주지 않는 변경 사항을 위한 모든 "수" 버전 변경 규칙을 따릅니다.
팁
"수"는 예를 들어, 0.2.3 에서, 3 과 같이 가장 마지막 숫자를 의미합니다.
따라서, 다음과 같이 버전을 고정할 수 있습니다:
다른 것에 영향을 줄 수 있는 변경 사항이나 새로운 기능은 "부" 버전에 추가됩니다.
팁
"부"는 예를 들어, 0.2.3 에서, 2 와 같이 중간에 위치한 숫자를 의미합니다.
FastAPI 버전 업그레이드
애플리케이션을 위한 테스트를 추가해야만 합니다.
FastAPI를 사용하여 (Starlette 덕분에) 쉽게 테스트 할 수 있는데, 다음 문서를 확인해보시기 바랍니다: 테스트
테스트가 끝나면, 더 최신 버전의 FastAPI로 업그레이드하고, 모든 코드가 테스트에서 올바르게 작동하는 지 확인할 수 있습니다.
만약 모든 게 작동한다면, 또는 필요한 수정 작업을 끝냈다면, 그리고 모든 테스트가 통과 됐다면, 이제 최신의 새로운 버전으로 fastapi 를 고정할 수 있습니다.
Starlette
starlette 버전을 고정해서는 안 됩니다.
FastAPI의 각 버전은 Starlette의 특정 새로운 버전을 사용합니다.
따라서, FastAPI가 올바른 Starlette 버전을 사용할 수 있게 놔두시기 바랍니다.
Pydantic
Pydantic에는 자체 테스트와 함께 FastAPI에 대한 테스트도 포함되어 있으므로, ( 1.0.0 이상의) 새로운 Pydantic 버전은 항상 FastAPI와 호환됩니다.
모든 1.0.0 이상 그리고 2.0.0 미만의 Pydantic 버전은 작동하기에 고정할 수 있습니다.
예를 들어 다음과 같습니다:
'FastAPI > Deployment' 카테고리의 다른 글
[ FastAPI ] HTTPS (0) | 2021.08.29 |
---|---|
[ FastAPI ] 배포 - 도입부 (0) | 2021.08.29 |