Search code examples
pythonscipyread-the-docs

Readthedocs suddenly unable to install scipy


Quite suddenly, readthedocs has become unable to build our project. As far as I can see it's due to scipy 1.0.0, and for some reason it thinks it's running on windows? All builds fail with the error below:

Installed /home/docs/checkouts/readthedocs.org/user_builds/pints/envs/latest/lib/python3.5/site-packages/pints-0.0.1-py3.5.egg
Processing dependencies for pints==0.0.1
Searching for scipy>=0.13
Reading https://pypi.python.org/simple/scipy/
Downloading https://pypi.python.org/packages/d0/73/76fc6ea21818eed0de8dd38e1e9586725578864169a2b31acdeffb9131c8/scipy-1.0.0.tar.gz#md5=53fa34bd3733a9a4216842b6000f7316
Best match: scipy 1.0.0
Processing scipy-1.0.0.tar.gz
Writing /tmp/easy_install-2lr9ts8l/scipy-1.0.0/setup.cfg
Running scipy-1.0.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-2lr9ts8l/scipy-1.0.0/egg-dist-tmp-v00htrtw
Warning: Can't read registry to find the necessary compiler setting
Make sure that Python modules winreg, win32api or win32con are installed.
/tmp/easy_install-2lr9ts8l/scipy-1.0.0/setup.py:323: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
  warnings.warn("Unrecognized setuptools command, proceeding with "
/home/docs/checkouts/readthedocs.org/user_builds/pints/envs/latest/lib/python3.5/site-packages/numpy/distutils/system_info.py:624: UserWarning: 
    Atlas (http://math-atlas.sourceforge.net/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [atlas]) or by setting
    the ATLAS environment variable.
  self.calc_info()
/home/docs/checkouts/readthedocs.org/user_builds/pints/envs/latest/lib/python3.5/site-packages/numpy/distutils/system_info.py:624: UserWarning: 
    Lapack (http://www.netlib.org/lapack/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [lapack]) or by setting
    the LAPACK environment variable.
  self.calc_info()
/home/docs/checkouts/readthedocs.org/user_builds/pints/envs/latest/lib/python3.5/site-packages/numpy/distutils/system_info.py:624: UserWarning: 
    Lapack (http://www.netlib.org/lapack/) sources not found.
    Directories to search for the sources can be specified in the
    numpy/distutils/site.cfg file (section [lapack_src]) or by setting
    the LAPACK_SRC environment variable.
  self.calc_info()
Running from scipy source directory.
error: no lapack/blas resources found

Anyone have any ideas how to fix this?

Thanks, Michael


Solution

  • This happened because we didn't specify scipy in the requirements.txt that readthedocs was using!

    (The reason we didn't was that we had a separate requirements-docs.txt that didn't list stuff already in requirements.txt. Solved the issue by adding a line -r requirements.txt at the top of requirements-docs.txt to include everything from requirements.txt)