簡體   English   中英

PyPi 斷言錯誤:不支持的架構

[英]PyPi AssertionError: unsupported schema

我正在嘗試將我的 package 上傳到 PyPi 並出現此錯誤:

  Traceback (most recent call last):
  File "setup.py", line 11, in <module>
    author_email= #my email,
  File "C:\Programming\Python\Anaconda\lib\distutils\core.py", line 148, in setup
    dist.run_commands()
  File "C:\Programming\Python\Anaconda\lib\distutils\dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "C:\Programming\Python\Anaconda\lib\distutils\dist.py", line 974, in run_command
    cmd_obj.run()
  File "C:\Programming\Python\Anaconda\lib\distutils\command\upload.py", line 63, in run
    self.upload_file(command, pyversion, filename)
  File "C:\Programming\Python\Anaconda\lib\distutils\command\upload.py", line 73, in upload_file
    raise AssertionError("unsupported schema " + schema)

由於不再需要python setup.py register -r pypitest來上傳package,我運行這個命令: python setup.py sdist upload -r pypitest ,輸入pypitest的密碼后出現錯誤

這是我的setup.py.pypirc文件的樣子。

安裝程序.py

from setuptools import setup

setup(
      name='instapi',
      packages=['instapi'],
      version='0.1',
      description='Clean and simple Instagram API for Python 3.x',
      url='https://github.com/SemptraStar/instapi',
      download_url = 'https://github.com/SemptraStar/instapi/archive/v._0.1.tar.gz',
      author= #me,
      author_email= #also me,
)

.pypirc

[distutils]
index-servers =
  pypi
  pypitest

[pypi]
repository=https://pypi.python.org/pypi
username= # username
password= # password

[pypitest]
repository=https://testpypi.python.org/pypi
username= # username
password= # password

更新 1

我將存儲庫 URL 更改為https://upload.pypi.org/legacy/ ://upload.pypi.org/legacy/ 用於 pypi 和https://test.pypi.org/legacy/用於 pypitest。 還更新了最新版本 (36.3.0) 的設置工具。 沒有改變。

在主目錄C:\\Users\\<username>添加.pypirc文件,除了從項目的根目錄,對我.pypirc

你需要做的是使用麻線。 確保版本是 1.8+

  1. 通過pip install twine
  2. 確保您的 .pypirc 文件具有 test.pypi.org 的正確憑據,因為它是與生產 pypi 不同的數據庫。
  3. 構建您的 sdist python setup.py sdist
  4. 使用twine upload --repository pypitest dist/*進行測試上傳。
  5. 使用twine upload --repository pypi dist/*進行生產上傳。

有同樣的問題並通過指定 .pypirc 文件所在的位置來解決它。 默認情況下,它應該在 ~./ 中,但您可能希望將其存儲在您的項目中。

這個問題在這里幫助了我: Custom location for .pypirc file

我之前也遇到過一些問題,但我不記得這是否與您所描述的問題完全相同。 舊的 URL 應該重定向到新的,但 PyPi 已經移動,所以這些可能並不總是有效。

試試這個 pypi 服務器:

https://upload.pypi.org/legacy/

這是 pypitest 的:

https://test.pypi.org/legacy/

setuptools的官方文檔

將您的 package 上傳到 PyPI

生成分發文件后,下一步就是上傳您的分發文件,以便其他人可以使用它。 此功能由 twine 提供,並記錄在 Python 打包教程中。

所以我想嘗試調試 setuptools 上傳問題沒有意義。 使用 setuptools 構建並使用 twine 上傳。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM