Python Readthedocs:如何忽略需求文件?

Python Readthedocs:如何忽略需求文件?,python,travis-ci,read-the-docs,Python,Travis Ci,Read The Docs,我有一个项目(最近加入)在运行某些测试时依赖于basemap。仅在setup.py中指定“basemap”会导致Travis CI出现以下情况: Collecting basemap (from mypkg==1.1.6) Could not find any downloads that satisfy the requirement basemap (from mypkg==1.1.6) No distributions at all found for basemap (from

我有一个项目(最近加入)在运行某些测试时依赖于basemap。仅在setup.py中指定“basemap”会导致Travis CI出现以下情况:

Collecting basemap (from mypkg==1.1.6)
  Could not find any downloads that satisfy the requirement basemap (from mypkg==1.1.6)
  No distributions at all found for basemap (from mypkg==1.1.6)
为了解决这个问题,以前的维护人员使用以下文件创建了requirements.txt文件:

git+https://github.com/matplotlib/basemap.git
我们在travis yaml中安装了以下组件:

pip install -r requirements.txt
然后我们剩下的Travis安装工作。现在,当Readthedocs尝试构建文档时,它会自动获取需求文件(尽管它说默认值为
None
),但在找不到libgeos时失败。为了解决这个问题,我创建了一个
readthedocs.yml
文件并尝试:

requirements_file:
这导致Rtd挂起了“克隆…”所以我尝试:

requirements_file: ''
它也挂起来了。我最后的工作解决方案是在“docs/requirements.txt”中创建一个空文件,并为Rtd指定该文件


有谁有更好的办法解决这个问题吗?有什么明显的地方我遗漏了吗?

仔细想想,我想更好的问题是为什么Travis不知道如何安装basemap?
pip install basemap
不适合我。你为什么期望它会这样?另外,如果您有一个
python_requirements.txt
,Readthedocs不会自动检测到它,并告诉travis显式地
pip安装-r python_requirements.txt
,该项目是否添加了类似的依赖项@AlexHall我想我只是假设一个广泛使用的库很容易安装,但是现在你说我认为我在执行
pip install basemap
时没有出错的唯一原因是因为它已经安装好了@OwenGriffiths我在发布这个问题后不久就找到了这个存储库。我认为这将是我的解决方案,因为它似乎是安装所有东西的最明显方式。在研究了basemap为什么需要外部主机后,有必要采取额外的步骤(对于PyPI来说太大了)。@OwenGriffiths我试图实现他们在该存储库上所做的操作,但travis发现了一个错误。另外,在较新版本的pip中,
--allow external
--allow unverified
似乎已被弃用,因此解决方案不会永远有效。我认为从源代码安装basemap是唯一可以接受的方法。