在 PyPi 上更新包的指南

A guide for updating packages on PyPi

我用 this guide 在 PyPi 上安装了一个新包。

现在,我想更新包。 由于我找不到这方面的指南,所以我尝试自己做:我将版本从“1.0.0.dev1”更新为“1.0.0.dev2”并重新安装。它没有用:我得到了:

Uploading tee_table-1.0.0.dev1-py3-none-any.whl

HTTPError: 400 Client Error: File already exists. See https://pypi.org/help/#file-name-reuse for url: https://upload.pypi.org/legacy/

我也读过 this question 但信息似乎已经过时(从 2012 年开始)。

是否有描述如何将新版本的包上传到 PyPi 的简单用户指南?

我发现我的问题是什么 - 我没有删除 dist 文件夹中的旧文件,所以上传者试图在新文件之前上传它们,但失败了。解决方案是:

  1. 删除 dist 文件夹中的所有文件。

  2. 更新 setup.py 文件中的版本号。

  3. 重新创建轮子:

    python3 setup.py sdist bdist_wheel
    
  4. 重新上传新文件:

    twine upload dist/*
    

抱歉,如果我回复得太晚了,但遇到了同样的问题,并且找到了一种不删除现有 dist 文件夹的方法:

更新 setup.py 中的版本并重新创建 wheel 文件后,

twine upload --skip-existing dist/*

将跳过已经存在的分发并上传较新的分发

对于 Windows(我在 Windows 10),@Erel Segal-Halevi 的回答无效。以下对我有用。

c。重新创建轮子:

py setup.py sdist bdist_wheel

d。重新上传新文件:

py -m twine upload dist/*