pip-chill 사용하기

모든 의존성 대신 설치한 의존성만 보여주도록 하기

만들고자 하는 것

모든 의존성이 아니라 설치한 pip 목록만 requirements.txt 에 담기

requirements.txt 생성하기 글에서 pip freeze 를 사용하여 requirements.txt 를 생성하였다. 근데 pip freeze 의 문제는 모든 의존성을 담는다는 것이다.

12-1.jpeg

이미지 출처

설치 및 실행하기

pip install pip-chill
pip-chill > requirements.txt

pip freeze 를 사용한 requirements.txt 내용

anyio==3.6.2
click==8.1.3
exceptiongroup==1.1.1
Faker==18.9.0
fastapi==0.95.2
h11==0.14.0
httptools==0.5.0
idna==3.4
iniconfig==2.0.0
packaging==23.1
parameterized==0.9.0
pluggy==1.0.0
pydantic==1.10.7
pytest==7.3.1
python-dateutil==2.8.2
python-dotenv==1.0.0
PyYAML==6.0
six==1.16.0
sniffio==1.3.0
starlette==0.27.0
tomli==2.0.1
typing_extensions==4.5.0
uvicorn==0.22.0
uvloop==0.17.0
watchfiles==0.19.0
websockets==11.0.3

pip-chill 를 사용한 requirements.txt 내용

faker==18.9.0
fastapi==0.95.2
httptools==0.5.0
parameterized==0.9.0
pip-chill==1.0.3
pytest==7.3.1
python-dotenv==1.0.0
pyyaml==6.0
uvicorn==0.22.0
uvloop==0.17.0
watchfiles==0.19.0
websockets==11.0.3

확실히 간단해진 것을 볼 수 있다. 지금 설치한 의존성이 별로 없는데도 이 정도 차이이니 조금만 더 규모가 있어도 확연히 달라질 것이다.


FastAPI 배포하기
RESTAPI 복수형 명사 사용하기
NCloud LB & SourcePipeline 구축하기
tech collection 서비스 성능 개선하기
Selenium 복권 구매 자동화 만들어보기
디자인 패턴
책 리뷰
블로그 챌린지