Как загрузить новые версии проекта в PyPI с помощью шпагата? - PullRequest
0 голосов
/ 25 августа 2018

Я загрузил свой пакет Python в PyPI. Но теперь я сделал новую версию своего пакета и должен загрузить его. Я пытался добиться того же прогресса, что и при первой загрузке пакета. но дай мне эту ошибку:

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

Теперь, как загрузить новую версию без ошибок ?!

Ответы [ 3 ]

0 голосов
/ 01 сентября 2018

PyPI не допускает повторного использования имен файлов рассылки (имя проекта + номер версии + тип рассылки).

Это гарантирует, что данный дистрибутив для данного выпуска для данного проекта всегда будет разрешаться в один и тот же файл и не может быть тайно изменен один день сопровождающим проекта или злонамеренной стороной (его можно удалить только).

Вам нужно будет изменить номер версии на номер, который вы ранее не загружали в PyPI.

Вы не упомянули, как вы загружаете дистрибутив, но если вы используете шпагат, возможно, вы пытаетесь загрузить ранее загруженный дистрибутив. Чтобы решить эту проблему, вы можете сделать:

$ twine upload --skip-existing dist/*
0 голосов
/ 25 мая 2019

Может получить эту ошибку по следующим причинам:

  • Dint изменить вашу версию в setup.py
  • dint удалить предыдущий файл dist

Решение:

  • Измените номер версии в setup.py.
  • Запустите файл установки еще раз.python setup.py bdist_wheel.
  • Загрузить только этот файл dist или запустить шпагат (если используется).twine upload --skip-existing dist/*

Как уже упоминалось @dustin, файл dist с тем же именем не может быть снова загружен.

0 голосов
/ 25 августа 2018

Вам нужно изменить номер версии.

...