无法将包上传到 PyPI:410 Gone
Failed to upload packages to PyPI: 410 Gone
在 pypi.python.org has been migrated to pypi.org 之后,我尝试像往常一样使用命令将包上传到 PyPI 时出错:
python2.7 setup.py sdist upload
错误信息是:
Upload failed (410): Gone (This API has been deprecated and removed from legacy PyPI in favor of using the APIs available in the new PyPI.org implementation of PyPI (located at https://pypi.org/). For more information about migrating your use of this API to PyPI.org, please see https://packaging.python.org/guides/migrating-to-pypi-org/#uploading. For more information about the sunsetting of this API, please see https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html)
我查看了消息中提到的解决方案,然后用谷歌搜索了一下。不幸的是,我找到的解决方案不起作用,包括更新我的本地 ~/.pypirc
文件。像这样:
[distutils]
index-servers =
pypi
[pypi]
repository:https://pypi.python.org/pypi or repository:https://upload.pypi.org/legacy/
username:yourusername
password:yourpassword
我仍然收到相同的错误消息。我该怎么办?
升级到最新的 pip 和 setuptools;安装麻线:
pip install -U pip setuptools twine
编辑 ~/.pypirc
并注释掉或删除 repository
:
[pypi]
#repository:https://pypi.python.org/pypi
使用 twine 从包含模块源 setup.py 和其他文件的文件夹中将您的模块上传到 pypi:
python setup.py sdist
twine upload dist/*
见https://packaging.python.org/guides/migrating-to-pypi-org/#uploading
如果您正在寻找旧版解决方案,请尝试将您的 ~/.pypirc
文件更新为此
[distutils]
index-servers =
pypi
[pypi]
repository: https://upload.pypi.org/legacy/
username: username
password: password
和运行
python setup.py sdist upload -r pypi
不确定它是否会立即生效。因为我做了很多事情来让它工作,比如
- 同时更新 python 和 python3(不过我仍在使用 2.7.12 和 3.5.2)
- 安装
twine
如果您的系统还没有
- 根据 phd 的建议更新
pip
、setuptools
和 twine
- 另外
pip3 install -U pip setuptools twine
可能会有帮助
我推荐使用麻线。
只需安装即可:
pip install twine
然后简单地做:
twine upload dist/*
Note: Do this from root of your project
在 pypi.python.org has been migrated to pypi.org 之后,我尝试像往常一样使用命令将包上传到 PyPI 时出错:
python2.7 setup.py sdist upload
错误信息是:
Upload failed (410): Gone (This API has been deprecated and removed from legacy PyPI in favor of using the APIs available in the new PyPI.org implementation of PyPI (located at https://pypi.org/). For more information about migrating your use of this API to PyPI.org, please see https://packaging.python.org/guides/migrating-to-pypi-org/#uploading. For more information about the sunsetting of this API, please see https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html)
我查看了消息中提到的解决方案,然后用谷歌搜索了一下。不幸的是,我找到的解决方案不起作用,包括更新我的本地 ~/.pypirc
文件。像这样:
[distutils]
index-servers =
pypi
[pypi]
repository:https://pypi.python.org/pypi or repository:https://upload.pypi.org/legacy/
username:yourusername
password:yourpassword
我仍然收到相同的错误消息。我该怎么办?
升级到最新的 pip 和 setuptools;安装麻线:
pip install -U pip setuptools twine
编辑 ~/.pypirc
并注释掉或删除 repository
:
[pypi]
#repository:https://pypi.python.org/pypi
使用 twine 从包含模块源 setup.py 和其他文件的文件夹中将您的模块上传到 pypi:
python setup.py sdist
twine upload dist/*
见https://packaging.python.org/guides/migrating-to-pypi-org/#uploading
如果您正在寻找旧版解决方案,请尝试将您的 ~/.pypirc
文件更新为此
[distutils]
index-servers =
pypi
[pypi]
repository: https://upload.pypi.org/legacy/
username: username
password: password
和运行
python setup.py sdist upload -r pypi
不确定它是否会立即生效。因为我做了很多事情来让它工作,比如
- 同时更新 python 和 python3(不过我仍在使用 2.7.12 和 3.5.2)
- 安装
twine
如果您的系统还没有 - 根据 phd 的建议更新
pip
、setuptools
和twine
- 另外
pip3 install -U pip setuptools twine
可能会有帮助
我推荐使用麻线。
只需安装即可:
pip install twine
然后简单地做:
twine upload dist/*
Note: Do this from root of your project