我正在为Pypi准备一个包,用于计算Markov chains with discrete state spaces的稳态分布。
带有代码的主文件在Python 2.7和Python 3.5上都运行没有问题(在虚拟环境中测试)。 setup.py文件似乎也可以工作,至少对于Python 2.7。
从这一点开始,我不清楚如何继续。我应该在所有可能的Python版本上运行setup.py来为每个Python版本创建单独的“egg”文件吗?考虑到文件在两个Python版本上运行,这似乎相当繁琐,而且每次更新软件包时都必须重做这个。
这里有什么好习惯?
答案 0 :(得分:3)
如果您正在寻找一个好的发布清单(回答问题"在推送到pypi之前该怎么做?"),您无法通过Audrey Roy&# 39; s PyPI Release Checklist。这是一份活文件,并根据需要进行更新,但最重要的是:
其他不太重要的事情可能包括:
关于鸡蛋问题的要素 - 它们不再需要(因为引入了轮子格式)。请考虑在.gitignore文件中添加一些内容,以防止它们被添加到您的存储库中。基本上,除非你使用本机代码,你需要做的就是部署sdists和wheel,你应该没问题。
关于"运行没有问题" 考虑将您的示例转换为测试,然后在每个版本中运行这些测试。您可以在本地使用tox,也可以使用travis或appveyor等服务。如果您的行为应该在版本之间保留,这一点尤为重要 - 这是semantic versioning的重要组成部分