-
Poetry 의존성 Syntax (~, ^ 에 대해)파이썬 2022. 4. 20. 17:13
Poetry로 의존성 관리하다보면 pyproject.toml에 ~나 ^가 버전앞에 적혀있는 것을 볼 수 있다.
이러한 Syntax에 대해 정리해보았다.
Caret Requirements
Django = "^3.2.4"
0이 아닌 가장 왼쪽의 버전 섹션 까지만 유지한다.
3.2.4 ≤ Django < 4.0.0
사이의 버전을 유지하면서 Poetry가 의존성 관리를 해준다.Django = “^0.3.1”
이라면0.3.1 ≤ Django < 0.4.0
사이의 버전을 유지한다.Tilde Requirements
Django = "~4.0.4"
가장 왼쪽 섹션 기준으로 버전을 유지한다.
major
,minor
,patch
섹션이 존재한다면Django = "~4.0.4”
→
4.0.4 ≤ Django < 4.1.0
major
,minor
섹션이 존재한다면Django = "~4.0"
→
4.0.0 ≤ Django < 4.1.0
major
섹션이 존재한다면Django = "~4”
→
4.0.0 ≤ Django < 5.0.0
major, minor, path 이렇게 세가지 나누어로 버저닝을 하는 것을 Semantic versioning이라고 한다.
{major}.{minor}.{patch}
참고 링크Exact Requirements
Django = "4.0.4"
어떠한 수정도 하지 않는다는 것을 의미한다. Poetry는 해당 버전을 계속 유지하도록 한다.
poetry update
명령을 해도 poetry 패키지는 업데이트 되지 않는다.언제나 해당 버전을 유지하기 때문에 의존성 관리시 유의해야 한다.
Ref.
https://python-poetry.org/docs/dependency-specification/
'파이썬' 카테고리의 다른 글
부하테스트 - Locust (설치 및 스크립트 작성) (0) 2022.05.15