Read the Docs build information
Build id: 208414
Project: icb-scanpy
Version: latest
Commit: 798daf6e38eec05442db30fb1e1e194b8df33206
Date: 2019-05-15T07:15:43.752597Z
State: finished
Success: False
[rtd-command-info] start-time: 2019-05-15T07:15:44.308635Z, end-time: 2019-05-15T07:15:44.316646Z, duration: 0, exit-code: 0
git remote set-url origin https://github.com/theislab/scanpy.git
[rtd-command-info] start-time: 2019-05-15T07:15:44.378241Z, end-time: 2019-05-15T07:15:44.778631Z, duration: 0, exit-code: 0
git fetch --tags --prune --prune-tags --depth 50
From https://github.com/theislab/scanpy
85acb6c..798daf6 master -> origin/master
* [new tag] 1.4.3 -> 1.4.3
[rtd-command-info] start-time: 2019-05-15T07:15:45.201432Z, end-time: 2019-05-15T07:15:45.219415Z, duration: 0, exit-code: 0
git checkout --force origin/master
Previous HEAD position was 85acb6c version 1.4.3
HEAD is now at 798daf6 Merge pull request #636 from ktpolanski/master
[rtd-command-info] start-time: 2019-05-15T07:15:45.288434Z, end-time: 2019-05-15T07:15:45.297992Z, duration: 0, exit-code: 0
git clean -d -f -f
[rtd-command-info] start-time: 2019-05-15T07:15:45.963135Z, end-time: 2019-05-15T07:15:50.032750Z, 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-05-15T07:15:50.151936Z, end-time: 2019-05-15T07:15:51.073623Z, duration: 0, 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.1.1)
[rtd-command-info] start-time: 2019-05-15T07:15:51.134470Z, end-time: 2019-05-15T07:15:57.880329Z, duration: 6, 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 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<0.6
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 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (40.9.0)
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<0.6 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (0.5.17)
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: 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.6.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.21.0)
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.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: packaging in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (19.0)
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: snowballstemmer>=1.1 in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from sphinx<2) (1.2.1)
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: pytz>=0a 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.1)
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.3.9)
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: 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,>=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.24.3)
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)
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.0)
tables 3.5.1 has requirement mock>=2.0, but you'll have mock 1.0.1 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.0.1
Uninstalling Sphinx-2.0.1:
Successfully uninstalled Sphinx-2.0.1
Successfully installed mock-1.0.1 sphinx-1.8.5
[rtd-command-info] start-time: 2019-05-15T07:15:57.939645Z, end-time: 2019-05-15T07:16:00.644687Z, duration: 2, 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/9a/b0/a8cf1d35237aebefd63f05543ed49ea24d302239828ca89409b0c1a35b27/Sphinx-2.0.1-py2.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.6.0)
Requirement already satisfied: scanpydoc>=0.3.2 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.3)
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.19)
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.0.3)
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.24.2)
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.2.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.1)
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.0)
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.43.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.32.1)
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: 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-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: 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.21.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: 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.0)
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: 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: 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: 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: 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.2.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: 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: 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)) (40.9.0)
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.6.0)
Requirement already satisfied: future-fstrings in /home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/envs/latest/lib/python3.6/site-packages (from scanpydoc>=0.3.2->-r docs/requirements.txt (line 7)) (1.1.0)
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.2->-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.16.3)
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: 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.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: pytz>=2011k 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.1)
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.6.9)
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.28.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.28.0)
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.3.9)
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: 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: urllib3<1.25,>=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.24.3)
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)
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.0.1
[rtd-command-info] start-time: 2019-05-15T07:16:01.204235Z, end-time: 2019-05-15T07:16:01.264988Z, duration: 0, exit-code: 0
cat docs/conf.py
import sys
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
# -- General configuration ------------------------------------------------
needs_sphinx = '1.7' # autosummary bugfix
# 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),
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=('http://pandas.pydata.org/pandas-docs/stable/', None),
python=('https://docs.python.org/3', None),
scipy=('https://docs.scipy.org/doc/scipy/reference/', 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_logo = '_static/img/Scanpy_Logo_RGB.png'
gh_url = 'https://github.com/{github_user}/{github_repo}'.format_map(html_context)
def setup(app):
app.add_stylesheet('css/custom.css')
app.connect('autodoc-process-docstring', insert_function_images)
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
# -- 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
###########################################################################
# 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 mulitple 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/"),
],
'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': '798daf6e',
}
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"]
[rtd-command-info] start-time: 2019-05-15T07:16:01.422825Z, end-time: 2019-05-15T07:16:06.874567Z, duration: 5, exit-code: 2
python sphinx-build -T -E -b readthedocs -d _build/doctrees-readthedocs -D language=en . _build/html
Running Sphinx v2.0.1
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 86, in execfile_
exec(code, _globals)
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/docs/conf.py", line 11, in
import scanpy # noqa
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 27, in
check_versions()
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/utils.py", line 33, in check_versions
import anndata, umap
ModuleNotFoundError: No module named 'umap'
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 283, 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 201, 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/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 86, in execfile_
exec(code, _globals)
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/docs/conf.py", line 11, in
import scanpy # noqa
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 27, in
check_versions()
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/utils.py", line 33, in check_versions
import anndata, umap
ModuleNotFoundError: No module named 'umap'
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/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 86, in execfile_
exec(code, _globals)
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/docs/conf.py", line 11, in
import scanpy # noqa
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/__init__.py", line 27, in
check_versions()
File "/home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/latest/scanpy/utils.py", line 33, in check_versions
import anndata, umap
ModuleNotFoundError: No module named 'umap'