summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 934619c)
raw | patch | inline | side by side (parent: 934619c)
author | stefan <stefan@57a73879-2fb5-44c3-a270-3262357dd7e2> | |
Thu, 12 Feb 2009 05:54:26 +0000 (05:54 +0000) | ||
committer | stefan <stefan@57a73879-2fb5-44c3-a270-3262357dd7e2> | |
Thu, 12 Feb 2009 05:54:26 +0000 (05:54 +0000) |
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/roundup/trunk@4124 57a73879-2fb5-44c3-a270-3262357dd7e2
12 files changed:
doc/_static/style.css | [new file with mode: 0644] | patch | blob |
doc/_templates/layout.html | [new file with mode: 0644] | patch | blob |
doc/acknowledgements.txt | [new file with mode: 0644] | patch | blob |
doc/conf.py | [new file with mode: 0644] | patch | blob |
doc/contact.txt | [new file with mode: 0644] | patch | blob |
doc/customizing.txt | patch | blob | history | |
doc/index.txt | patch | blob | history | |
doc/license.txt | [new file with mode: 0644] | patch | blob |
roundup/dist/__init__.py | [new file with mode: 0644] | patch | blob |
roundup/dist/command/__init__.py | [new file with mode: 0644] | patch | blob |
roundup/dist/command/build_doc.py | [new file with mode: 0644] | patch | blob |
setup.py | patch | blob | history |
diff --git a/doc/_static/style.css b/doc/_static/style.css
--- /dev/null
+++ b/doc/_static/style.css
@@ -0,0 +1,109 @@
+/* layout*/
+body
+{
+ font-family: sans-serif, Arial, Helvetica;
+ background-color: white;
+ color: #333;
+ margin:0;
+ padding: 0 3em 0 14em;
+}
+body > .header { margin: 0 0 0 -14em;}
+body > .footer { margin: 0 0 0 -14em; clear:both;}
+body > .navigation
+{
+ margin-left: -14em;
+ width: 14em;
+ float: left;
+}
+body > .content
+{
+ width: 100%;
+ margin: 0;
+}
+body > .header > #searchbox { position: absolute; right: 1em; top: 1em;}
+
+/* style */
+
+:link { color: #bb0000; text-decoration: none;}
+:visited { color: #770000; text-decoration: none;}
+a.toc-backref { color: #000000; }
+
+.header h1 { margin-left: 1em; }
+
+body
+{
+ font-family: sans-serif, Arial, Helvetica;
+ background-color: #f5f5f5;
+ color: #333;
+}
+
+.menu
+{
+ margin-right: 1em;
+ padding: 2pt;
+ border: solid thin #dadada;
+ background-color:#ffffff;
+}
+.menu ul { list-style-type:none; padding: 0;}
+.menu ul ul { padding-left: 1em;}
+.menu li { border-top: solid thin #dadada;}
+.menu li:first-child { border-top: none;}
+
+/* related */
+
+div.related
+{
+ width: 100%;
+ font-size: 90%;
+}
+div.related-top { border-bottom: solid thin #dadada;}
+div.related-bottom { border-top: solid thin #dadada;}
+
+div.related ul
+{
+ margin: 0;
+ padding: 0 0 0 10px;
+ list-style: none;
+}
+
+div.related li { display: inline;}
+
+div.related li.right
+{
+ float: right;
+ margin-right: 5px;
+}
+
+.footer
+{
+ font-size: small;
+ text-align: center;
+ color: lightgrey;
+}
+
+.content
+{
+ padding: 1em;
+ border: solid thin #dadada;
+ background-color: #ffffff;
+}
+
+/* This is a little hack to inject a 'news' block into the title
+ page without having to set up a custom directive. */
+#roundup-issue-tracker .note
+{
+ float: right;
+ width: auto;
+ border: solid thin #dadada;
+ background-color:#f5f5f5;
+ padding: 1em;
+ margin: 1em;
+}
+#roundup-issue-tracker .note .admonition-title { display: none; }
+
+table
+{
+ border-collapse: collapse;
+ border-spacing: 1px;
+ background-color: #fafafa;
+}
diff --git a/doc/_templates/layout.html b/doc/_templates/layout.html
--- /dev/null
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+{%- macro relbar(class) %}
+ <div class="related {{ class }}">
+ <ul>
+ {%- for rellink in rellinks %}
+ <li class="right" {% if loop.first %}style="margin-right: 10px"{% endif %}>
+ <a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags }}"
+ accesskey="{{ rellink[2] }}">{{ rellink[3] }}</a>
+ {%- if not loop.first %}{{ reldelim2 }}{% endif %}</li>
+ {%- endfor %}
+ {%- block rootrellink %}
+ <li><a href="{{ pathto(master_doc) }}">{{ shorttitle|e }}</a>{{ reldelim1 }}</li>
+ {%- endblock %}
+ {%- for parent in parents %}
+ <li><a href="{{ parent.link|e }}" accesskey="U">{{ parent.title }}</a>{{ reldelim1 }}</li>
+ {%- endfor %}
+ {%- block relbaritems %} {% endblock %}
+ </ul>
+ </div>
+{%- endmacro %}
+{%- macro sidebar() %}
+ {%- block sidebartoc %}
+ {%- if display_toc %}
+ <h3><a href="{{ pathto(master_doc) }}">{{ _('Table Of Contents') }}</a></h3>
+ {{ toc }}
+ {%- endif %}
+ {%- endblock %}
+ {%- block sidebarrel %}
+ {%- if prev %}
+ <h4>{{ _('Previous topic') }}</h4>
+ <p class="topless"><a href="{{ prev.link|e }}"
+ title="{{ _('previous chapter') }}">{{ prev.title }}</a></p>
+ {%- endif %}
+ {%- if next %}
+ <h4>{{ _('Next topic') }}</h4>
+ <p class="topless"><a href="{{ next.link|e }}"
+ title="{{ _('next chapter') }}">{{ next.title }}</a></p>
+ {%- endif %}
+ {%- endblock %}
+ {%- block sidebarsourcelink %}
+ {%- if show_source and has_source and sourcename %}
+ <h3>{{ _('This Page') }}</h3>
+ <ul class="this-page-menu">
+ <li><a href="{{ pathto('_sources/' + sourcename, true)|e }}"
+ rel="nofollow">{{ _('Show Source') }}</a></li>
+ </ul>
+ {%- endif %}
+ {%- endblock %}
+ {%- block sidebarsearch %}
+ {%- if pagename != "search" %}
+ <div id="searchbox" style="display: none">
+ <h3>{{ _('Quick search') }}</h3>
+ <form class="search" action="{{ pathto('search') }}" method="get">
+ <input type="text" name="q" size="18" />
+ <input type="submit" value="{{ _('Go') }}" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+ <p style="font-size: 90%">{{ _('Enter search terms or a module, class or function name.') }}</p>
+ </div>
+ <script type="text/javascript">$('#searchbox').show(0);</script>
+ {%- endif %}
+ {%- endblock %}
+{%- endmacro %}
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ {{ metatags }}
+ {%- if builder != 'htmlhelp' %}
+ {%- set titlesuffix = " — " + docstitle|e %}
+ {%- endif %}
+ <title>{{ title|striptags }}{{ titlesuffix }}</title>
+ {%- if builder == 'web' %}
+ <link rel="stylesheet" href="{{ pathto('index') }}?do=stylesheet{%
+ if in_admin_panel %}&admin=yes{% endif %}" type="text/css" />
+ {%- for link, type, title in page_links %}
+ <link rel="alternate" type="{{ type|e(true) }}" title="{{ title|e(true) }}" href="{{ link|e(true) }}" />
+ {%- endfor %}
+ {%- else %}
+ <link rel="stylesheet" href="{{ pathto('_static/style.css', 1) }}" type="text/css" />
+ <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" />
+ {%- endif %}
+ {%- if builder != 'htmlhelp' %}
+ <script type="text/javascript">
+ var DOCUMENTATION_OPTIONS = {
+ URL_ROOT: '{{ pathto("", 1) }}',
+ VERSION: '{{ release|e }}',
+ COLLAPSE_MODINDEX: false,
+ FILE_SUFFIX: '{{ file_suffix }}'
+ };
+ </script>
+ {%- for scriptfile in script_files %}
+ <script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script>
+ {%- endfor %}
+ {%- if use_opensearch %}
+ <link rel="search" type="application/opensearchdescription+xml"
+ title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}"
+ href="{{ pathto('_static/opensearch.xml', 1) }}"/>
+ {%- endif %}
+ {%- if favicon %}
+ <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/>
+ {%- endif %}
+ {%- endif %}
+{%- block linktags %}
+ {%- if hasdoc('about') %}
+ <link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" />
+ {%- endif %}
+ <link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" />
+ <link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" />
+ {%- if hasdoc('copyright') %}
+ <link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" />
+ {%- endif %}
+ <link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}" />
+ {%- if parents %}
+ <link rel="up" title="{{ parents[-1].title|striptags }}" href="{{ parents[-1].link|e }}" />
+ {%- endif %}
+ {%- if next %}
+ <link rel="next" title="{{ next.title|striptags }}" href="{{ next.link|e }}" />
+ {%- endif %}
+ {%- if prev %}
+ <link rel="prev" title="{{ prev.title|striptags }}" href="{{ prev.link|e }}" />
+ {%- endif %}
+{%- endblock %}
+{%- block extrahead %} {% endblock %}
+ </head>
+ <body>
+ <div class="header"><h1>Roundup</h1>
+ {%- if pagename != "search" %}
+ <div id="searchbox" style="display: none">
+ <form class="search" action="{{ pathto('search') }}" method="get">
+ <input type="text" name="q" size="18" />
+ <input type="submit" value="{{ _('Search') }}" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+ </div>
+ <script type="text/javascript">$('#searchbox').show(0);</script>
+ {%- endif %}
+ </div>
+ <div class="navigation">
+ <div class="menu">
+ {{ sidebar() }}
+ </div>
+ </div>
+ <div class="content">
+ {{ relbar('related-top') }}
+ {{ body }}
+ {{ relbar('related-bottom') }}
+ </div>
+{%- block footer %}
+ <div class="footer">
+ {%- if hasdoc('copyright') %}
+ {% trans path=pathto('copyright'), copyright=copyright|e %}© <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}
+ {%- else %}
+ {% trans copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
+ {%- endif %}
+ {%- if show_source and has_source and sourcename %}
+ <p class="source"><a href="{{ pathto('_sources/' + sourcename, true)|e }}" rel="nofollow">{{ _('source') }}</a></p>
+ {%- endif %}
+ </div>
+{%- endblock %}
+ </body>
+</html>
diff --git a/doc/acknowledgements.txt b/doc/acknowledgements.txt
--- /dev/null
+++ b/doc/acknowledgements.txt
@@ -0,0 +1,132 @@
+Acknowledgements
+================
+
+Go Ping, you rock! Also, go Common Ground, ekit.com and Bizar Software for
+letting me implement this system on their time.
+
+Thanks also to the many people on the mailing list, in the sourceforge
+project and those who just report bugs:
+Thomas Arendsen Hein,
+Nerijus Baliunas,
+Anthony Baxter,
+Marlon van den Berg,
+Bo Berglund,
+Stéphane Bidoul,
+Cameron Blackwood,
+Jeff Blaine,
+Duncan Booth,
+Seb Brezel,
+J Alan Brogan,
+Titus Brown,
+Steve Byan,
+Brett Cannon,
+Godefroid Chapelle,
+Roch'e Compaan,
+Wil Cooley,
+Joe Cooper,
+Kelley Dagley,
+Bruno Damour,
+Bradley Dean,
+Toby Dickenson,
+Paul F. Dubois,
+Eric Earnst,
+Peter Eisentraut,
+Andrew Eland,
+Jeff Epler,
+Tom Epperly,
+Tamer Fahmy,
+Vickenty Fesunov,
+Hernan Martinez Foffani,
+Stuart D. Gathman,
+Martin Geisler,
+Ajit George,
+Frank Gibbons,
+Johannes Gijsbers,
+Gus Gollings,
+Philipp Gortan,
+Dan Grassi,
+Robin Green,
+Jason Grout,
+Charles Groves,
+Engelbert Gruber,
+Bruce Guenter,
+Tamás Gulácsi,
+Thomas Arendsen Hein,
+Juergen Hermann,
+Tobias Herp,
+Uwe Hoffmann,
+Alex Holkner,
+Tobias Hunger,
+Simon Hyde,
+Paul Jimenez,
+Christophe Kalt,
+Timo Kankare,
+Brian Kelley,
+James Kew,
+Sheila King,
+Michael Klatt,
+Bastian Kleineidam,
+Axel Kollmorgen,
+Cedric Krier,
+Detlef Lannert,
+Andrey Lebedev,
+Henrik Levkowetz,
+David Linke,
+Martin v. Löwis,
+Fredrik Lundh,
+Will Maier,
+Ksenia Marasanova,
+Georges Martin,
+Gordon McMillan,
+John F Meinel Jr,
+Roland Meister,
+Ulrik Mikaelsson,
+John Mitchell,
+Ramiro Morales,
+Toni Mueller,
+Stefan Niederhauser,
+Truls E. Næss,
+Patrick Ohly,
+Luke Opperman,
+Eddie Parker,
+Will Partain,
+Ewout Prangsma,
+Marcus Priesch,
+Bernhard Reiter,
+Roy Rapoport,
+John P. Rouillard,
+Luke Ross,
+Ollie Rutherfurd,
+Toby Sargeant,
+Giuseppe Scelsi,
+Ralf Schlatterbeck,
+Gregor Schmid,
+Florian Schulze,
+Klamer Schutte,
+Dougal Scott,
+Stefan Seefeld,
+Jouni K Seppänen,
+Jeffrey P Shell,
+Dan Shidlovsky,
+Joel Shprentz,
+Terrel Shumway,
+Emil Sit,
+Alexander Smishlajev,
+Nathaniel Smith,
+Leonardo Soto,
+Maciej Starzyk,
+Mitchell Surface,
+Anatoly T.,
+Jon C. Thomason
+Mike Thompson,
+Michael Twomey,
+Karl Ulbrich,
+Martin Uzak,
+Darryl VanDorp,
+J Vickroy,
+Timothy J. Warren,
+William (Wilk),
+Tue Wennerberg,
+Matt Wilbert,
+Chris Withers,
+Milan Zamazal.
diff --git a/doc/conf.py b/doc/conf.py
--- /dev/null
+++ b/doc/conf.py
@@ -0,0 +1,191 @@
+# -*- coding: utf-8 -*-
+#
+# Roundup documentation build configuration file, created by
+# sphinx-quickstart on Tue Jan 20 17:33:20 2009.
+#
+# 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; values that are commented out
+# serve to show the default.
+
+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('.'))
+
+# 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 = ['toctree']
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# The suffix of source filenames.
+source_suffix = '.txt'
+
+# The encoding of source files.
+#source_encoding = 'utf-8'
+
+# The master toctree document.
+master_doc = 'index'
+
+# General information about the project.
+project = u'Roundup'
+copyright = u'2009, Richard Jones'
+
+# 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'
+# The full version, including alpha/beta/rc tags.
+release = '1.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 documents that shouldn't be included in the build.
+#unused_docs = []
+
+# List of directories, relative to source directory, that shouldn't be searched
+# for source files.
+exclude_trees = ['.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'
+
+
+# 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
+
+# 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']
+
+# 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 = {}
+
+html_collapse_toctree = True
+
+# Additional templates that should be rendered to pages, maps page names to
+# template names.
+#html_additional_pages = {}
+
+html_add_permalinks = False
+
+# If false, no module index is generated.
+#html_use_modindex = 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, 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 = 'Roundupdoc'
+
+
+# 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 = [
+ ('docs/index', 'Roundup.tex', ur'Roundup Documentation',
+ ur'Richard Jones', '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
+
+# 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
diff --git a/doc/contact.txt b/doc/contact.txt
--- /dev/null
+++ b/doc/contact.txt
@@ -0,0 +1,22 @@
+Contact
+=======
+
+For general support enquiries about usage, a mailing list is available:
+
+ roundup-users@sourceforge.net
+
+If you've got a great idea for roundup, or have found a bug, please
+submit an issue to the tracker at:
+
+ http://sourceforge.net/tracker/?group_id=31577
+
+For discussions about developing or enhancing roundup:
+
+ roundup-devel@sourceforge.net
+
+The admin for this project is Richard Jones:
+
+ richard@users.sourceforge.net
+
+but he should only be contacted directly when none of the
+above avenues of contact are suitable.
diff --git a/doc/customizing.txt b/doc/customizing.txt
index 5273e80fe048fdb173b5e9c2409ac4fb4297e7a4..dadd5ec181ed4def92d8978eae7f4e6254296303 100644 (file)
--- a/doc/customizing.txt
+++ b/doc/customizing.txt
+:tocdepth: 2
+
===================
Customising Roundup
===================
diff --git a/doc/index.txt b/doc/index.txt
index 93609bfe0e2ac78d4a32a632d450e523f2520694..cc8cc605b7146aff89f484b943748a1a23385f53 100644 (file)
--- a/doc/index.txt
+++ b/doc/index.txt
Contents
========
-- Features__
-- Installation__ and Upgrading__ existing installs
-- `Frequently Asked Questions`__
-- `User Guide`__
-- `Configuring and Customising Roundup`__
-- `Administering Roundup Trackers`__
-- `Roundup's Design`__ (original__)
-- `Developing Roundup`__
-- `Roundup Tracker Templates`__
-- Contact_
-- Acknowledgements_
-- License_
-
-__ features.html
-__ installation.html
-__ upgrading.html
-__ FAQ.html
-__ user_guide.html
-__ customizing.html
-__ admin_guide.html
-__ design.html
-__ spec.html
-__ developers.html
-__ tracker_templates.html
-
-Contact
-=======
-
-For general support enquiries about usage, a mailing list is available:
-
- roundup-users@sourceforge.net
-
-If you've got a great idea for roundup, or have found a bug, please
-submit an issue to the tracker at:
-
- http://sourceforge.net/tracker/?group_id=31577
-
-For discussions about developing or enhancing roundup:
-
- roundup-devel@sourceforge.net
-
-The admin for this project is Richard Jones:
-
- richard@users.sourceforge.net
-
-but he should only be contacted directly when none of the
-above avenues of contact are suitable.
-
-
-Acknowledgements
-================
-
-Go Ping, you rock! Also, go Common Ground, ekit.com and Bizar Software for
-letting me implement this system on their time.
-
-Thanks also to the many people on the mailing list, in the sourceforge
-project and those who just report bugs:
-Thomas Arendsen Hein,
-Nerijus Baliunas,
-Anthony Baxter,
-Marlon van den Berg,
-Bo Berglund,
-Stéphane Bidoul,
-Cameron Blackwood,
-Jeff Blaine,
-Duncan Booth,
-Seb Brezel,
-J Alan Brogan,
-Titus Brown,
-Steve Byan,
-Brett Cannon,
-Godefroid Chapelle,
-Roch'e Compaan,
-Wil Cooley,
-Joe Cooper,
-Kelley Dagley,
-Bruno Damour,
-Bradley Dean,
-Toby Dickenson,
-Paul F. Dubois,
-Eric Earnst,
-Peter Eisentraut,
-Andrew Eland,
-Jeff Epler,
-Tom Epperly,
-Tamer Fahmy,
-Vickenty Fesunov,
-Hernan Martinez Foffani,
-Stuart D. Gathman,
-Martin Geisler,
-Ajit George,
-Frank Gibbons,
-Johannes Gijsbers,
-Gus Gollings,
-Philipp Gortan,
-Dan Grassi,
-Robin Green,
-Jason Grout,
-Charles Groves,
-Engelbert Gruber,
-Bruce Guenter,
-Tamás Gulácsi,
-Thomas Arendsen Hein,
-Juergen Hermann,
-Tobias Herp,
-Uwe Hoffmann,
-Alex Holkner,
-Tobias Hunger,
-Simon Hyde,
-Paul Jimenez,
-Christophe Kalt,
-Timo Kankare,
-Brian Kelley,
-James Kew,
-Sheila King,
-Michael Klatt,
-Bastian Kleineidam,
-Axel Kollmorgen,
-Cedric Krier,
-Detlef Lannert,
-Andrey Lebedev,
-Henrik Levkowetz,
-David Linke,
-Martin v. Löwis,
-Fredrik Lundh,
-Will Maier,
-Ksenia Marasanova,
-Georges Martin,
-Gordon McMillan,
-John F Meinel Jr,
-Roland Meister,
-Ulrik Mikaelsson,
-John Mitchell,
-Ramiro Morales,
-Toni Mueller,
-Stefan Niederhauser,
-Truls E. Næss,
-Patrick Ohly,
-Luke Opperman,
-Eddie Parker,
-Will Partain,
-Ewout Prangsma,
-Marcus Priesch,
-Bernhard Reiter,
-Roy Rapoport,
-John P. Rouillard,
-Luke Ross,
-Ollie Rutherfurd,
-Toby Sargeant,
-Giuseppe Scelsi,
-Ralf Schlatterbeck,
-Gregor Schmid,
-Florian Schulze,
-Klamer Schutte,
-Dougal Scott,
-Stefan Seefeld,
-Jouni K Seppänen,
-Jeffrey P Shell,
-Dan Shidlovsky,
-Joel Shprentz,
-Terrel Shumway,
-Emil Sit,
-Alexander Smishlajev,
-Nathaniel Smith,
-Leonardo Soto,
-Maciej Starzyk,
-Mitchell Surface,
-Anatoly T.,
-Jon C. Thomason
-Mike Thompson,
-Michael Twomey,
-Karl Ulbrich,
-Martin Uzak,
-Darryl VanDorp,
-J Vickroy,
-Timothy J. Warren,
-William (Wilk),
-Tue Wennerberg,
-Matt Wilbert,
-Chris Withers,
-Milan Zamazal.
-
-
-
-License
-=======
-
-See COPYING.txt in the software distribution for the licensing terms.
-
+.. toctree::
+ :maxdepth: 2
+
+ features
+ installation
+ upgrading
+ FAQ
+ user_guide
+ customizing
+ admin_guide
+ spec
+ original design <design>
+ developers
+ tracker_templates
+ contact
+ acknowledgements
+ license
diff --git a/doc/license.txt b/doc/license.txt
--- /dev/null
+++ b/doc/license.txt
@@ -0,0 +1,5 @@
+License
+=======
+
+See COPYING.txt in the software distribution for the licensing terms.
+
diff --git a/roundup/dist/__init__.py b/roundup/dist/__init__.py
diff --git a/roundup/dist/command/__init__.py b/roundup/dist/command/__init__.py
diff --git a/roundup/dist/command/build_doc.py b/roundup/dist/command/build_doc.py
--- /dev/null
@@ -0,0 +1,37 @@
+#
+# Copyright (C) 2009 Stefan Seefeld
+# All rights reserved.
+# For license terms see the file COPYING.txt.
+#
+
+import os, sys
+from stat import *
+import os.path
+from shutil import *
+import glob
+
+from distutils.command import build
+from distutils.spawn import spawn, find_executable
+from distutils.dep_util import newer, newer_group
+from distutils.dir_util import copy_tree, remove_tree, mkpath
+from distutils.file_util import copy_file
+from distutils import sysconfig
+
+class build_doc(build.build):
+ """Defines the specific procedure to build roundup's documentation."""
+
+ description = "build documentation"
+
+ def run(self):
+ """Run this command, i.e. do the actual document generation."""
+
+ sphinx = find_executable('sphinx-build')
+ if not sphinx:
+ self.warn("could not find sphinx-build in PATH")
+ self.warn("cannot build documentation")
+ return
+
+ doc_dir = os.path.join('share', 'doc', 'roundup', 'html')
+ temp_dir = os.path.join(self.build_temp, 'doc')
+ cmd = [sphinx, '-d', temp_dir, 'doc', doc_dir]
+ spawn(cmd)
diff --git a/setup.py b/setup.py
index fd32103a8b6563e929b1ac7db64b9832eb8f3c70..f9fddac77bbe69279286c1c0f1ed54542e2c1e36 100644 (file)
--- a/setup.py
+++ b/setup.py
#
# $Id: setup.py,v 1.105 2008-09-01 01:58:32 richard Exp $
+
+from roundup.dist.command.build_doc import build_doc
from distutils.core import setup, Extension
from distutils.util import get_platform
from distutils.file_util import write_file
from roundup import msgfmt
+def include(d, e):
+ """Generate a pair of (directory, file-list) for installation.
+
+ 'd' -- A directory
+
+ 'e' -- A glob pattern"""
+
+ return (d, [f for f in glob('%s/%s'%(d, e)) if os.path.isfile(f)])
+
#############################################################################
### Build script files
#############################################################################
installdatafiles.append((os.path.dirname(_mo_file),
[os.path.join("build", _mo_file)]))
+ # add docs
+ installdatafiles.append(include(os.path.join('share', 'doc', 'roundup', 'html'), '*'))
+
# perform the setup action
from roundup import __version__
setup_args = {
# Override certain command classes with our own ones
'cmdclass': {
+ 'build_doc': build_doc,
'build_scripts': build_scripts_roundup,
'build_py': build_py_roundup,
'build': build_roundup,