我已将我的 Python 包上传到 PyPI.但现在我制作了我的包的新版本,需要上传它.我试图取得与第一次上传包时相同的进展.但是给我这个错误:
I've uploaded my Python package to PyPI. But now I made new version of my package and need to upload it. I tried to make same progress which I did when upload the package first time. but give me this error:
HTTPError: 400 Client Error: File already exists. See https://pypi.org/help/#file-name-reuse for url: https://upload.pypi.org/legacy
现在,如何上传新版本没有任何错误?!
Now, how to upload new version without any error?!
PyPI 不允许重复使用分发文件名(项目名称+版本号+分发类型).
PyPI does not allow for the reuse of distribution filenames (project name + version number + distribution type).
这可确保给定项目的给定版本的给定发行版将始终解析为相同的文件,并且不会在某一天被项目维护者或恶意方偷偷更改(只能将其删除).
This ensures that a given distribution for a given release for a given project will always resolve to the same file, and cannot be surreptitiously changed one day by the projects maintainer or a malicious party (it can only be removed).
您需要将版本号更改为您之前未上传到 PyPI 的版本号.
You will need to change the version number to one that you haven't previously uploaded to PyPI.
您没有提及您是如何上传分发的,但如果您使用的是 twine,那么您也有可能尝试重新上传之前上传的分发.要解决此问题,您可以这样做:
You didn't mention how you're uploading the distribution, but if you're using twine, it's also possible you're attempting to re-upload a previously uploaded distribution. To resolve this, you can do:
$ twine upload --skip-existing dist/*
这篇关于如何使用 twine 将新版本的项目上传到 PyPI?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
python:不同包下同名的两个模块和类python: Two modules and classes with the same name under different packages(python:不同包下同名的两个模块和类)
配置 Python 以使用站点包的其他位置Configuring Python to use additional locations for site-packages(配置 Python 以使用站点包的其他位置)
如何在不重复导入顶级名称的情况下构造python包How to structure python packages without repeating top level name for import(如何在不重复导入顶级名称的情况下构造python包)
在 OpenShift 上安装 python 包Install python packages on OpenShift(在 OpenShift 上安装 python 包)
如何刷新 sys.path?How to refresh sys.path?(如何刷新 sys.path?)
分发带有已编译动态共享库的 Python 包Distribute a Python package with a compiled dynamic shared library(分发带有已编译动态共享库的 Python 包)