python - tox 不会更新“需要”部分中的依赖项
问题描述
我有以下 tox.ini 文件:
[tox]
envlist = py36, ...
requires =
tox-venv
setuptools==49.2.1 # latest
...
[testenv:py36]
deps = ...
运行它似乎很好:
tox -e py36
py36 installdeps: setuptools==49.2.1, ...
然而setuptools尚未正确安装(这会导致安装 py36 的 deps 出现问题):
.tox/py36/bin/pip list
Package Version
---------- -------
pip 18.1
setuptools 40.6.2
运行 venv 本身的相同诊断:
source .tox/py36/bin/activate
python -c "import setuptools; print(setuptools.version.__version__)"
python -c "import setuptools; print (setuptools.__file__)"
40.6.2
.tox/py36/lib/python3.6/site-packages/setuptools/__init__.py
更奇怪的是,我可以“手动”更新它:
.tox/py36/bin/pip install --upgrade setuptools
Collecting setuptools
Using cached https://files.pythonhosted.org/.../setuptools-49.2.1-py3-none-any.whl
Installing collected packages: setuptools
Found existing installation: setuptools 40.6.2
Uninstalling setuptools-40.6.2:
Successfully uninstalled setuptools-40.6.2
Successfully installed setuptools-49.2.1
我错过了什么吗?我在 Linux 上使用带有 Python 3.6.10 的 tox 3.18.1。谢谢。
解决方案
好吧,原来是“tox-venv”要求搞砸了。
推荐阅读
- r - 使用 select(contains) 用另一个 data.frame 过滤 data.frame
- c++ - 将基于文本的列数据存储到数组 C++ 中
- python - 使用 Watchtower 进行 Python 快速 API 日志记录
- php - 定制器 Wordpress - 菜单和小部件的功能
- c# - 如何重置 VisualTreeHelper.GetDpi() 以返回真正的 DPI?
- python - 如何将时间戳从用于 ConvLSTM2D 的 PNG 帧序列添加到 Tensorflow 数据集?
- django - DRF:to_representation() 在序列化程序 update() 上调用了两次
- r - 如何为数据框 A 中存在的列的每个唯一值在数据框 B 中创建一个新列?
- java - 异常 - java.lang.NoClassDefFoundError: javax/mail/Authenticator - 仅在编译我的 java 项目之后
- python - Sagemaker 为烧瓶模型部署超时