최소 및 최대 버전 범위로 패키지를 설치하는 방법은 무엇입니까? 타사 라이브러리를 사용하고 있기 때문에 묻습니다.

최소 버전 ( pip install package>=0.2)과 절대로 설치해서는 안되는 최대 버전 (이론적 API 🙂 으로 패키지를 설치하기 위해 pip, 특히 요구 사항 파일에서 pip를 알려주는 방법이 있는지 궁금합니다 pip install package<0.3.

적극적으로 개발중인 타사 라이브러리를 사용하고 있기 때문에 묻습니다. pip 요구 사항 파일에서 항상 0.5.x 지점의 최신 부 릴리스를 설치하도록 지정하고 싶지만 pip가 0.6.x와 같은 최신 주요 버전을 설치하려고하지 않습니다. API가 다릅니다. 0.6.x 브랜치를 사용할 수 있지만 개발자는 여전히 0.5.x 브랜치에 패치 및 버그 수정을 릴리스하므로 package==0.5.9요구 사항 파일에 정적 줄 을 사용하고 싶지 않기 때문에 이것은 중요 합니다.

그렇게 할 방법이 있습니까?



답변

넌 할 수있어:

$ pip install "package>=0.2,<0.3"

그리고 pip버전을 가정하는 것은 적어도 0.2, 0.3 이하, 가장 일치를 찾습니다.

이것은 pip 요구 사항 파일 에도 적용됩니다 . PEP 440의 버전 지정자에 대한 자세한 내용을 참조하십시오 .


답변

당신은 또한 사용할 수 있습니다 :

pip install package==0.5.*

더 일관성 있고 읽기 쉽습니다.


답변

우아한 방법은 PEP 440~= 에 따라 호환 가능한 릴리스 연산자 를 사용하는 것 입니다. 귀하의 경우 이것은 다음과 같습니다.

package~=0.5.0

예를 들어, 다음 버전이 존재하면 다음을 선택합니다 0.5.9.

  • 0.5.0
  • 0.5.9
  • 0.6.0

설명을 위해 각 쌍은 동일합니다.

~= 0.5.0
>= 0.5.0, == 0.5.*

~= 0.5
>= 0.5, == 0.*


답변