Skip to content

Upgrading mypy 0.961 to 0.971

Unknown0.961 → 0.971

Fetching 1 release from GitHub…0 / 1
UnknownUpgrade verdict

DepDelta is still reading the notes for this range, so breaking changes can't be ruled out yet.

  • DepDelta is still reading the release notes in this range, so it can't rule out breaking changes yet.
  • This page updates as the notes come in.
Still reading release notes

DepDelta is still reading the release notes in this range. This updates as they come in.

Generated by DepDelta from published Python source. Not mixed with prose notes.

  • added: method TypeChecker.check_possible_missing_await(subtype: Type, supertype: Type, context: Context) -> None
  • added: method TypeChecker.checking_await_set() -> Iterator[None]
  • added: method TypeChecker.get_precise_awaitable_type(typ: Type, local_errors: ErrorWatcher) -> Optional[Type]
  • changed: method ExpressionChecker.check_awaitable_expr(t: Type, ctx: Context, msg: Union[str, ErrorMessage]) -> Type → method ExpressionChecker.check_awaitable_expr(t: Type, ctx: Context, msg: Union[str, ErrorMessage], ignore_binder: bool=…) -> Type
  • changed: method ExpressionChecker.visit_await_expr(e: AwaitExpr) -> Type → method ExpressionChecker.visit_await_expr(e: AwaitExpr, allow_none_return: bool=…) -> Type
  • added: function may_be_awaitable_attribute(name: str, typ: Type, mx: MemberContext, override_info: Optional[TypeInfo]=…) -> bool
  • added: function report_missing_attribute(original_type: Type, typ: Type, name: str, mx: MemberContext, override_info: Optional[TypeInfo]=…) -> Type
  • added: function find_unpack_in_tuple(t: TupleType) -> Optional[int]
  • added: class TypeShallowCopier(TypeVisitor[ProperType])
  • added: function copy_type(t: ProperType) -> ProperType
  • added: method TypeShallowCopier.copy_common(t: ProperType, t2: ProperType) -> ProperType
  • added: method TypeShallowCopier.visit_any(t: AnyType) -> ProperType
  • added: method TypeShallowCopier.visit_callable_type(t: CallableType) -> ProperType
  • added: method TypeShallowCopier.visit_deleted_type(t: DeletedType) -> ProperType
  • added: method TypeShallowCopier.visit_erased_type(t: ErasedType) -> ProperType
  • added: method TypeShallowCopier.visit_instance(t: Instance) -> ProperType
  • added: method TypeShallowCopier.visit_literal_type(t: LiteralType) -> ProperType
  • added: method TypeShallowCopier.visit_none_type(t: NoneType) -> ProperType
  • added: method TypeShallowCopier.visit_overloaded(t: Overloaded) -> ProperType
  • added: method TypeShallowCopier.visit_param_spec(t: ParamSpecType) -> ProperType
  • added: method TypeShallowCopier.visit_parameters(t: Parameters) -> ProperType
  • added: method TypeShallowCopier.visit_partial_type(t: PartialType) -> ProperType
  • added: method TypeShallowCopier.visit_tuple_type(t: TupleType) -> ProperType
  • added: method TypeShallowCopier.visit_type_alias_type(t: TypeAliasType) -> ProperType
  • added: method TypeShallowCopier.visit_type_type(t: TypeType) -> ProperType
  • added: method TypeShallowCopier.visit_type_var(t: TypeVarType) -> ProperType
  • added: method TypeShallowCopier.visit_type_var_tuple(t: TypeVarTupleType) -> ProperType
  • added: method TypeShallowCopier.visit_typeddict_type(t: TypedDictType) -> ProperType
  • added: method TypeShallowCopier.visit_unbound_type(t: UnboundType) -> ProperType
  • added: method TypeShallowCopier.visit_uninhabited_type(t: UninhabitedType) -> ProperType
  • added: method TypeShallowCopier.visit_union_type(t: UnionType) -> ProperType
  • added: method TypeShallowCopier.visit_unpack_type(t: UnpackType) -> ProperType
  • removed: function plural_s(s: Union[int, Sequence[Any]]) -> str
  • added: method MessageBuilder.possible_missing_await(context: Context) -> None
  • removed: function expand_site_packages(site_packages: List[str]) -> Tuple[List[str], List[str]]
  • removed: function get_prefixes(python_executable: Optional[str]) -> Tuple[str, str]
  • removed: function get_site_packages_dirs(python_executable: Optional[str]) -> Tuple[List[str], List[str]]
  • added: function get_search_dirs(python_executable: Optional[str]) -> List[str]
  • changed: constructor ModuleProperties(name: str, file: Optional[str], path: Optional[List[str]], all: Optional[List[str]], is_c_module: bool, subpackages: List[str]) -> None → constructor ModuleProperties(name: str=…, file: Optional[str]=…, path: Optional[List[str]]=…, all: Optional[List[str]]=…, is_c_module: bool=…, subpackages: Optional[List[str]]=…) -> None
  • changed: constructor FuncDef(name: str, arguments: List[Argument], body: Block, typ: Optional[mypy.types.FunctionLike]=…) -> None → constructor FuncDef(name: str=…, arguments: Optional[List[Argument]]=…, body: Optional[Block]=…, typ: Optional[mypy.types.FunctionLike]=…) -> None
  • changed: constructor FuncItem(arguments: List[Argument], body: Block, typ: Optional[mypy.types.FunctionLike]=…) -> None → constructor FuncItem(arguments: Optional[List[Argument]]=…, body: Optional[Block]=…, typ: Optional[mypy.types.FunctionLike]=…) -> None
  • changed: method Argument.set_line(target: Union[Context, int], column: Optional[int]=…, end_line: Optional[int]=…) -> None → method Argument.set_line(target: Union[Context, int], column: Optional[int]=…, end_line: Optional[int]=…, end_column: Optional[int]=…) -> None
  • changed: method Context.set_line(target: Union[Context, int], column: Optional[int]=…, end_line: Optional[int]=…) -> None → method Context.set_line(target: Union[Context, int], column: Optional[int]=…, end_line: Optional[int]=…, end_column: Optional[int]=…) -> None
  • changed: method FuncItem.set_line(target: Union[Context, int], column: Optional[int]=…, end_line: Optional[int]=…) -> None → method FuncItem.set_line(target: Union[Context, int], column: Optional[int]=…, end_line: Optional[int]=…, end_column: Optional[int]=…) -> None
  • added: field TypeInfo.alt_promote: Optional[TypeInfo]
  • changed: constructor Attribute(name: str, info: TypeInfo, has_default: bool, init: bool, kw_only: bool, converter: Converter, context: Context, init_type: Optional[Type]) -> None → constructor Attribute(name: str, info: TypeInfo, has_default: bool, init: bool, kw_only: bool, converter: Optional[Converter], context: Context, init_type: Optional[Type]) -> None
  • changed: constructor Converter(type: Optional[Type]=…, is_attr_converters_optional: bool=…, is_invalid_converter: bool=…) -> None → constructor Converter(init_type: Optional[Type]=…) -> None
  • removed: function getprefixes()
  • removed: function getsitepackages()
  • added: function getsearchdirs()
  • added: variable old_sys_path
  • changed: function add_type_promotion(info: TypeInfo, module_names: SymbolTable, options: Options) -> None → function add_type_promotion(info: TypeInfo, module_names: SymbolTable, options: Options, builtin_names: SymbolTable) -> None
  • changed: function parse_options(args: List[str]) -> argparse.Namespace → function parse_options(args: List[str]) -> _Arguments
  • changed: function test_stubs(args: argparse.Namespace, use_builtins_fixtures: bool=…) -> int → function test_stubs(args: _Arguments, use_builtins_fixtures: bool=…) -> int
  • added: class StubtestFailure(Exception)
  • added: function silent_import_module(module_name: str) -> types.ModuleType
  • added: function verify_paramspecexpr(stub: nodes.ParamSpecExpr, runtime: MaybeMissing[Any], object_path: List[str]) -> Iterator[Error]
  • added: class AwaitSeeker(TraverserVisitor)
  • added: constructor AwaitSeeker() -> None
  • added: function has_await_expression(expr: Expression) -> bool
  • added: method AwaitSeeker.visit_await_expr(o: AwaitExpr) -> None
  • removed: function copy_type(t: TP) -> TP
  • removed: variable TP
  • changed: method ArgumentParser.add_subparsers(*, title: str=…, description: str | None=…, prog: str=…, action: type[Action]=…, option_string: str=…, dest: str | None=…, required: bool=…, help: str | None=…, metavar: str | None=…) -> _SubParsersAction[_ArgumentParserT] | (*, title: str=…, description: str | None=…, prog: str=…, parser_class: type[_ArgumentParserT]=…, action: type[Action]=…, option_string:… → method ArgumentParser.add_subparsers(*, title: str=…, description: str | None=…, prog: str=…, action: type[Action]=…, option_string: str=…, dest: str | None=…, required: bool=…, help: str | None=…, metavar: str | None=…) -> _SubParsersAction[_ArgumentParserT] | (*, title: str=…, description: str | None=…, prog: str=…, parser_class: type[_ArgumentParserT], action: type[Action]=…, option_string: st…
  • added: class BooleanOptionalAction(Action)
  • added: constructor BooleanOptionalAction(option_strings: Sequence[str], dest: str, default: _T | str | None=…, type: Callable[[str], _T] | FileType | None=…, choices: Iterable[_T] | None=…, required: bool=…, help: str | None=…, metavar: str | tuple[str, ...] | None=…) -> None
  • changed: constructor array(__typecode: _IntTypeCode, __initializer: bytes | Iterable[_T]=…) -> None | (__typecode: _FloatTypeCode, __initializer: bytes | Iterable[_T]=…) -> None | (__typecode: _UnicodeTypeCode, __initializer: bytes | Iterable[_T]=…) -> None | (typecode: str, __initializer: bytes | Iterable[_T]=…) -> None → constructor array(__typecode: _IntTypeCode, __initializer: bytes | Iterable[int]=…) -> None | (__typecode: _FloatTypeCode, __initializer: bytes | Iterable[float]=…) -> None | (__typecode: _UnicodeTypeCode, __initializer: bytes | Iterable[str]=…) -> None | (__typecode: str, __initializer: Iterable[_T]) -> None | (__typecode: str, __initializer: bytes=…) -> None
  • changed: method array.frombytes(__buffer: bytes) -> None → method array.frombytes(__buffer: ReadableBuffer) -> None
  • changed: method array.fromfile(__f: BinaryIO, __n: int) -> None → method array.fromfile(__f: SupportsRead[bytes], __n: int) -> None
  • changed: method array.tofile(__f: BinaryIO) -> None → method array.tofile(__f: SupportsWrite[bytes]) -> None
  • added: function main() -> None
  • changed: async method BaseEventLoop.create_connection(protocol_factory: Callable[[], _ProtocolT], host: str=…, port: int=…, *, ssl: _SSLContext=…, family: int=…, proto: int=…, flags: int=…, sock: None=…, local_addr: tuple[str, int] | None=…, server_hostname: str | None=…, ssl_handshake_timeout: float | None=…, happy_eyeballs_delay: float | None=…, interleave: int | None=…) -> tuple[BaseTransport, _Protoco… → async method BaseEventLoop.create_connection(protocol_factory: Callable[[], _ProtocolT], host: str=…, port: int=…, *, ssl: _SSLContext=…, family: int=…, proto: int=…, flags: int=…, sock: None=…, local_addr: tuple[str, int] | None=…, server_hostname: str | None=…, ssl_handshake_timeout: float | None=…, ssl_shutdown_timeout: float | None=…, happy_eyeballs_delay: float | None=…, interleave: int | No…
  • changed: async method BaseEventLoop.create_server(protocol_factory: _ProtocolFactory, host: str | Sequence[str] | None=…, port: int=…, *, family: int=…, flags: int=…, sock: None=…, backlog: int=…, ssl: _SSLContext=…, reuse_address: bool | None=…, reuse_port: bool | None=…, ssl_handshake_timeout: float | None=…, start_serving: bool=…) -> Server | (protocol_factory: _ProtocolFactory, host: None=…, port: Non… → async method BaseEventLoop.create_server(protocol_factory: _ProtocolFactory, host: str | Sequence[str] | None=…, port: int=…, *, family: int=…, flags: int=…, sock: None=…, backlog: int=…, ssl: _SSLContext=…, reuse_address: bool | None=…, reuse_port: bool | None=…, ssl_handshake_timeout: float | None=…, ssl_shutdown_timeout: float | None=…, start_serving: bool=…) -> Server | (protocol_factory: _Pr…
  • changed: async method BaseEventLoop.sock_recv_into(sock: socket, buf: bytearray) -> int → async method BaseEventLoop.sock_recv_into(sock: socket, buf: WriteableBuffer) -> int
  • added: async method BaseEventLoop.sock_recvfrom(sock: socket, bufsize: int) -> bytes
  • added: async method BaseEventLoop.sock_recvfrom_into(sock: socket, buf: WriteableBuffer, nbytes: int=…) -> int
  • added: async method BaseEventLoop.sock_sendto(sock: socket, data: bytes, address: _Address) -> None
  • added: variable FLOW_CONTROL_HIGH_WATER_SSL_READ: Literal[256]
  • added: variable FLOW_CONTROL_HIGH_WATER_SSL_WRITE: Literal[512]
  • added: variable SSL_SHUTDOWN_TIMEOUT: float
  • changed: async method AbstractEventLoop.create_connection(protocol_factory: Callable[[], _ProtocolT], host: str=…, port: int=…, *, ssl: _SSLContext=…, family: int=…, proto: int=…, flags: int=…, sock: None=…, local_addr: tuple[str, int] | None=…, server_hostname: str | None=…, ssl_handshake_timeout: float | None=…, happy_eyeballs_delay: float | None=…, interleave: int | None=…) -> tuple[BaseTransport, _Pro… → async method AbstractEventLoop.create_connection(protocol_factory: Callable[[], _ProtocolT], host: str=…, port: int=…, *, ssl: _SSLContext=…, family: int=…, proto: int=…, flags: int=…, sock: None=…, local_addr: tuple[str, int] | None=…, server_hostname: str | None=…, ssl_handshake_timeout: float | None=…, ssl_shutdown_timeout: float | None=…, happy_eyeballs_delay: float | None=…, interleave: int…
  • changed: async method AbstractEventLoop.create_server(protocol_factory: _ProtocolFactory, host: str | Sequence[str] | None=…, port: int=…, *, family: int=…, flags: int=…, sock: None=…, backlog: int=…, ssl: _SSLContext=…, reuse_address: bool | None=…, reuse_port: bool | None=…, ssl_handshake_timeout: float | None=…, start_serving: bool=…) -> Server | (protocol_factory: _ProtocolFactory, host: None=…, port:… → async method AbstractEventLoop.create_server(protocol_factory: _ProtocolFactory, host: str | Sequence[str] | None=…, port: int=…, *, family: int=…, flags: int=…, sock: None=…, backlog: int=…, ssl: _SSLContext=…, reuse_address: bool | None=…, reuse_port: bool | None=…, ssl_handshake_timeout: float | None=…, ssl_shutdown_timeout: float | None=…, start_serving: bool=…) -> Server | (protocol_factory:…
  • changed: async method AbstractEventLoop.sock_recv_into(sock: socket, buf: bytearray) -> int → async method AbstractEventLoop.sock_recv_into(sock: socket, buf: WriteableBuffer) -> int
  • added: async method AbstractEventLoop.connect_accepted_socket(protocol_factory: Callable[[], _ProtocolT], sock: socket, *, ssl: _SSLContext=…, ssl_handshake_timeout: float | None=…) -> tuple[BaseTransport, _ProtocolT]
  • added: async method AbstractEventLoop.sock_recvfrom(sock: socket, bufsize: int) -> bytes
  • added: async method AbstractEventLoop.sock_recvfrom_into(sock: socket, buf: WriteableBuffer, nbytes: int=…) -> int
  • added: async method AbstractEventLoop.sock_sendto(sock: socket, data: bytes, address: _Address) -> None
  • changed: function run(main: Awaitable[_T], *, debug: bool=…) -> _T → function run(main: Coroutine[Any, Any, _T], *, debug: bool=…) -> _T
  • changed: class SSLProtocol(protocols.Protocol) → class SSLProtocol(_SSLProtocolBase)
  • added: class AppProtocolState(Enum)
  • added: class SSLProtocolState(Enum)
  • added: field AppProtocolState.STATE_CON_LOST: str
  • added: field AppProtocolState.STATE_CON_MADE: str
  • added: field AppProtocolState.STATE_EOF: str
  • added: field AppProtocolState.STATE_INIT: str
  • added: field SSLProtocol.max_size: ClassVar[int]
  • added: field SSLProtocolState.DO_HANDSHAKE: str
  • added: field SSLProtocolState.FLUSHING: str
  • added: field SSLProtocolState.SHUTDOWN: str
  • added: field SSLProtocolState.UNWRAPPED: str
  • added: field SSLProtocolState.WRAPPED: str
  • added: function add_flowcontrol_defaults(high: int | None, low: int | None, kb: int) -> tuple[int, int]
  • added: method SSLProtocol.buffer_updated(nbytes: int) -> None
  • added: method SSLProtocol.get_buffer(n: int) -> memoryview
  • added: variable SSLAgainErrors: tuple[type[ssl.SSLWantReadError], type[ssl.SSLSyscallError]]
  • added: async method StreamWriter.start_tls(sslcontext: ssl.SSLContext, *, server_hostname: str | None=…, ssl_handshake_timeout: float | None=…) -> None
  • changed: method TaskGroup.create_task(coro: Generator[Any, None, _T] | Coroutine[Any, Any, _T], *, name: str | None=…) -> Task[_T] → method TaskGroup.create_task(coro: Generator[Any, None, _T] | Coroutine[Any, Any, _T], *, name: str | None=…, context: Context | None=…) -> Task[_T]
  • changed: async function sleep(delay: float, result: _T=…, *, loop: AbstractEventLoop | None=…) -> _T → async function sleep(delay: float) -> None | (delay: float, result: _T) -> _T | (delay: float, *, loop: AbstractEventLoop | None=…) -> None | (delay: float, result: _T, *, loop: AbstractEventLoop | None=…) -> _T
  • added: class Timeout
  • added: constructor Timeout(when: float | None) -> None
  • added: function timeout(delay: float | None) -> Timeout
  • added: function timeout_at(when: float | None) -> Timeout
  • added: method Timeout.expired() -> bool
  • added: method Timeout.reschedule(when: float | None) -> None
  • added: method Timeout.when() -> float | None
  • added: function b32hexdecode(s: str | ReadableBuffer, casefold: bool=…) -> bytes
  • added: function b32hexencode(s: ReadableBuffer) -> bytes
  • added: static method Breakpoint.clearBreakpoints() -> None
  • removed: constructor frozenset(__iterable: Iterable[_T_co]=…) -> None
  • changed: constructor set(__iterable: Iterable[_T]=…) -> None → constructor set() -> None | (__iterable: Iterable[_T]) -> None
  • changed: function sum(__iterable: Iterable[_SumT]) -> _SumT | Literal[0] | (__iterable: Iterable[_SumT], start: _SumS) -> _SumT | _SumS | (__iterable: Iterable[_SumT], __start: _SumS) -> _SumT | _SumS → function sum(__iterable: Iterable[bool], start: int=…) -> int | (__iterable: Iterable[bool], __start: int=…) -> int | (__iterable: Iterable[_SupportsSumNoDefaultT]) -> _SupportsSumNoDefaultT | Literal[0] | (__iterable: Iterable[_AddableT1], start: _AddableT2) -> _AddableT1 | _AddableT2 | (__iterable: Iterable[_AddableT1], __start: _AddableT2) -> _AddableT1 | _AddableT2
  • added: method BaseException.add_note(__note: str) -> None
  • added: variable FRIDAY: Literal[4]
  • added: variable MONDAY: Literal[0]
  • added: variable SATURDAY: Literal[5]
  • added: variable SUNDAY: Literal[6]
  • added: variable THURSDAY: Literal[3]
  • added: variable TUESDAY: Literal[1]
  • added: variable WEDNESDAY: Literal[2]
  • removed: function decode(obj: bytes, encoding: _BytesToBytesEncoding, errors: str=…) -> bytes | (obj: str, encoding: _StrToStrEncoding, errors: str=…) -> str | (obj: str, encoding: Literal['hex', 'hex_codec'], errors: str=…) -> bytes | (obj: bytes, encoding: str=…, errors: str=…) -> str
  • removed: function encode(obj: bytes, encoding: _BytesToBytesEncoding, errors: str=…) -> bytes | (obj: str, encoding: _StrToStrEncoding, errors: str=…) -> str | (obj: str, encoding: str=…, errors: str=…) -> bytes
  • removed: function lookup(__encoding: str) -> CodecInfo
  • removed: function lookup_error(__name: str) -> Callable[[UnicodeError], tuple[str | bytes, int]]
  • removed: function register(__search_function: Callable[[str], CodecInfo | None]) -> None
  • removed: function register_error(__errors: str, __handler: Callable[[UnicodeError], tuple[str | bytes, int]]) -> None
  • changed: class StreamReader(Codec, Iterator[str]) → class StreamReader(Codec)
  • changed: constructor StreamReader(stream: IO[bytes], errors: str=…) -> None → constructor StreamReader(stream: _ReadableStream, errors: str=…) -> None
  • changed: constructor StreamReaderWriter(stream: IO[bytes], Reader: _StreamReader, Writer: _StreamWriter, errors: str=…) -> None → constructor StreamReaderWriter(stream: _Stream, Reader: _StreamReader, Writer: _StreamWriter, errors: str=…) -> None
  • changed: constructor StreamRecoder(stream: IO[bytes], encode: _Encoder, decode: _Decoder, Reader: _StreamReader, Writer: _StreamWriter, errors: str=…) -> None → constructor StreamRecoder(stream: _Stream, encode: _Encoder, decode: _Decoder, Reader: _StreamReader, Writer: _StreamWriter, errors: str=…) -> None
  • changed: constructor StreamWriter(stream: IO[bytes], errors: str=…) -> None → constructor StreamWriter(stream: _WritableStream, errors: str=…) -> None
  • changed: function EncodedFile(file: IO[bytes], data_encoding: str, file_encoding: str | None=…, errors: str=…) -> StreamRecoder → function EncodedFile(file: _Stream, data_encoding: str, file_encoding: str | None=…, errors: str=…) -> StreamRecoder
  • added: field StreamReader.stream: _ReadableStream
  • added: field StreamReaderWriter.stream: _Stream
  • added: field StreamWriter.stream: _WritableStream
  • changed: constructor UserList(initlist: Iterable[_T] | None=…) -> None → constructor UserList(initlist: None=…) -> None | (initlist: Iterable[_T]) -> None
  • changed: constructor deque(iterable: Iterable[_T]=…, maxlen: int | None=…) -> None → constructor deque(*, maxlen: int | None=…) -> None | (iterable: Iterable[_T], maxlen: int | None=…) -> None
  • added: export Callable
  • added: export Iterable
  • added: export Iterator
  • added: export Mapping
  • added: export MutableMapping
  • added: export MutableSequence
  • added: export Reversible
  • added: export Sequence
  • changed: class ExitStack(AbstractContextManager[ExitStack]) → class ExitStack
  • added: async method AsyncExitStack.aclose() -> None
  • added: async method AsyncExitStack.enter_async_context(cm: AbstractAsyncContextManager[_T]) -> _T
  • added: class AsyncExitStack
  • added: class aclosing(AbstractAsyncContextManager[_SupportsAcloseT])
  • added: class chdir(AbstractContextManager[None], Generic[_T_fd_or_any_path])
  • added: class nullcontext(AbstractContextManager[_T])
  • added: class nullcontext(AbstractContextManager[_T], AbstractAsyncContextManager[_T])
  • added: constructor AsyncExitStack() -> None
  • added: constructor aclosing(thing: _SupportsAcloseT) -> None
  • added: constructor chdir(path: _T_fd_or_any_path) -> None
  • added: constructor nullcontext(enter_result: None=…) -> None | (enter_result: _T) -> None
  • added: field chdir.path: _T_fd_or_any_path
  • added: field nullcontext.enter_result: _T
  • added: function asynccontextmanager(func: Callable[_P, AsyncIterator[_T_co]]) -> Callable[_P, _AsyncGeneratorContextManager[_T_co]]
  • added: method AsyncExitStack.callback(__callback: Callable[_P, _T], *args: _P.args, **kwds: _P.kwargs) -> Callable[_P, _T]
  • added: method AsyncExitStack.enter_context(cm: AbstractContextManager[_T]) -> _T
  • added: method AsyncExitStack.pop_all() -> Self
  • added: method AsyncExitStack.push(exit: _CM_EF) -> _CM_EF
  • added: method AsyncExitStack.push_async_callback(__callback: Callable[_P, Awaitable[_T]], *args: _P.args, **kwds: _P.kwargs) -> Callable[_P, Awaitable[_T]]
  • added: method AsyncExitStack.push_async_exit(exit: _ACM_EF) -> _ACM_EF
  • added: variable AbstractAsyncContextManager
  • changed: constructor ContextVar(name: str, *, default: _T=…) -> None → constructor ContextVar(name: str) -> None | (name: str, *, default: _T) -> None
  • changed: class DictReader(Generic[_T], Iterator[_DictReadMapping[_T, str]]) → class DictReader(Generic[_T], Iterator[_DictReadMapping[_T | Any, str | Any]])
  • changed: constructor pointer(arg: _CT=…) -> None → constructor pointer(arg: _CT) -> None
  • added: class KW_ONLY
  • changed: constructor SequenceMatcher(isjunk: Callable[[_T], bool] | None=…, a: Sequence[_T]=…, b: Sequence[_T]=…, autojunk: bool=…) -> None → constructor SequenceMatcher(isjunk: Callable[[_T], bool] | None, a: Sequence[_T], b: Sequence[_T], autojunk: bool=…) -> None | (*, a: Sequence[_T], b: Sequence[_T], autojunk: bool=…) -> None | (isjunk: Callable[[str], bool] | None=…, a: Sequence[str]=…, b: Sequence[str]=…, autojunk: bool=…) -> None
  • changed: function translate_pattern(pattern: str, anchor: int | bool=…, prefix: str | None=…, is_regex: Literal[False, 0]=…) -> Pattern[str] | (pattern: str | Pattern[str], *, is_regex: Literal[True, 1]=…) -> Pattern[str] | (pattern: str | Pattern[str], anchor: int | bool=…, prefix: str | None=…, is_regex: int | bool=…) -> Pattern[str] → function translate_pattern(pattern: str, anchor: bool | Literal[0, 1]=…, prefix: str | None=…, is_regex: Literal[False, 0]=…) -> Pattern[str] | (pattern: str | Pattern[str], *, is_regex: Literal[True, 1]=…) -> Pattern[str] | (pattern: str | Pattern[str], anchor: bool | Literal[0, 1]=…, prefix: str | None=…, is_regex: int=…) -> Pattern[str]
  • changed: method FileList.exclude_pattern(pattern: str, anchor: int | bool=…, prefix: str | None=…, is_regex: Literal[0, False]=…) -> bool | (pattern: str | Pattern[str], *, is_regex: Literal[True, 1]=…) -> bool | (pattern: str | Pattern[str], anchor: int | bool=…, prefix: str | None=…, is_regex: int | bool=…) -> bool → method FileList.exclude_pattern(pattern: str, anchor: bool | Literal[0, 1]=…, prefix: str | None=…, is_regex: Literal[0, False]=…) -> bool | (pattern: str | Pattern[str], *, is_regex: Literal[True, 1]=…) -> bool | (pattern: str | Pattern[str], anchor: bool | Literal[0, 1]=…, prefix: str | None=…, is_regex: int=…) -> bool
  • changed: method FileList.include_pattern(pattern: str, anchor: int | bool=…, prefix: str | None=…, is_regex: Literal[0, False]=…) -> bool | (pattern: str | Pattern[str], *, is_regex: Literal[True, 1]=…) -> bool | (pattern: str | Pattern[str], anchor: int | bool=…, prefix: str | None=…, is_regex: int | bool=…) -> bool → method FileList.include_pattern(pattern: str, anchor: bool | Literal[0, 1]=…, prefix: str | None=…, is_regex: Literal[0, False]=…) -> bool | (pattern: str | Pattern[str], *, is_regex: Literal[True, 1]=…) -> bool | (pattern: str | Pattern[str], anchor: bool | Literal[0, 1]=…, prefix: str | None=…, is_regex: int=…) -> bool
  • added: class EnumCheck(StrEnum)
  • added: class FlagBoundary(StrEnum)
  • added: class ReprEnum(Enum)
  • added: class StrEnum(str, ReprEnum)
  • added: class member(Generic[_EnumMemberT])
  • added: class nonmember(Generic[_EnumMemberT])
  • added: class property(types.DynamicClassAttribute)
  • added: class verify
  • added: constructor member(value: _EnumMemberT) -> None
  • added: constructor nonmember(value: _EnumMemberT) -> None
  • added: constructor verify(*checks: EnumCheck) -> None
  • added: field EnumCheck.CONTINUOUS: str
  • added: field EnumCheck.NAMED_FLAGS: str
  • added: field EnumCheck.UNIQUE: str
  • added: field FlagBoundary.CONFORM: str
  • added: field FlagBoundary.EJECT: str
  • added: field FlagBoundary.KEEP: str
  • added: field FlagBoundary.STRICT: str
  • added: field member.value: _EnumMemberT
  • added: field nonmember.value: _EnumMemberT
  • added: field property.clsname: str
  • added: field property.name: str
  • added: function global_enum(cls: _EnumerationT, update_str: bool=…) -> _EnumerationT
  • added: function global_enum_repr(self: Enum) -> str
  • added: function global_flag_repr(self: Flag) -> str
  • added: function global_str(self: Enum) -> str
  • added: method StrEnum.value() -> str
  • added: variable CONFORM
  • added: variable CONTINUOUS
  • added: variable EJECT
  • added: variable EnumType
  • added: variable KEEP
  • added: variable NAMED_FLAGS
  • added: variable STRICT
  • added: variable UNIQUE
  • changed: constructor dircmp(a: AnyStr | PathLike[AnyStr], b: AnyStr | PathLike[AnyStr], ignore: Sequence[AnyStr] | None=…, hide: Sequence[AnyStr] | None=…) -> None → constructor dircmp(a: GenericPath[AnyStr], b: GenericPath[AnyStr], ignore: Sequence[AnyStr] | None=…, hide: Sequence[AnyStr] | None=…) -> None
  • changed: function cmp(f1: StrOrBytesPath, f2: StrOrBytesPath, shallow: int | bool=…) -> bool → function cmp(f1: StrOrBytesPath, f2: StrOrBytesPath, shallow: bool | Literal[0, 1]=…) -> bool
  • changed: function cmpfiles(a: AnyStr | PathLike[AnyStr], b: AnyStr | PathLike[AnyStr], common: Iterable[AnyStr | PathLike[AnyStr]], shallow: int | bool=…) -> tuple[list[AnyStr], list[AnyStr], list[AnyStr]] → function cmpfiles(a: GenericPath[AnyStr], b: GenericPath[AnyStr], common: Iterable[GenericPath[AnyStr]], shallow: bool | Literal[0, 1]=…) -> tuple[list[AnyStr], list[AnyStr], list[AnyStr]]
  • changed: constructor FileInput(files: None | StrOrBytesPath | Iterable[StrOrBytesPath]=…, inplace: bool=…, backup: str=…, bufsize: int=…, mode: str=…, openhook: Callable[[StrOrBytesPath, str], IO[AnyStr]]=…) -> None → constructor FileInput(files: StrOrBytesPath | Iterable[StrOrBytesPath] | None=…, inplace: bool=…, backup: str=…, *, mode: _TextMode=…, openhook: Callable[[StrOrBytesPath, str], _HasReadlineAndFileno[str]] | None=…, encoding: str | None=…, errors: str | None=…) -> None | (files: StrOrBytesPath | Iterable[StrOrBytesPath] | None=…, inplace: bool=…, backup: str=…, *, mode: Literal['rb'], openhook: Ca…
  • changed: function input(files: StrOrBytesPath | Iterable[StrOrBytesPath] | None=…, inplace: bool=…, backup: str=…, bufsize: int=…, mode: str=…, openhook: Callable[[StrOrBytesPath, str], IO[AnyStr]]=…) -> FileInput[AnyStr] → function input(files: StrOrBytesPath | Iterable[StrOrBytesPath] | None=…, inplace: bool=…, backup: str=…, *, mode: _TextMode=…, openhook: Callable[[StrOrBytesPath, str], _HasReadlineAndFileno[str]] | None=…, encoding: str | None=…, errors: str | None=…) -> FileInput[str] | (files: StrOrBytesPath | Iterable[StrOrBytesPath] | None=…, inplace: bool=…, backup: str=…, *, mode: Literal['rb'], openhook:…
  • changed: method FTP.set_pasv(val: bool | int) -> None → method FTP.set_pasv(val: bool | Literal[0, 1]) -> None
  • changed: function wraps(wrapped: _AnyCallable, assigned: Sequence[str]=…, updated: Sequence[str]=…) -> Callable[[_T], _T] → function wraps(wrapped: _AnyCallable, assigned: Sequence[str]=…, updated: Sequence[str]=…) -> IdentityFunction
  • added: class cached_property(Generic[_T])
  • added: class singledispatchmethod(Generic[_T])
  • added: constructor cached_property(func: Callable[[Any], _T]) -> None
  • added: constructor singledispatchmethod(func: Callable[..., _T]) -> None
  • added: field cached_property.attrname: str | None
  • added: field cached_property.func: Callable[[Any], _T]
  • added: field singledispatchmethod.dispatcher: _SingleDispatchCallable[_T]
  • added: field singledispatchmethod.func: Callable[..., _T]
  • added: function cache(__user_function: Callable[..., _T]) -> _lru_cache_wrapper[_T]
  • added: method singledispatchmethod.register(cls: type[Any], method: None=…) -> Callable[[Callable[..., _T]], Callable[..., _T]] | (cls: Callable[..., _T], method: None=…) -> Callable[..., _T] | (cls: type[Any], method: Callable[..., _T]) -> Callable[..., _T]
  • changed: function commonprefix(m: Sequence[StrPath]) -> str | (m: Sequence[BytesPath]) -> bytes | Literal[''] | (m: Sequence[list[SupportsRichComparisonT]]) -> Sequence[SupportsRichComparisonT] | (m: Sequence[tuple[SupportsRichComparisonT, ...]]) -> Sequence[SupportsRichComparisonT] → function commonprefix(m: Sequence[LiteralString]) -> LiteralString | (m: Sequence[StrPath]) -> str | (m: Sequence[BytesPath]) -> bytes | Literal[''] | (m: Sequence[list[SupportsRichComparisonT]]) -> Sequence[SupportsRichComparisonT] | (m: Sequence[tuple[SupportsRichComparisonT, ...]]) -> Sequence[SupportsRichComparisonT]
  • changed: function translation(domain: str, localedir: StrPath | None=…, languages: Iterable[str] | None=…, class_: None=…, fallback: bool=…) -> NullTranslations | (domain: str, localedir: StrPath | None=…, languages: Iterable[str] | None=…, class_: type[_T]=…, fallback: Literal[False]=…) -> _T | (domain: str, localedir: StrPath | None=…, languages: Iterable[str] | None=…, class_: type[Any]=…, fallback: Li… → function translation(domain: str, localedir: StrPath | None=…, languages: Iterable[str] | None=…, class_: None=…, fallback: Literal[False]=…) -> GNUTranslations | (domain: str, localedir: StrPath | None=…, languages: Iterable[str] | None=…, *, class_: Callable[[io.BufferedReader], _NullTranslationsT], fallback: Literal[False]=…) -> _NullTranslationsT | (domain: str, localedir: StrPath | None, lan…
  • added: function dnpgettext(domain: str, context: str, msgid1: str, msgid2: str, n: int) -> str
  • added: function dpgettext(domain: str, context: str, message: str) -> str
  • added: function npgettext(context: str, msgid1: str, msgid2: str, n: int) -> str
  • added: function pgettext(context: str, message: str) -> str
  • changed: constructor TopologicalSorter(graph: SupportsItems[_T, Iterable[_T]] | None=…) -> None → constructor TopologicalSorter(graph: None=…) -> None | (graph: SupportsItems[_T, Iterable[_T]]) -> None
  • changed: function digest(key: bytes, msg: ReadableBuffer, digest: str) -> bytes → function digest(key: bytes, msg: ReadableBuffer, digest: _DigestMod) -> bytes
  • changed: function Internaldate2tuple(resp: str) -> time.struct_time → function Internaldate2tuple(resp: bytes) -> time.struct_time
  • added: export PackageMetadata
  • added: function packages_distributions() -> Mapping[str, list[str]]
  • added: export ResourceReader
  • added: function as_file(path: Traversable) -> AbstractContextManager[Path]
  • added: function files(package: Package) -> Traversable
  • added: function open_code(path: str) -> IO[bytes]
  • changed: function currency(val: int | float | Decimal, symbol: bool=…, grouping: bool=…, international: bool=…) -> _str → function currency(val: float | Decimal, symbol: bool=…, grouping: bool=…, international: bool=…) -> _str
  • added: function getencoding() -> _str
  • added: function getLevelNamesMapping() -> dict[str, int]
  • added: method SysLogHandler.createSocket() -> None
  • added: export abspath
  • added: export commonprefix
  • added: export curdir
  • added: export defpath
  • added: export devnull
  • added: export exists
  • added: export expanduser
  • added: export expandvars
  • added: export extsep
  • added: export getatime
  • added: export getctime
  • added: export getmtime
  • added: export getsize
  • added: export isabs
  • added: export isdir
  • added: export isfile
  • added: export lexists
  • added: export pardir
  • added: export pathsep
  • added: export sep
  • added: export splitdrive
  • added: export splitext
  • added: export supports_unicode_filenames
  • changed: constructor Mailbox(path: StrOrBytesPath, factory: Callable[[IO[Any]], _MessageT] | None=…, create: bool=…) -> None → constructor Mailbox(path: StrOrBytesPath, factory: Callable[[IO[Any]], _MessageT], create: bool=…) -> None | (path: StrOrBytesPath, factory: None=…, create: bool=…) -> None
  • added: export parent_process
  • changed: method SyncManager.dict(sequence: Mapping[_KT, _VT]=…) -> _dict[_KT, _VT] → method SyncManager.dict() -> DictProxy[Any, Any] | (**kwargs: _VT) -> DictProxy[str, _VT] | (__map: SupportsKeysAndGetItem[_KT, _VT], **kwargs: _VT) -> DictProxy[_KT, _VT] | (__iterable: Iterable[tuple[_KT, _VT]], **kwargs: _VT) -> DictProxy[_KT, _VT] | (__iterable: Iterable[list[str]]) -> DictProxy[str, str]
  • changed: method SyncManager.list(sequence: Sequence[_T]=…) -> _list[_T] → method SyncManager.list(__sequence: Sequence[_T]) -> ListProxy[_T] | () -> ListProxy[Any]
  • changed: constructor ShareableList(sequence: Iterable[_SLT] | None=…, *, name: str | None=…) -> None → constructor ShareableList(sequence: None=…, *, name: str | None=…) -> None | (sequence: Iterable[_SLT], *, name: str | None=…) -> None
  • changed: function join(__path: StrPath, *paths: StrPath) -> str | (__path: BytesPath, *paths: BytesPath) -> bytes → function join(__path: LiteralString, *paths: LiteralString) -> LiteralString | (__path: StrPath, *paths: StrPath) -> str | (__path: BytesPath, *paths: BytesPath) -> bytes
  • changed: variable altsep: str → variable altsep: LiteralString
  • changed: method OptionParser.parse_args(args: Sequence[AnyStr] | None=…, values: Values | None=…) -> tuple[Values, list[AnyStr]] → method OptionParser.parse_args(args: None=…, values: Values | None=…) -> tuple[Values, list[str]] | (args: Sequence[AnyStr], values: Values | None=…) -> tuple[Values, list[AnyStr]]
  • changed: class PathLike(Protocol[_AnyStr_co]) → class PathLike(Protocol[AnyStr_co])
  • changed: function readlink(path: AnyStr | PathLike[AnyStr], *, dir_fd: int | None=…) -> AnyStr → function readlink(path: GenericPath[AnyStr], *, dir_fd: int | None=…) -> AnyStr
  • changed: function scandir(path: None=…) -> _ScandirIterator[str] | (path: int) -> _ScandirIterator[str] | (path: AnyStr | PathLike[AnyStr]) -> _ScandirIterator[AnyStr] → function scandir(path: None=…) -> _ScandirIterator[str] | (path: int) -> _ScandirIterator[str] | (path: GenericPath[AnyStr]) -> _ScandirIterator[AnyStr]
  • changed: function walk(top: AnyStr | PathLike[AnyStr], topdown: bool=…, onerror: _OnError | None=…, followlinks: bool=…) -> Iterator[tuple[AnyStr, list[AnyStr], list[AnyStr]]] → function walk(top: GenericPath[AnyStr], topdown: bool=…, onerror: _OnError | None=…, followlinks: bool=…) -> Iterator[tuple[AnyStr, list[AnyStr], list[AnyStr]]]
  • added: class PickleBuffer
  • added: constructor PickleBuffer(buffer: ReadableBuffer) -> None
  • added: method PickleBuffer.raw() -> memoryview
  • added: method PickleBuffer.release() -> None
  • added: variable BYTEARRAY8: bytes
  • added: variable NEXT_BUFFER: bytes
  • added: variable READONLY_BUFFER: bytes
  • changed: function basename(p: PathLike[AnyStr]) -> AnyStr | (p: AnyStr) -> AnyStr → function basename(p: PathLike[AnyStr]) -> AnyStr | (p: AnyOrLiteralStr) -> AnyOrLiteralStr
  • changed: function commonpath(paths: Sequence[StrPath]) -> str | (paths: Sequence[BytesPath]) -> bytes → function commonpath(paths: Sequence[LiteralString]) -> LiteralString | (paths: Sequence[StrPath]) -> str | (paths: Sequence[BytesPath]) -> bytes
  • changed: function dirname(p: PathLike[AnyStr]) -> AnyStr | (p: AnyStr) -> AnyStr → function dirname(p: PathLike[AnyStr]) -> AnyStr | (p: AnyOrLiteralStr) -> AnyOrLiteralStr
  • changed: function join(__a: StrPath, *paths: StrPath) -> str | (__a: BytesPath, *paths: BytesPath) -> bytes → function join(__a: LiteralString, *paths: LiteralString) -> LiteralString | (__a: StrPath, *paths: StrPath) -> str | (__a: BytesPath, *paths: BytesPath) -> bytes
  • changed: function normcase(s: PathLike[AnyStr]) -> AnyStr | (s: AnyStr) -> AnyStr → function normcase(s: PathLike[AnyStr]) -> AnyStr | (s: AnyOrLiteralStr) -> AnyOrLiteralStr
  • changed: function normpath(path: PathLike[AnyStr]) -> AnyStr | (path: AnyStr) -> AnyStr → function normpath(path: PathLike[AnyStr]) -> AnyStr | (path: AnyOrLiteralStr) -> AnyOrLiteralStr
  • changed: function relpath(path: BytesPath, start: BytesPath | None=…) -> bytes | (path: StrPath, start: StrPath | None=…) -> str → function relpath(path: LiteralString, start: LiteralString | None=…) -> LiteralString | (path: BytesPath, start: BytesPath | None=…) -> bytes | (path: StrPath, start: StrPath | None=…) -> str
  • changed: function split(p: PathLike[AnyStr]) -> tuple[AnyStr, AnyStr] | (p: AnyStr) -> tuple[AnyStr, AnyStr] → function split(p: PathLike[AnyStr]) -> tuple[AnyStr, AnyStr] | (p: AnyOrLiteralStr) -> tuple[AnyOrLiteralStr, AnyOrLiteralStr]
  • changed: function splitdrive(p: PathLike[AnyStr]) -> tuple[AnyStr, AnyStr] | (p: AnyStr) -> tuple[AnyStr, AnyStr] → function splitdrive(p: PathLike[AnyStr]) -> tuple[AnyStr, AnyStr] | (p: AnyOrLiteralStr) -> tuple[AnyOrLiteralStr, AnyOrLiteralStr]
  • changed: function splitext(p: PathLike[AnyStr]) -> tuple[AnyStr, AnyStr] | (p: AnyStr) -> tuple[AnyStr, AnyStr] → function splitext(p: PathLike[AnyStr]) -> tuple[AnyStr, AnyStr] | (p: AnyOrLiteralStr) -> tuple[AnyOrLiteralStr, AnyOrLiteralStr]
  • changed: variable altsep: str | None → variable altsep: LiteralString | None
  • changed: variable curdir: str → variable curdir: LiteralString
  • changed: variable defpath: str → variable defpath: LiteralString
  • changed: variable devnull: str → variable devnull: LiteralString
  • changed: variable extsep: str → variable extsep: LiteralString
  • changed: variable pardir: str → variable pardir: LiteralString
  • changed: variable pathsep: str → variable pathsep: LiteralString
  • changed: variable sep: str → variable sep: LiteralString
  • added: field XMLParserType.SkippedEntityHandler: Callable[[str, bool], Any] | None
  • added: property XMLParserType.intern -> dict[str, str]
  • added: variable XML_ERROR_AMPLIFICATION_LIMIT_BREACH: str
  • added: variable XML_ERROR_INVALID_ARGUMENT: str
  • added: variable XML_ERROR_NO_BUFFER: str
  • added: variable XML_ERROR_RESERVED_NAMESPACE_URI: str
  • added: variable XML_ERROR_RESERVED_PREFIX_XML: str
  • added: variable XML_ERROR_RESERVED_PREFIX_XMLNS: str
  • added: variable randbytes
  • added: class RegexFlag(enum.IntFlag)
  • added: export Match
  • added: export Pattern
  • added: field RegexFlag.A
  • added: field RegexFlag.ASCII
  • added: field RegexFlag.DEBUG
  • added: field RegexFlag.DOTALL
  • added: field RegexFlag.I
  • added: field RegexFlag.IGNORECASE
  • added: field RegexFlag.L
  • added: field RegexFlag.LOCALE
  • added: field RegexFlag.M
  • added: field RegexFlag.MULTILINE
  • added: field RegexFlag.NOFLAG: int
  • added: field RegexFlag.S
  • added: field RegexFlag.T
  • added: field RegexFlag.TEMPLATE
  • added: field RegexFlag.U
  • added: field RegexFlag.UNICODE
  • added: field RegexFlag.VERBOSE
  • added: field RegexFlag.X
  • added: variable NOFLAG
  • added: class SMTPNotSupportedError(SMTPException)
  • changed: method socket.makefile(mode: Literal['r', 'w', 'rw', 'wr', '']=…, buffering: int | None=…, *, encoding: str | None=…, errors: str | None=…, newline: str | None=…) -> TextIO | (mode: Literal['b', 'rb', 'br', 'wb', 'bw', 'rwb', 'rbw', 'wrb', 'wbr', 'brw', 'bwr'], buffering: int | None=…, *, encoding: str | None=…, errors: str | None=…, newline: str | None=…) -> BinaryIO → method socket.makefile(mode: Literal['b', 'rb', 'br', 'wb', 'bw', 'rwb', 'rbw', 'wrb', 'wbr', 'brw', 'bwr'], buffering: Literal[0], *, encoding: str | None=…, errors: str | None=…, newline: str | None=…) -> SocketIO | (mode: Literal['rwb', 'rbw', 'wrb', 'wbr', 'brw', 'bwr'], buffering: Literal[-1, 1] | None=…, *, encoding: str | None=…, errors: str | None=…, newline: str | None=…) -> BufferedRWPa…
  • changed: method socket.sendfile(file: BinaryIO, offset: int=…, count: int | None=…) -> int → method socket.sendfile(file: _SendableFile, offset: int=…, count: int | None=…) -> int
  • added: field UDPServer.allow_reuse_port: bool
  • changed: class Row(Generic[_T_co]) → class Row
  • changed: constructor Row(__cursor: Cursor, __data: tuple[_T_co, ...]) -> None → constructor Row(__cursor: Cursor, __data: tuple[Any, ...]) -> None
  • changed: field Cursor.row_factory: Callable[[Cursor, Row[Any]], object] | None → field Cursor.row_factory: Callable[[Cursor, Row], object] | None
  • changed: method Blob.seek(__offset: int, __whence: int=…) -> None → method Blob.seek(__offset: int, __origin: int=…) -> None
  • changed: method SubPattern.getwidth() -> int → method SubPattern.getwidth() -> tuple[int, int]
  • added: method Tokenizer.checkgroupname(name: str, offset: int, nested: int) -> None
  • changed: method SSLContext.get_ca_certs(binary_form: bool=…) -> list[_PeerCertRetDictType] | list[bytes] → method SSLContext.get_ca_certs(binary_form: Literal[False]=…) -> list[_PeerCertRetDictType] | (binary_form: Literal[True]) -> list[bytes] | (binary_form: bool=…) -> Any
  • added: class NormalDist
  • added: constructor NormalDist(mu: float=…, sigma: float=…) -> None
  • added: function correlation(__x: Sequence[_Number], __y: Sequence[_Number]) -> float
  • added: function covariance(__x: Sequence[_Number], __y: Sequence[_Number]) -> float
  • added: function fmean(data: Iterable[SupportsFloat]) -> float
  • added: function geometric_mean(data: Iterable[SupportsFloat]) -> float
  • added: function linear_regression(__regressor: Sequence[_Number], __dependent_variable: Sequence[_Number]) -> LinearRegression
  • added: function multimode(data: Iterable[_HashableT]) -> list[_HashableT]
  • added: function quantiles(data: Iterable[_NumberT], *, n: int=…, method: Literal['inclusive', 'exclusive']=…) -> list[_NumberT]
  • added: method NormalDist.cdf(x: float) -> float
  • added: method NormalDist.inv_cdf(p: float) -> float
  • added: method NormalDist.overlap(other: NormalDist) -> float
  • added: method NormalDist.pdf(x: float) -> float
  • added: method NormalDist.quantiles(n: int=…) -> list[float]
  • added: method NormalDist.samples(n: int, *, seed: Any | None=…) -> list[float]
  • added: method NormalDist.zscore(x: float) -> float
  • added: property NormalDist.mean -> float
  • added: property NormalDist.median -> float
  • added: property NormalDist.mode -> float
  • added: property NormalDist.stdev -> float
  • added: property NormalDist.variance -> float
  • added: static method NormalDist.from_samples(data: Iterable[SupportsFloat]) -> Self
  • added: method Template.get_identifiers() -> list[str]
  • added: method Template.is_valid() -> bool
  • added: class STARTUPINFO
  • added: constructor STARTUPINFO(*, dwFlags: int=…, hStdInput: Any | None=…, hStdOutput: Any | None=…, hStdError: Any | None=…, wShowWindow: int=…, lpAttributeList: Mapping[str, Any] | None=…) -> None
  • added: export ABOVE_NORMAL_PRIORITY_CLASS
  • added: export BELOW_NORMAL_PRIORITY_CLASS
  • added: export CREATE_BREAKAWAY_FROM_JOB
  • added: export CREATE_DEFAULT_ERROR_MODE
  • added: export CREATE_NEW_CONSOLE
  • added: export CREATE_NEW_PROCESS_GROUP
  • added: export CREATE_NO_WINDOW
  • added: export DETACHED_PROCESS
  • added: export HIGH_PRIORITY_CLASS
  • added: export IDLE_PRIORITY_CLASS
  • added: export NORMAL_PRIORITY_CLASS
  • added: export REALTIME_PRIORITY_CLASS
  • added: export STARTF_USESHOWWINDOW
  • added: export STARTF_USESTDHANDLES
  • added: export STD_ERROR_HANDLE
  • added: export STD_INPUT_HANDLE
  • added: export STD_OUTPUT_HANDLE
  • added: export SW_HIDE
  • added: field STARTUPINFO.dwFlags: int
  • added: field STARTUPINFO.hStdError: Any | None
  • added: field STARTUPINFO.hStdInput: Any | None
  • added: field STARTUPINFO.hStdOutput: Any | None
  • added: field STARTUPINFO.lpAttributeList: Mapping[str, Any]
  • added: field STARTUPINFO.wShowWindow: int
  • changed: method SymbolTable.get_identifiers() -> Sequence[str] → method SymbolTable.get_identifiers() -> dict_keys[str, int]
  • added: function exception() -> BaseException | None
  • changed: method TarFile.gettarinfo(name: str | None=…, arcname: str | None=…, fileobj: IO[bytes] | None=…) -> TarInfo → method TarFile.gettarinfo(name: StrOrBytesPath | None=…, arcname: str | None=…, fileobj: IO[bytes] | None=…) -> TarInfo
  • changed: class SpooledTemporaryFile(IO[AnyStr]) → class SpooledTemporaryFile(IO[AnyStr], _SpooledTemporaryFileBase)
  • changed: constructor SpooledTemporaryFile(max_size: int=…, mode: Literal['rb', 'wb', 'ab', 'xb', 'r+b', 'w+b', 'a+b', 'x+b']=…, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: str | None=…, prefix: str | None=…, dir: str | None=…, *, errors: str | None=…) -> None | (max_size: int=…, mode: Literal['r', 'w', 'a', 'x', 'r+', 'w+', 'a+', 'x+', 'rt', 'wt', 'at', 'xt', 'r+t', 'w+t', 'a+… → constructor SpooledTemporaryFile(max_size: int=…, mode: _BytesMode=…, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: str | None=…, prefix: str | None=…, dir: str | None=…, *, errors: str | None=…) -> None | (max_size: int=…, mode: _StrMode=…, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: str | None=…, prefix: str | None=…, dir: str | None=…, *,…
  • changed: constructor TemporaryDirectory(suffix: None=…, prefix: None=…, dir: None=…, ignore_cleanup_errors: bool=…) -> None | (suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…, ignore_cleanup_errors: bool=…) -> None | (suffix: None=…, prefix: None=…, dir: None=…) -> None | (suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…) -> None → constructor TemporaryDirectory(suffix: str | None=…, prefix: str | None=…, dir: StrPath | None=…, ignore_cleanup_errors: bool=…) -> None | (suffix: bytes | None=…, prefix: bytes | None=…, dir: BytesPath | None=…, ignore_cleanup_errors: bool=…) -> None | (suffix: str | None=…, prefix: str | None=…, dir: StrPath | None=…) -> None | (suffix: bytes | None=…, prefix: bytes | None=…, dir: BytesPath | N…
  • changed: function NamedTemporaryFile(mode: Literal['r', 'w', 'a', 'x', 'r+', 'w+', 'a+', 'x+', 'rt', 'wt', 'at', 'xt', 'r+t', 'w+t', 'a+t', 'x+t'], buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…, delete: bool=…, *, errors: str | None=…) -> _TemporaryFileWrapper[str] | (mode: Literal['rb', 'wb', 'ab', 'xb', 'r+b… → function NamedTemporaryFile(mode: _StrMode, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: GenericPath[AnyStr] | None=…, delete: bool=…, *, errors: str | None=…) -> _TemporaryFileWrapper[str] | (mode: _BytesMode=…, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: AnyStr | None=…, prefix: AnyStr | None…
  • changed: function TemporaryFile(mode: Literal['r', 'w', 'a', 'x', 'r+', 'w+', 'a+', 'x+', 'rt', 'wt', 'at', 'xt', 'r+t', 'w+t', 'a+t', 'x+t'], buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…, *, errors: str | None=…) -> IO[str] | (mode: Literal['rb', 'wb', 'ab', 'xb', 'r+b', 'w+b', 'a+b', 'x+b']=…, buffering: in… → function TemporaryFile(mode: _StrMode, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: GenericPath[AnyStr] | None=…, *, errors: str | None=…) -> IO[str] | (mode: _BytesMode=…, buffering: int=…, encoding: str | None=…, newline: str | None=…, suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: GenericPath[AnyStr] | None=…, *…
  • changed: function mkdtemp() -> str | (suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…) -> AnyStr → function mkdtemp(suffix: str | None=…, prefix: str | None=…, dir: StrPath | None=…) -> str | (suffix: bytes | None=…, prefix: bytes | None=…, dir: BytesPath | None=…) -> bytes
  • changed: function mkstemp() -> tuple[int, str] | (suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…, text: bool=…) -> tuple[int, AnyStr] → function mkstemp(suffix: str | None=…, prefix: str | None=…, dir: StrPath | None=…, text: bool=…) -> tuple[int, str] | (suffix: bytes | None=…, prefix: bytes | None=…, dir: BytesPath | None=…, text: bool=…) -> tuple[int, bytes]
  • changed: function mktemp() -> str | (suffix: AnyStr | None=…, prefix: AnyStr | None=…, dir: _DirT[AnyStr] | None=…) -> AnyStr → function mktemp(suffix: str=…, prefix: str=…, dir: StrPath | None=…) -> str
  • changed: method SpooledTemporaryFile.read(n: int=…) -> AnyStr → method SpooledTemporaryFile.read(__n: int=…) -> AnyStr
  • changed: method SpooledTemporaryFile.readline(limit: int=…) -> AnyStr → method SpooledTemporaryFile.readline(__limit: int | None=…) -> AnyStr
  • changed: method SpooledTemporaryFile.readlines(hint: int=…) -> list[AnyStr] → method SpooledTemporaryFile.readlines(__hint: int=…) -> list[AnyStr]
  • added: method SpooledTemporaryFile.detach() -> io.RawIOBase
  • added: method SpooledTemporaryFile.read1(__size: int=…) -> AnyStr
  • added: method SpooledTemporaryFile.readinto(b: WriteableBuffer) -> int
  • added: method SpooledTemporaryFile.readinto1(b: WriteableBuffer) -> int
  • added: function tcgetwinsize(__fd: FileDescriptorLike) -> tuple[int, int]
  • added: function tcsetwinsize(__fd: FileDescriptorLike, __winsize: tuple[int, int]) -> None
  • added: export get_native_id
  • added: field Timer.args: Iterable[Any]
  • added: field Timer.finished: Event
  • added: field Timer.function: Callable[..., Any]
  • added: field Timer.interval: float
  • added: field Timer.kwargs: Mapping[str, Any]
  • added: function getprofile() -> _PF | None
  • added: function gettrace() -> _TF | None
  • added: variable ExceptHookArgs
  • added: variable excepthook
  • changed: field Listbox.itemconfig: Any → field Listbox.itemconfig
  • changed: field Listbox.select_anchor: Any → field Listbox.select_anchor
  • changed: field Listbox.select_clear: Any → field Listbox.select_clear
  • changed: field Listbox.select_includes: Any → field Listbox.select_includes
  • changed: field Listbox.select_set: Any → field Listbox.select_set
  • changed: method Listbox.activate(index) -> None → method Listbox.activate(index: str | int) -> None
  • changed: method Listbox.bbox(index) -> tuple[int, int, int, int] | None → method Listbox.bbox(index: str | int) -> tuple[int, int, int, int] | None
  • changed: method Listbox.delete(first, last: Any | None=…) -> None → method Listbox.delete(first: str | int, last: str | int | None=…) -> None
  • changed: method Listbox.get(first, last: Any | None=…) → method Listbox.get(first: str | int, last: str | int | None=…)
  • changed: method Listbox.index(index) → method Listbox.index(index: str | int) -> int
  • changed: method Listbox.insert(index, *elements) -> None → method Listbox.insert(index: str | int, *elements: str | float) -> None
  • changed: method Listbox.itemcget(index, option) → method Listbox.itemcget(index: str | int, option)
  • changed: method Listbox.itemconfigure(index, cnf: Any | None=…, **kw) → method Listbox.itemconfigure(index: str | int, cnf: Any | None=…, **kw)
  • changed: method Listbox.see(index) -> None → method Listbox.see(index: str | int) -> None
  • changed: method Listbox.selection_anchor(index) -> None → method Listbox.selection_anchor(index: str | int) -> None
  • changed: method Listbox.selection_clear(first, last: Any | None=…) -> None → method Listbox.selection_clear(first: str | int, last: str | int | None=…) -> None
  • changed: method Listbox.selection_includes(index) → method Listbox.selection_includes(index: str | int)
  • changed: method Listbox.selection_set(first, last: Any | None=…) -> None → method Listbox.selection_set(first: str | int, last: str | int | None=…) -> None
  • changed: method Menu.activate(index: _MenuIndex) -> None → method Menu.activate(index: str | int) -> None
  • changed: method Menu.delete(index1: _MenuIndex, index2: _MenuIndex | None=…) -> None → method Menu.delete(index1: str | int, index2: str | int | None=…) -> None
  • changed: method Menu.entrycget(index: _MenuIndex, option: str) -> Any → method Menu.entrycget(index: str | int, option: str) -> Any
  • changed: method Menu.entryconfigure(index: _MenuIndex, cnf: dict[str, Any] | None=…, **kw: Any) -> dict[str, tuple[str, str, str, Any, Any]] | None → method Menu.entryconfigure(index: str | int, cnf: dict[str, Any] | None=…, **kw: Any) -> dict[str, tuple[str, str, str, Any, Any]] | None
  • changed: method Menu.index(index: _MenuIndex) -> int | None → method Menu.index(index: str | int) -> int | None
  • changed: method Menu.insert_cascade(index: _MenuIndex, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, label: str=…, menu: Menu=…, state:… → method Menu.insert_cascade(index: str | int, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, label: str=…, menu: Menu=…, state: L…
  • changed: method Menu.insert_checkbutton(index: _MenuIndex, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, indicatoron: bool=…, label: str… → method Menu.insert_checkbutton(index: str | int, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, indicatoron: bool=…, label: str=…
  • changed: method Menu.insert_command(index: _MenuIndex, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, label: str=…, state: Literal['norma… → method Menu.insert_command(index: str | int, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, label: str=…, state: Literal['normal…
  • changed: method Menu.insert_radiobutton(index: _MenuIndex, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, indicatoron: bool=…, label: str… → method Menu.insert_radiobutton(index: str | int, cnf: dict[str, Any] | None=…, *, accelerator: str=…, activebackground: _Color=…, activeforeground: _Color=…, background: _Color=…, bitmap: _Bitmap=…, columnbreak: int=…, command: Callable[[], Any] | str=…, compound: _Compound=…, font: _FontDescription=…, foreground: _Color=…, hidemargin: bool=…, image: _ImageSpec=…, indicatoron: bool=…, label: str=…
  • changed: method Menu.insert_separator(index: _MenuIndex, cnf: dict[str, Any] | None=…, *, background: _Color=…) -> None → method Menu.insert_separator(index: str | int, cnf: dict[str, Any] | None=…, *, background: _Color=…) -> None
  • changed: method Menu.invoke(index: _MenuIndex) -> Any → method Menu.invoke(index: str | int) -> Any
  • changed: method Menu.tk_popup(x: int, y: int, entry: _MenuIndex=…) -> None → method Menu.tk_popup(x: int, y: int, entry: str | int=…) -> None
  • changed: method Menu.type(index: _MenuIndex) -> Literal['cascade', 'checkbutton', 'command', 'radiobutton', 'separator'] → method Menu.type(index: str | int) -> Literal['cascade', 'checkbutton', 'command', 'radiobutton', 'separator']
  • changed: method Menu.xposition(index: _MenuIndex) -> int → method Menu.xposition(index: str | int) -> int
  • changed: method Menu.yposition(index: _MenuIndex) -> int → method Menu.yposition(index: str | int) -> int
  • added: class Spinbox(Entry)
  • added: constructor Spinbox(master: tkinter.Misc | None=…, *, background: tkinter._Color=…, class_: str=…, command: Callable[[], Any] | str | list[str] | tuple[str, ...]=…, cursor: tkinter._Cursor=…, exportselection: bool=…, font: _FontDescription=…, foreground: tkinter._Color=…, format: str=…, from_: float=…, increment: float=…, invalidcommand: tkinter._EntryValidateCommand=…, justify: Literal['left', '…
  • added: field Spinbox.config
  • added: method Spinbox.configure(cnf: dict[str, Any] | None=…, *, background: tkinter._Color=…, command: Callable[[], Any] | str | list[str] | tuple[str, ...]=…, cursor: tkinter._Cursor=…, exportselection: bool=…, font: _FontDescription=…, foreground: tkinter._Color=…, format: str=…, from_: float=…, increment: float=…, invalidcommand: tkinter._EntryValidateCommand=…, justify: Literal['left', 'center', 'r…
  • added: method Spinbox.set(value: Any) -> None
  • added: variable COLONEQUAL: int
  • added: variable COMMENT: int
  • added: variable ENCODING: int
  • added: variable NL: int
  • added: variable SOFT_KEYWORD: int
  • added: variable TYPE_COMMENT: int
  • added: variable TYPE_IGNORE: int
  • added: function generate_tokens(readline: Callable[[], str]) -> Generator[TokenInfo, None, None]
  • added: method StackSummary.format_frame_summary(frame_summary: FrameSummary) -> str
  • added: method TracebackException.print(*, file: SupportsWrite[str] | None=…, chain: bool=…) -> None
  • removed: variable Vec2D: TypeAlias
  • added: class Vec2D(tuple[float, float])
  • added: method Vec2D.rotate(angle: float) -> Vec2D
  • removed: property CodeType.co_linetable -> object
  • changed: constructor CodeType(argcount: int, kwonlyargcount: int, nlocals: int, stacksize: int, flags: int, codestring: bytes, constants: tuple[Any, ...], names: tuple[str, ...], varnames: tuple[str, ...], filename: str, name: str, firstlineno: int, lnotab: bytes, freevars: tuple[str, ...]=…, cellvars: tuple[str, ...]=…) -> None → constructor CodeType(__argcount: int, __kwonlyargcount: int, __nlocals: int, __stacksize: int, __flags: int, __codestring: bytes, __constants: tuple[object, ...], __names: tuple[str, ...], __varnames: tuple[str, ...], __filename: str, __name: str, __firstlineno: int, __lnotab: bytes, __freevars: tuple[str, ...]=…, __cellvars: tuple[str, ...]=…) -> None
  • changed: method CodeType.replace(*, co_argcount: int=…, co_posonlyargcount: int=…, co_kwonlyargcount: int=…, co_nlocals: int=…, co_stacksize: int=…, co_flags: int=…, co_firstlineno: int=…, co_code: bytes=…, co_consts: tuple[Any, ...]=…, co_names: tuple[str, ...]=…, co_varnames: tuple[str, ...]=…, co_freevars: tuple[str, ...]=…, co_cellvars: tuple[str, ...]=…, co_filename: str=…, co_name: str=…, co_lnotab:… → method CodeType.replace(*, co_argcount: int=…, co_posonlyargcount: int=…, co_kwonlyargcount: int=…, co_nlocals: int=…, co_stacksize: int=…, co_flags: int=…, co_firstlineno: int=…, co_code: bytes=…, co_consts: tuple[object, ...]=…, co_names: tuple[str, ...]=…, co_varnames: tuple[str, ...]=…, co_freevars: tuple[str, ...]=…, co_cellvars: tuple[str, ...]=…, co_filename: str=…, co_name: str=…, co_lnot…
  • added: class ClassMethodDescriptorType
  • added: class GenericAlias
  • added: class MethodDescriptorType
  • added: class MethodWrapperType
  • added: class NoneType
  • added: class UnionType
  • added: class WrapperDescriptorType
  • added: constructor GenericAlias(origin: type, args: Any) -> None
  • added: function resolve_bases(bases: Iterable[object]) -> tuple[Any, ...]
  • added: property CodeType.co_exceptiontable -> bytes
  • added: property CodeType.co_linetable -> bytes
  • added: property CodeType.co_qualname -> str
  • added: property CoroutineType.cr_suspended -> bool
  • added: property GeneratorType.gi_suspended -> bool
  • added: variable BuiltinMethodType
  • added: variable CellType
  • added: variable EllipsisType
  • added: variable NotImplementedType
  • added: class AsyncContextManager(Protocol[_T_co])
  • added: class AsyncGenerator(AsyncIterator[_T_co], Generic[_T_co, _T_contra])
  • added: class AsyncIterable(Protocol[_T_co])
  • added: class AsyncIterator(AsyncIterable[_T_co], Protocol[_T_co])
  • added: class Awaitable(Protocol[_T_co])
  • added: class BinaryIO(IO[bytes])
  • added: class Collection(Iterable[_T_co], Container[_T_co], Protocol[_T_co])
  • added: class Coroutine(Awaitable[_V_co], Generic[_T_co, _T_contra, _V_co])
  • added: class ForwardRef
  • added: class IO(Iterator[AnyStr], Generic[AnyStr])
  • added: class Match(Generic[AnyStr])
  • added: class ParamSpec
  • added: class ParamSpecArgs
  • added: class ParamSpecKwargs
  • added: class Pattern(Generic[AnyStr])
  • added: class SupportsIndex(Protocol)
  • added: class TextIO(IO[str])
  • added: class TypeVarTuple
  • added: constructor ForwardRef(arg: str, is_argument: bool=…) -> None
  • added: constructor ParamSpec(name: str, *, bound: Any | None=…, contravariant: bool=…, covariant: bool=…) -> None
  • added: constructor ParamSpecArgs(origin: ParamSpec) -> None
  • added: constructor ParamSpecKwargs(origin: ParamSpec) -> None
  • added: constructor TypeVarTuple(name: str) -> None
  • added: function assert_never(__arg: Never) -> Never
  • added: function assert_type(__val: _T, __typ: Any) -> _T
  • added: function clear_overloads() -> None
  • added: function dataclass_transform(*, eq_default: bool=…, order_default: bool=…, kw_only_default: bool=…, field_specifiers: tuple[type[Any] | Callable[..., Any], ...]=…, **kwargs: Any) -> IdentityFunction
  • added: function final(f: _T) -> _T
  • added: function get_args(tp: Any) -> tuple[Any, ...]
  • added: function get_origin(tp: Any) -> Any | None
  • added: function get_overloads(func: Callable[..., object]) -> Sequence[Callable[..., object]]
  • added: function is_typeddict(tp: object) -> bool
  • added: function reveal_type(__obj: _T) -> _T
  • added: function runtime_checkable(cls: _TC) -> _TC
  • added: method AsyncGenerator.aclose() -> Awaitable[None]
  • added: method AsyncGenerator.asend(__value: _T_contra) -> Awaitable[_T_co]
  • added: method AsyncGenerator.athrow(__typ: Type[BaseException], __val: BaseException | object=…, __tb: TracebackType | None=…) -> Awaitable[_T_co] | (__typ: BaseException, __val: None=…, __tb: TracebackType | None=…) -> Awaitable[_T_co]
  • added: method Coroutine.close() -> None
  • added: method Coroutine.send(__value: _T_contra) -> _T_co
  • added: method Coroutine.throw(__typ: Type[BaseException], __val: BaseException | object=…, __tb: TracebackType | None=…) -> _T_co | (__typ: BaseException, __val: None=…, __tb: TracebackType | None=…) -> _T_co
  • added: method IO.close() -> None
  • added: method IO.fileno() -> int
  • added: method IO.flush() -> None
  • added: method IO.isatty() -> bool
  • added: method IO.read(__n: int=…) -> AnyStr
  • added: method IO.readable() -> bool
  • added: method IO.readline(__limit: int=…) -> AnyStr
  • added: method IO.readlines(__hint: int=…) -> list[AnyStr]
  • added: method IO.seek(__offset: int, __whence: int=…) -> int
  • added: method IO.seekable() -> bool
  • added: method IO.tell() -> int
  • added: method IO.truncate(__size: int | None=…) -> int
  • added: method IO.writable() -> bool
  • added: method IO.write(__s: AnyStr) -> int
  • added: method IO.writelines(__lines: Iterable[AnyStr]) -> None
  • added: method Match.end(__group: int | str=…) -> int
  • added: method Match.expand(template: str) -> str | (template: ReadableBuffer) -> bytes
  • added: method Match.group(__group: _Literal[0]=…) -> AnyStr | (__group: str | int) -> AnyStr | Any | (__group1: str | int, __group2: str | int, *groups: str | int) -> tuple[AnyStr | Any, ...]
  • added: method Match.groupdict() -> dict[str, AnyStr | Any] | (default: _T) -> dict[str, AnyStr | _T]
  • added: method Match.groups() -> tuple[AnyStr | Any, ...] | (default: _T) -> tuple[AnyStr | _T, ...]
  • added: method Match.span(__group: int | str=…) -> tuple[int, int]
  • added: method Match.start(__group: int | str=…) -> int
  • added: method Pattern.findall(string: str, pos: int=…, endpos: int=…) -> list[Any] | (string: ReadableBuffer, pos: int=…, endpos: int=…) -> list[Any]
  • added: method Pattern.finditer(string: str, pos: int=…, endpos: int=…) -> Iterator[Match[str]] | (string: ReadableBuffer, pos: int=…, endpos: int=…) -> Iterator[Match[bytes]]
  • added: method Pattern.fullmatch(string: str, pos: int=…, endpos: int=…) -> Match[str] | None | (string: ReadableBuffer, pos: int=…, endpos: int=…) -> Match[bytes] | None
  • added: method Pattern.match(string: str, pos: int=…, endpos: int=…) -> Match[str] | None | (string: ReadableBuffer, pos: int=…, endpos: int=…) -> Match[bytes] | None
  • added: method Pattern.search(string: str, pos: int=…, endpos: int=…) -> Match[str] | None | (string: ReadableBuffer, pos: int=…, endpos: int=…) -> Match[bytes] | None
  • added: method Pattern.split(string: str, maxsplit: int=…) -> list[str | Any] | (string: ReadableBuffer, maxsplit: int=…) -> list[bytes | Any]
  • added: method Pattern.sub(repl: str | Callable[[Match[str]], str], string: str, count: int=…) -> str | (repl: ReadableBuffer | Callable[[Match[bytes]], ReadableBuffer], string: ReadableBuffer, count: int=…) -> bytes
  • added: method Pattern.subn(repl: str | Callable[[Match[str]], str], string: str, count: int=…) -> tuple[str, int] | (repl: ReadableBuffer | Callable[[Match[bytes]], ReadableBuffer], string: ReadableBuffer, count: int=…) -> tuple[bytes, int]
  • added: property AsyncGenerator.ag_await -> Any
  • added: property AsyncGenerator.ag_code -> CodeType
  • added: property AsyncGenerator.ag_frame -> FrameType
  • added: property AsyncGenerator.ag_running -> bool
  • added: property Coroutine.cr_await -> Any | None
  • added: property Coroutine.cr_code -> CodeType
  • added: property Coroutine.cr_frame -> FrameType
  • added: property Coroutine.cr_running -> bool
  • added: property IO.closed -> bool
  • added: property IO.mode -> str
  • added: property IO.name -> str
  • added: property Match.endpos -> int
  • added: property Match.lastgroup -> str | None
  • added: property Match.lastindex -> int | None
  • added: property Match.pos -> int
  • added: property Match.re -> Pattern[AnyStr]
  • added: property Match.regs -> tuple[tuple[int, int], ...]
  • added: property Match.string -> AnyStr
  • added: property ParamSpec.args -> ParamSpecArgs
  • added: property ParamSpec.kwargs -> ParamSpecKwargs
  • added: property Pattern.flags -> int
  • added: property Pattern.groupindex -> Mapping[str, int]
  • added: property Pattern.groups -> int
  • added: property Pattern.pattern -> AnyStr
  • added: property TextIO.buffer -> BinaryIO
  • added: property TextIO.encoding -> str
  • added: property TextIO.errors -> str | None
  • added: property TextIO.line_buffering -> int
  • added: property TextIO.newlines -> Any
  • added: variable Annotated: _SpecialForm
  • added: variable ChainMap
  • added: variable Concatenate: _SpecialForm
  • added: variable Final: _SpecialForm
  • added: variable Literal: _SpecialForm
  • added: variable LiteralString: _SpecialForm
  • added: variable Never: _SpecialForm
  • added: variable NoReturn: _SpecialForm
  • added: variable NotRequired: _SpecialForm
  • added: variable OrderedDict
  • added: variable Protocol: _SpecialForm
  • added: variable Required: _SpecialForm
  • added: variable Self: _SpecialForm
  • added: variable TypeAlias: _SpecialForm
  • added: variable TypeGuard: _SpecialForm
  • added: variable TypedDict: object
  • added: variable Unpack: _SpecialForm
  • changed: function dataclass_transform(*, eq_default: bool=…, order_default: bool=…, kw_only_default: bool=…, field_specifiers: tuple[type[Any] | Callable[..., Any], ...]=…, **kwargs: object) -> Callable[[_T], _T] → function dataclass_transform(*, eq_default: bool=…, order_default: bool=…, kw_only_default: bool=…, field_specifiers: tuple[type[Any] | Callable[..., Any], ...]=…, **kwargs: object) -> IdentityFunction
  • added: class NamedTuple(tuple[Any, ...])
  • added: constructor NamedTuple(typename: str, fields: Iterable[tuple[str, Any]]=…) -> None | (typename: str, fields: None=…, **kwargs: Any) -> None
  • added: export NamedTuple
  • added: method UCD.is_normalized(__form: str, __unistr: str) -> bool
  • added: export addModuleCleanup
  • added: export doModuleCleanups
  • added: export enterModuleContext
  • added: async method IsolatedAsyncioTestCase.enterAsyncContext(cm: AbstractAsyncContextManager[_T]) -> _T
  • removed: method TestCase.assertAlmostEquals(first: float, second: float, places: int=…, msg: Any=…, delta: float=…) -> None
  • removed: method TestCase.assertNotAlmostEquals(first: float, second: float, places: int=…, msg: Any=…, delta: float=…) -> None
  • removed: method TestCase.failIfAlmostEqual(first: float, second: float, places: int=…, msg: Any=…) -> None
  • removed: method TestCase.failUnlessAlmostEqual(first: float, second: float, places: int=…, msg: Any=…) -> None
  • changed: method TestCase.assertAlmostEqual(first: float, second: float, places: int | None=…, msg: Any=…, delta: float | None=…) -> None | (first: datetime.datetime, second: datetime.datetime, places: int | None=…, msg: Any=…, delta: datetime.timedelta | None=…) -> None → method TestCase.assertAlmostEqual(first: _S, second: _S, places: None, msg: Any, delta: _SupportsAbsAndDunderGE) -> None | (first: _S, second: _S, places: None=…, msg: Any=…, *, delta: _SupportsAbsAndDunderGE) -> None | (first: SupportsSub[_T, SupportsAbs[SupportsRound[object]]], second: _T, places: int | None=…, msg: Any=…, delta: None=…) -> None | (first: _T, second: SupportsRSub[_T, SupportsAb…
  • changed: method TestCase.assertNotAlmostEqual(first: float, second: float, *, msg: Any=…) -> None | (first: float, second: float, places: int | None=…, msg: Any=…) -> None | (first: float, second: float, *, msg: Any=…, delta: float | None=…) -> None | (first: datetime.datetime, second: datetime.datetime, places: int | None=…, msg: Any=…, delta: datetime.timedelta | None=…) -> None → method TestCase.assertNotAlmostEqual(first: _S, second: _S, places: None, msg: Any, delta: _SupportsAbsAndDunderGE) -> None | (first: _S, second: _S, places: None=…, msg: Any=…, *, delta: _SupportsAbsAndDunderGE) -> None | (first: SupportsSub[_T, SupportsAbs[SupportsRound[object]]], second: _T, places: int | None=…, msg: Any=…, delta: None=…) -> None | (first: _T, second: SupportsRSub[_T, Support…
  • added: field TestCase.assertAlmostEquals
  • added: field TestCase.assertNotAlmostEquals
  • added: field TestCase.failIfAlmostEqual
  • added: field TestCase.failUnlessAlmostEqual
  • added: function enterModuleContext(cm: AbstractContextManager[_T]) -> _T
  • added: method TestCase.enterContext(cm: AbstractContextManager[_T]) -> _T
  • added: static method TestCase.enterClassContext(cm: AbstractContextManager[_T]) -> _T
  • removed: variable PropertyMock
  • added: class PropertyMock(Mock)
  • added: method FancyURLopener.http_error_308(url: str, fp: IO[bytes], errcode: int, errmsg: str, headers: HTTPMessage, data: bytes | None=…) -> _UrlopenRet | addinfourl | None
  • added: method HTTPRedirectHandler.http_error_308(req: Request, fp: IO[bytes], code: int, msg: str, headers: HTTPMessage) -> _UrlopenRet | None
  • changed: class Element(MutableSequence[Element]) → class Element
  • changed: method Element.keys() -> KeysView[str] → method Element.keys() -> dict_keys[str, str]
  • changed: method ElementTree.getroot() -> Element → method ElementTree.getroot() -> Element | Any
  • changed: method XMLPullParser.read_events() -> Iterator[tuple[str, Element]] → method XMLPullParser.read_events() -> Iterator[tuple[str, Any]]
  • added: class C14NWriterTarget
  • added: constructor C14NWriterTarget(write: Callable[[str], Any], *, with_comments: bool=…, strip_text: bool=…, rewrite_prefixes: bool=…, qname_aware_tags: Iterable[str] | None=…, qname_aware_attrs: Iterable[str] | None=…, exclude_attrs: Iterable[str] | None=…, exclude_tags: Iterable[str] | None=…) -> None
  • added: function canonicalize(xml_data: str | bytes | None=…, *, out: None=…, from_file: _FileRead | None=…, with_comments: bool=…, strip_text: bool=…, rewrite_prefixes: bool=…, qname_aware_tags: Iterable[str] | None=…, qname_aware_attrs: Iterable[str] | None=…, exclude_attrs: Iterable[str] | None=…, exclude_tags: Iterable[str] | None=…) -> str | (xml_data: str | bytes | None=…, *, out: SupportsWrite[str…
  • added: function indent(tree: Element | ElementTree, space: str=…, level: int=…) -> None
  • added: method C14NWriterTarget.comment(text: str) -> None
  • added: method C14NWriterTarget.data(data: str) -> None
  • added: method C14NWriterTarget.end(tag: str) -> None
  • added: method C14NWriterTarget.pi(target: str, data: str) -> None
  • added: method C14NWriterTarget.start(tag: str, attrs: Mapping[str, str]) -> None
  • added: method C14NWriterTarget.start_ns(prefix: str, uri: str) -> None
  • changed: variable all_features: Any → variable all_features: list[str]
  • changed: variable all_properties: Any → variable all_properties: list[str]
  • changed: variable feature_external_ges: Any → variable feature_external_ges: str
  • changed: variable feature_external_pes: Any → variable feature_external_pes: str
  • changed: variable feature_namespace_prefixes: Any → variable feature_namespace_prefixes: str
  • changed: variable feature_namespaces: Any → variable feature_namespaces: str
  • changed: variable feature_string_interning: Any → variable feature_string_interning: str
  • changed: variable feature_validation: Any → variable feature_validation: str
  • changed: variable property_declaration_handler: Any → variable property_declaration_handler: str
  • changed: variable property_dom_node: Any → variable property_dom_node: str
  • changed: variable property_encoding: Any → variable property_encoding: str
  • changed: variable property_interning_dict: Any → variable property_interning_dict: str
  • changed: variable property_lexical_handler: Any → variable property_lexical_handler: str
  • changed: variable property_xml_string: Any → variable property_xml_string: str
  • changed: variable version: Any → variable version: str
  • added: class LexicalHandler
  • added: method LexicalHandler.comment(content: str) -> object
  • added: method LexicalHandler.endCDATA() -> object
  • added: method LexicalHandler.endDTD() -> object
  • added: method LexicalHandler.startCDATA() -> object
  • added: method LexicalHandler.startDTD(name: str, public_id: str | None, system_id: str | None) -> object
  • changed: field SimpleXMLRPCRequestHandler.rpc_paths: tuple[str, str] → field SimpleXMLRPCRequestHandler.rpc_paths: ClassVar[tuple[str, ...]]
  • changed: constructor ZipFile(file: StrPath | IO[bytes], mode: _ZipFileMode=…, compression: int=…, allowZip64: bool=…) -> None → constructor ZipFile(file: StrPath | IO[bytes], mode: Literal['r']=…, compression: int=…, allowZip64: bool=…, compresslevel: int | None=…, *, strict_timestamps: bool=…, metadata_encoding: str | None) -> None | (file: StrPath | IO[bytes], mode: _ZipFileMode=…, compression: int=…, allowZip64: bool=…, compresslevel: int | None=…, *, strict_timestamps: bool=…, metadata_encoding: None=…) -> None
  • changed: method ZipFile.mkdir(zinfo_or_directory: str | ZipInfo, mode: int=…) -> None → method ZipFile.mkdir(zinfo_or_directory_name: str | ZipInfo, mode: int=…) -> None
  • added: class Path
  • added: constructor Path(root: ZipFile | StrPath | IO[bytes], at: str=…) -> None
  • added: method Path.exists() -> bool
  • added: method Path.is_dir() -> bool
  • added: method Path.is_file() -> bool
  • added: method Path.iterdir() -> Iterator[Path]
  • added: method Path.joinpath(add: StrPath) -> Path
  • added: method Path.read_bytes() -> bytes
  • added: method Path.read_text(encoding: str | None=…, errors: str | None=…, newline: str | None=…, line_buffering: bool=…, write_through: bool=…) -> str
  • added: property Path.filename -> PathLike[str]
  • added: property Path.name -> str
  • added: property Path.open -> _PathOpenProtocol
  • added: property Path.parent -> PathLike[str]
  • added: property Path.stem -> str
  • added: property Path.suffix -> str
  • added: property Path.suffixes -> list[str]
  • added: function plural_s(s: Union[int, Sized]) -> str
  • added: class AttributeMaybeDefinedVisitor(BaseAnalysisVisitor[str])
  • added: class AttributeMaybeUndefinedVisitor(BaseAnalysisVisitor[str])
  • added: constructor AttributeMaybeDefinedVisitor(self_reg: Register) -> None
  • added: constructor AttributeMaybeUndefinedVisitor(self_reg: Register) -> None
  • added: function analyze_always_defined_attrs(class_irs: List[ClassIR]) -> None
  • added: function analyze_always_defined_attrs_in_class(cl: ClassIR, seen: Set[ClassIR]) -> None
  • added: function analyze_maybe_defined_attrs_in_init(blocks: List[BasicBlock], self_reg: Register, attrs_with_defaults: Set[str], cfg: CFG) -> AnalysisResult[str]
  • added: function analyze_maybe_undefined_attrs_in_init(blocks: List[BasicBlock], self_reg: Register, initial_undefined: Set[str], cfg: CFG) -> AnalysisResult[str]
  • added: function attributes_initialized_by_init_call(op: Call) -> Set[str]
  • added: function attributes_maybe_initialized_by_init_call(op: Call) -> Set[str]
  • added: function find_always_defined_attributes(blocks: List[BasicBlock], self_reg: Register, all_attrs: Set[str], maybe_defined: AnalysisResult[str], maybe_undefined: AnalysisResult[str], dirty: AnalysisResult[None]) -> Set[str]
  • added: function find_sometimes_defined_attributes(blocks: List[BasicBlock], self_reg: Register, maybe_defined: AnalysisResult[str], dirty: AnalysisResult[None]) -> Set[str]
  • added: function mark_attr_initialiation_ops(blocks: List[BasicBlock], self_reg: Register, maybe_defined: AnalysisResult[str], dirty: AnalysisResult[None]) -> None
  • added: function update_always_defined_attrs_using_subclasses(cl: ClassIR, seen: Set[ClassIR]) -> None
  • added: method AttributeMaybeDefinedVisitor.visit_assign(op: Assign) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeDefinedVisitor.visit_assign_multi(op: AssignMulti) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeDefinedVisitor.visit_branch(op: Branch) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeDefinedVisitor.visit_register_op(op: RegisterOp) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeDefinedVisitor.visit_return(op: Return) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeDefinedVisitor.visit_set_mem(op: SetMem) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeDefinedVisitor.visit_unreachable(op: Unreachable) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_assign(op: Assign) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_assign_multi(op: AssignMulti) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_branch(op: Branch) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_register_op(op: RegisterOp) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_return(op: Return) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_set_mem(op: SetMem) -> Tuple[Set[str], Set[str]]
  • added: method AttributeMaybeUndefinedVisitor.visit_unreachable(op: Unreachable) -> Tuple[Set[str], Set[str]]
  • added: variable GenAndKill
  • added: variable dump_always_defined: Final
  • changed: class BaseAnalysisVisitor(OpVisitor[GenAndKill]) → class BaseAnalysisVisitor(OpVisitor[GenAndKill[T]])
  • changed: class BorrowedArgumentsVisitor(BaseAnalysisVisitor) → class BorrowedArgumentsVisitor(BaseAnalysisVisitor[Value])
  • changed: class DefinedVisitor(BaseAnalysisVisitor) → class DefinedVisitor(BaseAnalysisVisitor[Value])
  • changed: class LivenessVisitor(BaseAnalysisVisitor) → class LivenessVisitor(BaseAnalysisVisitor[Value])
  • changed: class UndefinedVisitor(BaseAnalysisVisitor) → class UndefinedVisitor(BaseAnalysisVisitor[Value])
  • changed: function run_analysis(blocks: List[BasicBlock], cfg: CFG, gen_and_kill: OpVisitor[Tuple[Set[T], Set[T]]], initial: Set[T], kind: int, backward: bool, universe: Optional[Set[T]]=…) -> AnalysisResult[T] → function run_analysis(blocks: List[BasicBlock], cfg: CFG, gen_and_kill: OpVisitor[GenAndKill[T]], initial: Set[T], kind: int, backward: bool, universe: Optional[Set[T]]=…) -> AnalysisResult[T]
  • changed: method BaseAnalysisVisitor.visit_assign(op: Assign) -> GenAndKill → method BaseAnalysisVisitor.visit_assign(op: Assign) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill → method BaseAnalysisVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_box(op: Box) -> GenAndKill → method BaseAnalysisVisitor.visit_box(op: Box) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_call(op: Call) -> GenAndKill → method BaseAnalysisVisitor.visit_call(op: Call) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_call_c(op: CallC) -> GenAndKill → method BaseAnalysisVisitor.visit_call_c(op: CallC) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_cast(op: Cast) -> GenAndKill → method BaseAnalysisVisitor.visit_cast(op: Cast) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_comparison_op(op: ComparisonOp) -> GenAndKill → method BaseAnalysisVisitor.visit_comparison_op(op: ComparisonOp) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_get_attr(op: GetAttr) -> GenAndKill → method BaseAnalysisVisitor.visit_get_attr(op: GetAttr) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_get_element_ptr(op: GetElementPtr) -> GenAndKill → method BaseAnalysisVisitor.visit_get_element_ptr(op: GetElementPtr) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_goto(op: Goto) -> GenAndKill → method BaseAnalysisVisitor.visit_goto(op: Goto) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_init_static(op: InitStatic) -> GenAndKill → method BaseAnalysisVisitor.visit_init_static(op: InitStatic) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_int_op(op: IntOp) -> GenAndKill → method BaseAnalysisVisitor.visit_int_op(op: IntOp) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_keep_alive(op: KeepAlive) -> GenAndKill → method BaseAnalysisVisitor.visit_keep_alive(op: KeepAlive) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_load_address(op: LoadAddress) -> GenAndKill → method BaseAnalysisVisitor.visit_load_address(op: LoadAddress) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_load_error_value(op: LoadErrorValue) -> GenAndKill → method BaseAnalysisVisitor.visit_load_error_value(op: LoadErrorValue) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_load_global(op: LoadGlobal) -> GenAndKill → method BaseAnalysisVisitor.visit_load_global(op: LoadGlobal) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_load_literal(op: LoadLiteral) -> GenAndKill → method BaseAnalysisVisitor.visit_load_literal(op: LoadLiteral) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_load_mem(op: LoadMem) -> GenAndKill → method BaseAnalysisVisitor.visit_load_mem(op: LoadMem) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_load_static(op: LoadStatic) -> GenAndKill → method BaseAnalysisVisitor.visit_load_static(op: LoadStatic) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_method_call(op: MethodCall) -> GenAndKill → method BaseAnalysisVisitor.visit_method_call(op: MethodCall) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_raise_standard_error(op: RaiseStandardError) -> GenAndKill → method BaseAnalysisVisitor.visit_raise_standard_error(op: RaiseStandardError) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_register_op(op: RegisterOp) -> GenAndKill → method BaseAnalysisVisitor.visit_register_op(op: RegisterOp) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_set_attr(op: SetAttr) -> GenAndKill → method BaseAnalysisVisitor.visit_set_attr(op: SetAttr) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_set_mem(op: SetMem) -> GenAndKill → method BaseAnalysisVisitor.visit_set_mem(op: SetMem) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_truncate(op: Truncate) -> GenAndKill → method BaseAnalysisVisitor.visit_truncate(op: Truncate) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_tuple_get(op: TupleGet) -> GenAndKill → method BaseAnalysisVisitor.visit_tuple_get(op: TupleGet) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_tuple_set(op: TupleSet) -> GenAndKill → method BaseAnalysisVisitor.visit_tuple_set(op: TupleSet) -> GenAndKill[T]
  • changed: method BaseAnalysisVisitor.visit_unbox(op: Unbox) -> GenAndKill → method BaseAnalysisVisitor.visit_unbox(op: Unbox) -> GenAndKill[T]
  • changed: method BorrowedArgumentsVisitor.visit_assign(op: Assign) -> GenAndKill → method BorrowedArgumentsVisitor.visit_assign(op: Assign) -> GenAndKill[Value]
  • changed: method BorrowedArgumentsVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill → method BorrowedArgumentsVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill[Value]
  • changed: method BorrowedArgumentsVisitor.visit_branch(op: Branch) -> GenAndKill → method BorrowedArgumentsVisitor.visit_branch(op: Branch) -> GenAndKill[Value]
  • changed: method BorrowedArgumentsVisitor.visit_register_op(op: RegisterOp) -> GenAndKill → method BorrowedArgumentsVisitor.visit_register_op(op: RegisterOp) -> GenAndKill[Value]
  • changed: method BorrowedArgumentsVisitor.visit_return(op: Return) -> GenAndKill → method BorrowedArgumentsVisitor.visit_return(op: Return) -> GenAndKill[Value]
  • changed: method BorrowedArgumentsVisitor.visit_set_mem(op: SetMem) -> GenAndKill → method BorrowedArgumentsVisitor.visit_set_mem(op: SetMem) -> GenAndKill[Value]
  • changed: method BorrowedArgumentsVisitor.visit_unreachable(op: Unreachable) -> GenAndKill → method BorrowedArgumentsVisitor.visit_unreachable(op: Unreachable) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_assign(op: Assign) -> GenAndKill → method DefinedVisitor.visit_assign(op: Assign) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill → method DefinedVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_branch(op: Branch) -> GenAndKill → method DefinedVisitor.visit_branch(op: Branch) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_register_op(op: RegisterOp) -> GenAndKill → method DefinedVisitor.visit_register_op(op: RegisterOp) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_return(op: Return) -> GenAndKill → method DefinedVisitor.visit_return(op: Return) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_set_mem(op: SetMem) -> GenAndKill → method DefinedVisitor.visit_set_mem(op: SetMem) -> GenAndKill[Value]
  • changed: method DefinedVisitor.visit_unreachable(op: Unreachable) -> GenAndKill → method DefinedVisitor.visit_unreachable(op: Unreachable) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_assign(op: Assign) -> GenAndKill → method LivenessVisitor.visit_assign(op: Assign) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill → method LivenessVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_branch(op: Branch) -> GenAndKill → method LivenessVisitor.visit_branch(op: Branch) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_register_op(op: RegisterOp) -> GenAndKill → method LivenessVisitor.visit_register_op(op: RegisterOp) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_return(op: Return) -> GenAndKill → method LivenessVisitor.visit_return(op: Return) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_set_mem(op: SetMem) -> GenAndKill → method LivenessVisitor.visit_set_mem(op: SetMem) -> GenAndKill[Value]
  • changed: method LivenessVisitor.visit_unreachable(op: Unreachable) -> GenAndKill → method LivenessVisitor.visit_unreachable(op: Unreachable) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_assign(op: Assign) -> GenAndKill → method UndefinedVisitor.visit_assign(op: Assign) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill → method UndefinedVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_branch(op: Branch) -> GenAndKill → method UndefinedVisitor.visit_branch(op: Branch) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_register_op(op: RegisterOp) -> GenAndKill → method UndefinedVisitor.visit_register_op(op: RegisterOp) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_return(op: Return) -> GenAndKill → method UndefinedVisitor.visit_return(op: Return) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_set_mem(op: SetMem) -> GenAndKill → method UndefinedVisitor.visit_set_mem(op: SetMem) -> GenAndKill[Value]
  • changed: method UndefinedVisitor.visit_unreachable(op: Unreachable) -> GenAndKill → method UndefinedVisitor.visit_unreachable(op: Unreachable) -> GenAndKill[Value]
  • added: method BaseAnalysisVisitor.visit_extend(op: Extend) -> GenAndKill[T]
  • added: method OpChecker.visit_extend(op: Extend) -> None
  • added: class SelfLeakedVisitor(OpVisitor[GenAndKill])
  • added: constructor SelfLeakedVisitor(self_reg: Register) -> None
  • added: function analyze_self_leaks(blocks: List[BasicBlock], self_reg: Register, cfg: CFG) -> AnalysisResult[None]
  • added: method SelfLeakedVisitor.check_register_op(op: RegisterOp) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_assign(op: Assign) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_assign_multi(op: AssignMulti) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_box(op: Box) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_branch(op: Branch) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_call(op: Call) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_call_c(op: CallC) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_cast(op: Cast) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_comparison_op(op: ComparisonOp) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_extend(op: Extend) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_get_attr(op: GetAttr) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_get_element_ptr(op: GetElementPtr) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_goto(op: Goto) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_init_static(op: InitStatic) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_int_op(op: IntOp) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_keep_alive(op: KeepAlive) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_load_address(op: LoadAddress) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_load_error_value(op: LoadErrorValue) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_load_global(op: LoadGlobal) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_load_literal(op: LoadLiteral) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_load_mem(op: LoadMem) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_load_static(op: LoadStatic) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_method_call(op: MethodCall) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_raise_standard_error(op: RaiseStandardError) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_return(op: Return) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_set_attr(op: SetAttr) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_set_mem(op: SetMem) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_truncate(op: Truncate) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_tuple_get(op: TupleGet) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_tuple_set(op: TupleSet) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_unbox(op: Unbox) -> GenAndKill
  • added: method SelfLeakedVisitor.visit_unreachable(op: Unreachable) -> GenAndKill
  • added: variable CLEAN: GenAndKill
  • added: variable DIRTY: GenAndKill
  • added: variable GenAndKill
  • changed: method Emitter.emit_tuple_cast(src: str, dest: str, typ: RTuple, declare_dest: bool, err: str, src_type: Optional[RType]) -> None → method Emitter.emit_tuple_cast(src: str, dest: str, typ: RTuple, declare_dest: bool, error: ErrorHandler, src_type: Optional[RType]) -> None
  • changed: method Emitter.emit_union_cast(src: str, dest: str, typ: RUnion, declare_dest: bool, err: str, optional: bool, src_type: Optional[RType]) -> None → method Emitter.emit_union_cast(src: str, dest: str, typ: RUnion, declare_dest: bool, error: ErrorHandler, optional: bool, src_type: Optional[RType], raise_exception: bool) -> None
  • added: class TracebackAndGotoHandler(ErrorHandler)
  • added: constructor TracebackAndGotoHandler(label: str, source_path: str, module_name: str, traceback_entry: Tuple[str, int]) -> None
  • added: method Emitter.emit_cast_error_handler(error: ErrorHandler, src: str, dest: str, typ: RType, raise_exception: bool) -> None
  • added: method Emitter.emit_traceback(source_path: str, module_name: str, traceback_entry: Tuple[str, int]) -> None
  • added: method Emitter.emit_type_error_traceback(source_path: str, module_name: str, traceback_entry: Tuple[str, int], *, typ: RType, src: str) -> None
  • added: variable DEBUG_ERRORS: Final
  • changed: function generate_new_for_class(cl: ClassIR, func_name: str, vtable_name: str, setup_name: str, emitter: Emitter) -> None → function generate_new_for_class(cl: ClassIR, func_name: str, vtable_name: str, setup_name: str, init_fn: Optional[FuncIR], emitter: Emitter) -> None
  • removed: variable DEBUG_ERRORS
  • added: method FunctionEmitterVisitor.visit_extend(op: Extend) -> None
  • added: method ClassIR.is_always_defined(name: str) -> bool
  • added: method ClassIR.is_serializable() -> bool
  • removed: field Call.error_kind
  • removed: field MethodCall.error_kind
  • removed: field Unbox.error_kind
  • changed: constructor Cast(src: Value, typ: RType, line: int) -> None → constructor Cast(src: Value, typ: RType, line: int, *, borrow: bool=…) -> None
  • changed: constructor GetAttr(obj: Value, attr: str, line: int) -> None → constructor GetAttr(obj: Value, attr: str, line: int, *, borrow: bool=…) -> None
  • changed: constructor Truncate(src: Value, src_type: RType, dst_type: RType, line: int=…) -> None → constructor Truncate(src: Value, dst_type: RType, line: int=…) -> None
  • added: class Extend(RegisterOp)
  • added: constructor Extend(src: Value, dst_type: RType, signed: bool, line: int=…) -> None
  • added: field ComparisonOp.signed_ops: Final
  • added: field Extend.error_kind
  • added: method Extend.accept(visitor: OpVisitor[T]) -> T
  • added: method Extend.sources() -> List[Value]
  • added: method Extend.stolen() -> List[Value]
  • added: method OpVisitor.visit_extend(op: Extend) -> T
  • added: method SetAttr.mark_as_initializer() -> None
  • added: variable ERR_MAGIC_OVERLAPPING: Final
  • added: variable int_op_to_id: Final
  • added: method IRPrettyPrintVisitor.borrow_prefix(op: Op) -> str
  • added: method IRPrettyPrintVisitor.visit_extend(op: Extend) -> str
  • changed: constructor RPrimitive(name: str, is_unboxed: bool, is_refcounted: bool, ctype: str=…, size: int=…) -> None → constructor RPrimitive(name: str, *, is_unboxed: bool, is_refcounted: bool, is_native_int: bool=…, is_signed: bool=…, ctype: str=…, size: int=…, error_overlap: bool=…) -> None
  • added: field RType.error_overlap
  • added: function is_fixed_width_rtype(rtype: RType) -> bool
  • added: variable c_pointer_rprimitive: Final
  • added: function is_borrow_friendly_expr(self: IRBuilder, expr: Expression) -> bool
  • added: function maybe_process_conditional_comparison(self: IRBuilder, e: Expression, true: BasicBlock, false: BasicBlock) -> bool
  • added: function process_conditional(self: IRBuilder, e: Expression, true: BasicBlock, false: BasicBlock) -> None
  • removed: method IRBuilder.maybe_process_conditional_comparison(e: Expression, true: BasicBlock, false: BasicBlock) -> bool
  • removed: method IRBuilder.process_conditional(e: Expression, true: BasicBlock, false: BasicBlock) -> None
  • changed: method IRBuilder.accept(node: Expression) -> Value | (node: Statement) -> None → method IRBuilder.accept(node: Expression, *, can_borrow: bool=…) -> Value | (node: Statement) -> None
  • changed: method IRBuilder.read(target: Union[Value, AssignmentTarget], line: int=…) -> Value → method IRBuilder.read(target: Union[Value, AssignmentTarget], line: int=…, can_borrow: bool=…) -> Value
  • added: method IRBuilder.flush_keep_alives() -> None
  • added: method IRBuilder.is_native_attr_ref(expr: MemberExpr) -> bool
  • added: variable int_borrow_friendly_op: Final
  • removed: function generate_attr_defaults(builder: IRBuilder, cdef: ClassDef, skip: Optional[Callable[[str, AssignmentStmt], bool]]=…) -> None
  • added: function find_attr_initializers(builder: IRBuilder, cdef: ClassDef, skip: Optional[Callable[[str, AssignmentStmt], bool]]=…) -> Tuple[Set[str], List[AssignmentStmt]]
  • added: function generate_attr_defaults_init(builder: IRBuilder, cdef: ClassDef, default_assignments: List[AssignmentStmt]) -> None
  • added: function translate_is_none(builder: IRBuilder, expr: Expression, negated: bool) -> Value
  • added: function try_optimize_int_floor_divide(expr: OpExpr) -> OpExpr
  • changed: method LowLevelIRBuilder.coerce(src: Value, target_type: RType, line: int, force: bool=…) -> Value → method LowLevelIRBuilder.coerce(src: Value, target_type: RType, line: int, force: bool=…, *, can_borrow: bool=…) -> Value
  • changed: method LowLevelIRBuilder.gen_method_call(base: Value, name: str, arg_values: List[Value], result_type: Optional[RType], line: int, arg_kinds: Optional[List[ArgKind]]=…, arg_names: Optional[List[Optional[str]]]=…) -> Value → method LowLevelIRBuilder.gen_method_call(base: Value, name: str, arg_values: List[Value], result_type: Optional[RType], line: int, arg_kinds: Optional[List[ArgKind]]=…, arg_names: Optional[List[Optional[str]]]=…, can_borrow: bool=…) -> Value
  • changed: method LowLevelIRBuilder.get_attr(obj: Value, attr: str, result_type: RType, line: int) -> Value → method LowLevelIRBuilder.get_attr(obj: Value, attr: str, result_type: RType, line: int, *, borrow: bool=…) -> Value
  • changed: method LowLevelIRBuilder.matching_call_c(candidates: List[CFunctionDescription], args: List[Value], line: int, result_type: Optional[RType]=…) -> Optional[Value] → method LowLevelIRBuilder.matching_call_c(candidates: List[CFunctionDescription], args: List[Value], line: int, result_type: Optional[RType]=…, can_borrow: bool=…) -> Optional[Value]
  • changed: method LowLevelIRBuilder.translate_special_method_call(base_reg: Value, name: str, args: List[Value], result_type: Optional[RType], line: int) -> Optional[Value] → method LowLevelIRBuilder.translate_special_method_call(base_reg: Value, name: str, args: List[Value], result_type: Optional[RType], line: int, can_borrow: bool=…) -> Optional[Value]
  • changed: method LowLevelIRBuilder.unbox_or_cast(src: Value, target_type: RType, line: int) -> Value → method LowLevelIRBuilder.unbox_or_cast(src: Value, target_type: RType, line: int, *, can_borrow: bool=…) -> Value
  • added: method LowLevelIRBuilder.flush_keep_alives() -> None
  • added: method Mapper.is_native_module(module: str) -> bool
  • added: method Mapper.is_native_module_ref_expr(expr: RefExpr) -> bool
  • added: method Mapper.is_native_ref_expr(expr: RefExpr) -> bool
  • changed: constructor AssignmentTargetAttr(obj: Value, attr: str) -> None → constructor AssignmentTargetAttr(obj: Value, attr: str, can_borrow: bool=…) -> None
  • added: variable int32_divide_op
  • added: variable int32_mod_op
  • added: variable int32_overflow
  • added: variable int64_divide_op
  • added: variable int64_mod_op
  • added: variable int64_to_int_op
  • added: variable int_to_int32_op
  • added: variable int_to_int64_op
  • added: variable ssize_t_to_int_op
  • added: function primitive_call(desc: CFunctionDescription, args: List[Value], line: int) -> CallC