在setup.py中检查精确管脚的flake8扩展(e.q.:`foo==1.5.6`)
flake8-exact-pin的Python项目详细描述
在^{tt2}中检查包要求的精确管脚(==)$ 在setup.py中。
例如:
setup(# ...install_requires=['pyramid==1.5.6'],# ...)
精确的管脚通常是个坏主意,因为它们:
- 如果您的包将被重复使用,则限制其灵活性;即:用作 其他python库或应用程序的库。你强迫他们 使用他们可能不想使用或与之冲突的特定版本 他们已经用过的东西。如果你的包裹是 应用程序而不是库;但是,通常requirements.txt是 更好地管理您固定的应用程序需求(请参见 https://caremad.io/blog/setup-vs-requirement/)
- 在你的包里烤一个非常严格的要求;你可能需要重新制作 你的包只是使用一个新版本的包和一个错误修复。
- 如果精确的pin,则可能导致难以解决的版本冲突 一些包版本和不确切的别针其他。其他一些包裹 可能需要一个不同的版本,而它可能是 pip不可能解决这个问题。
安装
如果还没有,请安装flake8:
$ pip install flake8
然后,安装延长件:
$ pip install flake8-exact-pins
用法
运行以下命令以验证插件是否已正确安装:
$ flake8 --version 2.4.1 (pep8: 1.5.7, flake8-exact-pin: 0.0.0, pyflakes: 0.8.1, mccabe: 0.3) CPython 2.7.9 on Darwin
现在,当您运行flake8时,插件将自动被使用。
当找到一个精确的pin时,flake8将输出如下内容:
./setup.py:28:37: P001 exact pin found in install_requires: "pyramid==1.5.6"