跳转到主要内容

从sdists / bdists / 已安装包查询元数据。避免任意导入和eval()的安全pkginfo分叉

项目描述

pkginfo2 README

主页URL: https://github.com/nexB/pkginfo2 SPDX-License-Identifier: MIT

本软件包提供了一个API,用于查询源分发(sdist)或二进制分发或wheel(例如,通过运行bdist_egg创建)中的PKG-INFO文件中编写的distutils元数据。它还可以查询已安装分发的EGG-INFO目录,以及存储在“开发签出”中的*.egg-info(例如,通过运行setup.py develop创建)或已安装包的*.dist-info

这是http://bazaar.launchpad.net/~tseaver/pkginfo的一个分支,移除了导入和评估任意代码以及与当前解释器所知的模块工作的能力。如果需要这些功能,请使用importlib_metadata。

有关更多文档,请参阅pkginfo2仓库

pkginfo2 更新日志

30.0.0 (2022-01-28)

  • 分支并重命名为pkginfo2。移除了导入或评估包或模块的能力。

  • 将bzr历史迁移到git

1.8.2 (2021-12-01)

  • 添加了对已安装分发中__package__设置为空字符串的修复。LP #1952946。

1.8.1 (2021-11-19)

  • 添加了'MANIFEST.in',以确保测试用例使用的示例文件包含在源分发中。LP #1951553。

1.8.0 (2021-11-18)

  • 支持已安装分发的新的标准元数据位置。LP #1865286。

  • 不要用空负载覆盖基于头的'description'。LP #1885458。

  • 添加对Metadata-Version 2.2的支持。LP #1928729。

  • 添加对sdists未压缩tarball的支持。LP #1951457。

  • 添加对Python 3.10的支持。

1.7.1 (2021-07-09)

  • 使用Python3构建文档,并修复doctest示例以使用Python3兼容的语法。LP #1933322。

1.7.0 (2021-01-16)

  • 添加对Python 3.9的支持。

  • 放弃对Python 3.5的支持。

1.6.1 (2020-10-26)

  • 调整测试分类器以匹配支持的Python版本。LP #1901127。

1.6.0 (2020-10-20)

  • 添加对Python 3.8的支持。LP #1869854。

  • 放弃对Python 3.4的支持。

  • 更新测试以匹配setuptools的变化,不再为没有明确元数据的已安装包报告元数据版本。LP #1870197。

1.5.0.1 (2019-01-08)

  • 修复损坏的'sdist'。LP #1639585。

1.5.0 (2019-01-07)

  • 修复'console_scripts'入口点的语法。LP #1810734。

  • 添加对CLI的JSON输出支持。LP #1700580。

  • 添加对已安装wheel的支持。例如,'dist-info/'目录。LP #1700200。

  • 强化元数据提取以应对意外的编码。LP #1780454。

  • 更新测试以匹配pip/setuptools对新的元数据版本的使用。LP #1772274。

  • 添加对Python 3.6和3.7的支持。

  • 放弃对Python 3.3的支持。

1.4.2 (2018-03-14)

  • 在pkginfo模块中使用相对导入。支持将包作为vendoring添加到setuptools中。

  • 添加对Provides-ExtraDescription-Content-Type字段的支撑。参见https://packaging.pythonlang.cn/specifications/。见:PEP 566。

  • 移除对旧setuptools的支持,不再在项目目录根目录中保留PKG-INFO

1.4.1 (2016-11-07)

  • 仅包装更改(为1.4.0构建了无效的sdist)。

1.4.0 (2016-11-04)

  • 在MIT许可下重新许可:PSF许可证不适合第三方库。

1.3.2 (2016-05-24)

  • 仅包装更改(自动化修复为1.3.1构建的wheel)。

1.3.1 (2016-05-24)

  • 仅包装更改(为1.3.0构建了无效的wheel)。

1.3.0 (2016-05-23)

  • 更新主页URL以指向Launchpad,而不是PyPI。

  • 添加构建wheel的支持。

  • 添加对Python 3.5的支持。

  • 放弃对Python 2.6和3.2的支持。

1.2.1 (2014-01-02)

  • 添加了被忽略的Trove分类器以用于Python 3.4。

1.2 (2014-01-02)

  • 添加对Python 3.4和PyPy3的支持。

  • pkginfo.commandline模块添加100%覆盖率。

1.2b1 (2013-12-05)

  • 添加对“轮”分布格式的支持,以及最小化元数据2.0支持(不包括新的PEP 426 JSON属性)。代码(重新)借用自Donald Stuft的twine包。

1.1 (2013-10-09)

  • 修复测试以通过当前的PyPy版本。

1.1b1(2013-05-05)

1.0 (2013-05-05)

  • 与1.0b2相比没有变化。

1.0b2(2012-12-28)

  • 抑制针对客户端报告的资源警告泄漏。

  • 修复Py3k下的‘commandline’模块。

1.0b1(2012-12-28)

  • 添加对Python 3.2和3.3的支持,包括在tox下测试它们。

  • 添加对PyPy的支持,包括在tox下测试它。

  • tox下测试支持的Python版本。

  • 放弃对Python 2.5的支持。

  • 添加setup.py dev别名:运行setup.py develop并安装测试额外组件(nose和coverage)。

0.9.1 (2012-10-22)

  • 修复Python >= 2.7下的测试失败,这是由于我们具有分类器而强制执行‘metadata_version == 1.1’。

0.9 (2012-04-25)

0.8 (2011-03-12)

0.7 (2010-11-04)

  • 保留description字段中的换行符。感谢Sridhar Ratnakumar提供的补丁。

  • 100%测试覆盖率。

0.6 (2010-06-01)

  • 将使用StringIO.StringIO替换为(如果可用)io.StringIO,Python >= 2.6。

  • 将使用rfc822标准库模块替换为(如果可用)email.parser,Python >= 2.5。确保分发“展开”包装的续行,去除任何前导/尾随空白,无论使用哪个模块进行解析。

  • 删除对zope.testing的虚假测试依赖。

  • 添加测试,捕获在批准的PEP 345中拼写的“环境标记”。

  • 为1.2 PKG-INFO元数据添加Project-URL(在PEP 345的接受版本中定义)。

0.5 (2009-09-11)

  • 将包标记为非zip安全。

  • 修复Trove元数据的拼写错误。

  • 恢复与Python 2.4的兼容性。

  • 请注意,在Python 2.6或更高版本中,安装的包/模块的反射才能正常工作。

  • Index类添加为对一组分发的抽象。

  • download_url_prefix参数添加到pkginfo脚本中。如果传入,则脚本将使用前缀合成download_url,对于不直接提供该值的分发。

0.4.1 (2009-05-07)

  • 修复处理缺少__file__PKG-INFO的安装包的bug。

0.4 (2009-05-07)

  • 扩展控制台脚本以允许输出为CSV或INI。还添加了指定元数据版本和其他解析/输出策略的参数。

  • 支持PEP 241、314和345中指定的不同元数据版本。现在,分发仅解析和公开与其元数据版本对应的属性,该版本默认为从PKG-INFO文件解析的版本。当创建分发对象时,程序员可以覆盖该版本。

0.3 (2009-05-07)

  • 添加对“开发蛋”(带有 PKG-INFO 的检出,可能通过 setup.py develop 创建)的反射支持。

  • 添加一个控制台脚本 pkginfo,它接受命令行上的一个或多个路径,并输出相关信息。感谢 runeh 提供的补丁!

  • 添加 get_metadata 辅助函数,该函数将给定的路径或模块分发到可用的分发类型中,并返回一个分发对象。感谢 runeh 提供的补丁!

  • 使分发对象支持对元数据字段的迭代。感谢 runeh 提供的补丁!

  • Distribution 和子类改为新式类。感谢 runeh 提供的补丁!

0.2 (2009-04-14)

  • 添加对 bdist_egg 二进制分发的反射支持。

0.1.1 (2009-04-10)

  • 修复打包错误。

0.1 (2009-04-10)

  • 初始发布。

项目详情


下载文件

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

源分发

pkginfo2-30.0.0.tar.gz (364.1 kB 查看哈希)

上传时间

构建分发

pkginfo2-30.0.0-py3-none-any.whl (25.7 kB 查看哈希)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面