Read the Docs build information Build id: 1887581 Project: anyscale-ray Version: master Commit: 2daf1fc4a76e9e65caf8eea2825302912484c0a5 Date: 2023-12-07T18:42:56.330847Z State: cancelled Success: False [rtd-command-info] start-time: 2023-12-07T18:47:57.740607Z, end-time: 2023-12-07T18:48:07.221457Z, duration: 9, exit-code: 0 git clone --depth 1 https://github.com/ray-project/ray . Cloning into '.'... Updating files: 25% (1826/7279) Updating files: 26% (1893/7279) Updating files: 27% (1966/7279) Updating files: 28% (2039/7279) Updating files: 29% (2111/7279) Updating files: 30% (2184/7279) Updating files: 31% (2257/7279) Updating files: 32% (2330/7279) Updating files: 33% (2403/7279) Updating files: 34% (2475/7279) Updating files: 35% (2548/7279) Updating files: 36% (2621/7279) Updating files: 37% (2694/7279) Updating files: 38% (2767/7279) Updating files: 39% (2839/7279) Updating files: 40% (2912/7279) Updating files: 41% (2985/7279) Updating files: 42% (3058/7279) Updating files: 43% (3130/7279) Updating files: 44% (3203/7279) Updating files: 45% (3276/7279) Updating files: 46% (3349/7279) Updating files: 47% (3422/7279) Updating files: 48% (3494/7279) Updating files: 49% (3567/7279) Updating files: 50% (3640/7279) Updating files: 51% (3713/7279) Updating files: 52% (3786/7279) Updating files: 53% (3858/7279) Updating files: 54% (3931/7279) Updating files: 55% (4004/7279) Updating files: 56% (4077/7279) Updating files: 57% (4150/7279) Updating files: 58% (4222/7279) Updating files: 59% (4295/7279) Updating files: 60% (4368/7279) Updating files: 61% (4441/7279) Updating files: 62% (4513/7279) Updating files: 63% (4586/7279) Updating files: 64% (4659/7279) Updating files: 65% (4732/7279) Updating files: 66% (4805/7279) Updating files: 67% (4877/7279) Updating files: 68% (4950/7279) Updating files: 69% (5023/7279) Updating files: 70% (5096/7279) Updating files: 71% (5169/7279) Updating files: 72% (5241/7279) Updating files: 73% (5314/7279) Updating files: 74% (5387/7279) Updating files: 75% (5460/7279) Updating files: 76% (5533/7279) Updating files: 77% (5605/7279) Updating files: 78% (5678/7279) Updating files: 79% (5751/7279) Updating files: 80% (5824/7279) Updating files: 81% (5896/7279) Updating files: 82% (5969/7279) Updating files: 83% (6042/7279) Updating files: 84% (6115/7279) Updating files: 85% (6188/7279) Updating files: 86% (6260/7279) Updating files: 87% (6333/7279) Updating files: 88% (6406/7279) Updating files: 89% (6479/7279) Updating files: 90% (6552/7279) Updating files: 91% (6624/7279) Updating files: 92% (6697/7279) Updating files: 93% (6770/7279) Updating files: 94% (6843/7279) Updating files: 95% (6916/7279) Updating files: 96% (6988/7279) Updating files: 97% (7061/7279) Updating files: 98% (7134/7279) Updating files: 99% (7207/7279) Updating files: 100% (7279/7279) Updating files: 100% (7279/7279), done. [rtd-command-info] start-time: 2023-12-07T18:48:07.288065Z, end-time: 2023-12-07T18:48:08.570955Z, duration: 1, exit-code: 0 git fetch origin --force --prune --prune-tags --depth 50 refs/heads/master:refs/remotes/origin/master [rtd-command-info] start-time: 2023-12-07T18:48:08.719117Z, end-time: 2023-12-07T18:48:09.130129Z, duration: 0, exit-code: 0 git checkout --force origin/master Note: switching to 'origin/master'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 2daf1fc [ci] mark some rllib as non release blocking (#41698) [rtd-command-info] start-time: 2023-12-07T18:48:09.203415Z, end-time: 2023-12-07T18:48:09.331362Z, duration: 0, exit-code: 0 git clean -d -f -f [rtd-command-info] start-time: 2023-12-07T18:48:09.418398Z, end-time: 2023-12-07T18:48:09.488791Z, duration: 0, exit-code: 0 cat .readthedocs.yaml # .readthedocs.yaml # Read the Docs configuration file # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details # Required version: 2 # Set the version of Python and other tools you might need build: os: ubuntu-22.04 tools: python: "3.11" # Build documentation in the docs/ directory with Sphinx sphinx: configuration: doc/source/conf.py fail_on_warning: true # We recommend specifying your dependencies to enable reproducible builds: # https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html python: install: - requirements: doc/requirements-doc.txt [rtd-command-info] start-time: 2023-12-07T18:48:19.456122Z, end-time: 2023-12-07T18:48:19.569622Z, duration: 0, exit-code: 0 asdf global python 3.11.6 [rtd-command-info] start-time: 2023-12-07T18:48:20.218170Z, end-time: 2023-12-07T18:48:22.176865Z, duration: 1, exit-code: 0 python -mvirtualenv $READTHEDOCS_VIRTUALENV_PATH created virtual environment CPython3.11.6.final.0-64 in 1454ms creator CPython3Posix(dest=/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/docs/.local/share/virtualenv) added seed packages: pip==23.1, setuptools==67.6.1, wheel==0.40.0 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator [rtd-command-info] start-time: 2023-12-07T18:48:22.259340Z, end-time: 2023-12-07T18:48:47.007016Z, duration: 24, exit-code: 0 python -m pip install --upgrade --no-cache-dir pip setuptools Requirement already satisfied: pip in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (23.1) Collecting pip Downloading pip-23.3.1-py3-none-any.whl (2.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 7.8 MB/s eta 0:00:00 Requirement already satisfied: setuptools in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (67.6.1) Collecting setuptools Downloading setuptools-69.0.2-py3-none-any.whl (819 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 819.5/819.5 kB 23.5 MB/s eta 0:00:00 Installing collected packages: setuptools, pip Attempting uninstall: setuptools Found existing installation: setuptools 67.6.1 Uninstalling setuptools-67.6.1: Successfully uninstalled setuptools-67.6.1 Attempting uninstall: pip Found existing installation: pip 23.1 Uninstalling pip-23.1: Successfully uninstalled pip-23.1 Successfully installed pip-23.3.1 setuptools-69.0.2 [rtd-command-info] start-time: 2023-12-07T18:48:47.123856Z, end-time: 2023-12-07T18:49:03.960132Z, duration: 16, exit-code: 0 python -m pip install --upgrade --no-cache-dir sphinx readthedocs-sphinx-ext Collecting sphinx Downloading sphinx-7.2.6-py3-none-any.whl.metadata (5.9 kB) Collecting readthedocs-sphinx-ext Downloading readthedocs_sphinx_ext-2.2.3-py2.py3-none-any.whl.metadata (1.5 kB) Collecting sphinxcontrib-applehelp (from sphinx) Downloading sphinxcontrib_applehelp-1.0.7-py3-none-any.whl.metadata (2.2 kB) Collecting sphinxcontrib-devhelp (from sphinx) Downloading sphinxcontrib_devhelp-1.0.5-py3-none-any.whl.metadata (2.2 kB) Collecting sphinxcontrib-jsmath (from sphinx) Downloading sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl (5.1 kB) Collecting sphinxcontrib-htmlhelp>=2.0.0 (from sphinx) Downloading sphinxcontrib_htmlhelp-2.0.4-py3-none-any.whl.metadata (2.2 kB) Collecting sphinxcontrib-serializinghtml>=1.1.9 (from sphinx) Downloading sphinxcontrib_serializinghtml-1.1.9-py3-none-any.whl.metadata (2.3 kB) Collecting sphinxcontrib-qthelp (from sphinx) Downloading sphinxcontrib_qthelp-1.0.6-py3-none-any.whl.metadata (2.2 kB) Collecting Jinja2>=3.0 (from sphinx) Downloading Jinja2-3.1.2-py3-none-any.whl (133 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.1/133.1 kB 6.8 MB/s eta 0:00:00 Collecting Pygments>=2.14 (from sphinx) Downloading pygments-2.17.2-py3-none-any.whl.metadata (2.6 kB) Collecting docutils<0.21,>=0.18.1 (from sphinx) Downloading docutils-0.20.1-py3-none-any.whl.metadata (2.8 kB) Collecting snowballstemmer>=2.0 (from sphinx) Downloading snowballstemmer-2.2.0-py2.py3-none-any.whl (93 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 93.0/93.0 kB 141.1 MB/s eta 0:00:00 Collecting babel>=2.9 (from sphinx) Downloading Babel-2.13.1-py3-none-any.whl.metadata (1.6 kB) Collecting alabaster<0.8,>=0.7 (from sphinx) Downloading alabaster-0.7.13-py3-none-any.whl (13 kB) Collecting imagesize>=1.3 (from sphinx) Downloading imagesize-1.4.1-py2.py3-none-any.whl (8.8 kB) Collecting requests>=2.25.0 (from sphinx) Downloading requests-2.31.0-py3-none-any.whl.metadata (4.6 kB) Collecting packaging>=21.0 (from sphinx) Downloading packaging-23.2-py3-none-any.whl.metadata (3.2 kB) Collecting MarkupSafe>=2.0 (from Jinja2>=3.0->sphinx) Downloading MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.0 kB) Collecting charset-normalizer<4,>=2 (from requests>=2.25.0->sphinx) Downloading charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (33 kB) Collecting idna<4,>=2.5 (from requests>=2.25.0->sphinx) Downloading idna-3.6-py3-none-any.whl.metadata (9.9 kB) Collecting urllib3<3,>=1.21.1 (from requests>=2.25.0->sphinx) Downloading urllib3-2.1.0-py3-none-any.whl.metadata (6.4 kB) Collecting certifi>=2017.4.17 (from requests>=2.25.0->sphinx) Downloading certifi-2023.11.17-py3-none-any.whl.metadata (2.2 kB) Downloading sphinx-7.2.6-py3-none-any.whl (3.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 17.7 MB/s eta 0:00:00 Downloading readthedocs_sphinx_ext-2.2.3-py2.py3-none-any.whl (11 kB) Downloading Babel-2.13.1-py3-none-any.whl (10.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.1/10.1 MB 43.9 MB/s eta 0:00:00 Downloading docutils-0.20.1-py3-none-any.whl (572 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 572.7/572.7 kB 143.5 MB/s eta 0:00:00 Downloading packaging-23.2-py3-none-any.whl (53 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 53.0/53.0 kB 128.4 MB/s eta 0:00:00 Downloading pygments-2.17.2-py3-none-any.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 67.4 MB/s eta 0:00:00 Downloading requests-2.31.0-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 kB 132.9 MB/s eta 0:00:00 Downloading sphinxcontrib_htmlhelp-2.0.4-py3-none-any.whl (99 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 99.2/99.2 kB 146.3 MB/s eta 0:00:00 Downloading sphinxcontrib_serializinghtml-1.1.9-py3-none-any.whl (92 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 92.7/92.7 kB 148.1 MB/s eta 0:00:00 Downloading sphinxcontrib_applehelp-1.0.7-py3-none-any.whl (120 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 120.0/120.0 kB 149.4 MB/s eta 0:00:00 Downloading sphinxcontrib_devhelp-1.0.5-py3-none-any.whl (83 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 83.5/83.5 kB 134.6 MB/s eta 0:00:00 Downloading sphinxcontrib_qthelp-1.0.6-py3-none-any.whl (89 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.4/89.4 kB 151.7 MB/s eta 0:00:00 Downloading certifi-2023.11.17-py3-none-any.whl (162 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 162.5/162.5 kB 159.1 MB/s eta 0:00:00 Downloading charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (140 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 140.3/140.3 kB 150.6 MB/s eta 0:00:00 Downloading idna-3.6-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.6/61.6 kB 136.0 MB/s eta 0:00:00 Downloading MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (28 kB) Downloading urllib3-2.1.0-py3-none-any.whl (104 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 104.6/104.6 kB 144.2 MB/s eta 0:00:00 Installing collected packages: snowballstemmer, urllib3, sphinxcontrib-jsmath, Pygments, packaging, MarkupSafe, imagesize, idna, docutils, charset-normalizer, certifi, babel, alabaster, requests, Jinja2, readthedocs-sphinx-ext, sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, sphinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, sphinx Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.3 Pygments-2.17.2 alabaster-0.7.13 babel-2.13.1 certifi-2023.11.17 charset-normalizer-3.3.2 docutils-0.20.1 idna-3.6 imagesize-1.4.1 packaging-23.2 readthedocs-sphinx-ext-2.2.3 requests-2.31.0 snowballstemmer-2.2.0 sphinx-7.2.6 sphinxcontrib-applehelp-1.0.7 sphinxcontrib-devhelp-1.0.5 sphinxcontrib-htmlhelp-2.0.4 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-1.0.6 sphinxcontrib-serializinghtml-1.1.9 urllib3-2.1.0 [rtd-command-info] start-time: 2023-12-07T18:49:04.032234Z, end-time: 2023-12-07T18:49:43.106778Z, duration: 39, exit-code: 0 python -m pip install --exists-action=w --no-cache-dir -r doc/requirements-doc.txt Collecting watchfiles==0.19.0 (from -r doc/requirements-doc.txt (line 3)) Downloading watchfiles-0.19.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 18.2 MB/s eta 0:00:00 Collecting Pygments==2.16.1 (from -r doc/requirements-doc.txt (line 6)) Downloading Pygments-2.16.1-py3-none-any.whl.metadata (2.5 kB) Collecting sphinx==7.1.2 (from -r doc/requirements-doc.txt (line 9)) Downloading sphinx-7.1.2-py3-none-any.whl.metadata (5.8 kB) Collecting sphinx-click==5.0.1 (from -r doc/requirements-doc.txt (line 10)) Downloading sphinx_click-5.0.1-py3-none-any.whl.metadata (3.4 kB) Collecting sphinx-copybutton==0.5.2 (from -r doc/requirements-doc.txt (line 11)) Downloading sphinx_copybutton-0.5.2-py3-none-any.whl (13 kB) Collecting sphinxemoji==0.2.0 (from -r doc/requirements-doc.txt (line 12)) Downloading sphinxemoji-0.2.0.tar.gz (44 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.4/44.4 kB 134.8 MB/s eta 0:00:00 Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Collecting sphinx-jsonschema==1.19.1 (from -r doc/requirements-doc.txt (line 13)) Downloading sphinx-jsonschema-1.19.1.tar.gz (18 kB) Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Collecting sphinx-sitemap==2.5.1 (from -r doc/requirements-doc.txt (line 14)) Downloading sphinx_sitemap-2.5.1-py3-none-any.whl.metadata (3.2 kB) Collecting sphinxcontrib-redoc==1.6.0 (from -r doc/requirements-doc.txt (line 15)) Downloading sphinxcontrib-redoc-1.6.0.tar.gz (350 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 350.5/350.5 kB 158.0 MB/s eta 0:00:00 Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Collecting sphinx-remove-toctrees==0.0.3 (from -r doc/requirements-doc.txt (line 16)) Downloading sphinx_remove_toctrees-0.0.3-py3-none-any.whl (4.7 kB) Collecting sphinx_design==0.5.0 (from -r doc/requirements-doc.txt (line 17)) Downloading sphinx_design-0.5.0-py3-none-any.whl.metadata (5.1 kB) Collecting pydata-sphinx-theme==0.14.1 (from -r doc/requirements-doc.txt (line 18)) Downloading pydata_sphinx_theme-0.14.1-py3-none-any.whl.metadata (7.2 kB) Collecting autodoc_pydantic==2.0.1 (from -r doc/requirements-doc.txt (line 19)) Downloading autodoc_pydantic-2.0.1-py3-none-any.whl.metadata (20 kB) Collecting pydantic!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,<3 (from -r doc/requirements-doc.txt (line 21)) Downloading pydantic-2.5.2-py3-none-any.whl.metadata (65 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.2/65.2 kB 137.2 MB/s eta 0:00:00 Collecting myst-parser==2.0.0 (from -r doc/requirements-doc.txt (line 24)) Downloading myst_parser-2.0.0-py3-none-any.whl.metadata (5.4 kB) Collecting myst-nb==1.0.0rc0 (from -r doc/requirements-doc.txt (line 25)) Downloading myst_nb-1.0.0rc0-py3-none-any.whl.metadata (4.7 kB) Collecting jupytext==1.15.2 (from -r doc/requirements-doc.txt (line 28)) Downloading jupytext-1.15.2-py3-none-any.whl.metadata (9.7 kB) Collecting urllib3<1.27 (from -r doc/requirements-doc.txt (line 31)) Downloading urllib3-1.26.18-py2.py3-none-any.whl.metadata (48 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 48.9/48.9 kB 142.6 MB/s eta 0:00:00 Collecting anyio>=3.0.0 (from watchfiles==0.19.0->-r doc/requirements-doc.txt (line 3)) Downloading anyio-4.1.0-py3-none-any.whl.metadata (4.5 kB) Requirement already satisfied: sphinxcontrib-applehelp in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (1.0.7) Requirement already satisfied: sphinxcontrib-devhelp in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (1.0.5) Requirement already satisfied: sphinxcontrib-jsmath in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (1.0.1) Requirement already satisfied: sphinxcontrib-htmlhelp>=2.0.0 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (2.0.4) Requirement already satisfied: sphinxcontrib-serializinghtml>=1.1.5 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (1.1.9) Requirement already satisfied: sphinxcontrib-qthelp in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (1.0.6) Requirement already satisfied: Jinja2>=3.0 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (3.1.2) Requirement already satisfied: docutils<0.21,>=0.18.1 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (0.20.1) Requirement already satisfied: snowballstemmer>=2.0 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (2.2.0) Requirement already satisfied: babel>=2.9 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (2.13.1) Requirement already satisfied: alabaster<0.8,>=0.7 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (0.7.13) Requirement already satisfied: imagesize>=1.3 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (1.4.1) Requirement already satisfied: requests>=2.25.0 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (2.31.0) Requirement already satisfied: packaging>=21.0 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (23.2) Collecting click>=7.0 (from sphinx-click==5.0.1->-r doc/requirements-doc.txt (line 10)) Downloading click-8.1.7-py3-none-any.whl.metadata (3.0 kB) Collecting jsonpointer (from sphinx-jsonschema==1.19.1->-r doc/requirements-doc.txt (line 13)) Downloading jsonpointer-2.4-py2.py3-none-any.whl.metadata (2.5 kB) Collecting pyyaml (from sphinx-jsonschema==1.19.1->-r doc/requirements-doc.txt (line 13)) Downloading PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.1 kB) Collecting jsonschema>=3.0 (from sphinxcontrib-redoc==1.6.0->-r doc/requirements-doc.txt (line 15)) Downloading jsonschema-4.20.0-py3-none-any.whl.metadata (8.1 kB) Collecting six>=1.5 (from sphinxcontrib-redoc==1.6.0->-r doc/requirements-doc.txt (line 15)) Downloading six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting beautifulsoup4 (from pydata-sphinx-theme==0.14.1->-r doc/requirements-doc.txt (line 18)) Downloading beautifulsoup4-4.12.2-py3-none-any.whl (142 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 143.0/143.0 kB 156.3 MB/s eta 0:00:00 Collecting accessible-pygments (from pydata-sphinx-theme==0.14.1->-r doc/requirements-doc.txt (line 18)) Downloading accessible_pygments-0.0.4-py2.py3-none-any.whl (29 kB) Collecting typing-extensions (from pydata-sphinx-theme==0.14.1->-r doc/requirements-doc.txt (line 18)) Downloading typing_extensions-4.8.0-py3-none-any.whl.metadata (3.0 kB) Collecting pydantic-settings<3.0.0,>=2.0 (from autodoc_pydantic==2.0.1->-r doc/requirements-doc.txt (line 19)) Downloading pydantic_settings-2.1.0-py3-none-any.whl.metadata (2.9 kB) Collecting markdown-it-py~=3.0 (from myst-parser==2.0.0->-r doc/requirements-doc.txt (line 24)) Downloading markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB) Collecting mdit-py-plugins~=0.4 (from myst-parser==2.0.0->-r doc/requirements-doc.txt (line 24)) Downloading mdit_py_plugins-0.4.0-py3-none-any.whl.metadata (2.7 kB) Collecting importlib_metadata (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading importlib_metadata-7.0.0-py3-none-any.whl.metadata (4.9 kB) Collecting ipython (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading ipython-8.18.1-py3-none-any.whl.metadata (6.0 kB) Collecting jupyter-cache<0.7,>=0.5 (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading jupyter_cache-0.6.1-py3-none-any.whl (33 kB) Collecting nbclient (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading nbclient-0.9.0-py3-none-any.whl.metadata (7.8 kB) Collecting nbformat~=5.0 (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading nbformat-5.9.2-py3-none-any.whl.metadata (3.4 kB) Collecting ipykernel (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading ipykernel-6.27.1-py3-none-any.whl.metadata (6.3 kB) Collecting toml (from jupytext==1.15.2->-r doc/requirements-doc.txt (line 28)) Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB) Collecting annotated-types>=0.4.0 (from pydantic!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,<3->-r doc/requirements-doc.txt (line 21)) Downloading annotated_types-0.6.0-py3-none-any.whl.metadata (12 kB) Collecting pydantic-core==2.14.5 (from pydantic!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,<3->-r doc/requirements-doc.txt (line 21)) Downloading pydantic_core-2.14.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.5 kB) Requirement already satisfied: idna>=2.8 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from anyio>=3.0.0->watchfiles==0.19.0->-r doc/requirements-doc.txt (line 3)) (3.6) Collecting sniffio>=1.1 (from anyio>=3.0.0->watchfiles==0.19.0->-r doc/requirements-doc.txt (line 3)) Downloading sniffio-1.3.0-py3-none-any.whl (10 kB) Requirement already satisfied: MarkupSafe>=2.0 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from Jinja2>=3.0->sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (2.1.3) Collecting attrs>=22.2.0 (from jsonschema>=3.0->sphinxcontrib-redoc==1.6.0->-r doc/requirements-doc.txt (line 15)) Downloading attrs-23.1.0-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.2/61.2 kB 141.5 MB/s eta 0:00:00 Collecting jsonschema-specifications>=2023.03.6 (from jsonschema>=3.0->sphinxcontrib-redoc==1.6.0->-r doc/requirements-doc.txt (line 15)) Downloading jsonschema_specifications-2023.11.2-py3-none-any.whl.metadata (3.0 kB) Collecting referencing>=0.28.4 (from jsonschema>=3.0->sphinxcontrib-redoc==1.6.0->-r doc/requirements-doc.txt (line 15)) Downloading referencing-0.32.0-py3-none-any.whl.metadata (2.7 kB) Collecting rpds-py>=0.7.1 (from jsonschema>=3.0->sphinxcontrib-redoc==1.6.0->-r doc/requirements-doc.txt (line 15)) Downloading rpds_py-0.13.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.9 kB) Collecting nbclient (from myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading nbclient-0.7.4-py3-none-any.whl (73 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 73.1/73.1 kB 137.2 MB/s eta 0:00:00 Collecting sqlalchemy<3,>=1.3.12 (from jupyter-cache<0.7,>=0.5->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading SQLAlchemy-2.0.23-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (9.6 kB) Collecting tabulate (from jupyter-cache<0.7,>=0.5->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading tabulate-0.9.0-py3-none-any.whl (35 kB) Collecting mdurl~=0.1 (from markdown-it-py~=3.0->myst-parser==2.0.0->-r doc/requirements-doc.txt (line 24)) Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB) Collecting jupyter-client>=6.1.12 (from nbclient->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading jupyter_client-8.6.0-py3-none-any.whl.metadata (8.3 kB) Collecting jupyter-core!=5.0.*,>=4.12 (from nbclient->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading jupyter_core-5.5.0-py3-none-any.whl.metadata (3.4 kB) Collecting traitlets>=5.3 (from nbclient->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading traitlets-5.14.0-py3-none-any.whl.metadata (10 kB) Collecting fastjsonschema (from nbformat~=5.0->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading fastjsonschema-2.19.0-py3-none-any.whl.metadata (2.0 kB) Collecting python-dotenv>=0.21.0 (from pydantic-settings<3.0.0,>=2.0->autodoc_pydantic==2.0.1->-r doc/requirements-doc.txt (line 19)) Downloading python_dotenv-1.0.0-py3-none-any.whl (19 kB) Requirement already satisfied: charset-normalizer<4,>=2 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from requests>=2.25.0->sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (3.3.2) Requirement already satisfied: certifi>=2017.4.17 in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/master/lib/python3.11/site-packages (from requests>=2.25.0->sphinx==7.1.2->-r doc/requirements-doc.txt (line 9)) (2023.11.17) Collecting soupsieve>1.2 (from beautifulsoup4->pydata-sphinx-theme==0.14.1->-r doc/requirements-doc.txt (line 18)) Downloading soupsieve-2.5-py3-none-any.whl.metadata (4.7 kB) Collecting zipp>=0.5 (from importlib_metadata->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading zipp-3.17.0-py3-none-any.whl.metadata (3.7 kB) Collecting comm>=0.1.1 (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading comm-0.2.0-py3-none-any.whl.metadata (3.7 kB) Collecting debugpy>=1.6.5 (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading debugpy-1.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.0 kB) Collecting matplotlib-inline>=0.1 (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading matplotlib_inline-0.1.6-py3-none-any.whl (9.4 kB) Collecting nest-asyncio (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading nest_asyncio-1.5.8-py3-none-any.whl.metadata (2.8 kB) Collecting psutil (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading psutil-5.9.6-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (21 kB) Collecting pyzmq>=20 (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading pyzmq-25.1.2-cp311-cp311-manylinux_2_28_x86_64.whl.metadata (4.9 kB) Collecting tornado>=6.1 (from ipykernel->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (2.5 kB) Collecting decorator (from ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading decorator-5.1.1-py3-none-any.whl (9.1 kB) Collecting jedi>=0.16 (from ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading jedi-0.19.1-py2.py3-none-any.whl.metadata (22 kB) Collecting prompt-toolkit<3.1.0,>=3.0.41 (from ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading prompt_toolkit-3.0.41-py3-none-any.whl.metadata (6.5 kB) Collecting stack-data (from ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading stack_data-0.6.3-py3-none-any.whl.metadata (18 kB) Collecting pexpect>4.3 (from ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading pexpect-4.9.0-py2.py3-none-any.whl.metadata (2.5 kB) Collecting parso<0.9.0,>=0.8.3 (from jedi>=0.16->ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading parso-0.8.3-py2.py3-none-any.whl (100 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.8/100.8 kB 143.3 MB/s eta 0:00:00 Collecting python-dateutil>=2.8.2 (from jupyter-client>=6.1.12->nbclient->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 247.7/247.7 kB 158.3 MB/s eta 0:00:00 Collecting platformdirs>=2.5 (from jupyter-core!=5.0.*,>=4.12->nbclient->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading platformdirs-4.1.0-py3-none-any.whl.metadata (11 kB) Collecting ptyprocess>=0.5 (from pexpect>4.3->ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading ptyprocess-0.7.0-py2.py3-none-any.whl (13 kB) Collecting wcwidth (from prompt-toolkit<3.1.0,>=3.0.41->ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading wcwidth-0.2.12-py2.py3-none-any.whl.metadata (14 kB) Collecting greenlet!=0.4.17 (from sqlalchemy<3,>=1.3.12->jupyter-cache<0.7,>=0.5->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading greenlet-3.0.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (3.7 kB) Collecting executing>=1.2.0 (from stack-data->ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading executing-2.0.1-py2.py3-none-any.whl.metadata (9.0 kB) Collecting asttokens>=2.1.0 (from stack-data->ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading asttokens-2.4.1-py2.py3-none-any.whl.metadata (5.2 kB) Collecting pure-eval (from stack-data->ipython->myst-nb==1.0.0rc0->-r doc/requirements-doc.txt (line 25)) Downloading pure_eval-0.2.2-py3-none-any.whl (11 kB) Downloading Pygments-2.16.1-py3-none-any.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 157.9 MB/s eta 0:00:00 Downloading sphinx-7.1.2-py3-none-any.whl (3.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 141.2 MB/s eta 0:00:00 Downloading sphinx_click-5.0.1-py3-none-any.whl (9.6 kB) Downloading sphinx_sitemap-2.5.1-py3-none-any.whl (5.5 kB) Downloading sphinx_design-0.5.0-py3-none-any.whl (2.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 151.4 MB/s eta 0:00:00 Downloading pydata_sphinx_theme-0.14.1-py3-none-any.whl (3.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.8/3.8 MB 134.9 MB/s eta 0:00:00 Downloading autodoc_pydantic-2.0.1-py3-none-any.whl (30 kB) Downloading myst_parser-2.0.0-py3-none-any.whl (77 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.2/77.2 kB 125.5 MB/s eta 0:00:00 Downloading myst_nb-1.0.0rc0-py3-none-any.whl (80 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 80.2/80.2 kB 138.1 MB/s eta 0:00:00 Downloading jupytext-1.15.2-py3-none-any.whl (307 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 307.2/307.2 kB 157.9 MB/s eta 0:00:00 Downloading pydantic-2.5.2-py3-none-any.whl (381 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 381.9/381.9 kB 160.5 MB/s eta 0:00:00 Downloading pydantic_core-2.14.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 149.2 MB/s eta 0:00:00 Downloading urllib3-1.26.18-py2.py3-none-any.whl (143 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 143.8/143.8 kB 144.5 MB/s eta 0:00:00 Downloading annotated_types-0.6.0-py3-none-any.whl (12 kB) Downloading anyio-4.1.0-py3-none-any.whl (83 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 83.9/83.9 kB 146.9 MB/s eta 0:00:00 Downloading click-8.1.7-py3-none-any.whl (97 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.9/97.9 kB 167.0 MB/s eta 0:00:00 Downloading jsonschema-4.20.0-py3-none-any.whl (84 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 84.7/84.7 kB 145.5 MB/s eta 0:00:00 Downloading markdown_it_py-3.0.0-py3-none-any.whl (87 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 87.5/87.5 kB 143.4 MB/s eta 0:00:00 Downloading mdit_py_plugins-0.4.0-py3-none-any.whl (54 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.1/54.1 kB 140.3 MB/s eta 0:00:00 Downloading nbformat-5.9.2-py3-none-any.whl (77 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.6/77.6 kB 145.6 MB/s eta 0:00:00 Downloading pydantic_settings-2.1.0-py3-none-any.whl (11 kB) Downloading PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (757 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 757.7/757.7 kB 159.7 MB/s eta 0:00:00 Downloading typing_extensions-4.8.0-py3-none-any.whl (31 kB) Downloading importlib_metadata-7.0.0-py3-none-any.whl (23 kB) Downloading ipykernel-6.27.1-py3-none-any.whl (114 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 114.6/114.6 kB 152.8 MB/s eta 0:00:00 Downloading ipython-8.18.1-py3-none-any.whl (808 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 808.2/808.2 kB 159.5 MB/s eta 0:00:00 Downloading jsonpointer-2.4-py2.py3-none-any.whl (7.8 kB) Downloading comm-0.2.0-py3-none-any.whl (7.0 kB) Downloading debugpy-1.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.0/3.0 MB 133.1 MB/s eta 0:00:00 Downloading jedi-0.19.1-py2.py3-none-any.whl (1.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 163.0 MB/s eta 0:00:00 Downloading jsonschema_specifications-2023.11.2-py3-none-any.whl (17 kB) Downloading jupyter_client-8.6.0-py3-none-any.whl (105 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 105.9/105.9 kB 148.8 MB/s eta 0:00:00 Downloading jupyter_core-5.5.0-py3-none-any.whl (28 kB) Downloading pexpect-4.9.0-py2.py3-none-any.whl (63 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 63.8/63.8 kB 143.9 MB/s eta 0:00:00 Downloading prompt_toolkit-3.0.41-py3-none-any.whl (385 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 385.5/385.5 kB 150.1 MB/s eta 0:00:00 Downloading pyzmq-25.1.2-cp311-cp311-manylinux_2_28_x86_64.whl (1.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 163.0 MB/s eta 0:00:00 Downloading referencing-0.32.0-py3-none-any.whl (26 kB) Downloading rpds_py-0.13.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 159.8 MB/s eta 0:00:00 Downloading soupsieve-2.5-py3-none-any.whl (36 kB) Downloading SQLAlchemy-2.0.23-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 139.9 MB/s eta 0:00:00 Downloading tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (435 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 435.4/435.4 kB 161.7 MB/s eta 0:00:00 Downloading traitlets-5.14.0-py3-none-any.whl (85 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 85.2/85.2 kB 149.4 MB/s eta 0:00:00 Downloading zipp-3.17.0-py3-none-any.whl (7.4 kB) Downloading fastjsonschema-2.19.0-py3-none-any.whl (23 kB) Downloading nest_asyncio-1.5.8-py3-none-any.whl (5.3 kB) Downloading psutil-5.9.6-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (283 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 283.6/283.6 kB 149.3 MB/s eta 0:00:00 Downloading stack_data-0.6.3-py3-none-any.whl (24 kB) Downloading asttokens-2.4.1-py2.py3-none-any.whl (27 kB) Downloading executing-2.0.1-py2.py3-none-any.whl (24 kB) Downloading greenlet-3.0.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (616 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 616.7/616.7 kB 158.0 MB/s eta 0:00:00 Downloading platformdirs-4.1.0-py3-none-any.whl (17 kB) Downloading wcwidth-0.2.12-py2.py3-none-any.whl (34 kB) Building wheels for collected packages: sphinxemoji, sphinx-jsonschema, sphinxcontrib-redoc Building wheel for sphinxemoji (setup.py): started Building wheel for sphinxemoji (setup.py): finished with status 'done' Created wheel for sphinxemoji: filename=sphinxemoji-0.2.0-py3-none-any.whl size=44408 sha256=73af3dcc0384743b1a76499612ab4b4bf5d0660cea76b5c01f3f651db1c6f350 Stored in directory: /tmp/pip-ephem-wheel-cache-sea25xlf/wheels/d4/b0/a5/92b0e0b5611fc4d37f90711172a680959318c4474df5d2718d Building wheel for sphinx-jsonschema (setup.py): started Building wheel for sphinx-jsonschema (setup.py): finished with status 'done' Created wheel for sphinx-jsonschema: filename=sphinx_jsonschema-1.19.1-py3-none-any.whl size=15414 sha256=207279cebea8ccc639f6f5db2a645691912301c832b9b784409e5ca83e45a4ea Stored in directory: /tmp/pip-ephem-wheel-cache-sea25xlf/wheels/2c/2e/48/5b3fa8b77682d9bb35dea05562fec306cd2cca3012d32e8641 Building wheel for sphinxcontrib-redoc (setup.py): started Building wheel for sphinxcontrib-redoc (setup.py): finished with status 'done' Created wheel for sphinxcontrib-redoc: filename=sphinxcontrib_redoc-1.6.0-py3-none-any.whl size=299595 sha256=a9058651db4c98b8427352c15276437bd8d241a520764f50907f53c2cb5b33dd Stored in directory: /tmp/pip-ephem-wheel-cache-sea25xlf/wheels/a1/90/66/d015c821e6e8b2de75d210826c4983325ebb344834965e8730 Successfully built sphinxemoji sphinx-jsonschema sphinxcontrib-redoc Installing collected packages: wcwidth, pure-eval, ptyprocess, fastjsonschema, zipp, urllib3, typing-extensions, traitlets, tornado, toml, tabulate, soupsieve, sniffio, six, rpds-py, pyzmq, pyyaml, python-dotenv, Pygments, psutil, prompt-toolkit, platformdirs, pexpect, parso, nest-asyncio, mdurl, jsonpointer, greenlet, executing, decorator, debugpy, click, attrs, annotated-types, sqlalchemy, referencing, python-dateutil, pydantic-core, matplotlib-inline, markdown-it-py, jupyter-core, jedi, importlib_metadata, comm, beautifulsoup4, asttokens, anyio, accessible-pygments, watchfiles, stack-data, sphinx-jsonschema, pydantic, mdit-py-plugins, jupyter-client, jsonschema-specifications, pydantic-settings, jsonschema, ipython, nbformat, ipykernel, nbclient, jupytext, jupyter-cache, sphinx, myst-parser, sphinxemoji, sphinxcontrib-redoc, sphinx-sitemap, sphinx-remove-toctrees, sphinx_design, sphinx-copybutton, sphinx-click, pydata-sphinx-theme, myst-nb, autodoc_pydantic Attempting uninstall: urllib3 Found existing installation: urllib3 2.1.0 Uninstalling urllib3-2.1.0: Successfully uninstalled urllib3-2.1.0 Attempting uninstall: Pygments Found existing installation: Pygments 2.17.2 Uninstalling Pygments-2.17.2: Successfully uninstalled Pygments-2.17.2 Attempting uninstall: sphinx Found existing installation: Sphinx 7.2.6 Uninstalling Sphinx-7.2.6: Successfully uninstalled Sphinx-7.2.6 Successfully installed Pygments-2.16.1 accessible-pygments-0.0.4 annotated-types-0.6.0 anyio-4.1.0 asttokens-2.4.1 attrs-23.1.0 autodoc_pydantic-2.0.1 beautifulsoup4-4.12.2 click-8.1.7 comm-0.2.0 debugpy-1.8.0 decorator-5.1.1 executing-2.0.1 fastjsonschema-2.19.0 greenlet-3.0.1 importlib_metadata-7.0.0 ipykernel-6.27.1 ipython-8.18.1 jedi-0.19.1 jsonpointer-2.4 jsonschema-4.20.0 jsonschema-specifications-2023.11.2 jupyter-cache-0.6.1 jupyter-client-8.6.0 jupyter-core-5.5.0 jupytext-1.15.2 markdown-it-py-3.0.0 matplotlib-inline-0.1.6 mdit-py-plugins-0.4.0 mdurl-0.1.2 myst-nb-1.0.0rc0 myst-parser-2.0.0 nbclient-0.7.4 nbformat-5.9.2 nest-asyncio-1.5.8 parso-0.8.3 pexpect-4.9.0 platformdirs-4.1.0 prompt-toolkit-3.0.41 psutil-5.9.6 ptyprocess-0.7.0 pure-eval-0.2.2 pydantic-2.5.2 pydantic-core-2.14.5 pydantic-settings-2.1.0 pydata-sphinx-theme-0.14.1 python-dateutil-2.8.2 python-dotenv-1.0.0 pyyaml-6.0.1 pyzmq-25.1.2 referencing-0.32.0 rpds-py-0.13.2 six-1.16.0 sniffio-1.3.0 soupsieve-2.5 sphinx-7.1.2 sphinx-click-5.0.1 sphinx-copybutton-0.5.2 sphinx-jsonschema-1.19.1 sphinx-remove-toctrees-0.0.3 sphinx-sitemap-2.5.1 sphinx_design-0.5.0 sphinxcontrib-redoc-1.6.0 sphinxemoji-0.2.0 sqlalchemy-2.0.23 stack-data-0.6.3 tabulate-0.9.0 toml-0.10.2 tornado-6.4 traitlets-5.14.0 typing-extensions-4.8.0 urllib3-1.26.18 watchfiles-0.19.0 wcwidth-0.2.12 zipp-3.17.0 [rtd-command-info] start-time: 2023-12-07T18:49:43.911366Z, end-time: 2023-12-07T18:49:43.990497Z, duration: 0, exit-code: 0 cat doc/source/conf.py from typing import Dict, Any from datetime import datetime from importlib import import_module import os import sys from jinja2.filters import FILTERS import sphinx from sphinx.ext import autodoc from docutils import nodes import pathlib import logging logger = logging.getLogger(__name__) sys.path.insert(0, os.path.abspath(".")) from custom_directives import ( # noqa DownloadAndPreprocessEcosystemDocs, update_context, LinkcheckSummarizer, parse_navbar_config, setup_context, ) # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath("../../python/")) # -- General configuration ------------------------------------------------ # The name of a reST role (builtin or Sphinx extension) to use as the default role, that # is, for text marked up `like this`. This can be set to 'py:obj' to make `filter` a # cross-reference to the Python function “filter”. The default is None, which doesn’t # reassign the default role. default_role = "py:obj" sys.path.append(os.path.abspath("./_ext")) extensions = [ "callouts", # custom extension from _ext folder "queryparamrefs", "sphinx.ext.autodoc", "sphinx.ext.viewcode", "sphinx.ext.napoleon", "sphinx_click.ext", "sphinx-jsonschema", "sphinxemoji.sphinxemoji", "sphinx_copybutton", "sphinx_sitemap", "myst_nb", "sphinx.ext.doctest", "sphinx.ext.coverage", "sphinx.ext.autosummary", "sphinxcontrib.autodoc_pydantic", "sphinxcontrib.redoc", "sphinx_remove_toctrees", "sphinx_design", "sphinx.ext.intersphinx", ] # Prune deep toc-trees on demand for smaller html and faster builds. # This only effects the navigation bar, not the content. if os.getenv("FAST", False): remove_from_toctrees = [ "data/api/doc/*", "ray-air/api/doc/*", "ray-core/api/doc/*", "ray-observability/api/state/doc/*", "serve/api/doc/*", "train/api/doc/*", "tune/api/doc/*", "workflows/api/doc/*", "cluster/running-applications/job-submission/doc/*", "serve/production-guide/*", "serve/tutorials/deployment-graph-patterns/*", "rllib/package_ref/env/*", "rllib/package_ref/policy/*", "rllib/package_ref/evaluation/*", "rllib/package_ref/utils/*", "workflows/api/*", "cluster/kubernetes/user-guides/*", "cluster/kubernetes/examples/*", "cluster/vms/user-guides/*", "cluster/running-applications/job-submission/*", "ray-core/actors/*", "ray-core/objects/*", "ray-core/scheduling/*", "ray-core/tasks/*", "ray-core/patterns/*", ] myst_enable_extensions = [ "dollarmath", "amsmath", "deflist", "html_admonition", "html_image", "colon_fence", "smartquotes", "replacements", ] myst_heading_anchors = 3 # Cache notebook outputs in _build/.jupyter_cache # To prevent notebook execution, set this to "off". To force re-execution, set this to # "force". To cache previous runs, set this to "cache". nb_execution_mode = os.getenv("RUN_NOTEBOOKS", "off") # Add a render priority for doctest nb_mime_priority_overrides = [ ("html", "application/vnd.jupyter.widget-view+json", 10), ("html", "application/javascript", 20), ("html", "text/html", 30), ("html", "image/svg+xml", 40), ("html", "image/png", 50), ("html", "image/jpeg", 60), ("html", "text/markdown", 70), ("html", "text/latex", 80), ("html", "text/plain", 90), ] html_extra_path = ["robots.txt"] html_baseurl = "https://docs.ray.io/en/latest" # This pattern matches: # - Python Repl prompts (">>> ") and it's continuation ("... ") # - Bash prompts ("$ ") # - IPython prompts ("In []: ", "In [999]: ") and it's continuations # (" ...: ", " : ") copybutton_prompt_text = r">>> |\.\.\. |\$ |In \[\d*\]: | {2,5}\.\.\.: | {5,8}: " copybutton_prompt_is_regexp = True # By default, tabs can be closed by selecting an open tab. We disable this # functionality with the `sphinx_tabs_disable_tab_closing` option. sphinx_tabs_disable_tab_closing = True # Special mocking of packaging.version.Version is required when using sphinx; # we can't just add this to autodoc_mock_imports, as packaging is imported by # sphinx even before it can be mocked. Instead, we patch it here. import packaging.version as packaging_version # noqa Version = packaging_version.Version class MockVersion(Version): def __init__(self, version: str): if isinstance(version, (str, bytes)): super().__init__(version) else: super().__init__("0") packaging_version.Version = MockVersion # Add any paths that contain templates here, relative to this directory. templates_path = ["_templates"] # The master toctree document. master_doc = "index" # General information about the project. project = "Ray" copyright = str(datetime.now().year) + ", The Ray Team" author = "The Ray Team" # The version info for the project you're documenting acts as replacement for # |version| and |release|, and is also used in various other places throughout the # built documents. Retrieve the version using `find_version` rather than importing # directly (from ray import __version__) because initializing ray will prevent # mocking of certain external dependencies. from setup import find_version # noqa release = find_version("ray", "_version.py") language = "en" # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # Also helps resolve warnings about documents not included in any toctree. exclude_patterns = [ "templates/*", "cluster/running-applications/doc/ray.*", ] # If "DOC_LIB" is found, only build that top-level navigation item. build_one_lib = os.getenv("DOC_LIB") all_toc_libs = [ f.path.strip("./") for f in os.scandir(".") if f.is_dir() and "ray-" in f.path ] all_toc_libs += [ "cluster", "tune", "data", "train", "rllib", "serve", "workflows", ] if build_one_lib and build_one_lib in all_toc_libs: all_toc_libs.remove(build_one_lib) exclude_patterns += all_toc_libs # The name of the Pygments (syntax highlighting) style to use. pygments_style = "lovelace" # If true, `todo` and `todoList` produce output, else they produce nothing. todo_include_todos = False # Do not check anchors for links because it produces many false positives # and is slow (it needs to download the linked website). linkcheck_anchors = False # Only check external links, i.e. the ones starting with http:// or https://. linkcheck_ignore = [ r"^((?!http).)*$", # exclude links not starting with http "http://ala2017.it.nuigalway.ie/papers/ALA2017_Gupta.pdf", # broken "https://mvnrepository.com/artifact/*", # working but somehow not with linkcheck # This should be fixed -- is temporal the successor of cadence? Do the examples need to be updated? "https://github.com/serverlessworkflow/specification/blob/main/comparisons/comparison-cadence.md", # TODO(richardliaw): The following probably needs to be fixed in the tune_sklearn package "https://scikit-optimize.github.io/stable/modules/", "https://www.oracle.com/java/technologies/javase-jdk15-downloads.html", # forbidden for client "https://speakerdeck.com/*", # forbidden for bots r"https://huggingface.co/*", # seems to be flaky r"https://www.meetup.com/*", # seems to be flaky r"https://www.pettingzoo.ml/*", # seems to be flaky r"http://localhost[:/].*", # Ignore localhost links r"^http:/$", # Ignore incomplete links # 403 Client Error: Forbidden for url. # They ratelimit bots. "https://www.datanami.com/2018/02/01/rays-new-library-targets-high-speed-reinforcement-learning/", # 403 Client Error: Forbidden for url. # They ratelimit bots. "https://www.researchgate.net/publication/222573328_Stochastic_Gradient_Boosting", "https://www.datanami.com/2019/11/05/why-every-python-developer-will-love-ray/", "https://dev.mysql.com/doc/connector-python/en/", # Returning 522s intermittently. "https://lczero.org/", # Returns 429 errors in Linkcheck due to too many requests "https://archive.is/2022.12.16-171259/https://www.businessinsider.com/openai-chatgpt-trained-on-anyscale-ray-generative-lifelike-ai-models-2022-12", # Returns 406 but remains accessible "https://www.uber.com/blog/elastic-xgboost-ray/", ] # -- Options for HTML output ---------------------------------------------- def render_svg_logo(path): with open(pathlib.Path(__file__).parent / path, "r") as f: content = f.read() return content # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = "pydata_sphinx_theme" # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. html_theme_options = { "use_edit_page_button": True, "announcement": None, "logo": { "svg": render_svg_logo("_static/img/ray_logo.svg"), }, "navbar_start": ["navbar-ray-logo"], "navbar_end": [ "navbar-icon-links", "navbar-anyscale", ], "navbar_center": ["navbar-links"], "navbar_align": "left", "navbar_persistent": [ "theme-switcher", ], "secondary_sidebar_items": [ "page-toc", "edit-this-page", ], "content_footer_items": [ "csat", ], "navigation_depth": 4, "analytics": {"google_analytics_id": "UA-110413294-1"}, } html_context = { "github_user": "ray-project", "github_repo": "ray", "github_version": "master", "doc_path": "doc/source/", } html_sidebars = { "**": [ "release-header", "search-button-field", "main-sidebar", ], "ray-overview/examples": ["examples-sidebar"], } # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". html_title = f"Ray {release}" autodoc_typehints_format = "short" # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. html_favicon = "_static/favicon.ico" # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ["_static"] # Output file base name for HTML help builder. htmlhelp_basename = "Raydoc" # -- Options for LaTeX output --------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). # 'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). # 'pointsize': '10pt', # Additional stuff for the LaTeX preamble. # 'preamble': '', # Latex figure (float) alignment # 'figure_align': 'htbp', } latex_documents = [ (master_doc, "Ray.tex", "Ray Documentation", author, "manual"), ] # -- Options for manual page output --------------------------------------- man_pages = [(master_doc, "ray", "Ray Documentation", [author], 1)] # -- Options for Texinfo output ------------------------------------------- texinfo_documents = [ ( master_doc, "Ray", "Ray Documentation", author, "Ray", "Ray provides a simple, universal API for building distributed applications.", "Miscellaneous", ), ] # Python methods should be presented in source code order autodoc_member_order = "bysource" # Better typehint formatting (see custom.css) autodoc_typehints = "signature" def filter_out_undoc_class_members(member_name, class_name, module_name): module = import_module(module_name) cls = getattr(module, class_name) if getattr(cls, member_name).__doc__: return f"~{class_name}.{member_name}" else: return "" FILTERS["filter_out_undoc_class_members"] = filter_out_undoc_class_members def add_custom_assets( app: sphinx.application.Sphinx, pagename: str, templatename: str, context: Dict[str, Any], doctree: nodes.Node, ): """Add custom per-page assets. See documentation on Sphinx Core Events for more information: https://www.sphinx-doc.org/en/master/extdev/appapi.html#sphinx-core-events """ if pagename == "train/train": app.add_css_file("css/ray-train.css") elif pagename == "index": # CSS for HTML part of index.html app.add_css_file("css/splash.css") app.add_js_file("js/splash.js") elif pagename == "ray-overview/examples": # Example gallery app.add_css_file("css/examples.css") app.add_js_file("js/examples.js") elif pagename == "ray-overview/ray-libraries": app.add_css_file("css/ray-libraries.css") def setup(app): # NOTE: 'MOCK' is a custom option we introduced to illustrate mock outputs. Since # `doctest` doesn't support this flag by default, `sphinx.ext.doctest` raises # warnings when we build the documentation. import doctest doctest.register_optionflag("MOCK") app.connect("html-page-context", update_context) app.add_config_value("navbar_content_path", "navbar.yml", "env") app.connect("config-inited", parse_navbar_config) app.connect("html-page-context", setup_context) app.connect("html-page-context", add_custom_assets) # https://github.com/ines/termynal app.add_js_file("js/termynal.js", defer="defer") app.add_css_file("css/termynal.css") app.add_js_file("js/custom.js", defer="defer") app.add_css_file("css/custom.css", priority=800) app.add_js_file("js/csat.js") app.add_css_file("css/csat.css") app.add_js_file("js/assistant.js", defer="defer") app.add_css_file("css/assistant.css") base_path = pathlib.Path(__file__).parent github_docs = DownloadAndPreprocessEcosystemDocs(base_path) # Download docs from ecosystem library repos app.connect("builder-inited", github_docs.write_new_docs) # Restore original file content after build app.connect("build-finished", github_docs.write_original_docs) # Hook into the logger used by linkcheck to display a summary at the end. linkcheck_summarizer = LinkcheckSummarizer() app.connect("builder-inited", linkcheck_summarizer.add_handler_to_linkcheck) app.connect("build-finished", linkcheck_summarizer.summarize) redoc = [ { "name": "Ray Jobs API", "page": "cluster/running-applications/job-submission/api", "spec": "cluster/running-applications/job-submission/openapi.yml", "embed": True, }, ] redoc_uri = "https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js" autosummary_filename_map = { "ray.serve.deployment": "ray.serve.deployment_decorator", "ray.serve.Deployment": "ray.serve.Deployment", } # Mock out external dependencies here. autodoc_mock_imports = [ "aiohttp", "aiosignal", "composer", "dask", "datasets", "fastapi", "filelock", "frozenlist", "fsspec", "google", "grpc", "gymnasium", "horovod", "huggingface", "joblib", "lightgbm", "lightgbm_ray", "numpy", "pandas", "pyarrow", "pytorch_lightning", "scipy", "setproctitle", "skimage", "sklearn", "skopt", "starlette", "tensorflow", "torch", "torchvision", "transformers", "tree", "uvicorn", "wandb", "watchfiles", "xgboost", "xgboost_ray", "psutil", "colorama", "grpc", # Internal compiled modules "ray._raylet", "ray.core.generated", "ray.serve.generated", ] for mock_target in autodoc_mock_imports: if mock_target in sys.modules: logger.info( f"Potentially problematic mock target ({mock_target}) found; " "autodoc_mock_imports cannot mock modules that have already " "been loaded into sys.modules when the sphinx build starts." ) class MockedClassDocumenter(autodoc.ClassDocumenter): """Remove note about base class when a class is derived from object.""" def add_line(self, line: str, source: str, *lineno: int) -> None: if line == " Bases: :py:class:`object`": return super().add_line(line, source, *lineno) autodoc.ClassDocumenter = MockedClassDocumenter # Other sphinx docs can be linked to if the appropriate URL to the docs # is specified in the `intersphinx_mapping` - for example, types annotations # that are defined in dependencies can link to their respective documentation. intersphinx_mapping = { "aiohttp": ("https://docs.aiohttp.org/en/stable/", None), "composer": ("https://docs.mosaicml.com/en/latest/", None), "dask": ("https://docs.dask.org/en/stable/", None), "datasets": ("https://huggingface.co/docs/datasets/main/en/", None), "distributed": ("https://distributed.dask.org/en/stable/", None), "grpc": ("https://grpc.github.io/grpc/python/", None), "gymnasium": ("https://gymnasium.farama.org/", None), "horovod": ("https://horovod.readthedocs.io/en/stable/", None), "lightgbm": ("https://lightgbm.readthedocs.io/en/latest/", None), "mars": ("https://mars-project.readthedocs.io/en/latest/", None), "modin": ("https://modin.readthedocs.io/en/stable/", None), "numpy": ("https://numpy.org/doc/stable/", None), "pandas": ("https://pandas.pydata.org/pandas-docs/stable/", None), "pyarrow": ("https://arrow.apache.org/docs", None), "pydantic": ("https://docs.pydantic.dev/latest/", None), "pymongoarrow": ("https://mongo-arrow.readthedocs.io/en/latest/", None), "pyspark": ("https://spark.apache.org/docs/latest/api/python/", None), "python": ("https://docs.python.org/3", None), "pytorch_lightning": ("https://lightning.ai/docs/pytorch/stable/", None), "scipy": ("https://docs.scipy.org/doc/scipy/", None), "sklearn": ("https://scikit-learn.org/stable/", None), "skopt": ("https://scikit-optimize.github.io/stable/", None), "tensorflow": ( "https://www.tensorflow.org/api_docs/python", "https://raw.githubusercontent.com/GPflow/tensorflow-intersphinx/master/tf2_py_objects.inv", ), "torch": ("https://pytorch.org/docs/stable/", None), "torchvision": ("https://pytorch.org/vision/stable/", None), "transformers": ("https://huggingface.co/docs/transformers/main/en/", None), } # Ray must not be imported in conf.py because third party modules initialized by # `import ray` will no be mocked out correctly. Perform a check here to ensure # ray is not imported by future maintainers. assert ( "ray" not in sys.modules ), "If ray is already imported, we will not render documentation correctly!" ########################################################################### # 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/main/readthedocs/doc_builder/templates/doc_builder/conf.py.tmpl # # Note: this file shouldn't rely on extra dependencies. import importlib import sys import os.path # Borrowed from six. PY3 = sys.version_info[0] == 3 string_types = str if PY3 else basestring 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') # Define this variable in case it's not defined by the user. # It defaults to `alabaster` which is the default from Sphinx. # https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-html_theme html_theme = globals().get('html_theme', 'alabaster') #Add project information to the template context. context = { 'html_theme': html_theme, 'current_version': "master", 'version_slug': "master", 'MEDIA_URL': "https://media.readthedocs.com/media/", 'STATIC_URL': "https://assets.readthedocs.com/", 'PRODUCTION_DOMAIN': "readthedocs.com", 'proxied_static_path': "/_/static/", 'versions': [ ("master", "/en/master/"), ("latest", "/en/latest/"), ("releases-2.8.0", "/en/releases-2.8.0/"), ("releases-2.7.1", "/en/releases-2.7.1/"), ("releases-2.7.0rc0", "/en/releases-2.7.0rc0/"), ("releases-2.7.0", "/en/releases-2.7.0/"), ("releases-2.6.3", "/en/releases-2.6.3/"), ("releases-2.6.2", "/en/releases-2.6.2/"), ("releases-2.6.1", "/en/releases-2.6.1/"), ("releases-2.6.0", "/en/releases-2.6.0/"), ("releases-2.5.1", "/en/releases-2.5.1/"), ("releases-2.5.0", "/en/releases-2.5.0/"), ("releases-2.4.0", "/en/releases-2.4.0/"), ("releases-2.3.1", "/en/releases-2.3.1/"), ("releases-2.3.0", "/en/releases-2.3.0/"), ("releases-2.2.0", "/en/releases-2.2.0/"), ("releases-2.1.0", "/en/releases-2.1.0/"), ("releases-2.0.1", "/en/releases-2.0.1/"), ("releases-2.0.0", "/en/releases-2.0.0/"), ("releases-1.13.0", "/en/releases-1.13.0/"), ("releases-1.12.2", "/en/releases-1.12.2/"), ("releases-1.12.1", "/en/releases-1.12.1/"), ("releases-1.12.0", "/en/releases-1.12.0/"), ("releases-1.11.2", "/en/releases-1.11.2/"), ("releases-1.11.1", "/en/releases-1.11.1/"), ("releases-1.11.0", "/en/releases-1.11.0/"), ], 'downloads': [ ], 'subprojects': [ ], 'slug': 'anyscale-ray', 'name': u'ray', 'rtd_language': u'en', 'programming_language': u'py', 'canonical_url': '', 'analytics_code': 'None', 'single_version': False, 'conf_py_path': '/doc/source/', 'api_host': 'https://readthedocs.com', 'github_user': 'ray-project', 'proxied_api_host': '/_', 'github_repo': 'ray', '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, 'docsearch_disabled': False, 'user_analytics_code': '', 'global_analytics_code': 'UA-17997319-2', 'commit': '2daf1fc4', } # For sphinx >=1.8 we can use html_baseurl to set the canonical URL. # https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-html_baseurl if version_info >= (1, 8): if not globals().get('html_baseurl'): html_baseurl = context['canonical_url'] context['canonical_url'] = None if 'html_context' in globals(): for key in context: if key not in html_context: html_context[key] = context[key] 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") readthedocs_vcs_url = 'None' readthedocs_build_url = 'https://readthedocs.com/projects/anyscale-ray/builds/1887581/' 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' # Make sure our build directory is always excluded exclude_patterns = globals().get('exclude_patterns', []) exclude_patterns.extend(['_build'])