Several improvements to the HTML NEWS version:
* rename to "Changelog"
* recognize more issue links
* add NEWS as a dependency for Sphinx
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 @@
 
 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 @@
         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 @@
             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)
diff --git a/Doc/whatsnew/news.rst b/Doc/whatsnew/changelog.rst
similarity index 86%
rename from Doc/whatsnew/news.rst
rename to Doc/whatsnew/changelog.rst
index 2f81ed3..680d110 100644
--- a/Doc/whatsnew/news.rst
+++ b/Doc/whatsnew/changelog.rst
@@ -1,6 +1,6 @@
-+++++++++++
-Python News
-+++++++++++
++++++++++
+Changelog
++++++++++
 
 .. raw:: html
 
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 @@
    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/Misc/NEWS b/Misc/NEWS
index 889f04b..b23a0c3 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -75,7 +75,7 @@
 - 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,