Fix several new-in-3.11 stubtest errors (#7973)

This commit is contained in:
Alex Waygood
2022-06-03 02:07:38 +01:00
committed by GitHub
parent cb9023988d
commit acc0167dc1
12 changed files with 195 additions and 85 deletions

View File

@@ -409,16 +409,28 @@ class _StoreAction(Action): ...
# undocumented
class _StoreConstAction(Action):
def __init__(
self,
option_strings: Sequence[str],
dest: str,
const: Any,
default: Any = ...,
required: bool = ...,
help: str | None = ...,
metavar: str | tuple[str, ...] | None = ...,
) -> None: ...
if sys.version_info >= (3, 11):
def __init__(
self,
option_strings: Sequence[str],
dest: str,
const: Any | None = ...,
default: Any = ...,
required: bool = ...,
help: str | None = ...,
metavar: str | tuple[str, ...] | None = ...,
) -> None: ...
else:
def __init__(
self,
option_strings: Sequence[str],
dest: str,
const: Any,
default: Any = ...,
required: bool = ...,
help: str | None = ...,
metavar: str | tuple[str, ...] | None = ...,
) -> None: ...
# undocumented
class _StoreTrueAction(_StoreConstAction):
@@ -437,16 +449,28 @@ class _AppendAction(Action): ...
# undocumented
class _AppendConstAction(Action):
def __init__(
self,
option_strings: Sequence[str],
dest: str,
const: Any,
default: Any = ...,
required: bool = ...,
help: str | None = ...,
metavar: str | tuple[str, ...] | None = ...,
) -> None: ...
if sys.version_info >= (3, 11):
def __init__(
self,
option_strings: Sequence[str],
dest: str,
const: Any | None = ...,
default: Any = ...,
required: bool = ...,
help: str | None = ...,
metavar: str | tuple[str, ...] | None = ...,
) -> None: ...
else:
def __init__(
self,
option_strings: Sequence[str],
dest: str,
const: Any,
default: Any = ...,
required: bool = ...,
help: str | None = ...,
metavar: str | tuple[str, ...] | None = ...,
) -> None: ...
# undocumented
class _CountAction(Action):

View File

@@ -1,9 +1,10 @@
import sys
from _typeshed import Self
from collections.abc import Callable
from decimal import Decimal
from numbers import Integral, Rational, Real
from typing import Any, overload
from typing_extensions import Literal, TypeAlias
from typing_extensions import Literal, SupportsIndex, TypeAlias
_ComparableNum: TypeAlias = int | float | Decimal | Real
@@ -141,7 +142,7 @@ class Fraction(Rational):
def __copy__(self: Self) -> Self: ...
def __deepcopy__(self: Self, memo: Any) -> Self: ...
if sys.version_info >= (3, 11):
def __int__(self) -> int: ...
def __int__(self, _index: Callable[[SupportsIndex], int] = ...) -> int: ...
# Not actually defined within fractions.py, but provides more useful
# overrides
@property

View File

@@ -40,7 +40,11 @@ else:
__all__ = ["Package", "Resource", "contents", "is_resource", "open_binary", "open_text", "path", "read_binary", "read_text"]
Package: TypeAlias = str | ModuleType
Resource: TypeAlias = str | os.PathLike[Any]
if sys.version_info >= (3, 11):
Resource: TypeAlias = str
else:
Resource: TypeAlias = str | os.PathLike[Any]
def open_binary(package: Package, resource: Resource) -> BinaryIO: ...
def open_text(package: Package, resource: Resource, encoding: str = ..., errors: str = ...) -> TextIO: ...

View File

@@ -12,50 +12,97 @@ from typing_extensions import Literal, TypeAlias
if sys.version_info >= (3, 11):
from types import GenericAlias
__all__ = [
"BASIC_FORMAT",
"BufferingFormatter",
"CRITICAL",
"DEBUG",
"ERROR",
"FATAL",
"FileHandler",
"Filter",
"Formatter",
"Handler",
"INFO",
"LogRecord",
"Logger",
"LoggerAdapter",
"NOTSET",
"NullHandler",
"StreamHandler",
"WARN",
"WARNING",
"addLevelName",
"basicConfig",
"captureWarnings",
"critical",
"debug",
"disable",
"error",
"exception",
"fatal",
"getLevelName",
"getLogger",
"getLoggerClass",
"info",
"log",
"makeLogRecord",
"setLoggerClass",
"shutdown",
"warn",
"warning",
"getLogRecordFactory",
"setLogRecordFactory",
"lastResort",
"raiseExceptions",
]
if sys.version_info >= (3, 11):
__all__ = [
"BASIC_FORMAT",
"BufferingFormatter",
"CRITICAL",
"DEBUG",
"ERROR",
"FATAL",
"FileHandler",
"Filter",
"Formatter",
"Handler",
"INFO",
"LogRecord",
"Logger",
"LoggerAdapter",
"NOTSET",
"NullHandler",
"StreamHandler",
"WARN",
"WARNING",
"addLevelName",
"basicConfig",
"captureWarnings",
"critical",
"debug",
"disable",
"error",
"exception",
"fatal",
"getLevelName",
"getLogger",
"getLoggerClass",
"info",
"log",
"makeLogRecord",
"setLoggerClass",
"shutdown",
"warn",
"warning",
"getLogRecordFactory",
"setLogRecordFactory",
"lastResort",
"raiseExceptions",
"getLevelNamesMapping",
]
else:
__all__ = [
"BASIC_FORMAT",
"BufferingFormatter",
"CRITICAL",
"DEBUG",
"ERROR",
"FATAL",
"FileHandler",
"Filter",
"Formatter",
"Handler",
"INFO",
"LogRecord",
"Logger",
"LoggerAdapter",
"NOTSET",
"NullHandler",
"StreamHandler",
"WARN",
"WARNING",
"addLevelName",
"basicConfig",
"captureWarnings",
"critical",
"debug",
"disable",
"error",
"exception",
"fatal",
"getLevelName",
"getLogger",
"getLoggerClass",
"info",
"log",
"makeLogRecord",
"setLoggerClass",
"shutdown",
"warn",
"warning",
"getLogRecordFactory",
"setLogRecordFactory",
"lastResort",
"raiseExceptions",
]
_SysExcInfoType: TypeAlias = Union[tuple[type[BaseException], BaseException, TracebackType | None], tuple[None, None, None]]
_ExcInfoType: TypeAlias = None | bool | _SysExcInfoType | BaseException
@@ -711,6 +758,10 @@ else:
def addLevelName(level: int, levelName: str) -> None: ...
def getLevelName(level: _Level) -> Any: ...
if sys.version_info >= (3, 11):
def getLevelNamesMapping() -> dict[str, int]: ...
def makeLogRecord(dict: Mapping[str, object]) -> LogRecord: ...
if sys.version_info >= (3, 9):

View File

@@ -181,6 +181,9 @@ class SysLogHandler(Handler):
facility_names: ClassVar[dict[str, int]] # undocumented
priority_map: ClassVar[dict[str, str]] # undocumented
def __init__(self, address: tuple[str, int] | str = ..., facility: int = ..., socktype: SocketKind | None = ...) -> None: ...
if sys.version_info >= (3, 11):
def createSocket(self) -> None: ...
def encodePriority(self, facility: int | str, priority: int | str) -> int: ...
def mapPriority(self, levelName: str) -> str: ...

View File

@@ -91,6 +91,8 @@ class TCPServer(BaseServer):
def get_request(self) -> tuple[_socket, Any]: ...
class UDPServer(BaseServer):
if sys.version_info >= (3, 11):
allow_reuse_port: bool
max_packet_size: ClassVar[int]
def get_request(self) -> tuple[tuple[bytes, _socket], Any]: ...

View File

@@ -45,6 +45,9 @@ class Template:
def __init__(self, template: str) -> None: ...
def substitute(self, __mapping: Mapping[str, object] = ..., **kwds: object) -> str: ...
def safe_substitute(self, __mapping: Mapping[str, object] = ..., **kwds: object) -> str: ...
if sys.version_info >= (3, 11):
def get_identifiers(self) -> list[str]: ...
def is_valid(self) -> bool: ...
# TODO(MichalPokorny): This is probably badly and/or loosely typed.
class Formatter:

View File

@@ -221,6 +221,9 @@ def __displayhook__(__value: object) -> None: ...
def __excepthook__(__exctype: type[BaseException], __value: BaseException, __traceback: TracebackType | None) -> None: ...
def exc_info() -> OptExcInfo: ...
if sys.version_info >= (3, 11):
def exception() -> BaseException | None: ...
# sys.exit() accepts an optional argument of anything printable
def exit(__status: object = ...) -> NoReturn: ...
def getallocatedblocks() -> int: ...

View File

@@ -32,6 +32,38 @@ if sys.version_info >= (3, 8):
from .case import addModuleCleanup as addModuleCleanup
if sys.version_info >= (3, 11):
from .case import doModuleCleanups as doModuleCleanups
if sys.version_info >= (3, 11):
__all__ = [
"TestResult",
"TestCase",
"IsolatedAsyncioTestCase",
"TestSuite",
"TextTestRunner",
"TestLoader",
"FunctionTestCase",
"main",
"defaultTestLoader",
"SkipTest",
"skip",
"skipIf",
"skipUnless",
"expectedFailure",
"TextTestResult",
"installHandler",
"registerResult",
"removeResult",
"removeHandler",
"addModuleCleanup",
"doModuleCleanups",
"getTestCaseNames",
"makeSuite",
"findTestCases",
]
elif sys.version_info >= (3, 8):
__all__ = [
"TestResult",
"TestCase",

View File

@@ -79,7 +79,9 @@ class TestCase:
def skipTest(self, reason: Any) -> None: ...
def subTest(self, msg: Any = ..., **params: Any) -> AbstractContextManager[None]: ...
def debug(self) -> None: ...
def _addSkip(self, result: unittest.result.TestResult, test_case: TestCase, reason: str) -> None: ...
if sys.version_info < (3, 11):
def _addSkip(self, result: unittest.result.TestResult, test_case: TestCase, reason: str) -> None: ...
def assertEqual(self, first: Any, second: Any, msg: Any = ...) -> None: ...
def assertNotEqual(self, first: Any, second: Any, msg: Any = ...) -> None: ...
def assertTrue(self, expr: Any, msg: Any = ...) -> None: ...

View File

@@ -4,7 +4,7 @@ import socketserver
import sys
from collections.abc import Callable, Iterable, Mapping
from datetime import datetime
from typing import Any, Pattern, Protocol
from typing import Any, ClassVar, Pattern, Protocol
from typing_extensions import TypeAlias
from xmlrpc.client import Fault
@@ -68,8 +68,7 @@ class SimpleXMLRPCDispatcher: # undocumented
def _dispatch(self, method: str, params: Iterable[_Marshallable]) -> _Marshallable: ... # undocumented
class SimpleXMLRPCRequestHandler(http.server.BaseHTTPRequestHandler):
rpc_paths: tuple[str, str]
rpc_paths: ClassVar[tuple[str, ...]]
encode_threshold: int # undocumented
aepattern: Pattern[str] # undocumented
def accept_encodings(self) -> dict[str, float]: ...