Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为不同python版本的Pypi准备包_Python_Python 3.x_Pip_Python 2.x_Pypi - Fatal编程技术网

为不同python版本的Pypi准备包

为不同python版本的Pypi准备包,python,python-3.x,pip,python-2.x,pypi,Python,Python 3.x,Pip,Python 2.x,Pypi,我正在为Pypi准备一个软件包,它可以计算系统的稳态分布 带有代码的主文件在Python2.7和Python3.5上运行时没有问题(在虚拟环境中进行了测试)。至少对于Python2.7来说,setup.py文件似乎也可以工作 从这一点上讲,我不清楚如何进行。我是否应该在所有可能的Python版本上运行setup.py,为每个Python版本创建单独的“egg”文件?考虑到该文件在两个Python版本上都运行,并且每次更新包时都必须重做,这看起来相当乏味 这里的好做法是什么 如果你在寻找一份好的发

我正在为Pypi准备一个软件包,它可以计算系统的稳态分布

带有代码的主文件在Python2.7和Python3.5上运行时没有问题(在虚拟环境中进行了测试)。至少对于Python2.7来说,setup.py文件似乎也可以工作

从这一点上讲,我不清楚如何进行。我是否应该在所有可能的Python版本上运行setup.py,为每个Python版本创建单独的“egg”文件?考虑到该文件在两个Python版本上都运行,并且每次更新包时都必须重做,这看起来相当乏味


这里的好做法是什么

如果你在寻找一份好的发布清单(回答“在我推到pypi之前我应该做什么?”这个问题),那么你不能超过Audrey Roy的。这是一个活生生的文档,可以根据需要进行更新,但最重要的是:

  • 更新您的变更日志
  • 更新你的版本号
  • 运行您的测试
  • 使用源发行版(sdist)和更新的wheel格式为pypi构建
  • 推到(使用)按钮
  • 检查自述文件是否正确呈现
  • 测试从测试实例运行的安装
  • 推动pypi生产
  • 更新git存储库标签/版本
其他不太重要的事情可能包括:

  • 运行python风格的检查器,如或
  • 生成测试
关于鸡蛋问题的要素——它们不再是必要的(因为引入了轮盘格式)。考虑将一些东西添加到.GiTigGORE文件中,以防止它们被添加到存储库中。基本上,除非您使用本机代码,否则您所需要做的就是同时部署SDist和wheels,您应该可以

关于“无问题运行”考虑将示例转换为测试,然后将这些测试作为每个版本的一部分运行。您可以在本地使用,也可以使用类似或的服务。如果您有在发布之间应该保留的行为,这一点尤其重要—这是发布的一个重要部分