跳转到主要内容

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

项目描述

build status pre-commit.ci status

setup-py-upgrade

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

安装

pip install setup-py-upgrade

cli

请参阅帮助文档了解最新用法

$ setup-py-upgrade --help
usage: setup-py-upgrade [-h] directory

positional arguments:
  directory

optional 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 setup
setup()

==> ../pre-commit/setup.cfg <==
[metadata]
name = pre_commit
description = A framework for managing and maintaining multi-language pre-commit hooks.
long_description = file: README.md
long_description_content_type = text/markdown
url = https://github.com/pre-commit/pre-commit
version = 1.14.2
author = Anthony Sottile
author_email = asottile@umich.edu
classifiers =
    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(从wheel安装时)
    • 发布于2014-01-02
  • setuptools>=30.3(从源构建时)
    • 发布于2016-12-08
  • virtualenv>=15.2(通过--no-download获取足够的setuptools)
    • 发布于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,然后再将它们粘贴回文件。

相关项目

项目详情


下载文件

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

源分发

setup_py_upgrade-1.3.1.tar.gz (5.6 kB 查看哈希值)

上传时间

构建分发

setup_py_upgrade-1.3.1-py2.py3-none-any.whl (6.2 kB 查看哈希值)

上传时间 Python 2 Python 3

支持者

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