# pip 20.3 부터 새로운 dependency resolver (버전 의존성 해결자)가 도입되며 기본으로 쓰입니다.

> Clean Markdown view of GeekNews topic #3291. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=3291](https://news.hada.io/topic?id=3291)
- GeekNews Markdown: [https://news.hada.io/topic/3291.md](https://news.hada.io/topic/3291.md)
- Type: news
- Author: [minhoryang](https://news.hada.io/@minhoryang)
- Published: 2020-12-02T01:09:12+09:00
- Updated: 2020-12-02T01:09:12+09:00
- Original source: [pyfound.blogspot.com](https://pyfound.blogspot.com/2020/11/pip-20-3-new-resolver.html)
- Points: 8
- Comments: 0

## Topic Body

1. 의존성을 해결할 때의 모순이 많이 줄었습니다.

과거(pip 20.0)에는 pip install "six<1.12" "virtualenv==20.0.2" 의 결과로 six==1.11가 설치되었는데, virtualenv==20.0.2는 six>=1.12.0,<2를 필요로 했었기에 이는 잘못된 동작입니다.

지금(20.3)부터는 아무것도 설치하지 않고 설치가 거부됩니다.

2. 엄격(깐깐)해집니다.

- 하위 의존성이 호환되지 않는 두 패키지를 한번에 설치하려할 경우, 설치가 거부됩니다.

3. 이러한 결과로, 아래 두 명령이 같은 패키지를 설치하지 않을 수 있습니다.

- pip install x && pip install y

- pip install x y

4. Constraints(lockfile), editable, == match require hash-checking 등 여러가지 변경사항도 생겼습니다.

새 dependency resolver는 --use-deprecated=legacy-resolver 로 끌 수 있으며, 이는 2021년 1월까지 (pip 21.0 release candidate) 지원됩니다.

기존에 있던 미봉책(workaround)들이 작동하지 않을 수 있습니다. 본문에 여러가지 해결방안이 나와있으니 참고해보세요.

## Comments



_No public comments on this page._
