Commits

Anonymous committed 6c662f0

Sphinx docs baby!

  • Participants
  • Parent commits 952a46b

Comments (0)

Files changed (11)

File docs/Makefile

+# Makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS    =
+SPHINXBUILD   = env PYTHONPATH=".." sphinx-build
+PAPER         =
+
+# Internal variables.
+PAPEROPT_a4     = -D latex_paper_size=a4
+PAPEROPT_letter = -D latex_paper_size=letter
+ALLSPHINXOPTS   = -d .build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
+
+.PHONY: help clean html web pickle htmlhelp latex changes linkcheck upload pdf
+
+help:
+	@echo "Please use \`make <target>' where <target> is one of"
+	@echo "  html      to make standalone HTML files"
+	@echo "  pickle    to make pickle files (usable by e.g. sphinx-web)"
+	@echo "  htmlhelp  to make HTML files and a HTML help project"
+	@echo "  latex     to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
+	@echo "  changes   to make an overview over all changed/added/deprecated items"
+	@echo "  linkcheck to check all external links for integrity"
+
+clean:
+	-rm -rf .build/*
+
+html:
+	mkdir -p .build/html .build/doctrees
+	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) .build/html
+	@echo
+	@echo "Build finished. The HTML pages are in .build/html."
+
+pickle:
+	mkdir -p .build/pickle .build/doctrees
+	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) .build/pickle
+	@echo
+	@echo "Build finished; now you can process the pickle files or run"
+	@echo "  sphinx-web .build/pickle"
+	@echo "to start the sphinx-web server."
+
+web: pickle
+
+htmlhelp:
+	mkdir -p .build/htmlhelp .build/doctrees
+	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) .build/htmlhelp
+	@echo
+	@echo "Build finished; now you can run HTML Help Workshop with the" \
+	      ".hhp project file in .build/htmlhelp."
+
+latex:
+	mkdir -p .build/latex .build/doctrees
+	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) .build/latex
+	@echo
+	@echo "Build finished; the LaTeX files are in .build/latex."
+	@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
+	      "run these through (pdf)latex."
+
+changes:
+	mkdir -p .build/changes .build/doctrees
+	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) .build/changes
+	@echo
+	@echo "The overview file is in .build/changes."
+
+linkcheck:
+	mkdir -p .build/linkcheck .build/doctrees
+	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) .build/linkcheck
+	@echo
+	@echo "Link check complete; look for any errors in the above output " \
+	      "or in .build/linkcheck/output.txt."
+
+pdf: latex
+	make -C .build/latex all-pdf
+	cp .build/latex/*.pdf .build
+New Transifex documentation coming soon.

File docs/conf.py

+# -*- coding: utf-8 -*-
+#
+# Trac documentation build configuration file, created by
+# sphinx-quickstart on Wed May 14 09:05:13 2008.
+#
+# This file is execfile()d with the current directory set to its containing dir.
+#
+# The contents of this file are pickled, so don't put values in the namespace
+# that aren't pickleable (module imports are okay, they're removed automatically).
+#
+# All configuration values have a default value; values that are commented out
+# serve to show the default value.
+
+import sys, os
+
+# If your extensions are in another directory, add it here. If the directory
+# is relative to the documentation root, use os.path.abspath to make it
+# absolute, like shown here.
+sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
+#sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../..')))
+#sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..")))
+#sys.path.append(os.path.abspath('/home/mits/devel/txc/txc-docs/'))
+
+
+# General configuration
+# ---------------------
+
+# 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']
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['.templates']
+
+# The suffix of source filenames.
+source_suffix = '.rst'
+
+# The master toctree document.
+master_doc = 'index'
+
+# General substitutions.
+project = 'Transifex'
+copyright = '2008, Dimitris Glezos and the Transifex team'
+
+# The default replacements for |version| and |release|, also used in various
+# other places throughout the built documents.
+#
+# The short X.Y version.
+version = 'devel'
+# The full version, including alpha/beta/rc tags.
+release = version
+
+# 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 documents that shouldn't be included in the build.
+#unused_docs = []
+
+# List of directories, relative to source directories, that shouldn't be searched
+# for source files.
+#exclude_dirs = []
+
+# 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'
+
+
+# Options for HTML output
+# -----------------------
+
+# The style sheet to use for HTML and HTML Help pages. A file of that name
+# must exist either in Sphinx' static/ path, or in one of the custom paths
+# given in html_static_path.
+html_style = 'default.css'
+
+# The name for this set of Sphinx documents.  If None, it defaults to
+# "<project> v<release> documentation".
+#html_title = None
+
+# The name of an image file (within the static path) to place at the top of
+# the sidebar.
+#html_logo = 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']
+
+# 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_use_modindex = True
+
+# If true, the reST sources are included in the HTML build as _sources/<name>.
+#html_copy_source = True
+
+# If true, an OpenSearch description file will be output, and all pages will
+# contain a <link> tag referring to it.  The value of this option must be the
+# base URL from which the finished HTML is served.
+#html_use_opensearch = ''
+
+# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
+#html_file_suffix = ''
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'Transifexdoc'
+
+
+# Options for LaTeX output
+# ------------------------
+
+# The paper size ('letter' or 'a4').
+#latex_paper_size = 'letter'
+
+# The font size ('10pt', '11pt' or '12pt').
+#latex_font_size = '10pt'
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title, author, document class [howto/manual]).
+latex_documents = [
+]
+
+# 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
+
+# Additional stuff for the LaTeX preamble.
+#latex_preamble = ''
+
+# Documents to append as an appendix to all manuals.
+#latex_appendices = []
+
+# If false, no module index is generated.
+#latex_use_modindex = True

File docs/contents.rst

+================================
+Transifex Documentation Contents
+================================
+
+.. toctree::
+
+   :maxdepth: 2
+
+   modules/vcs
+   modules/projects
+

File docs/index.rst

+=====================================
+Welcome to Transifex's documentation!
+=====================================
+
+:Version: |version|
+:Release: |release|
+:Date: |today|
+
+
+Contents
+========
+
+.. toctree::
+   :maxdepth: 3
+
+   contents
+
+   
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`modindex`
+* :ref:`search`
+
+

File docs/modules/projects.rst

+===============
+:mod:`projects`
+===============
+
+Models
+======
+
+.. autoclass:: projects.models.Project
+   :members:
+
+.. autoclass:: projects.models.Component
+   :members:

File docs/modules/vcs.rst

+==========
+:mod:`vcs`
+==========
+
+Models
+======
+
+.. autoclass:: vcs.models.Unit
+   :members:
+   
+Library
+=======
+
+.. automodule:: vcs.lib
+   :members:
+
+.. automodule:: vcs.lib.types
+   :members:
+
+VCS backends
+============
+
+.. automodule:: vcs.lib.types.hg
+   :members:
+
+.. automodule:: vcs.lib.types.svn
+   :members:
+

File projects/tests.py

 import unittest
 
 class SmokeTestCase(unittest.TestCase):
+    """Test that all project URLs return correct status code."""
     #TODO: Run this for all applications, somehow
     #TODO: More customization: 404s, etc 
     #TODO: Make this run automatic for all 

File vcs/lib/__init__.py

     Given a vcs type, return the class that provides the browsing
     functionality.
     
-    # Get a hardcoded class 
     >>> print get_browser_class('hg')
     vcs.lib.types.hg.HgBrowser
     """

File vcs/lib/types/hg.py

     
     Mercurial homepage: http://www.selenic.com/mercurial/
 
-    # Browser initialization
     >>> b = HgBrowser(root='http://code.transifex.org/transifex',
     ... name='test-hg', branch='tip')
-
-    # Test exception for potential directory traversals.
     >>> HgBrowser(root='foo', name='../..', branch='tip')
     Traceback (most recent call last):
       ...
     AssertionError: Unit checkout path outside of nominal repo checkout path.
-
     """
     
     def __init__(self, root, name, branch):

File vcs/lib/types/svn.py

    
     Subversion homepage: http://subversion.tigris.org/
 
-    # Browser initialization
     >>> b = SvnBrowser(name='test-svn', branch='tip',
     ... root='http://svn.fedorahosted.org/svn/system-config-language')
-
-    # Test exception for potential directory traversals.
     >>> SvnBrowser(root='foo', name='../..', branch='trunk')
     Traceback (most recent call last):
-        ...
+    ...
     AssertionError: Unit checkout path outside of nominal repo checkout path.
-    
     """
 
     # We are using the pysvn module.
         
         # svn ci files
         self.client.checkin(absolute_filenames, self.submit_msg(msg))
-        self.update()
+        self.update()