除tar之外,我还应该准备鸡蛋和拉链吗?

问题描述 投票:3回答:2

我正在使用setuptools等为PyPI准备我的第一个软件包发行版。我已经使源发行版(.tar.gz)正常工作,现在我想知道是否应该提供其他格式,例如.zip和.zip。鸡蛋。

在PyPI的随机浏览中,我注意到一些项目为不同的Python版本提供了鸡蛋以及源代码tarball。而且我注意到有一两个以.zip格式提供源代码分发。

将哪种格式上传到PyPI的最佳做法是什么?各种安装程序(easy_install,pip)是否对使用的是哪个程序有偏好?

python pip setuptools pypi
2个回答
1
投票

如果没有构建C扩展名,则只需以tar.gz格式发送源tarball。它可以安装在所有平台上。仅当您构建C扩展并且您的软件在Windows上运行时(因为人们很少在计算机上使用C编译器),才需要二进制鸡蛋(可通过easy_install安装,而不是pip)。


0
投票

[目前的最佳做法是添加源分布(sdist)和wheel(bdist_wheel)。例如,看一下numpy的功能。

[如果要构建东西,可以通过提供轮子来为用户省去很多麻烦。比较带轮和不带轮的numpy的安装(例如,通过安装他们没有为您的python版本创建轮的版本)。

另请参见:https://packaging.python.org/guides/distributing-packages-using-setuptools/#wheels

© www.soinside.com 2019 - 2024. All rights reserved.