| # -*- coding: utf-8 -*- | 
 | # Protocol Buffers - Google's data interchange format | 
 | # Copyright 2019 Google LLC.  All rights reserved. | 
 | # https://developers.google.com/protocol-buffers/ | 
 | # | 
 | # Redistribution and use in source and binary forms, with or without | 
 | # modification, are permitted provided that the following conditions are | 
 | # met: | 
 | # | 
 | #   * Redistributions of source code must retain the above copyright | 
 | # notice, this list of conditions and the following disclaimer. | 
 | #   * Redistributions in binary form must reproduce the above | 
 | # copyright notice, this list of conditions and the following disclaimer | 
 | # in the documentation and/or other materials provided with the | 
 | # distribution. | 
 | #   * Neither the name of Google Inc. nor the names of its | 
 | # contributors may be used to endorse or promote products derived from | 
 | # this software without specific prior written permission. | 
 | # | 
 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | 
 | # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | 
 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | 
 | # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | 
 | # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 
 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 
 | # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 
 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 
 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
 | # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
 |  | 
 | # Configuration file for the Sphinx documentation builder. | 
 | # | 
 | # This file does only contain a selection of the most common options. For a | 
 | # full list see the documentation: | 
 | # http://www.sphinx-doc.org/en/master/config | 
 |  | 
 | # -- Path setup -------------------------------------------------------------- | 
 |  | 
 | # 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. | 
 | # | 
 | import os | 
 | # import sys | 
 | # sys.path.insert(0, os.path.abspath('.')) | 
 | import google.protobuf | 
 |  | 
 | # -- Project information ----------------------------------------------------- | 
 |  | 
 | project = u"Protocol Buffers" | 
 | copyright = u"2008, Google LLC" | 
 | author = u"Google LLC" | 
 |  | 
 | # The short X.Y version | 
 | version = u"" | 
 | # The full version, including alpha/beta/rc tags | 
 | release = google.protobuf.__version__ | 
 |  | 
 |  | 
 | # -- General configuration --------------------------------------------------- | 
 |  | 
 | # If your documentation needs a minimal Sphinx version, state it here. | 
 | # | 
 | # needs_sphinx = '1.0' | 
 |  | 
 | # Add any Sphinx extension module names here, as strings. They can be | 
 | # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom | 
 | # ones. | 
 | extensions = [ | 
 |   "sphinx.ext.autosummary", | 
 |   "sphinx.ext.ifconfig", | 
 |   "sphinx.ext.intersphinx", | 
 |   "sphinx.ext.napoleon", | 
 | ] | 
 |  | 
 | # Add any paths that contain templates here, relative to this directory. | 
 | templates_path = ["_templates"] | 
 |  | 
 | # The suffix(es) of source filenames. | 
 | # You can specify multiple suffix as a list of string: | 
 | # | 
 | # source_suffix = ['.rst', '.md'] | 
 | source_suffix = ".rst" | 
 |  | 
 | # The master toctree document. | 
 | master_doc = "index" | 
 |  | 
 | # The language for content autogenerated by Sphinx. Refer to documentation | 
 | # for a list of supported languages. | 
 | # | 
 | # This is also used if you do content translation via gettext catalogs. | 
 | # Usually you set "language" from the command line for these cases. | 
 | language = None | 
 |  | 
 | # List of patterns, relative to source directory, that match files and | 
 | # directories to ignore when looking for source files. | 
 | # This pattern also affects html_static_path and html_extra_path. | 
 | exclude_patterns = [u"_build", "Thumbs.db", ".DS_Store"] | 
 |  | 
 | # The name of the Pygments (syntax highlighting) style to use. | 
 | pygments_style = None | 
 |  | 
 |  | 
 | # -- 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 = "alabaster" | 
 |  | 
 | # Remove JavaScript. | 
 | html_js_files = [] | 
 |  | 
 | # 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 = {} | 
 |  | 
 | # 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"] | 
 |  | 
 | html_show_sourcelink = True | 
 |  | 
 | # Custom sidebar templates, must be a dictionary that maps document names | 
 | # to template names. | 
 | # | 
 | # The default sidebars (for documents that don't match any pattern) are | 
 | # defined by theme itself.  Builtin themes are using these templates by | 
 | # default: ``['localtoc.html', 'relations.html', 'sourcelink.html', | 
 | # 'searchbox.html']``. | 
 |  | 
 | # Remove searchbox.html to avoid embedded JavaScript. | 
 | html_sidebars = { | 
 |   "**": [ | 
 |     "globaltoc.html", "localtoc.html", "relations.html", "sourcelink.html", | 
 |   ], | 
 | } | 
 |  | 
 |  | 
 | # -- Options for HTMLHelp output --------------------------------------------- | 
 |  | 
 | # Output file base name for HTML help builder. | 
 | htmlhelp_basename = "ProtocolBuffersdoc" | 
 |  | 
 |  | 
 | # -- 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', | 
 | } | 
 |  | 
 | # Grouping the document tree into LaTeX files. List of tuples | 
 | # (source start file, target name, title, | 
 | #  author, documentclass [howto, manual, or own class]). | 
 | latex_documents = [ | 
 |   ( | 
 |     master_doc, | 
 |     "ProtocolBuffers.tex", | 
 |     "Protocol Buffers Documentation", | 
 |     "Google LLC", | 
 |     "manual", | 
 |   ) | 
 | ] | 
 |  | 
 |  | 
 | # -- Options for manual page output ------------------------------------------ | 
 |  | 
 | # One entry per manual page. List of tuples | 
 | # (source start file, name, description, authors, manual section). | 
 | man_pages = [ | 
 |   ( | 
 |     master_doc,  # source start file | 
 |     "protocolbuffers",  # name | 
 |     "Protocol Buffers Documentation",  # description | 
 |     [author],  # authors | 
 |     1,  # manual section | 
 |   ) | 
 | ] | 
 |  | 
 |  | 
 | # -- Options for Texinfo output ---------------------------------------------- | 
 |  | 
 | # Grouping the document tree into Texinfo files. List of tuples | 
 | # (source start file, target name, title, author, | 
 | #  dir menu entry, description, category) | 
 | texinfo_documents = [ | 
 |   ( | 
 |     master_doc, | 
 |     "ProtocolBuffers", | 
 |     u"Protocol Buffers Documentation", | 
 |     author, | 
 |     "ProtocolBuffers", | 
 |     "One line description of project.", | 
 |     "Miscellaneous", | 
 |   ) | 
 | ] | 
 |  | 
 |  | 
 | # -- Options for Epub output ------------------------------------------------- | 
 |  | 
 | # Bibliographic Dublin Core info. | 
 | epub_title = project | 
 |  | 
 | # The unique identifier of the text. This can be a ISBN number | 
 | # or the project homepage. | 
 | # | 
 | # epub_identifier = '' | 
 |  | 
 | # A unique identification for the text. | 
 | # | 
 | # epub_uid = '' | 
 |  | 
 | # A list of files that should not be packed into the epub file. | 
 | epub_exclude_files = ["search.html"] | 
 |  | 
 |  | 
 | # -- Extension configuration ------------------------------------------------- | 
 |  | 
 | # -- Options for autosummary extension --------------------------------------- | 
 | autosummary_generate = True | 
 |  | 
 | # -- Options for intersphinx extension --------------------------------------- | 
 |  | 
 | # Example configuration for intersphinx: refer to the Python standard library. | 
 | intersphinx_mapping = {"https://docs.python.org/": None} | 
 |  | 
 | # -- Config values ----------------------------------------------------------- | 
 | # The setup() function is needed to add configuration values to the Sphinx | 
 | # builder. We use this to show a banner when built on Read the Docs. | 
 | # https://www.sphinx-doc.org/en/master/usage/extensions/ifconfig.html | 
 |  | 
 | def setup(app): | 
 |   app.add_config_value( | 
 |     "build_env", | 
 |     # Read the Docs sets a READTHEDOCS environment during builds. | 
 |     # https://docs.readthedocs.io/en/stable/builds.html#build-environment | 
 |     "readthedocs" if os.getenv("READTHEDOCS") else "", | 
 |     "env" | 
 |   ) |