我在想如何在pypi和github上发布新的python包版本的最佳流程或做法。
例如,以下是否是一个主要Python包遵循的典型工作流程?
- 在
master
分支上增加version
号码- 在
setup.py
中设置version='1.5.0'
- 在包
__init__.py
中设置__version__ = '1.5.0'
- 在
- 使用新版本更新
CHANGELOG.md
- 在本地运行
tox
以验证软件包 - 推送更改
git push origin master
- 创建标签
git tag v1.5.0 -m "Release v1.5.0"
- 推送标签
git push origin v1.5.0
- 等待
Travis CI
构建完成。 - 生成软件包
python setup.py sdist bdist_wheel
- 验证已创建的软件包
test-sdist/bin/pip install dist/<package>-1.5.0.tar.gz
test-wheel/bin/pip install dist/<package>-1.5.0-py2.py3-none-any.whl
- 上传至
PyPI Staging
twine upload -r testpypi dist/<package>-1.5.0*
pip install --user --no-cache-dir --extra-index-url https://testpypi.python.org/pypi <package>
- 上传至
PyPI Production
twine upload dist/<package>-1.5.0>*
pip install <package>==1.5.0
- 意思是安装指定版本号为1.5.0的某个Python包,可以使用pip命令进行安装。