我正在寻找有关python包中pip的需求文件中的版本规范的最佳实践,不做和不做。
假设一个python包依赖于其他一些模块。大多数都需要最低版本。至少维护人员知道,代码最少使用,例如,六点1.7
现在,可以用不同的方式定义需求:
six>=1.7.0
该软件已使用此版本进行测试,并假设它也将与未来版本一起使用six==1.7.0
我们需要确切的版本,包已经过测试。该软件尚未针对该模块的所有未来版本进行测试,因此我们无法保证该软件适用于该模块。six==1.9.0
我们只是使用最新版本对其进行测试并要求它。我确实有一个禁止要求一个确切的版本,因为它可能会破坏其他软件包的要求,对我来说似乎是不好的做法。另一方面,该套件尚未经过1.7.0以上六种版本的测试。
是否有关于包版本要求和==
对>=
的使用的指导原则?
答案 0 :(得分:2)
根据我作为开发人员,packager(发行版的软件包维护者)和软件维护者的经验,我得出以下解释/建议:
打包者通常不使用requirements.txt中的信息,而是使用install_requires和extras_requires中的信息。