from __future__ import annotations
-import warnings
-
-__all__ = (
- "HTTP_100_CONTINUE",
- "HTTP_101_SWITCHING_PROTOCOLS",
- "HTTP_102_PROCESSING",
- "HTTP_103_EARLY_HINTS",
- "HTTP_200_OK",
- "HTTP_201_CREATED",
- "HTTP_202_ACCEPTED",
- "HTTP_203_NON_AUTHORITATIVE_INFORMATION",
- "HTTP_204_NO_CONTENT",
- "HTTP_205_RESET_CONTENT",
- "HTTP_206_PARTIAL_CONTENT",
- "HTTP_207_MULTI_STATUS",
- "HTTP_208_ALREADY_REPORTED",
- "HTTP_226_IM_USED",
- "HTTP_300_MULTIPLE_CHOICES",
- "HTTP_301_MOVED_PERMANENTLY",
- "HTTP_302_FOUND",
- "HTTP_303_SEE_OTHER",
- "HTTP_304_NOT_MODIFIED",
- "HTTP_305_USE_PROXY",
- "HTTP_306_RESERVED",
- "HTTP_307_TEMPORARY_REDIRECT",
- "HTTP_308_PERMANENT_REDIRECT",
- "HTTP_400_BAD_REQUEST",
- "HTTP_401_UNAUTHORIZED",
- "HTTP_402_PAYMENT_REQUIRED",
- "HTTP_403_FORBIDDEN",
- "HTTP_404_NOT_FOUND",
- "HTTP_405_METHOD_NOT_ALLOWED",
- "HTTP_406_NOT_ACCEPTABLE",
- "HTTP_407_PROXY_AUTHENTICATION_REQUIRED",
- "HTTP_408_REQUEST_TIMEOUT",
- "HTTP_409_CONFLICT",
- "HTTP_410_GONE",
- "HTTP_411_LENGTH_REQUIRED",
- "HTTP_412_PRECONDITION_FAILED",
- "HTTP_413_REQUEST_ENTITY_TOO_LARGE",
- "HTTP_414_REQUEST_URI_TOO_LONG",
- "HTTP_415_UNSUPPORTED_MEDIA_TYPE",
- "HTTP_416_REQUESTED_RANGE_NOT_SATISFIABLE",
- "HTTP_417_EXPECTATION_FAILED",
- "HTTP_418_IM_A_TEAPOT",
- "HTTP_421_MISDIRECTED_REQUEST",
- "HTTP_422_UNPROCESSABLE_ENTITY",
- "HTTP_423_LOCKED",
- "HTTP_424_FAILED_DEPENDENCY",
- "HTTP_425_TOO_EARLY",
- "HTTP_426_UPGRADE_REQUIRED",
- "HTTP_428_PRECONDITION_REQUIRED",
- "HTTP_429_TOO_MANY_REQUESTS",
- "HTTP_431_REQUEST_HEADER_FIELDS_TOO_LARGE",
- "HTTP_451_UNAVAILABLE_FOR_LEGAL_REASONS",
- "HTTP_500_INTERNAL_SERVER_ERROR",
- "HTTP_501_NOT_IMPLEMENTED",
- "HTTP_502_BAD_GATEWAY",
- "HTTP_503_SERVICE_UNAVAILABLE",
- "HTTP_504_GATEWAY_TIMEOUT",
- "HTTP_505_HTTP_VERSION_NOT_SUPPORTED",
- "HTTP_506_VARIANT_ALSO_NEGOTIATES",
- "HTTP_507_INSUFFICIENT_STORAGE",
- "HTTP_508_LOOP_DETECTED",
- "HTTP_510_NOT_EXTENDED",
- "HTTP_511_NETWORK_AUTHENTICATION_REQUIRED",
- "WS_1000_NORMAL_CLOSURE",
- "WS_1001_GOING_AWAY",
- "WS_1002_PROTOCOL_ERROR",
- "WS_1003_UNSUPPORTED_DATA",
- "WS_1005_NO_STATUS_RCVD",
- "WS_1006_ABNORMAL_CLOSURE",
- "WS_1007_INVALID_FRAME_PAYLOAD_DATA",
- "WS_1008_POLICY_VIOLATION",
- "WS_1009_MESSAGE_TOO_BIG",
- "WS_1010_MANDATORY_EXT",
- "WS_1011_INTERNAL_ERROR",
- "WS_1012_SERVICE_RESTART",
- "WS_1013_TRY_AGAIN_LATER",
- "WS_1014_BAD_GATEWAY",
- "WS_1015_TLS_HANDSHAKE",
-)
-
HTTP_100_CONTINUE = 100
HTTP_101_SWITCHING_PROTOCOLS = 101
HTTP_102_PROCESSING = 102
WS_1013_TRY_AGAIN_LATER = 1013
WS_1014_BAD_GATEWAY = 1014
WS_1015_TLS_HANDSHAKE = 1015
-
-
-__deprecated__ = {"WS_1004_NO_STATUS_RCVD": 1004, "WS_1005_ABNORMAL_CLOSURE": 1005}
-
-
-def __getattr__(name: str) -> int:
- deprecation_changes = {
- "WS_1004_NO_STATUS_RCVD": "WS_1005_NO_STATUS_RCVD",
- "WS_1005_ABNORMAL_CLOSURE": "WS_1006_ABNORMAL_CLOSURE",
- }
- deprecated = __deprecated__.get(name)
- if deprecated:
- warnings.warn(
- f"'{name}' is deprecated. Use '{deprecation_changes[name]}' instead.",
- category=DeprecationWarning,
- stacklevel=3,
- )
- return deprecated
- raise AttributeError(f"module '{__name__}' has no attribute '{name}'")
-
-
-def __dir__() -> list[str]:
- return sorted(list(__all__) + list(__deprecated__.keys())) # pragma: no cover