跳转到主要内容

一个flake8扩展,用于检查setup.py中的精确版本号(例如:`foo==1.5.6`)

项目描述

检查setup.py中install_requires的包需求的精确版本号(例如:`==`)。

例如

setup(
    # ...
    install_requires=['pyramid==1.5.6'],
    # ...
)

精确版本号通常不是一个好主意,因为它们

  • 限制了灵活性,如果你的包将被重复使用;也就是说:作为其他Python库或应用程序的库使用。你正在强迫他们使用一个他们可能不想使用或与他们现有的版本冲突的特定版本。如果你的包是一个应用程序而不是库,则这不是一个大问题;然而,通常`requirements.txt`是管理被你固定的应用程序需求的更好地方(参见https://caremad.io/blog/setup-vs-requirement/

  • 将一个非常严格的需求固定到你的包中;你可能需要重新构建你的包,才能使用带有错误修复的新版本的包。

  • 如果你精确固定一些包版本而未固定其他版本,可能会产生难以解决的版本冲突。你的其他一些包可能需要与固定的版本不同的版本,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时,插件将自动使用。

当发现精确版本号时,flake8将输出类似以下内容

./setup.py:28:37: PIN001 exact pin found in install_requires: "pyramid==1.5.6"

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

flake8-exact-pin-0.1.0.tar.gz (4.0 kB 查看哈希值)

上传时间

构建分发

flake8_exact_pin-0.1.0-py3-none-any.whl (4.4 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面