在测试 python 3.5 时,在 Appveyor Windows 容器中找不到 SIP 的本地包或工作下载链接

No local packages or working download links found for SIP, in the Appveyor Windows Containers, when testing python 3.5

对于持续集成,我们像往常一样在每次推送 GitHub 后使用 appveyor 测试我们的脚本 Windows OS。针对 python 3.5、3.6 和 3.7 启动了测试。对于 3.6 和 3.7,一切正常。对于 3.5,由于未找到 SIP 包而导致测试失败:

searching for SIP
Reading https://pypi.python.org/simple/SIP/
No local packages or working download links found for SIP
error: Could not find suitable distribution for Requirement.parse('SIP')
Command exited with code 1

这很奇怪,因为:

问题似乎来自 pip install ... 命令与 python setup.py install 命令使用的 setup (install_requires=...) 方法在处理上的差异。

因为我在 python setup.py install 安装命令之前编辑了 appveyor.yml 文件以使用 pip 安装所有必需的包,所以它工作正常。

它又快又脏(我相信通过更好的配置可以做得更优雅和熟练),但它确实有效!

setup.py 文件。

info.py 文件。

前一个appveyor.yml文件。

新的 appveyor.yml 文件。

编辑: 可能更快更清洁。从 pip 和 setuptools 之间观察到的差异开始,我观察到构建是从一个非常旧的 setuptools 版本开始的:

pip list
Package    Version
---------- -------
pip        19.1   
setuptools 28.8.0 
virtualenv 15.0.1 

所以我刚刚更新了设置工具:

pip install --upgrade -vv setuptools

现在一切正常,无需在 install_requires.

中添加两倍的请求存储库

前一个appveyor.yml文件。

新的appveyor.yml文件。