Skip to content

Commit c579f91

Browse files
authored
Improve werkzeug exceptions slightly (#3178)
* Use Text for HTTPException.description * Add Unauthorized.www_authenticate * Remove wrong get_headers() overrides
1 parent 3f6cec9 commit c579f91

File tree

1 file changed

+38
-33
lines changed

1 file changed

+38
-33
lines changed

third_party/2and3/werkzeug/exceptions.pyi

Lines changed: 38 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ class _EnvironContainer(Protocol):
99

1010
class HTTPException(Exception):
1111
code: Optional[int]
12-
description: Optional[str]
12+
description: Optional[Text]
1313
response: Optional[Response]
14-
def __init__(self, description: Optional[str] = ..., response: Optional[Response] = ...) -> None: ...
14+
def __init__(self, description: Optional[Text] = ..., response: Optional[Response] = ...) -> None: ...
1515
@classmethod
1616
def wrap(cls, exception: Type[Exception], name: Optional[str] = ...) -> Any: ...
1717
@property
@@ -26,130 +26,135 @@ default_exceptions: Dict[int, Type[HTTPException]]
2626

2727
class BadRequest(HTTPException):
2828
code: int
29-
description: str
29+
description: Text
3030

3131
class ClientDisconnected(BadRequest): ...
3232
class SecurityError(BadRequest): ...
3333
class BadHost(BadRequest): ...
3434

3535
class Unauthorized(HTTPException):
3636
code: int
37-
description: str
37+
description: Text
38+
www_authenticate: Optional[Iterable[object]]
39+
def __init__(
40+
self,
41+
description: Optional[Text] = ...,
42+
response: Optional[Response] = ...,
43+
www_authenticate: Union[None, Tuple[object, ...], List[object], object] = ...,
44+
) -> None: ...
3845

3946
class Forbidden(HTTPException):
4047
code: int
41-
description: str
48+
description: Text
4249

4350
class NotFound(HTTPException):
4451
code: int
45-
description: str
52+
description: Text
4653

4754
class MethodNotAllowed(HTTPException):
4855
code: int
49-
description: str
56+
description: Text
5057
valid_methods: Any
5158
def __init__(self, valid_methods: Optional[Any] = ..., description: Optional[Any] = ...): ...
52-
def get_headers(self, environ): ...
5359

5460
class NotAcceptable(HTTPException):
5561
code: int
56-
description: str
62+
description: Text
5763

5864
class RequestTimeout(HTTPException):
5965
code: int
60-
description: str
66+
description: Text
6167

6268
class Conflict(HTTPException):
6369
code: int
64-
description: str
70+
description: Text
6571

6672
class Gone(HTTPException):
6773
code: int
68-
description: str
74+
description: Text
6975

7076
class LengthRequired(HTTPException):
7177
code: int
72-
description: str
78+
description: Text
7379

7480
class PreconditionFailed(HTTPException):
7581
code: int
76-
description: str
82+
description: Text
7783

7884
class RequestEntityTooLarge(HTTPException):
7985
code: int
80-
description: str
86+
description: Text
8187

8288
class RequestURITooLarge(HTTPException):
8389
code: int
84-
description: str
90+
description: Text
8591

8692
class UnsupportedMediaType(HTTPException):
8793
code: int
88-
description: str
94+
description: Text
8995

9096
class RequestedRangeNotSatisfiable(HTTPException):
9197
code: int
92-
description: str
98+
description: Text
9399
length: Any
94100
units: str
95101
def __init__(self, length: Optional[Any] = ..., units: str = ..., description: Optional[Any] = ...): ...
96-
def get_headers(self, environ): ...
97102

98103
class ExpectationFailed(HTTPException):
99104
code: int
100-
description: str
105+
description: Text
101106

102107
class ImATeapot(HTTPException):
103108
code: int
104-
description: str
109+
description: Text
105110

106111
class UnprocessableEntity(HTTPException):
107112
code: int
108-
description: str
113+
description: Text
109114

110115
class Locked(HTTPException):
111116
code: int
112-
description: str
117+
description: Text
113118

114119
class PreconditionRequired(HTTPException):
115120
code: int
116-
description: str
121+
description: Text
117122

118123
class TooManyRequests(HTTPException):
119124
code: int
120-
description: str
125+
description: Text
121126

122127
class RequestHeaderFieldsTooLarge(HTTPException):
123128
code: int
124-
description: str
129+
description: Text
125130

126131
class UnavailableForLegalReasons(HTTPException):
127132
code: int
128-
description: str
133+
description: Text
129134

130135
class InternalServerError(HTTPException):
131136
code: int
132-
description: str
137+
description: Text
133138

134139
class NotImplemented(HTTPException):
135140
code: int
136-
description: str
141+
description: Text
137142

138143
class BadGateway(HTTPException):
139144
code: int
140-
description: str
145+
description: Text
141146

142147
class ServiceUnavailable(HTTPException):
143148
code: int
144-
description: str
149+
description: Text
145150

146151
class GatewayTimeout(HTTPException):
147152
code: int
148-
description: str
153+
description: Text
149154

150155
class HTTPVersionNotSupported(HTTPException):
151156
code: int
152-
description: str
157+
description: Text
153158

154159
class Aborter:
155160
mapping: Any

0 commit comments

Comments
 (0)