Author: mtredinnick
Date: 2009-03-08 20:37:17 -0500 (Sun, 08 Mar 2009)
New Revision: 10006
Modified:
django/trunk/docs/_ext/djangodocs.py
django/trunk/docs/conf.py
Log:
Fixed #9436 -- Updated docs build code to create "new in development version".
Patch from Marc Fargas.
Modified: django/trunk/docs/_ext/djangodocs.py
===================================================================
--- django/trunk/docs/_ext/djangodocs.py 2009-03-09 01:36:53 UTC (rev
10005)
+++ django/trunk/docs/_ext/djangodocs.py 2009-03-09 01:37:17 UTC (rev
10006)
@@ -10,6 +10,8 @@
import sphinx.directives
import sphinx.environment
import sphinx.htmlwriter
+import sphinx.roles
+from docutils import nodes
def setup(app):
app.add_crossref_type(
@@ -44,11 +46,40 @@
indextemplate = "pair: %s; django-admin command-line option",
parse_node = lambda env, sig, signode:
sphinx.directives.parse_option_desc(signode, sig),
)
+ app.add_config_value('django_next_version', '0.0', True)
+ app.add_directive('versionadded', parse_version_directive, 1, (1, 1, 1))
+ app.add_directive('versionchanged', parse_version_directive, 1, (1, 1, 1))
app.add_transform(SuppressBlockquotes)
# Monkeypatch PickleHTMLBuilder so that it doesn't die in Sphinx 0.4.2
if sphinx.__version__ == '0.4.2':
monkeypatch_pickle_builder()
+
+def parse_version_directive(name, arguments, options, content, lineno,
+ content_offset, block_text, state, state_machine):
+ env = state.document.settings.env
+ is_nextversion = env.config.django_next_version == arguments[0]
+ ret = []
+ node = sphinx.addnodes.versionmodified()
+ ret.append(node)
+ if not is_nextversion:
+ if len(arguments) == 1:
+ linktext = 'Please, see the release notes <releases-%s>' %
(arguments[0])
+ xrefs = sphinx.roles.xfileref_role('ref', linktext, linktext,
lineno, state)
+ node.extend(xrefs[0])
+ node['version'] = arguments[0]
+ else:
+ node['version'] = "Development version"
+ node['type'] = name
+ if len(arguments) == 2:
+ inodes, messages = state.inline_text(arguments[1], lineno+1)
+ node.extend(inodes)
+ if content:
+ state.nested_parse(content, content_offset, node)
+ ret = ret + messages
+ env.note_versionchange(node['type'], node['version'], node, lineno)
+ return ret
+
class SuppressBlockquotes(docutils.transforms.Transform):
"""
Modified: django/trunk/docs/conf.py
===================================================================
--- django/trunk/docs/conf.py 2009-03-09 01:36:53 UTC (rev 10005)
+++ django/trunk/docs/conf.py 2009-03-09 01:37:17 UTC (rev 10006)
@@ -44,6 +44,8 @@
version = '1.0'
# The full version, including alpha/beta/rc tags.
release = version
+# The next version to be released
+django_next_version = '1.1'
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---