5

我在 Pypi 上维护了几个鸡蛋,但到目前为止,我一直专注于 Python 2.5x。我想以自动化方式在 Python 2.5 和 Python 2.6 下发布我的鸡蛋,即

  1. 运行测试
  2. 生成文档
  3. 准备鸡蛋
  4. 上传到 Pypi

你们是如何做到这一点的?

一个相关的问题:我如何将鸡蛋标记为“版本独立”?可以在所有版本的 Python 下工作吗?

4

2 回答 2

1

除了 Windows 之外,您不需要为其他任何东西发布鸡蛋,并且只有当您的包使用 C 扩展以便它们具有编译部分时。否则,您只需发布一个源代码分发版。这对于所有平台上的所有 Python 版本来说已经足够了。

如果您没有构建机器人,则自动运行不同版本的测试会很棘手。但是一旦你运行了 2.5 和 2.6 的测试,发布只是一个运行的问题,python setup.py sdist register upload你使用什么 Python 版本来运行它并不重要。

于 2009-10-03T14:34:22.060 回答
0

我使用脚本来切换我的 Python 版本、运行测试、切换到下一个 Python 版本、再次运行测试等等。我用它来测试 2.3、2.4、2.5、2.6 和 3.1。此外,我在两种不同的配置方案(C 扩展是否可用)下运行所有​​测试,因此这会运行我的完整测试套件 10 次。

我使用类似的脚本来构建工具包,虽然我为每个版本构建 Windows 安装程序,然后是一个源工具包。

对于上传,我只是手动完成。

对于文档,只有一个版本可以构建,并且是通过 Makefile 目标完成的。

这就是 coverage.py 的全部内容,您可以在bitbucket中查看代码,尽管我应该警告您,它们是 .cmd Windows 脚本。

于 2009-10-03T12:21:54.730 回答