簡體   English   中英

Python distutils keyError

[英]Python distutils keyError

我在 setup.py 文件中有一個 disutils 的工作代碼,如下所示

from distutils.command.install import INSTALL_SCHEMES

for scheme in list(INSTALL_SCHEMES.values()):
    scheme['data'] = scheme['purelib']

但是今天我嘗試在 github 操作中運行 CI 時出現以下錯誤

Traceback (most recent call last):
  File "/home/runner/work/kombu/kombu/setup.py", line 60, in <module>
    scheme['data'] = scheme['purelib']
KeyError: 'purelib'

我沒有足夠的資源來找出解決方案,是的 distutils 已被棄用,但是由於代碼一直工作到今天早上,任何人都可以指出正確的解決方法嗎?

我遇到了和你一樣的錯誤。 上周的登台服務器設置工作,本周的生產沒有,相同版本的 python,相同版本的庫。 不確定發生了什么變化。

無論哪種方式:

嘗試將此添加到您的 pip 安裝:

SETUPTOOLS_USE_DISTUTILS=stdlib pip install .... 

setuptools 問題所述

我降級到 setuptools==58.2.0 現在它又可以正常工作了。

在 CI限制setuptools有助於擺脫這種回歸

此外,在不久的將來https://github.com/celery/kombu/pull/1467中,仍在考慮從 setup.py 中刪除 distutils hack。

ref 包括帶有 setup.py 的非 Python 文件

暫無
暫無

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

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