]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-30553: Add status code 421 to http.HTTPStatus (GH-2589)
authorVitor Pereira <vmsousapereira@gmail.com>
Thu, 26 Oct 2017 18:49:19 +0000 (19:49 +0100)
committerBerker Peksag <berker.peksag@gmail.com>
Thu, 26 Oct 2017 18:49:19 +0000 (21:49 +0300)
Doc/library/http.rst
Lib/http/__init__.py
Lib/test/test_httplib.py
Misc/NEWS.d/next/Library/2017-07-05-14-48-26.bpo-30553.Oupsxo.rst [new file with mode: 0644]

index be661c5e8c23828eb496d1a22cab503f3fa7b1fb..7c34004a3ae0822992414de0e58236bdabfd1dc3 100644 (file)
@@ -98,6 +98,7 @@ Code    Enum Name                           Details
 ``415`` ``UNSUPPORTED_MEDIA_TYPE``          HTTP/1.1 :rfc:`7231`, Section 6.5.13
 ``416`` ``REQUEST_RANGE_NOT_SATISFIABLE``   HTTP/1.1 Range Requests :rfc:`7233`, Section 4.4
 ``417`` ``EXPECTATION_FAILED``              HTTP/1.1 :rfc:`7231`, Section 6.5.14
+``421`` ``MISDIRECTED_REQUEST``             HTTP/2 :rfc:`7540`, Section 9.1.2
 ``422`` ``UNPROCESSABLE_ENTITY``            WebDAV :rfc:`4918`, Section 11.2
 ``423`` ``LOCKED``                          WebDAV :rfc:`4918`, Section 11.3
 ``424`` ``FAILED_DEPENDENCY``               WebDAV :rfc:`4918`, Section 11.4
@@ -122,3 +123,6 @@ In order to preserve backwards compatibility, enum values are also present
 in the :mod:`http.client` module in the form of constants. The enum name is
 equal to the constant name (i.e. ``http.HTTPStatus.OK`` is also available as
 ``http.client.OK``).
+
+.. versionchanged:: 3.7
+   Added ``421 MISDIRECTED_REQUEST`` status code.
index d4334cc88f9fd0ef39357718066c8f2072fdaae3..aed94a5850467721035ac1c65dafca83f8d6455a 100644 (file)
@@ -15,6 +15,7 @@ class HTTPStatus(IntEnum):
         * RFC 7238: Permanent Redirect
         * RFC 2295: Transparent Content Negotiation in HTTP
         * RFC 2774: An HTTP Extension Framework
+        * RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
     """
     def __new__(cls, value, phrase, description=''):
         obj = int.__new__(cls, value)
@@ -98,6 +99,8 @@ class HTTPStatus(IntEnum):
         'Cannot satisfy request range')
     EXPECTATION_FAILED = (417, 'Expectation Failed',
         'Expect condition could not be satisfied')
+    MISDIRECTED_REQUEST = (421, 'Misdirected Request',
+        'Server is not able to produce a response')
     UNPROCESSABLE_ENTITY = 422, 'Unprocessable Entity'
     LOCKED = 423, 'Locked'
     FAILED_DEPENDENCY = 424, 'Failed Dependency'
index bec994ed293de753e92cf1d6da6799fedceddfee..5591f1d9e3d4fe332490488e3cf2108b2eeb5656 100644 (file)
@@ -1354,6 +1354,7 @@ class OfflineTest(TestCase):
             'UNSUPPORTED_MEDIA_TYPE',
             'REQUESTED_RANGE_NOT_SATISFIABLE',
             'EXPECTATION_FAILED',
+            'MISDIRECTED_REQUEST',
             'UNPROCESSABLE_ENTITY',
             'LOCKED',
             'FAILED_DEPENDENCY',
diff --git a/Misc/NEWS.d/next/Library/2017-07-05-14-48-26.bpo-30553.Oupsxo.rst b/Misc/NEWS.d/next/Library/2017-07-05-14-48-26.bpo-30553.Oupsxo.rst
new file mode 100644 (file)
index 0000000..51f0d5b
--- /dev/null
@@ -0,0 +1,2 @@
+Add HTTP/2 status code 421 (Misdirected Request) to
+:class:`http.HTTPStatus`. Patch by Vitor Pereira.