2017-12-23 8 views
0

나는 우리가 패키지의 정확한 버전은 우리가 설치 될 버전을 변화 할 수 있도록 this syntax을 사용할지 여부를 고려하고requirements.txt에 다른 버전 허용?

을 지정하는 requirements.txt 파일이 파이썬 프로젝트에서 일하고 있어요. 권장 사항입니까? 또는 각 패키지의 특정 버전을 계속 사용하는 것이 더 안전합니까? 사소한 버전이나 패치 버전을 전환 할 때 PyPI 패키지 용 API가 동일하게 유지 될 수 있다고 믿을 수 있습니까?

설정 :

  • 파이썬 우리는 패키지
  • 을 구축 할 pyInstaller 중에를 사용하여 3.5
  • 트래비스 CI 도움을 원격으로

감사 사용!

+0

전적으로이 패키지에 달려 있습니다. 파이썬의 과학적 스택 (numpy, scipy, pandas, matplotlib, sklearn)은 꽤 성숙한 것이지만 (더 이상 나중에 제거/변경), 다른 것들은 다를 수 있습니다. – sascha

답변

1

종속 패키지가 심각한 버전 관리가 가능할만큼 성숙한 패키지 인 경우 semantic versioning 접근 방식을 따릅니다.

이 방법을 사용하고 위의 링크를 인용, 3 개 버전 번호가이 경우에 따라서

MAJOR version when they make incompatible API changes, 
MINOR version when they add functionality in a backwards-compatible manner, and 
MAINTENANCE version when they make backwards-compatible bug fixes. 

당신은을 사용하도록 패키지를 잠글 위에서 언급 구문을 사용할 수있다 즉, 패키지의 마지막, 비 부서지기 쉬운 API 버전 :

foo>5, <5.7 

(당신은 5.7에 주요 변경이 있었다는 것을, 또는가 있다는 것을 알고 있기 때문에 5.8의 새로운 기능은 필요하지 않습니다.