跳转到主要内容

setup.py生成器

项目描述

安装

$ [sudo] pip install setuppy-generator

优点

  • setup.py生成器
  • 创建多个setup.py文件 - dev/prod, github/pypi, 等
  • python classes/cli

特性

关键 文件/环境变量
名称 当前目录的基本名称或$SETUP_NAME
版本 $SETUP_VERSION
网址 $SETUP_URL
分类器 classifiers.txt, $SETUP_CLASSIFIERS
描述 $SETUP_DESCRIPTION
关键词 $SETUP_KEYWORDS
长描述 README.md/README.rst, $SETUP_LONG_DESCRIPTION
长描述内容类型 text/markdown 如果长描述.md文件
install_requires requirements.txt, $SETUP_INSTALL_REQUIRES
setuptools.find_packages(), $SETUP_PACKAGES
py_modules 当前目录中的python文件,$SETUP_PY_MODULES
脚本 scripts/*文件,$SETUP_SCRIPTS

示例

project-name.py/
├── classifiers.txt
├── module.py
├── package
|   └── __init__.py
├── README.md
├── requirements.txt
└── scripts
    └── script
$ cd path/to/project-name.py
$ export SETUP_VERSION="1.0.0"
$ python -m setuppy_generator > setup.py
setup(
    name='project-name',
    version='1.0.0',
    classifiers = [...],
    long_description=open('README.md').read(),
    long_description_content_type='text/markdown',
    install_requires=['req1','req2'],
    packages=['pkgname'],
    py_modules=['module'],
    scripts=['scripts/script']
)

示例 #2 - 环境变量

$ export SETUP_URL="https://github.com/owner/repo"
$ export SETUP_CLASSIFIERS="classifiers.txt"
$ export SETUP_DESCRIPTION="description ..."
$ export SETUP_KEYWORDS="key1 key2"
$ export SETUP_LONG_DESCRIPTION="README.md"
$ export SETUP_INSTALL_REQUIRES="requirements.txt"
$ export SETUP_PACKAGES="package1 package2"
$ export SETUP_PY_MODULES="module1 module2"
$ export SETUP_SCRIPTS="scripts/script1 scripts/script2"
$ python -m setuppy_generator > setup.py
setup(
    name='project-name',
    version='1.0.0',
    url='https://github.com/owner/repo',
    classifiers = [...],
    description='description ...',
    long_description=open('README.md').read(),
    long_description_content_type='text/markdown',
    keywords='key1 key2',
    install_requires=['req1','req2'],
    packages=['package1','package2'],
    py_modules=['module1','module2'],
    scripts=['scripts/script1','scripts/script2']
)

open(path).read()函数

$ export SETUP_VERSION="open('.config/version.txt').read().split()"
$ export SETUP_DESCRIPTION="open('.config/description.txt').read().split()"
$ export SETUP_KEYWORDS="open('.config/keywords.txt').read().split(' ')"
$ python -m setuppy_generator > setup.py
setup(
    ...
    version=open('.config/version.txt').read().split(),
    description=open('.config/description.txt').read().split(),
    keywords=open('.config/keywords.txt').read().split(' '),
    ...
)

示例 #3 - 最小setup.py

$ export SETUP_CLASSIFIERS=""
$ export SETUP_DESCRIPTION=""
$ export SETUP_KEYWORDS=""
$ export SETUP_LONG_DESCRIPTION=""
$ export SETUP_URL=""
$ python -m setuppy_generator > setup.py
setup(
    name='project-name',
    version='1.0.0',
    install_requires=['req1','req2'],
    packages=['pkgname'],
    py_modules=['module'],
    scripts=['scripts/script']
)

相关

readme42.com

项目详情


下载文件

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

源分布

setuppy-generator-2020.12.2.tar.gz (3.8 kB 查看哈希值)

上传时间

由以下支持