https://github.com/python/cpython/commit/71de839ec987bb67b98fcfecfc687281841a713c
commit: 71de839ec987bb67b98fcfecfc687281841a713c
branch: main
author: donBarbos <[email protected]>
committer: asvetlov <[email protected]>
date: 2024-12-27T15:12:25+01:00
summary:

gh-127089: Add missing description for codes in `http.HTTPStatus` (#127100)

Co-authored-by: Ethan Furman <[email protected]>
Co-authored-by: Andrew Svetlov <[email protected]>

files:
M Lib/http/__init__.py
M Lib/test/test_httplib.py

diff --git a/Lib/http/__init__.py b/Lib/http/__init__.py
index d64741ec0dd29a..9f278289420713 100644
--- a/Lib/http/__init__.py
+++ b/Lib/http/__init__.py
@@ -54,8 +54,9 @@ def is_server_error(self):
     CONTINUE = 100, 'Continue', 'Request received, please continue'
     SWITCHING_PROTOCOLS = (101, 'Switching Protocols',
             'Switching to new protocol; obey Upgrade header')
-    PROCESSING = 102, 'Processing'
-    EARLY_HINTS = 103, 'Early Hints'
+    PROCESSING = 102, 'Processing', 'Server is processing the request'
+    EARLY_HINTS = (103, 'Early Hints',
+            'Headers sent to prepare for the response')
 
     # success
     OK = 200, 'OK', 'Request fulfilled, document follows'
@@ -67,9 +68,11 @@ def is_server_error(self):
     NO_CONTENT = 204, 'No Content', 'Request fulfilled, nothing follows'
     RESET_CONTENT = 205, 'Reset Content', 'Clear input form for further input'
     PARTIAL_CONTENT = 206, 'Partial Content', 'Partial content follows'
-    MULTI_STATUS = 207, 'Multi-Status'
-    ALREADY_REPORTED = 208, 'Already Reported'
-    IM_USED = 226, 'IM Used'
+    MULTI_STATUS = (207, 'Multi-Status',
+        'Response contains multiple statuses in the body')
+    ALREADY_REPORTED = (208, 'Already Reported',
+        'Operation has already been reported')
+    IM_USED = 226, 'IM Used', 'Request completed using instance manipulations'
 
     # redirection
     MULTIPLE_CHOICES = (300, 'Multiple Choices',
@@ -128,15 +131,19 @@ def is_server_error(self):
     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.')
+        'Server refuses to brew coffee because it is a teapot')
     MISDIRECTED_REQUEST = (421, 'Misdirected Request',
         'Server is not able to produce a response')
-    UNPROCESSABLE_CONTENT = 422, 'Unprocessable Content'
+    UNPROCESSABLE_CONTENT = (422, 'Unprocessable Content',
+        'Server is not able to process the contained instructions')
     UNPROCESSABLE_ENTITY = UNPROCESSABLE_CONTENT
-    LOCKED = 423, 'Locked'
-    FAILED_DEPENDENCY = 424, 'Failed Dependency'
-    TOO_EARLY = 425, 'Too Early'
-    UPGRADE_REQUIRED = 426, 'Upgrade Required'
+    LOCKED = 423, 'Locked', 'Resource of a method is locked'
+    FAILED_DEPENDENCY = (424, 'Failed Dependency',
+        'Dependent action of the request failed')
+    TOO_EARLY = (425, 'Too Early',
+        'Server refuses to process a request that might be replayed')
+    UPGRADE_REQUIRED = (426, 'Upgrade Required',
+        'Server refuses to perform the request using the current protocol')
     PRECONDITION_REQUIRED = (428, 'Precondition Required',
         'The origin server requires the request to be conditional')
     TOO_MANY_REQUESTS = (429, 'Too Many Requests',
@@ -164,10 +171,14 @@ def is_server_error(self):
         'The gateway server did not receive a timely response')
     HTTP_VERSION_NOT_SUPPORTED = (505, 'HTTP Version Not Supported',
         'Cannot fulfill request')
-    VARIANT_ALSO_NEGOTIATES = 506, 'Variant Also Negotiates'
-    INSUFFICIENT_STORAGE = 507, 'Insufficient Storage'
-    LOOP_DETECTED = 508, 'Loop Detected'
-    NOT_EXTENDED = 510, 'Not Extended'
+    VARIANT_ALSO_NEGOTIATES = (506, 'Variant Also Negotiates',
+        'Server has an internal configuration error')
+    INSUFFICIENT_STORAGE = (507, 'Insufficient Storage',
+        'Server is not able to store the representation')
+    LOOP_DETECTED = (508, 'Loop Detected',
+        'Server encountered an infinite loop while processing a request')
+    NOT_EXTENDED = (510, 'Not Extended',
+        'Request does not meet the resource access policy')
     NETWORK_AUTHENTICATION_REQUIRED = (511,
         'Network Authentication Required',
         'The client needs to authenticate to gain network access')
diff --git a/Lib/test/test_httplib.py b/Lib/test/test_httplib.py
index 89963dadeb152b..7a7ec555a2dbbb 100644
--- a/Lib/test/test_httplib.py
+++ b/Lib/test/test_httplib.py
@@ -594,8 +594,9 @@ def is_server_error(self):
             CONTINUE = 100, 'Continue', 'Request received, please continue'
             SWITCHING_PROTOCOLS = (101, 'Switching Protocols',
                     'Switching to new protocol; obey Upgrade header')
-            PROCESSING = 102, 'Processing'
-            EARLY_HINTS = 103, 'Early Hints'
+            PROCESSING = 102, 'Processing', 'Server is processing the request'
+            EARLY_HINTS = (103, 'Early Hints',
+                'Headers sent to prepare for the response')
             # success
             OK = 200, 'OK', 'Request fulfilled, document follows'
             CREATED = 201, 'Created', 'Document created, URL follows'
@@ -606,9 +607,11 @@ def is_server_error(self):
             NO_CONTENT = 204, 'No Content', 'Request fulfilled, nothing 
follows'
             RESET_CONTENT = 205, 'Reset Content', 'Clear input form for 
further input'
             PARTIAL_CONTENT = 206, 'Partial Content', 'Partial content follows'
-            MULTI_STATUS = 207, 'Multi-Status'
-            ALREADY_REPORTED = 208, 'Already Reported'
-            IM_USED = 226, 'IM Used'
+            MULTI_STATUS = (207, 'Multi-Status',
+                'Response contains multiple statuses in the body')
+            ALREADY_REPORTED = (208, 'Already Reported',
+                'Operation has already been reported')
+            IM_USED = 226, 'IM Used', 'Request completed using instance 
manipulations'
             # redirection
             MULTIPLE_CHOICES = (300, 'Multiple Choices',
                 'Object has several resources -- see URI list')
@@ -665,15 +668,19 @@ def is_server_error(self):
             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.')
+                'Server refuses to brew coffee because it is a teapot')
             MISDIRECTED_REQUEST = (421, 'Misdirected Request',
                 'Server is not able to produce a response')
-            UNPROCESSABLE_CONTENT = 422, 'Unprocessable Content'
+            UNPROCESSABLE_CONTENT = (422, 'Unprocessable Content',
+                'Server is not able to process the contained instructions')
             UNPROCESSABLE_ENTITY = UNPROCESSABLE_CONTENT
-            LOCKED = 423, 'Locked'
-            FAILED_DEPENDENCY = 424, 'Failed Dependency'
-            TOO_EARLY = 425, 'Too Early'
-            UPGRADE_REQUIRED = 426, 'Upgrade Required'
+            LOCKED = 423, 'Locked', 'Resource of a method is locked'
+            FAILED_DEPENDENCY = (424, 'Failed Dependency',
+                'Dependent action of the request failed')
+            TOO_EARLY = (425, 'Too Early',
+                'Server refuses to process a request that might be replayed')
+            UPGRADE_REQUIRED = (426, 'Upgrade Required',
+                'Server refuses to perform the request using the current 
protocol')
             PRECONDITION_REQUIRED = (428, 'Precondition Required',
                 'The origin server requires the request to be conditional')
             TOO_MANY_REQUESTS = (429, 'Too Many Requests',
@@ -700,10 +707,14 @@ def is_server_error(self):
                 'The gateway server did not receive a timely response')
             HTTP_VERSION_NOT_SUPPORTED = (505, 'HTTP Version Not Supported',
                 'Cannot fulfill request')
-            VARIANT_ALSO_NEGOTIATES = 506, 'Variant Also Negotiates'
-            INSUFFICIENT_STORAGE = 507, 'Insufficient Storage'
-            LOOP_DETECTED = 508, 'Loop Detected'
-            NOT_EXTENDED = 510, 'Not Extended'
+            VARIANT_ALSO_NEGOTIATES = (506, 'Variant Also Negotiates',
+                'Server has an internal configuration error')
+            INSUFFICIENT_STORAGE = (507, 'Insufficient Storage',
+                'Server is not able to store the representation')
+            LOOP_DETECTED = (508, 'Loop Detected',
+                'Server encountered an infinite loop while processing a 
request')
+            NOT_EXTENDED = (510, 'Not Extended',
+                'Request does not meet the resource access policy')
             NETWORK_AUTHENTICATION_REQUIRED = (511,
                 'Network Authentication Required',
                 'The client needs to authenticate to gain network access')

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]

Reply via email to