Read the Docs build information Build id: 1306075 Project: anyscale-ray Version: latest Commit: ed4288533e9afec29d6b183cb3900ee22f94c696 Date: 2023-02-17T19:07:53.948633Z State: finished Success: False [rtd-command-info] start-time: 2023-02-17T19:07:55.948951Z, end-time: 2023-02-17T19:08:17.002752Z, duration: 21, exit-code: 0 git clone --no-single-branch --depth 50 https://github.com/ray-project/ray.git . Cloning into '.'... Updating files: 99% (6132/6171) Updating files: 100% (6171/6171) Updating files: 100% (6171/6171), done. [rtd-command-info] start-time: 2023-02-17T19:08:17.253733Z, end-time: 2023-02-17T19:08:18.556736Z, duration: 1, 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 ed4288533 [RLlib] Add PPO tf learner (#32588) [rtd-command-info] start-time: 2023-02-17T19:08:18.746322Z, end-time: 2023-02-17T19:08:18.853606Z, duration: 0, exit-code: 0 git clean -d -f -f [rtd-command-info] start-time: 2023-02-17T19:08:20.211790Z, end-time: 2023-02-17T19:08:34.440279Z, duration: 14, exit-code: 0 python3.7 -mvirtualenv $READTHEDOCS_VIRTUALENV_PATH Using base prefix '/home/docs/.pyenv/versions/3.7.9' New python executable in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/bin/python3.7 Also creating executable in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/bin/python Installing setuptools, pip, wheel... done. [rtd-command-info] start-time: 2023-02-17T19:08:34.652009Z, end-time: 2023-02-17T19:08:36.637565Z, duration: 1, exit-code: 0 python -m pip install --upgrade --no-cache-dir pip setuptools<58.3.0 Requirement already satisfied: pip in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages (23.0.1) Collecting setuptools<58.3.0 Downloading setuptools-58.2.0-py3-none-any.whl (946 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 946.1/946.1 kB 22.4 MB/s eta 0:00:00 Installing collected packages: setuptools Attempting uninstall: setuptools Found existing installation: setuptools 67.3.2 Uninstalling setuptools-67.3.2: Successfully uninstalled setuptools-67.3.2 Successfully installed setuptools-58.2.0 [rtd-command-info] start-time: 2023-02-17T19:08:36.846205Z, end-time: 2023-02-17T19:08:44.204344Z, duration: 7, exit-code: 0 python -m pip install --upgrade --no-cache-dir pillow mock==1.0.1 alabaster>=0.7,<0.8,!=0.7.5 commonmark==0.9.1 recommonmark==0.5.0 sphinx sphinx-rtd-theme readthedocs-sphinx-ext<2.3 Collecting pillow Downloading Pillow-9.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 62.1 MB/s eta 0:00:00 Collecting mock==1.0.1 Downloading mock-1.0.1.zip (861 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 861.9/861.9 kB 241.3 MB/s eta 0:00:00 Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Collecting alabaster!=0.7.5,<0.8,>=0.7 Downloading alabaster-0.7.13-py3-none-any.whl (13 kB) Collecting commonmark==0.9.1 Downloading commonmark-0.9.1-py2.py3-none-any.whl (51 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 51.1/51.1 kB 177.2 MB/s eta 0:00:00 Collecting recommonmark==0.5.0 Downloading recommonmark-0.5.0-py2.py3-none-any.whl (9.8 kB) Collecting sphinx Downloading sphinx-5.3.0-py3-none-any.whl (3.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 207.1 MB/s eta 0:00:00 Collecting sphinx-rtd-theme Downloading sphinx_rtd_theme-1.2.0-py2.py3-none-any.whl (2.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.8/2.8 MB 209.1 MB/s eta 0:00:00 Collecting readthedocs-sphinx-ext<2.3 Downloading readthedocs_sphinx_ext-2.2.0-py2.py3-none-any.whl (11 kB) Collecting docutils>=0.11 Downloading docutils-0.19-py3-none-any.whl (570 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 570.5/570.5 kB 236.1 MB/s eta 0:00:00 Collecting sphinxcontrib-serializinghtml>=1.1.5 Downloading sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl (94 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 94.0/94.0 kB 195.7 MB/s eta 0:00:00 Collecting packaging>=21.0 Downloading packaging-23.0-py3-none-any.whl (42 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.7/42.7 kB 160.4 MB/s eta 0:00:00 Collecting sphinxcontrib-htmlhelp>=2.0.0 Downloading sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl (100 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.5/100.5 kB 211.1 MB/s eta 0:00:00 Collecting sphinxcontrib-jsmath Downloading sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl (5.1 kB) Collecting sphinxcontrib-devhelp Downloading sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl (84 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 84.7/84.7 kB 203.8 MB/s eta 0:00:00 Collecting importlib-metadata>=4.8 Downloading importlib_metadata-6.0.0-py3-none-any.whl (21 kB) Collecting Pygments>=2.12 Downloading Pygments-2.14.0-py3-none-any.whl (1.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 236.2 MB/s eta 0:00:00 Collecting sphinxcontrib-applehelp Downloading sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl (121 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 121.2/121.2 kB 191.8 MB/s eta 0:00:00 Collecting snowballstemmer>=2.0 Downloading snowballstemmer-2.2.0-py2.py3-none-any.whl (93 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 93.0/93.0 kB 198.0 MB/s eta 0:00:00 Collecting babel>=2.9 Downloading Babel-2.11.0-py3-none-any.whl (9.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 9.5/9.5 MB 189.5 MB/s eta 0:00:00 Collecting imagesize>=1.3 Downloading imagesize-1.4.1-py2.py3-none-any.whl (8.8 kB) Collecting requests>=2.5.0 Downloading requests-2.28.2-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.8/62.8 kB 181.0 MB/s eta 0:00:00 Collecting sphinxcontrib-qthelp Downloading sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl (90 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 90.6/90.6 kB 210.2 MB/s eta 0:00:00 Collecting Jinja2>=3.0 Downloading Jinja2-3.1.2-py3-none-any.whl (133 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.1/133.1 kB 204.1 MB/s eta 0:00:00 Collecting sphinxcontrib-jquery!=3.0.0,>=2.0.0 Downloading sphinxcontrib_jquery-2.0.0-py3-none-any.whl (3.2 kB) Collecting docutils>=0.11 Downloading docutils-0.18.1-py2.py3-none-any.whl (570 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 570.0/570.0 kB 232.5 MB/s eta 0:00:00 Collecting pytz>=2015.7 Downloading pytz-2022.7.1-py2.py3-none-any.whl (499 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 499.4/499.4 kB 230.2 MB/s eta 0:00:00 Collecting zipp>=0.5 Downloading zipp-3.13.0-py3-none-any.whl (6.7 kB) Collecting typing-extensions>=3.6.4 Downloading typing_extensions-4.5.0-py3-none-any.whl (27 kB) Collecting MarkupSafe>=2.0 Downloading MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25 kB) Collecting urllib3<1.27,>=1.21.1 Downloading urllib3-1.26.14-py2.py3-none-any.whl (140 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 140.6/140.6 kB 212.1 MB/s eta 0:00:00 Collecting idna<4,>=2.5 Downloading idna-3.4-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.5/61.5 kB 173.4 MB/s eta 0:00:00 Collecting certifi>=2017.4.17 Downloading certifi-2022.12.7-py3-none-any.whl (155 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.3/155.3 kB 214.5 MB/s eta 0:00:00 Collecting charset-normalizer<4,>=2 Downloading charset_normalizer-3.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (170 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 170.5/170.5 kB 225.9 MB/s eta 0:00:00 Requirement already satisfied: setuptools in /home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages (from sphinxcontrib-jquery!=3.0.0,>=2.0.0->sphinx-rtd-theme) (58.2.0) Building wheels for collected packages: mock Building wheel for mock (setup.py): started Building wheel for mock (setup.py): finished with status 'done' Created wheel for mock: filename=mock-1.0.1-py3-none-any.whl size=23772 sha256=13ac030d2e7e34169a14a9ff7cb75e73081aa3b96a95f385c90820e27bf940d4 Stored in directory: /tmp/pip-ephem-wheel-cache-ruz0i6zm/wheels/7a/94/b1/0fdc5339a5bd487a5cc15421ec200d9ba3e2aa7190e4a727f1 Successfully built mock Installing collected packages: snowballstemmer, pytz, mock, commonmark, charset-normalizer, zipp, urllib3, typing-extensions, sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, sphinxcontrib-jsmath, sphinxcontrib-jquery, sphinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, Pygments, pillow, packaging, MarkupSafe, imagesize, idna, docutils, certifi, babel, alabaster, requests, Jinja2, importlib-metadata, sphinx, readthedocs-sphinx-ext, sphinx-rtd-theme, recommonmark Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.2 Pygments-2.14.0 alabaster-0.7.13 babel-2.11.0 certifi-2022.12.7 charset-normalizer-3.0.1 commonmark-0.9.1 docutils-0.18.1 idna-3.4 imagesize-1.4.1 importlib-metadata-6.0.0 mock-1.0.1 packaging-23.0 pillow-9.4.0 pytz-2022.7.1 readthedocs-sphinx-ext-2.2.0 recommonmark-0.5.0 requests-2.28.2 snowballstemmer-2.2.0 sphinx-5.3.0 sphinx-rtd-theme-1.2.0 sphinxcontrib-applehelp-1.0.2 sphinxcontrib-devhelp-1.0.2 sphinxcontrib-htmlhelp-2.0.0 sphinxcontrib-jquery-2.0.0 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-1.0.3 sphinxcontrib-serializinghtml-1.1.5 typing-extensions-4.5.0 urllib3-1.26.14 zipp-3.13.0 [rtd-command-info] start-time: 2023-02-17T19:08:45.561964Z, end-time: 2023-02-17T19:08:45.640135Z, duration: 0, exit-code: 0 cat doc/source/conf.py # -*- coding: utf-8 -*- import json from pathlib import Path from importlib import import_module import os import sys from jinja2.filters import FILTERS sys.path.insert(0, os.path.abspath(".")) from custom_directives import * from datetime import datetime # Mocking modules allows Sphinx to work without installing Ray. mock_modules() assert ( "ray" not in sys.modules ), "If ray is already imported, we will not render documentation correctly!" # 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/")) import ray # -- 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" extensions = [ "sphinx_panels", "sphinx.ext.autodoc", "sphinx.ext.viewcode", "sphinx.ext.napoleon", "sphinx_click.ext", "sphinx-jsonschema", "sphinxemoji.sphinxemoji", "sphinx_copybutton", "sphinxcontrib.yt", "versionwarning.extension", "sphinx_sitemap", "myst_nb", "sphinx.ext.doctest", "sphinx.ext.coverage", "sphinx.ext.autosummary", "sphinx_external_toc", "sphinx_thebe", "sphinxcontrib.autodoc_pydantic", "sphinxcontrib.redoc", "sphinx_tabs.tabs", ] myst_enable_extensions = [ "dollarmath", "amsmath", "deflist", "html_admonition", "html_image", "colon_fence", "smartquotes", "replacements", ] # Thebe configuration for launching notebook cells within the docs. thebe_config = { "selector": "div.highlight", "repository_url": "https://github.com/ray-project/ray", "repository_branch": "master", } # 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". jupyter_execute_notebooks = os.getenv("RUN_NOTEBOOKS", "off") external_toc_exclude_missing = False external_toc_path = "_toc.yml" 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 # There's a flaky autodoc import for "TensorFlowVariables" that fails depending on the doc structure / order # of imports. # autodoc_mock_imports = ["ray.experimental.tf_utils"] # This is used to suppress warnings about explicit "toctree" directives. suppress_warnings = ["etoc.toctree"] versionwarning_admonition_type = "note" versionwarning_banner_title = "Join the Ray Discuss Forums!" FORUM_LINK = "https://discuss.ray.io" versionwarning_messages = { # Re-enable this after Ray Summit. # "latest": ( # "This document is for the latest pip release. " # 'Visit the master branch documentation here.' # ), # "master": ( # "Got questions? Join " # f'the Ray Community forum ' # "for Q&A on all things Ray, as well as to share and learn use cases " # "and best practices with the Ray community." # ), } versionwarning_body_selector = "#main-content" # Add any paths that contain templates here, relative to this directory. templates_path = ["_templates"] # The encoding of source files. # source_encoding = 'utf-8-sig' # 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|, also used in various other places throughout the # built documents. from ray import __version__ as version # The full version, including alpha/beta/rc tags. release = version language = None # 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 = [ "_build", "source/workflows/api/doc/ray.workflow.*", "source/serve/api/doc/ray.serve.*", ] # If "DOC_LIB" is found, only build that top-level navigation item. build_one_lib = os.getenv("DOC_LIB") all_toc_libs = [f.path 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.datanami.com/2019/11/05/why-every-python-developer-will-love-ray/", # Returning 522s intermittently. "https://lczero.org/", ] # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = "sphinx_book_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 = { "repository_url": "https://github.com/ray-project/ray", "use_repository_button": True, "use_issues_button": True, "use_edit_page_button": True, "path_to_docs": "doc/source", "home_page_in_toc": False, "show_navbar_depth": 1, "launch_buttons": { "notebook_interface": "jupyterlab", "binderhub_url": "https://mybinder.org", "colab_url": "https://colab.research.google.com", }, "announcement": "
", } # Add any paths that contain custom themes here, relative to this directory. # html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". html_title = f"Ray {release}" # A shorter title for the navigation bar. Default is the same as html_title. # html_short_title = None # 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 # Add a render priority for doctest nb_render_priority = { "doctest": (), "html": ( "application/vnd.jupyter.widget-view+json", "application/javascript", "text/html", "image/svg+xml", "image/png", "image/jpeg", "text/markdown", "text/latex", "text/plain", ), } tag_mapping = { # Tags for use-cases gallery "scalableBatchInference": "PyTorch,Image Segmentation,Prediction", "batchActorPool": "Prediction", "batchCore": "Prediction", "nycTaxiData": "Prediction", "batchOcr": "Preprocessing", "millionModels": "Regression,Training,Sklearn", "batchTrainingCore": "Regression,Training,Sklearn", "batchTrainingDatasets": "Regression,Training,Sklearn", "tuneBasicParallel": "Regression,Training,Sklearn", "tuneBatch": "Regression,Training,Tuning,Sklearn", "instacartFulfillment": "Training,Prediction", "productionizingMLServe": "Serving", "simplifyMLOpsServe": "Serving", "gettingStartedServe": "Serving", "compositionServe": "Serving", "examplesServe": "Serving", "useCasesServe": "Serving", "gettingStartedTune": "Tuning", "distributeHPOTune": "Tuning", "simpleDistributedHPO": "Tuning", "HPOTransformers": "Tuning,PyTorch,Classification", "examplesTune": "Tuning", "useCasesTune": "Tuning", "pyTorchTrain": "Training,PyTorch", "xgboostTrain": "Training,XGBoost", "gettingStartedTrain": "Training", "trainingTransformers": "Training,PyTorch,Classification,Prediction", "examplesTrain": "Training", "useCasesTrain": "Training", "appliedRLCourse": "Reinforcement Learning", "introRLlib": "Reinforcement Learning", "gettingStartedRLlib": "Reinforcement Learning", "riotRL": "Reinforcement Learning", "examplesRL": "Reinforcement Learning", "useCasesRL": "Reinforcement Learning", "merlin": "Preprocessing,Training,Prediction", "uberScaleDL": "Preprocessing,Training,Prediction,Tuning,XGBoost," "TensorFlow,PyTorch", "instacartMLPlatformTripled": "Preprocessing,Prediction,Training,Tuning", "predibase": "Preprocessing,Training,Prediction,Tuning,PyTorch", "GKEMLPlatform": "Preprocessing,Training,Prediction,Tuning,TensorFlow,Serving", "summitMLPlatform": "Preprocessing,Prediction,Training,Tuning,Serving", "torchImageExample": "Preprocessing,Prediction,Training,PyTorch,Classification", "feastExample": "Classification,XGBoost,Training,Preprocessing,Prediction", "xgboostExample": "Classification,XGBoost,Training,Preprocessing,Prediction", "timeSeriesAutoML": "Regression,Sklearn,Tuning", "AIRExamples": "Regression,Classification,Training,Tuning,Prediction," "Preprocessing,Serving,PyTorch,TensorFlow,XGBoost,LightGBM,Sklearn", # Tags for Ray Train examples gallery "trainTorchFashionMnist": "PyTorch,Training", "trainTransformers": "PyTorch,Training,HuggingFace", "trainTensorflowMnist": "TensorFlow,Training", "trainHorovod": "Horovod, PyTorch,Training", "trainMlflow": "MLflow,Training", "trainTuneTensorflow": "TensorFlow,Training,Tuning", "trainTunePyTorch": "PyTorch,Training,Tuning", "trainBenchmark": "PyTorch,Training" # TODO add and integrate tags for other libraries. # Tune has a proper example library # Serve, RLlib and AIR could use one. } # Create file with tag mappings for tags.js to use. with open("./_static/tag-mapping.json", "w") as f: json.dump(tag_mapping, f) def setup(app): app.connect("html-page-context", update_context) # Custom CSS app.add_css_file("css/custom.css", priority=800) app.add_css_file( "https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" ) # https://github.com/ines/termynal app.add_css_file("css/termynal.css") # Custom JS app.add_js_file( "https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js", defer="defer", ) app.add_js_file("js/docsearch.js", defer="defer") # https://github.com/medmunds/rate-the-docs for allowing users # to give thumbs up / down and feedback on existing docs pages. app.add_js_file("js/rate-the-docs.es.min.js") # https://github.com/ines/termynal app.add_js_file("js/termynal.js", defer="defer") app.add_js_file("js/custom.js", defer="defer") app.add_js_file("js/top-navigation.js", defer="defer") base_path = 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) # Create galleries on the fly app.connect("builder-inited", build_gallery) # tag filtering system app.add_js_file("js/tags.js") 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" ########################################################################### # 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') # 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: html_theme = 'sphinx_rtd_theme' html_style = None html_theme_options = {} # This following legacy behavior will gradually be sliced out until its deprecated and removed. # Skipped for Sphinx 6+ # Skipped by internal Feature flag SKIP_SPHINX_HTML_THEME_PATH # Skipped by all new projects since SKIP_SPHINX_HTML_THEME_PATH's introduction (jan 2023) if ( using_rtd_theme and version_info < (6,0) and not False ): theme = importlib.import_module('sphinx_rtd_theme') if 'html_theme_path' in globals(): html_theme_path.append(theme.get_html_theme_path()) else: html_theme_path = [theme.get_html_theme_path()] # Define websupport2_base_url and websupport2_static_url if globals().get('websupport2_base_url', False): websupport2_base_url = 'https://readthedocs.com/websupport' websupport2_static_url = 'https://assets.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://assets.readthedocs.com/", 'PRODUCTION_DOMAIN': "readthedocs.com", 'proxied_static_path': "/_/static/", 'versions': [ ], 'downloads': [ ], 'subprojects': [ ], 'slug': 'anyscale-ray', 'name': u'ray', 'rtd_language': u'en', 'programming_language': u'words', 'canonical_url': 'https://anyscale-ray.readthedocs-hosted.com/en/latest/', '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': 'ed428853', } # 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(): html_context.update(context) else: html_context = context # Add custom RTD extension if 'extensions' in globals(): # Insert at the beginning because it can interfere # with other extensions. # See https://github.com/rtfd/readthedocs.org/pull/4054 extensions.insert(0, "readthedocs_ext.readthedocs") else: extensions = ["readthedocs_ext.readthedocs"] # Add External version warning banner to the external version documentation if 'branch' == 'external': extensions.insert(1, "readthedocs_ext.external_version_warning") readthedocs_vcs_url = 'None' readthedocs_build_url = 'https://readthedocs.com/projects/anyscale-ray/builds/1306075/' 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']) [rtd-command-info] start-time: 2023-02-17T19:08:45.864056Z, end-time: 2023-02-17T19:08:46.360942Z, duration: 0, exit-code: 2 python -m sphinx -T -E -b html -d _build/doctrees -D language=en . $READTHEDOCS_OUTPUT/html Running Sphinx v5.3.0 Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/config.py", line 350, in eval_config_file exec(code, namespace) File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/checkouts/latest/doc/source/conf.py", line 10, in from custom_directives import * File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/checkouts/latest/doc/source/custom_directives.py", line 10, in import yaml ModuleNotFoundError: No module named 'yaml' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/cmd/build.py", line 280, in build_main args.pdb) File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/application.py", line 202, in __init__ self.config = Config.read(self.confdir, confoverrides or {}, self.tags) File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/config.py", line 172, in read namespace = eval_config_file(filename, tags) File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/config.py", line 363, in eval_config_file raise ConfigError(msg % traceback.format_exc()) from 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/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/config.py", line 350, in eval_config_file exec(code, namespace) File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/checkouts/latest/doc/source/conf.py", line 10, in from custom_directives import * File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/checkouts/latest/doc/source/custom_directives.py", line 10, in import yaml ModuleNotFoundError: No module named 'yaml' Configuration error: There is a programmable error in your configuration file: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/envs/latest/lib/python3.7/site-packages/sphinx/config.py", line 350, in eval_config_file exec(code, namespace) File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/checkouts/latest/doc/source/conf.py", line 10, in from custom_directives import * File "/home/docs/checkouts/readthedocs.org/user_builds/anyscale-ray/checkouts/latest/doc/source/custom_directives.py", line 10, in import yaml ModuleNotFoundError: No module named 'yaml'