Several improvements to the HTML NEWS version:

* rename to "Changelog"
* recognize more issue links
* add NEWS as a dependency for Sphinx
This commit is contained in:
Georg Brandl 2012-10-01 19:08:50 +02:00
parent 8fc6cb35c5
commit 44d0c2156a
4 changed files with 15 additions and 13 deletions

View file

@ -149,10 +149,9 @@ class DeprecatedRemoved(Directive):
import re
import codecs
from docutils.statemachine import string2lines
from sphinx.util.nodes import nested_parse_with_titles
issue_re = re.compile('Issue #([0-9]+)')
issue_re = re.compile('([Ii])ssue #([0-9]+)')
whatsnew_re = re.compile(r"(?im)^what's new in (.*?)\??$")
class MiscNews(Directive):
has_content = False
@ -166,8 +165,10 @@ class MiscNews(Directive):
source = self.state_machine.input_lines.source(
self.lineno - self.state_machine.input_offset - 1)
source_dir = path.dirname(path.abspath(source))
fpath = path.join(source_dir, fname)
self.state.document.settings.record_dependencies.add(fpath)
try:
fp = codecs.open(path.join(source_dir, fname), encoding='utf-8')
fp = codecs.open(fpath, encoding='utf-8')
try:
content = fp.read()
finally:
@ -176,8 +177,9 @@ class MiscNews(Directive):
text = 'The NEWS file is not available.'
node = nodes.strong(text, text)
return [node]
content = issue_re.sub(r'`Issue #\1 <http://bugs.python.org/\1>`__',
content = issue_re.sub(r'`\1ssue #\2 <http://bugs.python.org/\2>`__',
content)
content = whatsnew_re.sub(r'\1', content)
# remove first 3 lines as they are the main heading
lines = content.splitlines()[3:]
self.state_machine.insert_input(lines, fname)