跳转到主要内容

搜索废弃和过时的Python包

项目描述

pip-abandoned

Run tests codecov PyPI Version License Python Compatibility Code style: black

安装

我建议使用pipx安装

pip-abandoned

。这将为您提供一个系统级别的

pip-abandoned

安装,其依赖项与您打算扫描的任何环境隔离开。

或者,您可以使用您选择的包管理器(如pip、poetry、pipenv等)从PyPI安装

pip-abandoned

介绍

一些包注册中心,如NPM和Packagist,允许用户将包标记为废弃或已弃用。这意味着您可以很容易地判断您是否依赖于作者废弃的包。这也允许包管理器在安装时消耗此元数据以提供警告。PyPI没有废弃或弃用包的机制。尽管如此,我们仍然可以观察一些信号。

  • 许多包链接到GitHub存储库。如果该GitHub存储库已存档,这是一个强烈的信号,表明该包本身已被废弃。
  • 一些包可能使用Development Status :: 7 - Inactive分类器来指示包不是活跃维护的。
  • 一些包可能在项目的README中包含一个not maintained徽章,以表明该包不是活跃维护的。

pip-abandoned

使用这些信号来识别您环境中的潜在废弃包。

身份验证

pip-abandoned 使用 GitHub GraphQL API 来高效地一次性查询多个仓库。这种方法的优点是速度快,缺点是需要进行认证。对于大多数情况,拥有对公共仓库的只读访问权限的 Personal Access Token (PAT) 就足够了。我们可以通过两种方式提供认证令牌

  • 通过名为 GH_TOKEN 的环境变量,例如:GH_TOKEN=ghp_abc123
  • 运行 pip-abandoned set-token 以使用系统密钥环服务存储令牌,详情请参阅 keyring

用法

# Search a virtualenv path:
pip-abandoned search /home/alice/.virtualenvs/myproject/lib/python3.10/site-packages
# Search a requirements file:
pip-abandoned search -r /path/to/requirements.txt

当搜索一个或多个需求文件时,您的包将被安装到一个临时虚拟环境中。这意味着此搜索将包括传递依赖项。

退出码

pip-abandoned search 在以下情况下退出

  • 代码 0:没有找到非活动、存档或未维护的包
  • 代码 1:遇到错误。例如
    • 提供的路径中没有提供包或
    • 未提供认证令牌
  • 代码 9:找到一个或多个非活动、存档或未维护的包

灵感来源

pip-abandoned 从另一个伟大的项目 pip-audit 中获得灵感。

项目详情


下载文件

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

源分布

pip_abandoned-0.4.1.tar.gz (13.7 kB 查看哈希值)

上传时间

构建分布

pip_abandoned-0.4.1-py3-none-any.whl (8.4 kB 查看哈希值)

上传时间 Python 3

支持者