diff options
author | Lidi Zheng <lidiz@google.com> | 2018-10-31 17:37:33 -0700 |
---|---|---|
committer | Lidi Zheng <lidiz@google.com> | 2018-11-06 18:07:03 -0800 |
commit | cabe8d8f10387b49b52488989554d2946caee5aa (patch) | |
tree | 9499fd7abfd840dcfbafe169ca5452f08f52e11b /doc/python/sphinx/conf.py | |
parent | e4faafa5eb2b0b877a4b15822fb40101eea28a73 (diff) |
New Python documentation generation
* Use templates instead of generating them every time
* Theme changed
* Add grpc_* modules
* APIs grouped
* No documentation for class members without docstring
* Add docstring for status code
Diffstat (limited to 'doc/python/sphinx/conf.py')
-rw-r--r-- | doc/python/sphinx/conf.py | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/doc/python/sphinx/conf.py b/doc/python/sphinx/conf.py new file mode 100644 index 0000000000..1eb3a5de7f --- /dev/null +++ b/doc/python/sphinx/conf.py @@ -0,0 +1,102 @@ +# Copyright 2018 The gRPC Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# -- Path setup -------------------------------------------------------------- + +import os +import sys +PYTHON_FOLDER = os.path.join(os.path.dirname(os.path.realpath(__file__)), + '..', '..', '..', 'src', 'python') +sys.path.insert(0, os.path.join(PYTHON_FOLDER, 'grpcio')) +sys.path.insert(0, os.path.join(PYTHON_FOLDER, 'grpcio_health_checking')) +sys.path.insert(0, os.path.join(PYTHON_FOLDER, 'grpcio_reflection')) +sys.path.insert(0, os.path.join(PYTHON_FOLDER, 'grpcio_testing')) + +# -- Project information ----------------------------------------------------- + +project = 'gRPC Python' +copyright = '2018, The gRPC Authors' +author = 'The gRPC Authors' + +# Import generated grpc_version after the path been modified +import grpc_version +version = ".".join(grpc_version.VERSION.split(".")[:3]) +release = grpc_version.VERSION + +# -- General configuration --------------------------------------------------- + +templates_path = ['_templates'] +source_suffix = ['.rst', '.md'] +master_doc = 'index' +language = 'en' +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +pygments_style = None + +# --- Extensions Configuration ----------------------------------------------- + +extensions = [ + 'sphinx.ext.autodoc', + 'sphinx.ext.viewcode', + 'sphinx.ext.todo', + 'sphinx.ext.napoleon', + 'sphinx.ext.coverage', +] + +napoleon_google_docstring = True +napoleon_numpy_docstring = True +napoleon_include_special_with_doc = True + +autodoc_default_options = { + 'members': None, +} + +autodoc_mock_imports = [ + 'grpc._cython', + 'grpc_health.v1.health_pb2', + 'grpc_health.v1.health_pb2_grpc', + 'grpc_reflection.v1alpha.reflection_pb2', + 'grpc_reflection.v1alpha.reflection_pb2_grpc', +] + +# -- HTML Configuration ------------------------------------------------- + +html_theme = 'alabaster' +html_theme_options = { + 'fixed_sidebar': True, + 'page_width': '1140px', + 'show_related': True, + 'analytics_id': 'UA-60127042-1', + 'description': grpc_version.VERSION, + 'show_powered_by': False, +} + +# -- Options for manual page output ------------------------------------------ + +man_pages = [(master_doc, 'grpcio', 'grpcio Documentation', [author], 1)] + +# -- Options for Texinfo output ---------------------------------------------- + +texinfo_documents = [ + (master_doc, 'grpcio', 'grpcio Documentation', author, 'grpcio', + 'One line description of project.', 'Miscellaneous'), +] + +# -- Options for Epub output ------------------------------------------------- + +epub_title = project +epub_exclude_files = ['search.html'] + +# -- Options for todo extension ---------------------------------------------- + +todo_include_todos = True |