Skip to content

Commit

Permalink
bpo-39507: Add HTTP status 418 "I'm a Teapot" (GH-18291)
Browse files Browse the repository at this point in the history
  • Loading branch information
rrhodes authored Mar 15, 2020
1 parent 9023581 commit 61ac612
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 3 deletions.
3 changes: 2 additions & 1 deletion Doc/library/http.rst
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ Code Enum Name Details
``415`` ``UNSUPPORTED_MEDIA_TYPE`` HTTP/1.1 :rfc:`7231`, Section 6.5.13
``416`` ``REQUESTED_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
``418`` ``IM_A_TEAPOT`` HTCPCP/1.0 :rfc:`2324`, Section 2.3.2
``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
Expand Down Expand Up @@ -134,4 +135,4 @@ equal to the constant name (i.e. ``http.HTTPStatus.OK`` is also available as
Added ``451 UNAVAILABLE_FOR_LEGAL_REASONS`` status code.

.. versionadded:: 3.9
Added ``103 EARLY_HINTS`` and ``425 TOO_EARLY`` status codes.
Added ``103 EARLY_HINTS``, ``418 IM_A_TEAPOT`` and ``425 TOO_EARLY`` status codes.
4 changes: 2 additions & 2 deletions Doc/whatsnew/3.9.rst
Original file line number Diff line number Diff line change
Expand Up @@ -235,8 +235,8 @@ finalized by the garbage collector. (Contributed by Pablo Galindo in
http
----

HTTP status codes ``103 EARLY_HINTS`` and ``425 TOO_EARLY`` are added to
:class:`http.HTTPStatus`. (Contributed by Dong-hee Na in :issue:`39509`.)
HTTP status codes ``103 EARLY_HINTS``, ``418 IM_A_TEAPOT`` and ``425 TOO_EARLY`` are added to
:class:`http.HTTPStatus`. (Contributed by Dong-hee Na in :issue:`39509` and Ross Rhodes in :issue:`39507`.)

imaplib
-------
Expand Down
3 changes: 3 additions & 0 deletions Lib/http/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ class HTTPStatus(IntEnum):
* RFC 2774: An HTTP Extension Framework
* RFC 7725: An HTTP Status Code to Report Legal Obstacles
* RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
* RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
* RFC 8297: An HTTP Status Code for Indicating Hints
* RFC 8470: Using Early Data in HTTP
"""
Expand Down Expand Up @@ -103,6 +104,8 @@ def __new__(cls, value, phrase, description=''):
'Cannot satisfy request range')
EXPECTATION_FAILED = (417, 'Expectation Failed',
'Expect condition could not be satisfied')
IM_A_TEAPOT = (418, 'I\'m a Teapot',
'Server refuses to brew coffee because it is a teapot.')
MISDIRECTED_REQUEST = (421, 'Misdirected Request',
'Server is not able to produce a response')
UNPROCESSABLE_ENTITY = 422, 'Unprocessable Entity'
Expand Down
1 change: 1 addition & 0 deletions Lib/test/test_httplib.py
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,7 @@ def test_client_constants(self):
'UNSUPPORTED_MEDIA_TYPE',
'REQUESTED_RANGE_NOT_SATISFIABLE',
'EXPECTATION_FAILED',
'IM_A_TEAPOT',
'MISDIRECTED_REQUEST',
'UNPROCESSABLE_ENTITY',
'LOCKED',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Adding HTTP status 418 "I'm a Teapot" to HTTPStatus in http library. Patch by Ross Rhodes.

1 comment on commit 61ac612

@Anonymous941
Copy link

@Anonymous941 Anonymous941 commented on 61ac612 Nov 13, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Evidence that save418.com has actually saved 418.

Please sign in to comment.