From 44d0c2156a292b2e9297b2220941e340d4ec32df Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Mon, 1 Oct 2012 19:08:50 +0200 Subject: Several improvements to the HTML NEWS version: * rename to "Changelog" * recognize more issue links * add NEWS as a dependency for Sphinx --- Doc/tools/sphinxext/pyspecific.py | 12 +++++++----- Doc/whatsnew/changelog.rst | 14 ++++++++++++++ Doc/whatsnew/index.rst | 8 ++++---- Doc/whatsnew/news.rst | 14 -------------- Misc/NEWS | 2 +- 5 files changed, 26 insertions(+), 24 deletions(-) create mode 100644 Doc/whatsnew/changelog.rst delete mode 100644 Doc/whatsnew/news.rst diff --git a/Doc/tools/sphinxext/pyspecific.py b/Doc/tools/sphinxext/pyspecific.py index 9304461..1808e28 100644 --- a/Doc/tools/sphinxext/pyspecific.py +++ b/Doc/tools/sphinxext/pyspecific.py @@ -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 `__', + content = issue_re.sub(r'`\1ssue #\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) diff --git a/Doc/whatsnew/changelog.rst b/Doc/whatsnew/changelog.rst new file mode 100644 index 0000000..680d110 --- /dev/null +++ b/Doc/whatsnew/changelog.rst @@ -0,0 +1,14 @@ ++++++++++ +Changelog ++++++++++ + +.. raw:: html + +

+ Filter entries by content: + + +

+ +.. miscnews:: ../../Misc/NEWS + diff --git a/Doc/whatsnew/index.rst b/Doc/whatsnew/index.rst index a06849b..bc1206b 100644 --- a/Doc/whatsnew/index.rst +++ b/Doc/whatsnew/index.rst @@ -24,10 +24,10 @@ anyone wishing to stay up-to-date after a new release. 2.1.rst 2.0.rst -The "Python News" is a HTML version of the file :source:`Misc/NEWS` which -contains *all* nontrivial changes to Python. +The "Changelog" is a HTML version of the file :source:`Misc/NEWS` which +contains *all* nontrivial changes to Python for the current version. .. toctree:: - :maxdepth: 1 + :maxdepth: 2 - news.rst + changelog.rst diff --git a/Doc/whatsnew/news.rst b/Doc/whatsnew/news.rst deleted file mode 100644 index 2f81ed3..0000000 --- a/Doc/whatsnew/news.rst +++ /dev/null @@ -1,14 +0,0 @@ -+++++++++++ -Python News -+++++++++++ - -.. raw:: html - -

- Filter entries by content: - - -

- -.. miscnews:: ../../Misc/NEWS - diff --git a/Misc/NEWS b/Misc/NEWS index 889f04b..b23a0c3 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -75,7 +75,7 @@ Library - Issue #15509: webbrowser.UnixBrowser no longer passes empty arguments to Popen when %action substitutions produce empty strings. -- Issues #12776, #11839: call argparse type function (specified by add_argument) +- Issue #12776, issue #11839: call argparse type function (specified by add_argument) only once. Before, the type function was called twice in the case where the default was specified and the argument was given as well. This was especially problematic for the FileType type, as a default file would always be opened, -- cgit v0.12