Fix various stubtest complaints on Python 3.12 (#10691)

This commit is contained in:
Alex Waygood
2023-09-10 22:54:43 +01:00
committed by GitHub
parent 6dda2fe9c8
commit a570fb6ced
5 changed files with 31 additions and 15 deletions

View File

@@ -169,6 +169,9 @@ class HTTPConnection:
) -> None: ...
def getresponse(self) -> HTTPResponse: ...
def set_debuglevel(self, level: int) -> None: ...
if sys.version_info >= (3, 12):
def get_proxy_response_headers(self) -> HTTPMessage | None: ...
def set_tunnel(self, host: str, port: int | None = None, headers: Mapping[str, str] | None = None) -> None: ...
def connect(self) -> None: ...
def close(self) -> None: ...

View File

@@ -108,9 +108,14 @@ class IMAP4:
def print_log(self) -> None: ...
class IMAP4_SSL(IMAP4):
keyfile: str
certfile: str
if sys.version_info >= (3, 9):
if sys.version_info < (3, 12):
keyfile: str
certfile: str
if sys.version_info >= (3, 12):
def __init__(
self, host: str = "", port: int = 993, *, ssl_context: SSLContext | None = None, timeout: float | None = None
) -> None: ...
elif sys.version_info >= (3, 9):
def __init__(
self,
host: str = "",

View File

@@ -129,6 +129,9 @@ __all__ = [
"Terminator",
]
if sys.version_info >= (3, 12):
__all__ += ["teleport"]
# Note: '_Color' is the alias we use for arguments and _AnyColor is the
# alias we use for return types. Really, these two aliases should be the
# same, but as per the "no union returns" typeshed policy, we'll return
@@ -648,6 +651,9 @@ def shape(name: None = None) -> str: ...
@overload
def shape(name: str) -> None: ...
if sys.version_info >= (3, 12):
def teleport(x: float | None = None, y: float | None = None, *, fill_gap: bool = False) -> None: ...
# Unsafely overlaps when no arguments are provided
@overload
def shapesize() -> tuple[float, float, float]: ... # type: ignore[misc]

View File

@@ -235,7 +235,11 @@ class _HTTPConnectionProtocol(Protocol):
) -> HTTPConnection: ...
class AbstractHTTPHandler(BaseHandler): # undocumented
def __init__(self, debuglevel: int = 0) -> None: ...
if sys.version_info >= (3, 12):
def __init__(self, debuglevel: int | None = None) -> None: ...
else:
def __init__(self, debuglevel: int = 0) -> None: ...
def set_http_debuglevel(self, level: int) -> None: ...
def do_request_(self, request: Request) -> Request: ...
def do_open(self, http_class: _HTTPConnectionProtocol, req: Request, **http_conn_args: Any) -> HTTPResponse: ...
@@ -245,9 +249,15 @@ class HTTPHandler(AbstractHTTPHandler):
def http_request(self, request: Request) -> Request: ... # undocumented
class HTTPSHandler(AbstractHTTPHandler):
def __init__(
self, debuglevel: int = 0, context: ssl.SSLContext | None = None, check_hostname: bool | None = None
) -> None: ...
if sys.version_info >= (3, 12):
def __init__(
self, debuglevel: int | None = None, context: ssl.SSLContext | None = None, check_hostname: bool | None = None
) -> None: ...
else:
def __init__(
self, debuglevel: int = 0, context: ssl.SSLContext | None = None, check_hostname: bool | None = None
) -> None: ...
def https_open(self, req: Request) -> HTTPResponse: ...
def https_request(self, request: Request) -> Request: ... # undocumented

View File

@@ -3,14 +3,6 @@ enum.Enum.__signature__
enum.EnumMeta.__call__
enum.EnumType.__call__
enum.property.member
http.client.HTTPConnection.get_proxy_response_headers
imaplib.IMAP4_SSL.__init__
urllib.request.AbstractHTTPHandler.__init__
urllib.request.HTTPSHandler.__init__
# TODO: remove after rc2 release
turtle.__all__
turtle.teleport
# Errors that also existed on Python 3.11
_collections_abc.AsyncIterable.__class_getitem__