Merge branch 'release' of git://github.com/melinath/philo
[philo.git] / docs / conf.py
index 043219d..c888d0e 100644 (file)
@@ -21,6 +21,16 @@ sys.path.append(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
 
 os.environ['DJANGO_SETTINGS_MODULE'] = 'dummy-settings'
 
 
 os.environ['DJANGO_SETTINGS_MODULE'] = 'dummy-settings'
 
+# Import loader so that loader_tags will be correctly added to builtins. Weird import situations... this is necessary for doc build to work.
+from django.template import loader
+
+# HACK to override descriptors that would cause AttributeErrors to be raised otherwise (which would keep them from being documented.)
+from philo.contrib.sobol.models import SearchView
+SearchView.searches = 5
+from philo.models.nodes import TargetURLModel, File
+TargetURLModel.reversing_parameters = 5
+File.file = 5
+
 # -- General configuration -----------------------------------------------------
 
 # If your documentation needs a minimal Sphinx version, state it here.
 # -- General configuration -----------------------------------------------------
 
 # If your documentation needs a minimal Sphinx version, state it here.
@@ -28,7 +38,7 @@ 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.
 
 # Add any Sphinx extension module names here, as strings. They can be extensions
 # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
-extensions = ['djangodocs', 'sphinx.ext.autodoc']
+extensions = ['djangodocs', 'sphinx.ext.autodoc', 'philodocs']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
@@ -91,6 +101,10 @@ pygments_style = 'sphinx'
 #modindex_common_prefix = []
 
 
 #modindex_common_prefix = []
 
 
+# Autodoc config
+autodoc_member_order = "bysource"
+
+
 # -- Options for HTML output ---------------------------------------------------
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
 # -- Options for HTML output ---------------------------------------------------
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
@@ -218,3 +232,12 @@ man_pages = [
     ('index', 'philo', u'Philo Documentation',
      [u'Stephen Burrows'], 1)
 ]
     ('index', 'philo', u'Philo Documentation',
      [u'Stephen Burrows'], 1)
 ]
+
+def skip_attribute_attrs(app, what, name, obj, skip, options):
+       if name in ("attribute_set", "get_attribute_mapper", "nodes"):
+               return True
+       return skip
+
+def setup(app):
+       app.connect('autodoc-skip-member', skip_attribute_attrs)
+       #app.connect('autodoc-process-signature', )