Read the Docs build information Build id: 235355 Project: icb-scanpy Version: latest Commit: dd72131b4d4bba1d60ee8f3c5feffe3f8a9f4a7f Date: 2019-08-23T14:49:41.676377Z State: finished Success: False [rtd-command-info] start-time: 2019-08-23T14:49:42.288885Z, end-time: 2019-08-23T14:49:42.304169Z, duration: 0, exit-code: 0 git remote set-url origin https://github.com/theislab/scanpy.git [rtd-command-info] start-time: 2019-08-23T14:49:42.382109Z, end-time: 2019-08-23T14:49:43.121608Z, duration: 0, exit-code: 0 git fetch origin --tags --prune --prune-tags --depth 50 From https://github.com/theislab/scanpy 367eb1a..dd72131 master -> origin/master e784c7e..aad0939 umap_deps -> origin/umap_deps [rtd-command-info] start-time: 2019-08-23T14:49:43.491092Z, end-time: 2019-08-23T14:49:43.510111Z, duration: 0, exit-code: 0 git checkout --force origin/master Previous HEAD position was 367eb1a Remove broken RNA velocity code and reference scvelo (#795) HEAD is now at dd72131 We also don’t need docs in the sdist [rtd-command-info] start-time: 2019-08-23T14:49:43.590807Z, end-time: 2019-08-23T14:49:43.615118Z, duration: 0, exit-code: 0 git clean -d -f -f [rtd-command-info] start-time: 2019-08-23T14:49:44.768770Z, end-time: 2019-08-23T14:49:48.980285Z, duration: 4, exit-code: 0 python3.6 -mvirtualenv --no-site-packages --no-download Using base prefix '/home/docs/.pyenv/versions/3.6.4' New python executable in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/bin/python3.6 Not overwriting existing python script /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/bin/python (you must use /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/bin/python3.6) Installing setuptools, pip, wheel... done. [rtd-command-info] start-time: 2019-08-23T14:49:49.067871Z, end-time: 2019-08-23T14:49:50.367152Z, duration: 1, exit-code: 0 python -m pip install --upgrade --cache-dir /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/.cache/pip pip Requirement already up-to-date: pip in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (19.2.2) [rtd-command-info] start-time: 2019-08-23T14:49:50.443961Z, end-time: 2019-08-23T14:49:58.202657Z, duration: 7, exit-code: 0 python -m pip install --upgrade --cache-dir /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/.cache/pip Pygments==2.3.1 setuptools==41.0.1 docutils==0.14 mock==1.0.1 pillow==5.4.1 alabaster>=0.7,<0.8,!=0.7.5 commonmark==0.8.1 recommonmark==0.5.0 sphinx<2 sphinx-rtd-theme<0.5 readthedocs-sphinx-ext<1.1 Requirement already up-to-date: Pygments==2.3.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (2.3.1) Requirement already up-to-date: setuptools==41.0.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (41.0.1) Requirement already up-to-date: docutils==0.14 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (0.14) Collecting mock==1.0.1 Requirement already up-to-date: pillow==5.4.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (5.4.1) Requirement already up-to-date: alabaster!=0.7.5,<0.8,>=0.7 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (0.7.12) Requirement already up-to-date: commonmark==0.8.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (0.8.1) Requirement already up-to-date: recommonmark==0.5.0 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (0.5.0) Collecting sphinx<2 Using cached https://files.pythonhosted.org/packages/7d/66/a4af242b4348b729b9d46ce5db23943ce9bca7da9bbe2ece60dc27f26420/Sphinx-1.8.5-py2.py3-none-any.whl Requirement already up-to-date: sphinx-rtd-theme<0.5 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (0.4.3) Requirement already up-to-date: readthedocs-sphinx-ext<1.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (1.0.0) Requirement already satisfied, skipping upgrade: future in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from commonmark==0.8.1) (0.17.1) Requirement already satisfied, skipping upgrade: imagesize in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (1.1.0) Requirement already satisfied, skipping upgrade: requests>=2.0.0 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (2.22.0) Requirement already satisfied, skipping upgrade: packaging in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (19.1) Requirement already satisfied, skipping upgrade: sphinxcontrib-websupport in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (1.1.2) Requirement already satisfied, skipping upgrade: snowballstemmer>=1.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (1.9.0) Requirement already satisfied, skipping upgrade: babel!=2.0,>=1.3 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (2.7.0) Requirement already satisfied, skipping upgrade: six>=1.5 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (1.12.0) Requirement already satisfied, skipping upgrade: Jinja2>=2.3 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (2.10.1) Requirement already satisfied, skipping upgrade: idna<2.9,>=2.5 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.0.0->sphinx<2) (2.8) Requirement already satisfied, skipping upgrade: certifi>=2017.4.17 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.0.0->sphinx<2) (2019.6.16) Requirement already satisfied, skipping upgrade: chardet<3.1.0,>=3.0.2 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.0.0->sphinx<2) (3.0.4) Requirement already satisfied, skipping upgrade: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.0.0->sphinx<2) (1.25.3) Requirement already satisfied, skipping upgrade: attrs in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from packaging->sphinx<2) (19.1.0) Requirement already satisfied, skipping upgrade: pyparsing>=2.0.2 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from packaging->sphinx<2) (2.4.2) Requirement already satisfied, skipping upgrade: pytz>=2015.7 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from babel!=2.0,>=1.3->sphinx<2) (2019.2) Requirement already satisfied, skipping upgrade: MarkupSafe>=0.23 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from Jinja2>=2.3->sphinx<2) (1.1.1) tables 3.5.2 has requirement mock>=2.0, but you'll have mock 1.0.1 which is incompatible. sphinx-autodoc-typehints 1.7.0 has requirement Sphinx>=2.1, but you'll have sphinx 1.8.5 which is incompatible. Installing collected packages: mock, sphinx Found existing installation: mock 3.0.5 Uninstalling mock-3.0.5: Successfully uninstalled mock-3.0.5 Found existing installation: Sphinx 2.2.0 Uninstalling Sphinx-2.2.0: Successfully uninstalled Sphinx-2.2.0 Successfully installed mock-1.0.1 sphinx-1.8.5 [rtd-command-info] start-time: 2019-08-23T14:49:58.335370Z, end-time: 2019-08-23T14:50:01.780909Z, duration: 3, exit-code: 0 python -m pip install --exists-action=w --cache-dir /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/.cache/pip -r docs/requirements.txt Requirement already satisfied: sphinx_rtd_theme>=0.3.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 2)) (0.4.3) Collecting sphinx>=2.0.1 (from -r docs/requirements.txt (line 5)) Using cached https://files.pythonhosted.org/packages/8e/4c/95a21788db2e1653e931420f561015a0bbc9bd4660c4520467ab9e733eb2/Sphinx-2.2.0-py3-none-any.whl Requirement already satisfied: sphinx-autodoc-typehints in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 6)) (1.7.0) Requirement already satisfied: scanpydoc>=0.3.8 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 7)) (0.3.8) Requirement already satisfied: anndata>=0.6.18 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 9)) (0.6.22.post1) Requirement already satisfied: matplotlib>=2.2 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 10)) (3.1.1) Requirement already satisfied: pandas>=0.21 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 11)) (0.25.0) Requirement already satisfied: scipy in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 12)) (1.3.1) Requirement already satisfied: seaborn in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 13)) (0.9.0) Requirement already satisfied: h5py in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 14)) (2.9.0) Requirement already satisfied: tables in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 15)) (3.5.2) Requirement already satisfied: scikit-learn>=0.19.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 16)) (0.21.3) Requirement already satisfied: networkx in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 18)) (2.3) Requirement already satisfied: natsort in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 19)) (6.0.0) Requirement already satisfied: joblib in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 20)) (0.13.2) Requirement already satisfied: numba in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 21)) (0.45.1) Requirement already satisfied: tqdm in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 22)) (4.34.0) Requirement already satisfied: importlib_metadata in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 23)) (0.19) Requirement already satisfied: umap-learn in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from -r docs/requirements.txt (line 24)) (0.3.10) Requirement already satisfied: sphinxcontrib-devhelp in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.0.1) Requirement already satisfied: Pygments>=2.0 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (2.3.1) Requirement already satisfied: Jinja2>=2.3 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (2.10.1) Requirement already satisfied: babel!=2.0,>=1.3 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (2.7.0) Requirement already satisfied: alabaster<0.8,>=0.7 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (0.7.12) Requirement already satisfied: requests>=2.5.0 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (2.22.0) Requirement already satisfied: docutils>=0.12 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (0.14) Requirement already satisfied: snowballstemmer>=1.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.9.0) Requirement already satisfied: setuptools in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (41.0.1) Requirement already satisfied: packaging in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (19.1) Requirement already satisfied: imagesize in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.1.0) Requirement already satisfied: sphinxcontrib-serializinghtml in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.1.3) Requirement already satisfied: sphinxcontrib-qthelp in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.0.2) Requirement already satisfied: sphinxcontrib-jsmath in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.0.1) Requirement already satisfied: sphinxcontrib-applehelp in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.0.1) Requirement already satisfied: sphinxcontrib-htmlhelp in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.0.2) Requirement already satisfied: get_version in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from scanpydoc>=0.3.8->-r docs/requirements.txt (line 7)) (2.0.6) Requirement already satisfied: numpy~=1.14 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from anndata>=0.6.18->-r docs/requirements.txt (line 9)) (1.17.0) Requirement already satisfied: kiwisolver>=1.0.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from matplotlib>=2.2->-r docs/requirements.txt (line 10)) (1.1.0) Requirement already satisfied: python-dateutil>=2.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from matplotlib>=2.2->-r docs/requirements.txt (line 10)) (2.8.0) Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from matplotlib>=2.2->-r docs/requirements.txt (line 10)) (2.4.2) Requirement already satisfied: cycler>=0.10 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from matplotlib>=2.2->-r docs/requirements.txt (line 10)) (0.10.0) Requirement already satisfied: pytz>=2017.2 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from pandas>=0.21->-r docs/requirements.txt (line 11)) (2019.2) Requirement already satisfied: six in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from h5py->-r docs/requirements.txt (line 14)) (1.12.0) Collecting mock>=2.0 (from tables->-r docs/requirements.txt (line 15)) Using cached https://files.pythonhosted.org/packages/05/d2/f94e68be6b17f46d2c353564da56e6fb89ef09faeeff3313a046cb810ca9/mock-3.0.5-py2.py3-none-any.whl Requirement already satisfied: numexpr>=2.6.2 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from tables->-r docs/requirements.txt (line 15)) (2.7.0) Requirement already satisfied: decorator>=4.3.0 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from networkx->-r docs/requirements.txt (line 18)) (4.4.0) Requirement already satisfied: llvmlite>=0.29.0dev0 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from numba->-r docs/requirements.txt (line 21)) (0.29.0) Requirement already satisfied: zipp>=0.5 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from importlib_metadata->-r docs/requirements.txt (line 23)) (0.5.2) Requirement already satisfied: MarkupSafe>=0.23 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from Jinja2>=2.3->sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.1.1) Requirement already satisfied: idna<2.9,>=2.5 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.5.0->sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (2.8) Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.5.0->sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (1.25.3) Requirement already satisfied: certifi>=2017.4.17 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.5.0->sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (2019.6.16) Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from requests>=2.5.0->sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (3.0.4) Requirement already satisfied: attrs in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from packaging->sphinx>=2.0.1->-r docs/requirements.txt (line 5)) (19.1.0) Requirement already satisfied: future-fstrings in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from get_version->scanpydoc>=0.3.8->-r docs/requirements.txt (line 7)) (1.2.0) Installing collected packages: sphinx, mock Found existing installation: Sphinx 1.8.5 Uninstalling Sphinx-1.8.5: Successfully uninstalled Sphinx-1.8.5 Found existing installation: mock 1.0.1 Uninstalling mock-1.0.1: Successfully uninstalled mock-1.0.1 Successfully installed mock-3.0.5 sphinx-2.2.0 [rtd-command-info] start-time: 2019-08-23T14:50:02.874539Z, end-time: 2019-08-23T14:50:03.209330Z, duration: 0, exit-code: 0 cat docs/conf.py import sys import warnings from pathlib import Path from datetime import datetime import matplotlib # noqa # Don’t use tkinter agg when importing scanpy → … → matplotlib matplotlib.use('agg') HERE = Path(__file__).parent sys.path.insert(0, str(HERE.parent)) import scanpy # noqa with warnings.catch_warnings(): warnings.filterwarnings('ignore', category=FutureWarning) import scanpy.api # -- General configuration ------------------------------------------------ nitpicky = True # Warn about broken links needs_sphinx = '1.7' # autosummary bugfix suppress_warnings = ['ref.citation'] # General information project = 'Scanpy' author = scanpy.__author__ copyright = f'{datetime.now():%Y}, {author}.' version = scanpy.__version__.replace('.dirty', '') release = version # default settings templates_path = ['_templates'] source_suffix = '.rst' master_doc = 'index' default_role = 'literal' exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] pygments_style = 'sphinx' extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.doctest', 'sphinx.ext.coverage', 'sphinx.ext.mathjax', 'sphinx.ext.napoleon', 'sphinx.ext.autosummary', # 'plot_generator', # 'plot_directive', 'sphinx_autodoc_typehints', # needs to be after napoleon # 'ipython_directive', # 'ipython_console_highlighting', 'scanpydoc', ] # Generate the API documentation when building autosummary_generate = True autodoc_member_order = 'bysource' # autodoc_default_flags = ['members'] napoleon_google_docstring = False napoleon_numpy_docstring = True napoleon_include_init_with_doc = False napoleon_use_rtype = True # having a separate entry generally helps readability napoleon_use_param = True napoleon_custom_sections = [('Params', 'Parameters')] todo_include_todos = False intersphinx_mapping = dict( anndata=('https://anndata.readthedocs.io/en/latest/', None), bbknn=('https://bbknn.readthedocs.io/en/latest/', None), cycler=('https://matplotlib.org/cycler/', None), ipython=('https://ipython.readthedocs.io/en/stable/', None), leidenalg=('https://leidenalg.readthedocs.io/en/latest/', None), louvain=('https://louvain-igraph.readthedocs.io/en/latest/', None), matplotlib=('https://matplotlib.org/', None), networkx=('https://networkx.github.io/documentation/networkx-1.10/', None), numpy=('https://docs.scipy.org/doc/numpy/', None), pandas=('https://pandas.pydata.org/pandas-docs/stable/', None), python=('https://docs.python.org/3', None), scipy=('https://docs.scipy.org/doc/scipy/reference/', None), scvelo=('https://scvelo.readthedocs.io/en/stable/', None), seaborn=('https://seaborn.pydata.org/', None), sklearn=('https://scikit-learn.org/stable/', None), scanpy_tutorials=('https://scanpy-tutorials.readthedocs.io/en/latest', None), ) # -- Options for HTML output ---------------------------------------------- html_theme = 'sphinx_rtd_theme' html_theme_options = dict( navigation_depth=4, logo_only=True, # Only show the logo ) html_context = dict( display_github=True, # Integrate GitHub github_user='theislab', # Username github_repo='scanpy', # Repo name github_version='master', # Version conf_py_path='/docs/', # Path in the checkout to the docs root ) html_static_path = ['_static'] html_show_sphinx = False html_logo = '_static/img/Scanpy_Logo_RGB.png' gh_url = 'https://github.com/{github_user}/{github_repo}'.format_map(html_context) def setup(app): app.warningiserror = True app.add_stylesheet('css/custom.css') app.connect('autodoc-process-docstring', insert_function_images) app.connect('build-finished', show_param_warnings) app.add_role('pr', autolink(f'{gh_url}/pull/{{}}', 'PR {}')) # -- Options for other output formats ------------------------------------------ htmlhelp_basename = f'{project}doc' doc_title = f'{project} Documentation' latex_documents = [ (master_doc, f'{project}.tex', doc_title, author, 'manual'), ] man_pages = [ (master_doc, project, doc_title, [author], 1) ] texinfo_documents = [ (master_doc, project, doc_title, author, project, 'One line description of project.', 'Miscellaneous'), ] # -- Images for plot functions ------------------------------------------------- def insert_function_images(app, what, name, obj, options, lines): path = Path(__file__).parent / 'api' / f'{name}.png' if what != 'function' or not path.is_file(): return lines[0:0] = [f'.. image:: {path.name}', ' :width: 200', ' :align: right', ''] # -- GitHub links -------------------------------------------------------------- def autolink(url_template, title_template='{}'): from docutils import nodes def role(name, rawtext, text, lineno, inliner, options={}, content=[]): url = url_template.format(text) title = title_template.format(text) node = nodes.reference(rawtext, title, refuri=url, **options) return [node], [] return role # -- Test for new scanpydoc functionality -------------------------------------- import re from sphinx.ext.napoleon import NumpyDocstring def process_return(lines): for line in lines: m = re.fullmatch(r'(?P\w+)\s+:\s+(?P[\w.]+)', line) if m: # Once this is in scanpydoc, we can use the fancy hover stuff yield f'**{m["param"]}** : :class:`~{m["type"]}`' else: yield line def scanpy_parse_returns_section(self, section): lines_raw = list(process_return(self._dedent(self._consume_to_next_section()))) lines = self._format_block(':returns: ', lines_raw) if lines and lines[-1]: lines.append('') return lines NumpyDocstring._parse_returns_section = scanpy_parse_returns_section # -- Warn for non-annotated params --------------------------------------------- _format_docutils_params_orig = NumpyDocstring._format_docutils_params param_warnings = {} def scanpy_log_param_types(self, fields, field_role='param', type_role='type'): for _name, _type, _desc in fields: if not _type: continue set_item = r"`'[a-z0-9_.-]+'`" if re.fullmatch(rf"{{{set_item}(, {set_item})*}}", _type): continue param_warnings.setdefault((self._name, self._obj), []).append((_name, _type)) return _format_docutils_params_orig(self, fields, field_role, type_role) def show_param_warnings(app, exception): import inspect for (fname, fun), params in param_warnings.items(): _, line = inspect.getsourcelines(fun) file_name = inspect.getsourcefile(fun) params_str = '\n'.join(f'\t{n}: {t}' for n, t in params) warnings.warn_explicit( f'\nParameters in `{fname}` not set-like: {{`elm-1`, `s_el.2`}}.\n' 'Convert to this format or replace with type annotations:\n' + params_str, UserWarning, file_name, line, ) NumpyDocstring._format_docutils_params = scanpy_log_param_types # -- Debug code ---------------------------------------------------------------- # Just do the following to see the rst of a function: # rm -f _build/doctrees/api/scanpy..doctree; DEBUG=1 make html import os if os.environ.get('DEBUG') is not None: import sphinx.ext.napoleon pd = sphinx.ext.napoleon._process_docstring def pd_new(app, what, name, obj, options, lines): pd(app, what, name, obj, options, lines) print(*lines, sep='\n') sphinx.ext.napoleon._process_docstring = pd_new # -- Suppress link warnings ---------------------------------------------------- nitpick_ignore = [ # Will probably be documented ('py:class', 'scanpy._settings.Verbosity'), # Currently undocumented: https://github.com/mwaskom/seaborn/issues/1810 ('py:class', 'seaborn.ClusterGrid'), # Bug: https://github.com/agronholm/sphinx-autodoc-typehints/issues/96 ('py:class', 'typing.Textio'), ] for mod_name in [ 'pp', 'tl', 'pl', 'queries', 'logging', 'datasets', 'export_to', None, ]: if mod_name is None: mod = scanpy.api mod_name = 'scanpy.api' else: mod = getattr(scanpy.api, mod_name) mod_name = f'scanpy.api.{mod_name}' for name, item in vars(mod).items(): if not callable(item): continue for kind in ['func', 'obj']: nitpick_ignore.append((f'py:{kind}', f'{mod_name}.{name}')) ########################################################################### # auto-created readthedocs.org specific configuration # ########################################################################### # # The following code was added during an automated build on readthedocs.org # It is auto created and injected for every build. The result is based on the # conf.py.tmpl file found in the readthedocs.org codebase: # https://github.com/rtfd/readthedocs.org/blob/master/readthedocs/doc_builder/templates/doc_builder/conf.py.tmpl # import importlib import sys import os.path from six import string_types from sphinx import version_info # Get suffix for proper linking to GitHub # This is deprecated in Sphinx 1.3+, # as each page can have its own suffix if globals().get('source_suffix', False): if isinstance(source_suffix, string_types): SUFFIX = source_suffix elif isinstance(source_suffix, (list, tuple)): # Sphinx >= 1.3 supports list/tuple to define multiple suffixes SUFFIX = source_suffix[0] elif isinstance(source_suffix, dict): # Sphinx >= 1.8 supports a mapping dictionary for multiple suffixes SUFFIX = list(source_suffix.keys())[0] # make a ``list()`` for py2/py3 compatibility else: # default to .rst SUFFIX = '.rst' else: SUFFIX = '.rst' # Add RTD Static Path. Add to the end because it overwrites previous files. if not 'html_static_path' in globals(): html_static_path = [] if os.path.exists('_static'): html_static_path.append('_static') # Add RTD Theme only if they aren't overriding it already using_rtd_theme = ( ( 'html_theme' in globals() and html_theme in ['default'] and # Allow people to bail with a hack of having an html_style 'html_style' not in globals() ) or 'html_theme' not in globals() ) if using_rtd_theme: theme = importlib.import_module('sphinx_rtd_theme') html_theme = 'sphinx_rtd_theme' html_style = None html_theme_options = {} if 'html_theme_path' in globals(): html_theme_path.append(theme.get_html_theme_path()) else: html_theme_path = [theme.get_html_theme_path()] if globals().get('websupport2_base_url', False): websupport2_base_url = 'https://readthedocs.com/websupport' websupport2_static_url = 'https://media.readthedocs.com/' #Add project information to the template context. context = { 'using_theme': using_rtd_theme, 'html_theme': html_theme, 'current_version': "latest", 'version_slug': "latest", 'MEDIA_URL': "https://media.readthedocs.com/media/", 'STATIC_URL': "https://media.readthedocs.com/", 'PRODUCTION_DOMAIN': "readthedocs.com", 'versions': [ ("latest", "/en/latest/"), ("stable", "/en/stable/"), ("contributors", "/en/contributors/"), ], 'downloads': [ ("html", "//readthedocs.com/projects/icb-scanpy/downloads/htmlzip/latest/"), ], 'subprojects': [ ], 'slug': 'icb-scanpy', 'name': u'scanpy', 'rtd_language': u'en', 'programming_language': u'py', 'canonical_url': 'https://icb-scanpy.readthedocs-hosted.com/en/stable/', 'analytics_code': 'None', 'single_version': False, 'conf_py_path': '/docs/', 'api_host': 'https://readthedocs.com', 'github_user': 'theislab', 'github_repo': 'scanpy', 'github_version': 'master', 'display_github': True, 'bitbucket_user': 'None', 'bitbucket_repo': 'None', 'bitbucket_version': 'master', 'display_bitbucket': False, 'gitlab_user': 'None', 'gitlab_repo': 'None', 'gitlab_version': 'master', 'display_gitlab': False, 'READTHEDOCS': True, 'using_theme': (html_theme == "default"), 'new_theme': (html_theme == "sphinx_rtd_theme"), 'source_suffix': SUFFIX, 'ad_free': False, 'user_analytics_code': '', 'global_analytics_code': 'UA-17997319-2', 'commit': 'dd72131b', } if 'html_context' in globals(): html_context.update(context) else: html_context = context # Add custom RTD extension if 'extensions' in globals(): # Insert at the beginning because it can interfere # with other extensions. # See https://github.com/rtfd/readthedocs.org/pull/4054 extensions.insert(0, "readthedocs_ext.readthedocs") else: extensions = ["readthedocs_ext.readthedocs"] # Add External version warning banner to the external version documentation if 'branch' == 'external': extensions.insert(1, "readthedocs_ext.external_version_warning") project_language = 'en' # User's Sphinx configurations language_user = globals().get('language', None) latex_engine_user = globals().get('latex_engine', None) latex_elements_user = globals().get('latex_elements', None) # Remove this once xindy gets installed in Docker image and XINDYOPS # env variable is supported # https://github.com/rtfd/readthedocs-docker-images/pull/98 latex_use_xindy = False chinese = any([ language_user in ('zh_CN', 'zh_TW'), project_language in ('zh_CN', 'zh_TW'), ]) japanese = any([ language_user == 'ja', project_language == 'ja', ]) if chinese: latex_engine = latex_engine_user or 'xelatex' latex_elements_rtd = { 'preamble': '\\usepackage[UTF8]{ctex}\n', } latex_elements = latex_elements_user or latex_elements_rtd elif japanese: latex_engine = latex_engine_user or 'platex' [rtd-command-info] start-time: 2019-08-23T14:50:03.302592Z, end-time: 2019-08-23T14:50:16.332948Z, duration: 13, exit-code: 2 python sphinx-build -T -E -b readthedocs -d _build/doctrees-readthedocs -D language=en . _build/html Running Sphinx v2.2.0 Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 25, in from setuptools_scm import get_version ModuleNotFoundError: No module named 'setuptools_scm' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/config.py", line 361, in eval_config_file execfile_(filename, namespace) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/util/pycompat.py", line 81, in execfile_ exec(code, _globals) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/docs/conf.py", line 12, in import scanpy # noqa File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 29, in __version__ = version(__name__) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/utils.py", line 32, in version return version(package) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 445, in version return distribution(package).version File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 418, in distribution return Distribution.from_name(package) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 184, in from_name raise PackageNotFoundError(name) importlib_metadata.PackageNotFoundError: scanpy During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/cmd/build.py", line 275, in build_main args.tags, args.verbosity, args.jobs, args.keep_going) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/application.py", line 210, in __init__ self.config = Config.read(self.confdir, confoverrides or {}, self.tags) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/config.py", line 196, in read namespace = eval_config_file(filename, tags) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/config.py", line 371, in eval_config_file raise ConfigError(msg % traceback.format_exc()) sphinx.errors.ConfigError: There is a programmable error in your configuration file: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 25, in from setuptools_scm import get_version ModuleNotFoundError: No module named 'setuptools_scm' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/config.py", line 361, in eval_config_file execfile_(filename, namespace) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/util/pycompat.py", line 81, in execfile_ exec(code, _globals) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/docs/conf.py", line 12, in import scanpy # noqa File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 29, in __version__ = version(__name__) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/utils.py", line 32, in version return version(package) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 445, in version return distribution(package).version File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 418, in distribution return Distribution.from_name(package) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 184, in from_name raise PackageNotFoundError(name) importlib_metadata.PackageNotFoundError: scanpy Configuration error: There is a programmable error in your configuration file: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 25, in from setuptools_scm import get_version ModuleNotFoundError: No module named 'setuptools_scm' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/config.py", line 361, in eval_config_file execfile_(filename, namespace) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/sphinx/util/pycompat.py", line 81, in execfile_ exec(code, _globals) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/docs/conf.py", line 12, in import scanpy # noqa File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 29, in __version__ = version(__name__) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/utils.py", line 32, in version return version(package) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 445, in version return distribution(package).version File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 418, in distribution return Distribution.from_name(package) File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 184, in from_name raise PackageNotFoundError(name) importlib_metadata.PackageNotFoundError: scanpy