检查PyPI包的版本是否过时
项目描述
过时
这是一个小型库,给定一个包名和版本,它会检查这个版本是否是PyPI上可用的最新版本。
安装
pip install outdated
快速入门
from outdated import warn_if_outdated
warn_if_outdated('my-package-name', '1.2.3')
这将
- 显示警告,如果给定版本不是最新版本。警告包括包名、给定版本和最新版本。
- 在后台线程中执行检查(这样不会延迟任何操作)
- 最多向PyPI服务器发出一个HTTP请求(除非发生HTTP错误,在这种情况下,它将尝试3次)以获取该特定包
- 将HTTP请求的结果缓存到磁盘上24小时
- 如果检查期间发生任何异常,显示警告
这 不会 检查当前安装的版本,它只会使用给定版本。库作者必须确保其setup.py
中的版本与这里的一致。
包名参数必须与PyPI上使用的名称完全一致,例如https://pypi.python.org/pypi/my-package-name是一个有效的URL。
可选参数
background
(默认True
):在单独的线程中运行检查。设置为False
以立即运行。raise_exceptions
(默认:False
):如果为True
,允许异常冒泡到顶部。否则,显示包含异常消息的警告。如果background
为True
且此为True
,则这将导致完整的跟踪信息显示,但过程继续。
低级API
from outdated import check_outdated
is_outdated, latest_version = check_outdated('my-package-name', '1.2.3')
is_outdated
是一个布尔值,当给定的版本早于最新版本(即字符串 latest_version
)时为 True。
可选参数
repository_url
(默认https://pypi.python.org/pypi/%s/json
):一个%
风格的格式化字符串,用于使用不同的 PyPI 仓库 URL,例如 test.pypi.org 或私有仓库。该字符串将使用软件包名称进行格式化。
这仍然会进行带有重试的 HTTP 调用,并在磁盘上缓存结果。它不使用单独的线程或发出任何警告(除非在特定使用缓存的情况下发生异常,在这种情况下,检查将不使用缓存进行)。
附加配置
要禁用此库的所有警告,请将环境变量 OUTDATED_IGNORE
设置为任何非空值。
要始终引发异常而不是将它们转换为警告(在 warn_if_outdated
中以及在存在缓存问题时更具体),请设置环境变量 OUTDATED_RAISE_EXCEPTION=1
。
警告也被分类,这样您就可以使用标准的 警告过滤器 容易地控制它们。类在这里 这里,可以直接从 outdated
模块导入。
性能
此库通过获取类似这样的 URL(如 此)来工作 - 访问该链接所需的时间实际上是库的速度。这比命令 pip list --outdated
或任何等效代码要快得多。
项目详细信息
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。
源分布
outdated-0.2.2.tar.gz (9.3 kB 查看散列)
构建分布
outdated-0.2.2-py2.py3-none-any.whl (7.5 kB 查看散列)
关闭
outdated-0.2.2.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 4b7fdec88e36711120d096d485fc4d5035e4e5ffbd907cf3a6ce2af43058b970 |
|
MD5 | 54e1c2d4ba1a1ab4e27e492002860099 |
|
BLAKE2b-256 | e943ac45b6c53fc62c99f02dbc310939d8693aa76cdf9900afe74a60febc8266 |
关闭
outdated-0.2.2-py2.py3-none-any.whl 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 3e9c2ee6d17e86ae8cc7bb71d70c4172690121cda367155a30994742172678c8 |
|
MD5 | eae157ea31660526e72b8d05b1cf5afe |
|
BLAKE2b-256 | d3047d2b9a0d1b81e30f39e6f358bac01f4f18b585f35b0ffc5c83fc274f146b |