将setup.py升级为声明性元数据

setup-py-upgrade的Python项目详细描述


Build Status

设置py升级

将setup.py升级为声明性元数据

安装

pip install setup-py-upgrade

cli

有关最新用法,请参阅帮助:

$ setup-py-upgrade --help
usage: setup-py-upgrade [-h] directorypositional arguments:  directoryoptional arguments:  -h, --help  show this help message and exit

传递要转换的存储库的根目录

脚本在运行时覆盖setup.pysetup.cfg

样本输出

$ setup-py-upgrade ../pre-commit
../pre-commit/setup.py and ../pre-commit/setup.cfg written!$ tail -n999 ../pre-commit/setup.{py,cfg}==> ../pre-commit/setup.py <==from setuptools import setupsetup()==> ../pre-commit/setup.cfg <==[metadata]name = pre_commitdescription = A framework for managing and maintaining multi-language pre-commit hooks.long_description = file: README.mdlong_description_content_type = text/markdownurl = https://github.com/pre-commit/pre-commitversion = 1.14.2author = Anthony Sottileauthor_email = asottile@umich.educlassifiers =    License :: OSI Approved :: MIT License    Programming Language :: Python :: 2    Programming Language :: Python :: 2.7    Programming Language :: Python :: 3    Programming Language :: Python :: 3.6    Programming Language :: Python :: 3.7    Programming Language :: Python :: Implementation :: CPython    Programming Language :: Python :: Implementation :: PyPy[options]packages = find:install_requires =    aspy.yaml    cfgv>=1.4.0    identify>=1.0.0    importlib-metadata    nodeenv>=0.11.1    pyyaml    six    toml    virtualenv    futures; python_version<"3.2"    importlib-resources; python_version<"3.7"[options.packages.find]exclude =    tests*    testing*[options.entry_points]console_scripts =    pre-commit = pre_commit.main:main    pre-commit-validate-config = pre_commit.clientlib:validate_config_main    pre-commit-validate-manifest = pre_commit.clientlib:validate_manifest_main[options.package_data]pre_commit.resources =    *.tar.gz    empty_template_*    hook-tmpl[bdist_wheel]universal = True

输出使用什么版本的setuptools/pip?

  • pip>=1.5(从轮子安装时)
    • 发布日期:2014-01-02
  • setuptools>=30.3(从源代码构建时)
    • 发布日期:2016-12-08
  • virtualenv>=15.2(通过--no-download获得足够的设置工具)
    • 发布日期:2018-03-21

不支持的内容

声明性元数据不支持ext_modules或setuptools插件-- 它们必须留在setup.py中。如果要转换使用 其中,您将看到如下消息:

$ setup-py-upgrade ../future-breakpoint/
ext_modules= is not supported in setup.cfg

若要转换这些结构,请暂时从setup.py中移除有问题的结构, 然后运行setup-py-upgrade,然后将它们粘贴回文件中。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java ParsePushReceiver参数   java如何从设备读取完整数据?   java将java_设置为home,但忽略错误   java如何从歌曲中对专辑进行排序?   java libnaude+windows 10 x64+Eclipse   java如何将maven目标更改为如图所示的想法中的quickicon?   java swing布局中心面板,可滚动显示多个窗口窗格   使用MOSQUITO代理的mqtt中的java SSL   java如何通过属性值获取XML字符串   java在服务器每次启动时停止GWT编译   java如何让javac搜索类路径的子目录?   可以比较java中的两个不同类吗?   JAVAAndroid活动内部类中的lang.NoClassDefFoundError   java HttpServletRequest获取请求头参数块   C++socket与java客户端的连接   java如何在Apache commons http客户端上使用SSL客户端证书   使用预编译正则表达式模式提高java速度   JavaRhino将两个已编译脚本合并为一个脚本