[英]Pip fails to install long requirements.txt on 22.04 Kubuntu/Ubuntu
(這不是什么大問題,更多的是在這里,因為當我遇到問題時,我沒有找到答案,並希望確保遇到這個問題的其他人找到它。)
我在新安裝的 22.04 Kubuntu 系統上。 每次升級時,我最終都需要重建我的虛擬環境。 在升級到 22.04 之前,我使用的是從我最新的 virtualenv 中轉儲的 requirements.txt。
當我嘗試安裝一個很長的 requirements.txt 時,我遇到了以下錯誤:
Traceback (most recent call last):
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper
status = run_func(*args)
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/cli/req_command.py", line 205, in wrapper
return func(self, options, args)
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/commands/install.py", line 389, in run
to_install = resolver.get_installation_order(requirement_set)
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 188, in get_installation_order
weights = get_topological_weights(
File "/home/bitreaper/venv/venv3.10/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 276, in get_topological_weights
assert len(weights) == expected_node_count
AssertionError
如果我只是對 package 本身進行了 pip 安裝,那么我可以立即在該錯誤上方安裝 package。 但每次我這樣做,並使用 requirements.txt 再次運行 pip 安裝時,它都會再次失敗並出現相同的錯誤。
此時,我決定運行Python 3.9.12的docker鏡像,使用相同的requirements.txt。 這安裝沒有問題。 然后我決定使用 docker 的 3.10.4 圖像,它也安裝在那個圖像中沒有問題。 我比較了 pip 的版本,docker 映像有 22.0.4,而 Kubuntu 的庫存安裝有 22.0.2。 當我做的
pip install --upgrade pip
使用長列表的調用有效。
問題似乎出在庫存 pip 安裝上。 如果你這樣做:
pip install --upgrade pip
並獲得比 22.0.2 更新的版本,它應該可以工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.