From b15809270d38d87922bec255526d6d8011dc0ec4 Mon Sep 17 00:00:00 2001 From: Craig Citro Date: Thu, 18 Dec 2014 11:37:41 -0800 Subject: [PATCH] Switch doc building from epydoc to Sphinx. This adds sphinx-based configs for doc generation, along with some templates and a new `docs/index.rst`. Still to come: updating the doc build script and merging Danny's autodoc changes. --- .gitignore | 4 +- docs/Makefile | 177 +++++++++++++++++++++++ docs/_static/google_logo.png | Bin 0 -> 6322 bytes docs/_templates/layout.html | 28 ++++ docs/conf.py | 272 +++++++++++++++++++++++++++++++++++ docs/index.rst | 47 ++++++ docs/source/modules.rst | 7 + docs/source/oauth2client.rst | 134 +++++++++++++++++ 8 files changed, 668 insertions(+), 1 deletion(-) create mode 100644 docs/Makefile create mode 100644 docs/_static/google_logo.png create mode 100644 docs/_templates/layout.html create mode 100644 docs/conf.py create mode 100644 docs/index.rst create mode 100644 docs/source/modules.rst create mode 100644 docs/source/oauth2client.rst diff --git a/.gitignore b/.gitignore index 519e3f9..fa898a4 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,9 @@ oauth2client.egg-info/ build/ dist/ -docs/ + +# Built documentation +docs/_build # Test files .tox/ diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..46ca8ec --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,177 @@ +# Makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = _build + +# User-friendly check for sphinx-build +ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) +$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) +endif + +# Internal variables. +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +# the i18n builder cannot share the environment and doctrees with the others +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext + +help: + @echo "Please use \`make ' where is one of" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " texinfo to make Texinfo files" + @echo " info to make Texinfo files and run them through makeinfo" + @echo " gettext to make PO message catalogs" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " xml to make Docutils-native XML files" + @echo " pseudoxml to make pseudoxml-XML files for display purposes" + @echo " linkcheck to check all external links for integrity" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" + +clean: + rm -rf $(BUILDDIR)/* + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +dirhtml: + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +pickle: + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +json: + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +htmlhelp: + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +qthelp: + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/oauth2client.qhcp" + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/oauth2client.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/oauth2client" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/oauth2client" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +latexpdfja: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through platex and dvipdfmx..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +texinfo: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." + @echo "Run \`make' in that directory to run these through makeinfo" \ + "(use \`make info' here to do that automatically)." + +info: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo "Running Texinfo files through makeinfo..." + make -C $(BUILDDIR)/texinfo info + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." + +gettext: + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale + @echo + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." + +changes: + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +linkcheck: + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +doctest: + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." + +xml: + $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml + @echo + @echo "Build finished. The XML files are in $(BUILDDIR)/xml." + +pseudoxml: + $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml + @echo + @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." diff --git a/docs/_static/google_logo.png b/docs/_static/google_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..25fa00ab8d3e5bb93933abb55e4e6b9aa2080a26 GIT binary patch literal 6322 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 literal 0 HcmV?d00001 diff --git a/docs/_templates/layout.html b/docs/_templates/layout.html new file mode 100644 index 0000000..33920a5 --- /dev/null +++ b/docs/_templates/layout.html @@ -0,0 +1,28 @@ +{% extends "!layout.html" %} + +{# Custom CSS overrides #} +{# set bootswatch_css_custom = ['_static/my-styles.css'] #} + +{# Add github banner (from: https://github.com/codepo8/css-fork-on-github-ribbon). #} +{% block header %} + {{ super() }} + + + +{% endblock %} + diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..6c0bfc7 --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,272 @@ +# -*- coding: utf-8 -*- +# +# oauth2client documentation build configuration file, created by +# sphinx-quickstart on Wed Dec 17 23:13:19 2014. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os + +# 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('.')) + +# -- 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.autodoc', + 'sphinx.ext.coverage', + 'sphinx.ext.viewcode', + 'sphinxcontrib.napoleon', +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'oauth2client' +copyright = u'2014, Google, Inc' + +# 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. +# +# The short X.Y version. +version = '1.4.4' +# The full version, including alpha/beta/rc tags. +release = '1.4.4' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = ['_build'] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- 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 = 'default' + +import sphinx_bootstrap_theme + +html_logo = 'google_logo.png' +html_theme = 'bootstrap' +html_theme_path = sphinx_bootstrap_theme.get_html_theme_path() +html_theme_options = { + 'bootswatch_theme': 'flatly', +} + +# 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 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 = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = 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 = None + +# 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'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'oauth2clientdoc' + + +# -- 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': '', +} + +# 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 = [ + ('index', 'oauth2client.tex', u'oauth2client Documentation', + u'Google, Inc.', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'oauth2client', u'oauth2client Documentation', + [u'Google, Inc.'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- 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 = [ + ('index', 'oauth2client', u'oauth2client Documentation', + u'Google, Inc.', 'oauth2client', 'One line description of project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..7ccd8e7 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,47 @@ +oauth2client +============ + +*making OAuth2 just a little less painful* + +``oauth2client`` makes it easy to interact with OAuth2-protected resources, +especially those related to Google APIs. You can also start with `general +information about using OAuth2 with Google APIs +`_. + +Getting started +--------------- + +We recommend installing via ``pip``:: + + $ pip install --upgrade oauth2client + +You can also install from source:: + + $ git clone https://github.com/google/oauth2client + $ cd oauth2client + $ python setup.py install + +Downloads +^^^^^^^^^ + +* `Most recent release tarball + `_ +* `Most recent release zipfile + `_ +* `Complete release list `_ + +Library Documentation +--------------------- + +* Complete library index: :ref:`genindex` +* Index of all modules: :ref:`modindex` +* Search all documentation: :ref:`search` + +Contributing +------------ + +Please see the `contributing page +`_ for more +information. In particular, we love pull requests -- but please make sure to +sign the contributor license agreement. + diff --git a/docs/source/modules.rst b/docs/source/modules.rst new file mode 100644 index 0000000..32a7349 --- /dev/null +++ b/docs/source/modules.rst @@ -0,0 +1,7 @@ +oauth2client +============ + +.. toctree:: + :maxdepth: 4 + + oauth2client diff --git a/docs/source/oauth2client.rst b/docs/source/oauth2client.rst new file mode 100644 index 0000000..3888bd9 --- /dev/null +++ b/docs/source/oauth2client.rst @@ -0,0 +1,134 @@ +oauth2client package +==================== + +Submodules +---------- + +oauth2client.appengine module +----------------------------- + +.. automodule:: oauth2client.appengine + :members: + :undoc-members: + :show-inheritance: + +oauth2client.client module +-------------------------- + +.. automodule:: oauth2client.client + :members: + :undoc-members: + :show-inheritance: + +oauth2client.clientsecrets module +--------------------------------- + +.. automodule:: oauth2client.clientsecrets + :members: + :undoc-members: + :show-inheritance: + +oauth2client.crypt module +------------------------- + +.. automodule:: oauth2client.crypt + :members: + :undoc-members: + :show-inheritance: + +oauth2client.django_orm module +------------------------------ + +.. automodule:: oauth2client.django_orm + :members: + :undoc-members: + :show-inheritance: + +oauth2client.file module +------------------------ + +.. automodule:: oauth2client.file + :members: + :undoc-members: + :show-inheritance: + +oauth2client.gce module +----------------------- + +.. automodule:: oauth2client.gce + :members: + :undoc-members: + :show-inheritance: + +oauth2client.keyring_storage module +----------------------------------- + +.. automodule:: oauth2client.keyring_storage + :members: + :undoc-members: + :show-inheritance: + +oauth2client.locked_file module +------------------------------- + +.. automodule:: oauth2client.locked_file + :members: + :undoc-members: + :show-inheritance: + +oauth2client.multistore_file module +----------------------------------- + +.. automodule:: oauth2client.multistore_file + :members: + :undoc-members: + :show-inheritance: + +oauth2client.old_run module +--------------------------- + +.. automodule:: oauth2client.old_run + :members: + :undoc-members: + :show-inheritance: + +oauth2client.service_account module +----------------------------------- + +.. automodule:: oauth2client.service_account + :members: + :undoc-members: + :show-inheritance: + +oauth2client.tools module +------------------------- + +.. automodule:: oauth2client.tools + :members: + :undoc-members: + :show-inheritance: + +oauth2client.util module +------------------------ + +.. automodule:: oauth2client.util + :members: + :undoc-members: + :show-inheritance: + +oauth2client.xsrfutil module +---------------------------- + +.. automodule:: oauth2client.xsrfutil + :members: + :undoc-members: + :show-inheritance: + + +Module contents +--------------- + +.. automodule:: oauth2client + :members: + :undoc-members: + :show-inheritance: