summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSviatoslav Sydorenko <wk@sydorenko.org.ua>2018-01-13 02:30:12 +0200
committerSviatoslav Sydorenko <wk@sydorenko.org.ua>2018-01-13 02:44:41 +0200
commit2d78e0571ff24870c6fe8a1a63c1ed24c1b4a7f6 (patch)
tree9dfb397d6aadfd72f7c5b2e75d35e5743f710797
parent8de3d5cac8d1afde9758d66ffd3e8d337b1eed8f (diff)
downloadcherrypy-git-2d78e0571ff24870c6fe8a1a63c1ed24c1b4a7f6.tar.gz
Use sphinx extlinks in changelog
-rw-r--r--CHANGES.rst167
-rw-r--r--docs/conf.py15
2 files changed, 84 insertions, 98 deletions
diff --git a/CHANGES.rst b/CHANGES.rst
index e381ff21..b21d4c49 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,7 +1,7 @@
v13.1.0
-------
-* #1231 via #1654: CaseInsensitiveDict now re-uses the
+* :issue:`1231` via :issue:`pr`: CaseInsensitiveDict now re-uses the
generalized functionality from ``jaraco.collections`` to
provide a more complete interface for a CaseInsensitiveDict
and HeaderMap.
@@ -13,35 +13,35 @@ v13.1.0
v13.0.1
-------
-* #1671: Restore support for installing CherryPy into
+* :pr:`1671`: Restore support for installing CherryPy into
environments hostile to namespace packages, broken since
the 11.1.0 release.
v13.0.0
-------
-* #1666: Drop support for Python 3.3.
+* :issue:`1666`: Drop support for Python 3.3.
v12.0.2
-------
-* #1665: In request processing, when an invalid cookie is
+* :issue:`1665`: In request processing, when an invalid cookie is
received, render the actual error message reported rather
than guessing (sometimes incorrectly) what error occurred.
v12.0.1
-------
-* Fixed issues importing cherrypy.test.webtest (by creating
- a module and importing classes from cheroot) and added a
- corresponding DeprecationWarning.
+* Fixed issues importing :py:mod:`cherrypy.test.webtest` (by creating
+ a module and importing classes from :py:mod:`cheroot`) and added a
+ corresponding :py:class:`DeprecationWarning`.
v12.0.0
-------
* Drop support for Python 3.1 and 3.2.
-* #1625: Removed response timeout and timeout monitor and
+* :issue:`1625`: Removed response timeout and timeout monitor and
related exceptions, as it not possible to interrupt a request.
Servers that wish to exit a request prematurely are
recommended to monitor ``response.time`` and raise an
@@ -82,37 +82,37 @@ v11.2.0
callback, in which case it returns a decorator expecting the
callback.
-* #1656: Images are now compressed using lossless compression
+* :pr:`1656`: Images are now compressed using lossless compression
and consume less space.
v11.1.0
-------
-* #1611: Expose default status logic for a redirect as
+* :pr:`1611`: Expose default status logic for a redirect as
``HTTPRedirect.default_status``.
-* #1615: ``HTTPRedirect.status`` is now an instance property and
+* :pr:`1615`: ``HTTPRedirect.status`` is now an instance property and
derived from the value in ``args``. Although it was previously
possible to set the property on an instance, and this change
prevents that possibilty, CherryPy never relied on that behavior
and we presume no applications depend on that interface.
-* #1627: Fixed issue in proxy tool where more than one port would
+* :issue:`1627`: Fixed issue in proxy tool where more than one port would
appear in the ``request.base`` and thus in ``cherrypy.url``.
-* #1645: Added new log format markers:
+* :pr:`1645`: Added new log format markers:
- ``i`` holds a per-request UUID4
- ``z`` outputs UTC time in format of RFC 3339
- ``cherrypy._cprequest.Request.unique_id.uuid4`` now has lazily
invocable UUID4
-* #1646: Improve http status conversion helper.
+* :issue:`1646`: Improve http status conversion helper.
-* #1638: Always use backslash for path separator when processing
+* :pr:`1638`: Always use backslash for path separator when processing
paths in staticdir.
-* #1190: Fix gzip, caching, and staticdir tools integration. Makes
+* :issue:`1190`: Fix gzip, caching, and staticdir tools integration. Makes
cache of gzipped content valid.
* Requires cheroot 5.8.3 or later.
@@ -122,17 +122,17 @@ v11.1.0
This release contained an unintentional regression in environments that
are hostile to namespace packages, such as Pex, Celery, and py2exe.
-See #1671 for details.
+See :pr:`1671` for details.
v11.0.0
-------
-* #1607: Dropped support for Python 2.6.
+* :issue:`1607`: Dropped support for Python 2.6.
v10.2.2
-------
-* #1595: Fixed over-eager normalization of paths in cherrypy.url.
+* :issue:`1595`: Fixed over-eager normalization of paths in cherrypy.url.
v10.2.1
-------
@@ -143,33 +143,33 @@ v10.2.1
v10.2.0
-------
-* #1580: CPWSGIServer.version now reported as
+* :pr:`1580`: ``CPWSGIServer.version`` now reported as
``CherryPy/x.y.z Cheroot/x.y.z``. Bump to cheroot 5.2.0.
-* The codebase is now PEP8 complaint, flake8 linter is `enabled in TravisCI by
+* The codebase is now :pep:`8` complaint, flake8 linter is `enabled in TravisCI by
default <https://github.com/cherrypy/cherrypy/commit/b6e752b>`_.
* Max line restriction is now set to 120 for flake8 linter.
-* PEP257 linter runs as separate allowed failure job in Travis CI.
+* :pep:`257` linter runs as separate allowed failure job in Travis CI.
* A few bugs related to undeclared variables have been fixed.
* ``pre-commit`` testing goes faster due to enabled caching.
v10.1.1
-------
-* #1342: Fix AssertionError on shutdown.
+* :issue:`1342`: Fix AssertionError on shutdown.
v10.1.0
-------
* Bump to cheroot 5.1.0.
-* #794: Prefer setting max-age for session cookie
+* :issue:`794`: Prefer setting max-age for session cookie
expiration, moving MSIE hack into a function
documenting its purpose.
v10.0.0
-------
-* #1332: CherryPy now uses `portend
+* :issue:`1332`: CherryPy now uses `portend
<https://pypi.org/project/portend>`_ for checking and
waiting on ports for startup and teardown checks. The
following names are no longer present:
@@ -187,19 +187,19 @@ v10.0.0
v9.0.0
------
-* #1481: Move functionality from cherrypy.wsgiserver to
+* :issue:`1481`: Move functionality from cherrypy.wsgiserver to
the `cheroot 5.0 <https://pypi.org/project/Cheroot/5.0.1/>`_
project.
v8.9.1
------
-* #1537: Restore dependency on pywin32 for Python 3.6.
+* :issue:`1537`: Restore dependency on pywin32 for Python 3.6.
v8.9.0
------
-* #1547: Replaced ``cherryd`` distutils script with a setuptools
+* :pr:`1547`: Replaced ``cherryd`` distutils script with a setuptools
console entry point.
When running CherryPy in daemon mode, the forked process no
@@ -210,17 +210,17 @@ v8.9.0
v8.8.0
------
-* #1528: Allow a timeout of 0 to server.
+* :pr:`1528`: Allow a timeout of 0 to server.
v8.7.0
------
-* #645: Setting a bind port of 0 will bind to an ephemeral port.
+* :issue:`645`: Setting a bind port of 0 will bind to an ephemeral port.
v8.6.0
------
-* #1538 and #1090: Removed cruft from the setup script and
+* :issue:`1538` and :issue:`1090`: Removed cruft from the setup script and
instead rely on `include_package_data
<http://setuptools.readthedocs.io/en/latest/setuptools.html?highlight=include_package_data#new-and-changed-setup-keywords>`_
to ensure the relevant files are included in the package.
@@ -233,19 +233,19 @@ v8.5.0
* The pyOpenSSL support is now included on Python 3 builds,
removing the last disparity between Python 2 and Python 3
in the CherryPy package. This change is one small step
- in consideration of #1399. This change also fixes RPM
- builds, as reported in #1149.
+ in consideration of :issue:`1399`. This change also fixes RPM
+ builds, as reported in :issue:`1149`.
v8.4.0
------
-* #1532: Also release wheels for Python 2, enabling
+* :issue:`1532`: Also release wheels for Python 2, enabling
offline installation.
v8.3.1
------
-* #1537: Disable dependency on pypiwin32 on Python 3.6
+* :issue:`1537`: Disable dependency on pypiwin32 on Python 3.6
until a viable build of pypiwin32 can be made on that
Python version.
@@ -259,27 +259,27 @@ v8.3.0
v8.2.0
------
-* #1463: CherryPy tests are now run under pytest and
+* :issue:`1463`: CherryPy tests are now run under pytest and
invoked using tox.
v8.1.3
------
-* #1530: Fix the issue with TypeError being swallowed by
+* :issue:`1530`: Fix the issue with TypeError being swallowed by
decorated handlers.
v8.1.2
------
-* #1508
+* :issue:`1508`
v8.1.1
------
-* #1497: Handle errors thrown by ``ssl_module: 'builtin'``
+* :issue:`1497`: Handle errors thrown by ``ssl_module: 'builtin'``
when client opens connection to HTTPS port using HTTP.
-* #1350: Fix regression introduced in v6.1.0 where environment
+* :issue:`1350`: Fix regression introduced in v6.1.0 where environment
construction for WSGIGateway_u0 was passing one parameter
and not two.
@@ -288,9 +288,9 @@ v8.1.1
v8.1.0
------
-* #1473: ``HTTPError`` now also works as a context manager.
+* :issue:`1473`: ``HTTPError`` now also works as a context manager.
-* #1487: The sessions tool now accepts a ``storage_class``
+* :issue:`1487`: The sessions tool now accepts a ``storage_class``
parameter, which supersedes the new deprecated
``storage_type`` parameter. The ``storage_class`` should
be the actual Session subclass to be used.
@@ -303,32 +303,33 @@ v8.1.0
v8.0.1
------
-* #1489 via #1493: Additionally reject anything else that's
+* :issue:`1489` via :pr:`1493`: Additionally reject anything else that's
not bytes.
-* #1492: systemd socket activation.
+* :issue:`1492`: systemd socket activation.
v8.0.0
------
-* #1483: Remove Deprecated constructs:
+* :issue:`1483`: Remove Deprecated constructs:
- ``cherrypy.lib.http`` module.
- ``unrepr``, ``modules``, and ``attributes`` in
``cherrypy.lib``.
-* #1476: Drop support for python-memcached<1.58
-* #1401: Handle NoSSLErrors.
-* #1489: In ``wsgiserver.WSGIGateway.respond``, the application
+* :pr:`1476`: Drop support for python-memcached<1.58
+* :issue:`1401`: Handle NoSSLErrors.
+* :issue:`1489`: In ``wsgiserver.WSGIGateway.respond``, the application
must now yield bytes and not text, as the spec requires.
If text is received, it will now raise a ValueError instead
of silently encoding using ISO-8859-1.
* Removed unicode filename from the package, working around
- pip #3894 and setuptools #704.
+ :gh:`pypa/pip#3894 <pypa/pip/issues/3894>` and :gh:`pypa/setuptools#704
+ <pypa/setuptools/issues/704>`.
v7.1.0
------
-# 1458: Implement systemd's socket activation mechanism for
+* :pr:`1458`: Implement systemd's socket activation mechanism for
CherryPy servers, based on work sponsored by Endless Computers.
Socket Activation allows one to setup a system so that
@@ -352,13 +353,13 @@ namespaced-plugins instead:
v6.2.1
------
-# 1460: Fix KeyError in Bus.publish when signal handlers
+* :issue:`1460`: Fix KeyError in Bus.publish when signal handlers
set in config.
v6.2.0
------
-* #1441: Added tool to automatically convert request
+* :issue:`1441`: Added tool to automatically convert request
params based on type annotations (primarily in
Python 3). For example::
@@ -369,7 +370,7 @@ v6.2.0
v6.1.1
------
-* Issue #1411: Fix issue where autoreload fails when
+* Issue :issue:`1411`: Fix issue where autoreload fails when
the host interpreter for CherryPy was launched using
``python -m``.
@@ -382,12 +383,12 @@ v6.1.0
v6.0.2
------
-* Issue #1445: Correct additional typos.
+* Issue :pr:`1445`: Correct additional typos.
v6.0.1
------
-* Issue #1444: Correct typos in ``@cherrypy.expose``
+* Issue :issue:`1444`: Correct typos in ``@cherrypy.expose``
decorators.
v6.0.0
@@ -402,7 +403,7 @@ v6.0.0
* `six <https://pypi.io/project/six>`_ is now a
requirement and subsequent requirements will be
declared in the project metadata.
-* #1440: Back out changes from #1432 attempting to
+* :issue:`1440`: Back out changes from :pr:`1432` attempting to
fix redirects with Unicode URLs, as it also had the
unintended consequence of causing the 'Location'
to be ``bytes`` on Python 3.
@@ -423,14 +424,14 @@ v5.6.0
v5.5.0
------
-* #1397: Fix for filenames with semicolons and quote
+* :issue:`1397`: Fix for filenames with semicolons and quote
characters in filenames found in headers.
-* #1311: Added decorator for registering tools.
-* #1194: Use simpler encoding rules for SCRIPT_NAME
+* :issue:`1311`: Added decorator for registering tools.
+* :issue:`1194`: Use simpler encoding rules for SCRIPT_NAME
and PATH_INFO environment variables in CherryPy Tree
allowing non-latin characters to pass even when
``wsgi.version`` is not ``u.0``.
-* #1352: Ensure that multipart fields are decoded even
+* :issue:`1352`: Ensure that multipart fields are decoded even
when cached in a file.
v5.4.0
@@ -440,33 +441,33 @@ v5.4.0
'WEBTEST_INTERACTIVE' environment variable to disable
interactive tests (still enabled by default). Set to '0'
or 'false' or 'False' to disable interactive tests.
-* #1408: Fix AttributeError when listiterator was accessed
+* :issue:`1408`: Fix AttributeError when listiterator was accessed
using the ``next`` attribute.
-* #748: Removed ``cherrypy.lib.sessions.PostgresqlSession``.
-* #1432: Fix errors with redirects to Unicode URLs.
+* :issue:`748`: Removed ``cherrypy.lib.sessions.PostgresqlSession``.
+* :pr:`1432`: Fix errors with redirects to Unicode URLs.
v5.3.0
------
-* #1202: Add support for specifying a certificate authority when
+* :issue:`1202`: Add support for specifying a certificate authority when
serving SSL using the built-in SSL support.
* Use ssl.create_default_context when available.
-* #1392: Catch platform-specific socket errors on OS X.
-* #1386: Fix parsing of URIs containing ``://`` in the path part.
+* :issue:`1392`: Catch platform-specific socket errors on OS X.
+* :issue:`1386`: Fix parsing of URIs containing ``://`` in the path part.
v5.2.0
------
-* #1410: Moved hosting to Github (
- `cherrypy/cherrypy <https://github.com/cherrypy/cherrypy>`_.
+* :issue:`1410`: Moved hosting to Github
+ (`cherrypy/cherrypy <https://github.com/cherrypy/cherrypy>`_).
v5.1.0
------
-* Bugfix issue #1315 for ``test_HTTP11_pipelining`` test in Python 3.5
-* Bugfix issue #1382 regarding the keyword arguments support for Python 3
+* Bugfix issue :issue:`1315` for ``test_HTTP11_pipelining`` test in Python 3.5
+* Bugfix issue :issue:`1382` regarding the keyword arguments support for Python 3
on the config file.
-* Bugfix issue #1406 for ``test_2_KeyboardInterrupt`` test in Python 3.5.
+* Bugfix issue :issue:`1406` for ``test_2_KeyboardInterrupt`` test in Python 3.5.
by monkey patching the HTTPRequest given a bug on CPython
that is affecting the testsuite (https://bugs.python.org/issue23377).
* Add additional parameter ``raise_subcls`` to the tests helpers
@@ -481,7 +482,7 @@ v5.1.0
v5.0.1
------
-* Bugfix for NameError following #94.
+* Bugfix for NameError following :issue:`94`.
v5.0.0
------
@@ -491,7 +492,7 @@ v5.0.0
of SSL adapter on Python 2 WSGI servers.
* Default SSL Adapter on Python 2 is the builtin SSL adapter,
matching Python 3 behavior.
-* Pull request #94: In proxy tool, defer to Host header for
+* Pull request :issue:`94`: In proxy tool, defer to Host header for
resolving the base if no base is supplied.
v4.0.0
@@ -503,13 +504,13 @@ v4.0.0
v3.8.2
------
-* Pull Request #116: Correct InternalServerError when null bytes in
+* Pull Request :issue:`116`: Correct InternalServerError when null bytes in
static file path. Now responds with 404 instead.
v3.8.0
------
-* Pull Request #96: Pass ``exc_info`` to logger as keyword rather than
+* Pull Request :issue:`96`: Pass ``exc_info`` to logger as keyword rather than
formatting the error and injecting into the message.
v3.7.0
@@ -517,7 +518,7 @@ v3.7.0
* CherryPy daemon may now be invoked with ``python -m cherrypy`` in
addition to the ``cherryd`` script.
-* Issue #1298: Fix SSL handling on CPython 2.7 with builtin SSL module
+* Issue :issue:`1298`: Fix SSL handling on CPython 2.7 with builtin SSL module
and pyOpenSSL 0.14. This change will break PyPy for now.
* Several documentation fixes.
@@ -526,18 +527,18 @@ v3.6.0
* Fixed HTTP range headers for negative length larger than content size.
* Disabled universal wheel generation as wsgiserver has Python duality.
-* Pull Request #42: Correct TypeError in ``check_auth`` when encrypt is used.
-* Pull Request #59: Correct signature of HandlerWrapperTool.
-* Pull Request #60: Fix error in SessionAuth where login_screen was
+* Pull Request :issue:`42`: Correct TypeError in ``check_auth`` when encrypt is used.
+* Pull Request :issue:`59`: Correct signature of HandlerWrapperTool.
+* Pull Request :issue:`60`: Fix error in SessionAuth where login_screen was
incorrectly used.
-* Issue #1077: Support keyword-only arguments in dispatchers (Python 3).
-* Issue #1019: Allow logging host name in the access log.
-* Pull Request #50: Fixed race condition in session cleanup.
+* Issue :issue:`1077`: Support keyword-only arguments in dispatchers (Python 3).
+* Issue :issue:`1019`: Allow logging host name in the access log.
+* Pull Request :issue:`50`: Fixed race condition in session cleanup.
v3.5.0
------
-* Issue #1301: When the incoming queue is full, now reject additional
+* Issue :issue:`1301`: When the incoming queue is full, now reject additional
connections. This functionality was added to CherryPy 3.0, but
unintentionally lost in 3.1.
diff --git a/docs/conf.py b/docs/conf.py
index 4dccbf8f..d42c6108 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -224,24 +224,9 @@ link_files = {
),
replace=[
dict(
- pattern=r'((Issue|PR)\s?)?#(?P<issue_or_pr>\d+)',
- url='{GH}/cherrypy/{project}/issues/{issue_or_pr}',
- ),
- dict(
pattern=r'^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n',
with_scm='{text}\n{rev[timestamp]:%d %b %Y}\n',
),
- dict(
- pattern=r'PEP[- ](?P<pep_number>\d+)',
- url='https://www.python.org/dev/peps/pep-{pep_number:0>4}/',
- ),
- dict(
- # FIXME: currently this puts #v1.2.3 style version
- # into URL, but it should be v1-2-3
- pattern=r'cheroot v?(?P<cheroot_version>\d+(\.\d+){1,2})',
- url='https://cheroot.readthedocs.io'
- '/en/latest/history.html#v{cheroot_version}',
- ),
],
),
}