Skip to content

의존성 선언

임시 설치로 환경을 수정하는 대신, 정적 파일에 의존성을 선언하는 것이 가장 좋은 방법이다. 의존성을 정의하고 나면, 이를 잠금하여 일관적이고 재현 가능한 환경을 만들 수 있다.

pyproject.toml 사용하기

pyproject.toml 파일은 프로젝트 설정을 정의하는 파이썬 표준 파일이다.

pyproject.toml 파일에서 프로젝트 의존성을 정의하려면 다음과 같이 작성한다:

pyproject.toml
[project]
dependencies = [
  "httpx",
  "ruff>=0.3.0"
]

pyproject.toml 파일에서 선택적 의존성을 정의하려면 다음과 같이 작성한다:

pyproject.toml
[project.optional-dependencies]
cli = [
  "rich",
  "click",
]

각 키는 "extra"를 정의하며, --extra--all-extras 플래그나 package[<extra>] 구문을 사용해 설치할 수 있다. 자세한 내용은 패키지 설치 문서를 참고한다.

pyproject.toml 시작하기에 대한 더 자세한 내용은 공식 pyproject.toml 가이드를 확인한다.

requirements.in 사용하기

프로젝트의 의존성을 정의할 때 가벼운 requirements.txt 형식을 사용하는 것도 일반적이다. 각 요구사항은 한 줄씩 정의한다. 보통 이 파일은 잠긴 의존성을 정의하는 requirements.txt와 구분하기 위해 requirements.in이라고 부른다.

requirements.in 파일에서 의존성을 정의하는 방법은 다음과 같다:

requirements.in
httpx
ruff>=0.3.0

이 형식에서는 선택적 의존성 그룹을 지원하지 않는다.