diff --git a/misc/analyze_cache.py b/misc/analyze_cache.py index f911522f5c648..7cfddf58aca55 100644 --- a/misc/analyze_cache.py +++ b/misc/analyze_cache.py @@ -7,8 +7,7 @@ import os.path from collections import Counter from collections.abc import Iterable -from typing import Any, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias ROOT: Final = ".mypy_cache/3.5" diff --git a/misc/incremental_checker.py b/misc/incremental_checker.py index a9ed61d134145..fa05fd55fca88 100755 --- a/misc/incremental_checker.py +++ b/misc/incremental_checker.py @@ -44,8 +44,7 @@ import textwrap import time from argparse import ArgumentParser, Namespace, RawDescriptionHelpFormatter -from typing import Any, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias CACHE_PATH: Final = ".incremental_checker_cache.json" MYPY_REPO_URL: Final = "https://github.com/python/mypy.git" diff --git a/misc/perf_checker.py b/misc/perf_checker.py index 20c313e61af9b..615587d019f13 100644 --- a/misc/perf_checker.py +++ b/misc/perf_checker.py @@ -8,7 +8,7 @@ import subprocess import textwrap import time -from typing import Callable +from collections.abc import Callable class Command: diff --git a/mypy/api.py b/mypy/api.py index e2179dba30ca3..90ef985491da5 100644 --- a/mypy/api.py +++ b/mypy/api.py @@ -46,8 +46,9 @@ from __future__ import annotations import sys +from collections.abc import Callable from io import StringIO -from typing import Callable, TextIO +from typing import TextIO def _run(main_wrapper: Callable[[TextIO, TextIO], None]) -> tuple[str, str, int]: diff --git a/mypy/applytype.py b/mypy/applytype.py index dfeaf7752d211..c8003795ba0b1 100644 --- a/mypy/applytype.py +++ b/mypy/applytype.py @@ -1,7 +1,6 @@ from __future__ import annotations -from collections.abc import Iterable, Sequence -from typing import Callable +from collections.abc import Callable, Iterable, Sequence import mypy.subtypes from mypy.erasetype import erase_typevars diff --git a/mypy/argmap.py b/mypy/argmap.py index a2e7230d358a1..c30f6bd43f13f 100644 --- a/mypy/argmap.py +++ b/mypy/argmap.py @@ -2,8 +2,8 @@ from __future__ import annotations -from collections.abc import Sequence -from typing import TYPE_CHECKING, Callable +from collections.abc import Callable, Sequence +from typing import TYPE_CHECKING from mypy import nodes from mypy.maptype import map_instance_to_supertype diff --git a/mypy/binder.py b/mypy/binder.py index 872b58c4bae03..de1329d976216 100644 --- a/mypy/binder.py +++ b/mypy/binder.py @@ -3,8 +3,7 @@ from collections import defaultdict from collections.abc import Iterator from contextlib import contextmanager -from typing import NamedTuple -from typing_extensions import TypeAlias as _TypeAlias +from typing import NamedTuple, TypeAlias as _TypeAlias from mypy.erasetype import remove_instance_last_known_values from mypy.literals import Key, extract_var_from_literal_hash, literal, literal_hash, subkeys diff --git a/mypy/build.py b/mypy/build.py index 853e54e445ac6..3b6428c15d8f1 100644 --- a/mypy/build.py +++ b/mypy/build.py @@ -24,9 +24,17 @@ import sys import time import types -from collections.abc import Iterator, Mapping, Sequence, Set as AbstractSet -from typing import TYPE_CHECKING, Any, Callable, ClassVar, Final, NoReturn, TextIO, TypedDict -from typing_extensions import TypeAlias as _TypeAlias +from collections.abc import Callable, Iterator, Mapping, Sequence, Set as AbstractSet +from typing import ( + TYPE_CHECKING, + Any, + ClassVar, + Final, + NoReturn, + TextIO, + TypeAlias as _TypeAlias, + TypedDict, +) from librt.internal import cache_version diff --git a/mypy/cache.py b/mypy/cache.py index c1b1aba8c0ca8..18759b9e7ae59 100644 --- a/mypy/cache.py +++ b/mypy/cache.py @@ -48,8 +48,7 @@ from __future__ import annotations from collections.abc import Sequence -from typing import Any, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias from librt.internal import ( ReadBuffer as ReadBuffer, diff --git a/mypy/checker.py b/mypy/checker.py index 461b45f8df45f..2a62465c9ec8d 100644 --- a/mypy/checker.py +++ b/mypy/checker.py @@ -4,10 +4,19 @@ import itertools from collections import defaultdict -from collections.abc import Iterable, Iterator, Mapping, Sequence, Set as AbstractSet +from collections.abc import Callable, Iterable, Iterator, Mapping, Sequence, Set as AbstractSet from contextlib import ExitStack, contextmanager -from typing import Callable, Final, Generic, Literal, NamedTuple, TypeVar, cast, overload -from typing_extensions import TypeAlias as _TypeAlias, TypeGuard +from typing import ( + Final, + Generic, + Literal, + NamedTuple, + TypeAlias as _TypeAlias, + TypeGuard, + TypeVar, + cast, + overload, +) import mypy.checkexpr from mypy import errorcodes as codes, join, message_registry, nodes, operators diff --git a/mypy/checkexpr.py b/mypy/checkexpr.py index 4e3be52ef60cd..57051acaf4a65 100644 --- a/mypy/checkexpr.py +++ b/mypy/checkexpr.py @@ -6,10 +6,10 @@ import itertools import time from collections import defaultdict -from collections.abc import Iterable, Iterator, Sequence +from collections.abc import Callable, Iterable, Iterator, Sequence from contextlib import contextmanager, nullcontext -from typing import Callable, ClassVar, Final, cast, overload -from typing_extensions import TypeAlias as _TypeAlias, assert_never +from typing import ClassVar, Final, TypeAlias as _TypeAlias, cast, overload +from typing_extensions import assert_never import mypy.checker import mypy.errorcodes as codes diff --git a/mypy/checkmember.py b/mypy/checkmember.py index 719b48b14e07c..060b2da770f36 100644 --- a/mypy/checkmember.py +++ b/mypy/checkmember.py @@ -2,8 +2,8 @@ from __future__ import annotations -from collections.abc import Sequence -from typing import Callable, TypeVar, cast +from collections.abc import Callable, Sequence +from typing import TypeVar, cast from mypy import message_registry, state from mypy.checker_shared import TypeCheckerSharedApi diff --git a/mypy/checkstrformat.py b/mypy/checkstrformat.py index 7c52ae9eec4d5..d4e5e0e3f6592 100644 --- a/mypy/checkstrformat.py +++ b/mypy/checkstrformat.py @@ -13,9 +13,9 @@ from __future__ import annotations import re +from collections.abc import Callable from re import Match, Pattern -from typing import Callable, Final, cast -from typing_extensions import TypeAlias as _TypeAlias +from typing import Final, TypeAlias as _TypeAlias, cast import mypy.errorcodes as codes from mypy import message_registry diff --git a/mypy/config_parser.py b/mypy/config_parser.py index af697821757f9..0effaaba20a0c 100644 --- a/mypy/config_parser.py +++ b/mypy/config_parser.py @@ -13,9 +13,9 @@ else: import tomli as tomllib -from collections.abc import Mapping, MutableMapping, Sequence -from typing import Any, Callable, Final, TextIO -from typing_extensions import Never, TypeAlias +from collections.abc import Callable, Mapping, MutableMapping, Sequence +from typing import Any, Final, TextIO, TypeAlias +from typing_extensions import Never from mypy import defaults from mypy.options import PER_MODULE_OPTIONS, Options diff --git a/mypy/constraints.py b/mypy/constraints.py index 96c0c7ccaf35e..a8fa114e6029e 100644 --- a/mypy/constraints.py +++ b/mypy/constraints.py @@ -3,8 +3,7 @@ from __future__ import annotations from collections.abc import Iterable, Sequence -from typing import TYPE_CHECKING, Final, cast -from typing_extensions import TypeGuard +from typing import TYPE_CHECKING, Final, TypeGuard, cast import mypy.subtypes import mypy.typeops diff --git a/mypy/dmypy/client.py b/mypy/dmypy/client.py index 3db47f80d01b7..bc0b9803407d9 100644 --- a/mypy/dmypy/client.py +++ b/mypy/dmypy/client.py @@ -14,8 +14,8 @@ import sys import time import traceback -from collections.abc import Mapping -from typing import Any, Callable, NoReturn +from collections.abc import Callable, Mapping +from typing import Any, NoReturn from mypy.dmypy_os import alive, kill from mypy.dmypy_util import DEFAULT_STATUS_FILE, receive, send diff --git a/mypy/dmypy_os.py b/mypy/dmypy_os.py index 63c3e4c88979c..184015ffe7203 100644 --- a/mypy/dmypy_os.py +++ b/mypy/dmypy_os.py @@ -1,7 +1,8 @@ from __future__ import annotations import sys -from typing import Any, Callable +from collections.abc import Callable +from typing import Any if sys.platform == "win32": import ctypes diff --git a/mypy/dmypy_server.py b/mypy/dmypy_server.py index 33e9e07477ca9..33a174d0f6a1e 100644 --- a/mypy/dmypy_server.py +++ b/mypy/dmypy_server.py @@ -16,10 +16,9 @@ import sys import time import traceback -from collections.abc import Sequence, Set as AbstractSet +from collections.abc import Callable, Sequence, Set as AbstractSet from contextlib import redirect_stderr, redirect_stdout -from typing import Any, Callable, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias import mypy.build import mypy.errors diff --git a/mypy/erasetype.py b/mypy/erasetype.py index 500d8fd5ae087..f2912fe22a9e6 100644 --- a/mypy/erasetype.py +++ b/mypy/erasetype.py @@ -1,7 +1,7 @@ from __future__ import annotations -from collections.abc import Container -from typing import Callable, cast +from collections.abc import Callable, Container +from typing import cast from mypy.nodes import ARG_STAR, ARG_STAR2 from mypy.types import ( diff --git a/mypy/errors.py b/mypy/errors.py index e7325cbe22659..b977f3b1a1033 100644 --- a/mypy/errors.py +++ b/mypy/errors.py @@ -4,10 +4,10 @@ import sys import traceback from collections import defaultdict -from collections.abc import Iterable, Iterator +from collections.abc import Callable, Iterable, Iterator from itertools import chain -from typing import Callable, Final, NoReturn, TextIO, TypeVar -from typing_extensions import Literal, Self, TypeAlias as _TypeAlias +from typing import Final, Literal, NoReturn, TextIO, TypeAlias as _TypeAlias, TypeVar +from typing_extensions import Self from mypy import errorcodes as codes from mypy.error_formatter import ErrorFormatter diff --git a/mypy/exportjson.py b/mypy/exportjson.py index 3ee93ec0efcc4..37af3cb7bd185 100644 --- a/mypy/exportjson.py +++ b/mypy/exportjson.py @@ -16,8 +16,7 @@ import argparse import json import sys -from typing import Any -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, TypeAlias as _TypeAlias from librt.internal import ReadBuffer diff --git a/mypy/exprtotype.py b/mypy/exprtotype.py index 6fd43c08dbac2..ae36fc8adde09 100644 --- a/mypy/exprtotype.py +++ b/mypy/exprtotype.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing import Callable +from collections.abc import Callable from mypy.fastparse import parse_type_string from mypy.nodes import ( diff --git a/mypy/fastparse.py b/mypy/fastparse.py index a665551fc95c0..ee14cea027463 100644 --- a/mypy/fastparse.py +++ b/mypy/fastparse.py @@ -3,8 +3,8 @@ import re import sys import warnings -from collections.abc import Sequence -from typing import Any, Callable, Final, Literal, TypeVar, cast, overload +from collections.abc import Callable, Sequence +from typing import Any, Final, Literal, TypeVar, cast, overload from mypy import defaults, errorcodes as codes, message_registry from mypy.errors import Errors diff --git a/mypy/inspections.py b/mypy/inspections.py index ac48fac56fa4b..1a869438101fe 100644 --- a/mypy/inspections.py +++ b/mypy/inspections.py @@ -2,8 +2,8 @@ import os from collections import defaultdict +from collections.abc import Callable from functools import cmp_to_key -from typing import Callable from mypy.build import State from mypy.messages import format_type diff --git a/mypy/ipc.py b/mypy/ipc.py index b2046a47ab157..744cb376d6dcb 100644 --- a/mypy/ipc.py +++ b/mypy/ipc.py @@ -12,8 +12,9 @@ import shutil import sys import tempfile +from collections.abc import Callable from types import TracebackType -from typing import Callable, Final +from typing import Final if sys.platform == "win32": # This may be private, but it is needed for IPC on Windows, and is basically stable diff --git a/mypy/literals.py b/mypy/literals.py index c53a93c26433e..50720da35548c 100644 --- a/mypy/literals.py +++ b/mypy/literals.py @@ -1,8 +1,7 @@ from __future__ import annotations from collections.abc import Iterable -from typing import Any, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias from mypy.nodes import ( LITERAL_NO, diff --git a/mypy/meet.py b/mypy/meet.py index 42229f9b23c15..c11d7d5d1aaa7 100644 --- a/mypy/meet.py +++ b/mypy/meet.py @@ -1,6 +1,6 @@ from __future__ import annotations -from typing import Callable +from collections.abc import Callable from mypy import join from mypy.erasetype import erase_type diff --git a/mypy/messages.py b/mypy/messages.py index 9fdfb748b2882..fe78c4f174e37 100644 --- a/mypy/messages.py +++ b/mypy/messages.py @@ -14,10 +14,10 @@ import difflib import itertools import re -from collections.abc import Collection, Iterable, Iterator, Sequence +from collections.abc import Callable, Collection, Iterable, Iterator, Sequence from contextlib import contextmanager from textwrap import dedent -from typing import Any, Callable, Final, cast +from typing import Any, Final, cast import mypy.typeops from mypy import errorcodes as codes, message_registry diff --git a/mypy/modulefinder.py b/mypy/modulefinder.py index 78d8329f1faea..469df963b9f54 100644 --- a/mypy/modulefinder.py +++ b/mypy/modulefinder.py @@ -13,8 +13,7 @@ import subprocess import sys from enum import Enum, unique -from typing import Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Final, TypeAlias as _TypeAlias from pathspec import PathSpec from pathspec.patterns.gitwildmatch import GitWildMatchPatternError diff --git a/mypy/mro.py b/mypy/mro.py index f34f3fa0c46d7..b5b38cd1bedef 100644 --- a/mypy/mro.py +++ b/mypy/mro.py @@ -1,6 +1,6 @@ from __future__ import annotations -from typing import Callable +from collections.abc import Callable from mypy.nodes import TypeInfo from mypy.types import Instance diff --git a/mypy/nodes.py b/mypy/nodes.py index da61b1d649210..fe22d5d306353 100644 --- a/mypy/nodes.py +++ b/mypy/nodes.py @@ -5,10 +5,19 @@ import os from abc import abstractmethod from collections import defaultdict -from collections.abc import Iterator, Sequence +from collections.abc import Callable, Iterator, Sequence from enum import Enum, unique -from typing import TYPE_CHECKING, Any, Callable, Final, Optional, TypeVar, Union, cast -from typing_extensions import TypeAlias as _TypeAlias, TypeGuard +from typing import ( + TYPE_CHECKING, + Any, + Final, + Optional, + TypeAlias as _TypeAlias, + TypeGuard, + TypeVar, + Union, + cast, +) from librt.internal import ( read_float as read_float_bare, diff --git a/mypy/options.py b/mypy/options.py index 39490c9f0beeb..3da92bf30139e 100644 --- a/mypy/options.py +++ b/mypy/options.py @@ -5,8 +5,9 @@ import sys import sysconfig import warnings +from collections.abc import Callable from re import Pattern -from typing import Any, Callable, Final +from typing import Any, Final from mypy import defaults from mypy.errorcodes import ErrorCode, error_codes diff --git a/mypy/plugin.py b/mypy/plugin.py index 9019e3c2256f1..383b07af87c0d 100644 --- a/mypy/plugin.py +++ b/mypy/plugin.py @@ -119,7 +119,8 @@ class C: pass from __future__ import annotations from abc import abstractmethod -from typing import TYPE_CHECKING, Any, Callable, NamedTuple, TypeVar +from collections.abc import Callable +from typing import TYPE_CHECKING, Any, NamedTuple, TypeVar from mypy_extensions import mypyc_attr, trait diff --git a/mypy/plugins/default.py b/mypy/plugins/default.py index 7a58307fc5597..47387530de30a 100644 --- a/mypy/plugins/default.py +++ b/mypy/plugins/default.py @@ -1,7 +1,8 @@ from __future__ import annotations +from collections.abc import Callable from functools import partial -from typing import Callable, Final +from typing import Final import mypy.errorcodes as codes from mypy import message_registry diff --git a/mypy/plugins/proper_plugin.py b/mypy/plugins/proper_plugin.py index 0189bfbd22fcd..67223117ddc3f 100644 --- a/mypy/plugins/proper_plugin.py +++ b/mypy/plugins/proper_plugin.py @@ -9,7 +9,7 @@ from __future__ import annotations -from typing import Callable +from collections.abc import Callable from mypy.checker import TypeChecker from mypy.nodes import TypeInfo diff --git a/mypy/plugins/singledispatch.py b/mypy/plugins/singledispatch.py index a069fffbff200..a513b91ff309b 100644 --- a/mypy/plugins/singledispatch.py +++ b/mypy/plugins/singledispatch.py @@ -1,8 +1,7 @@ from __future__ import annotations from collections.abc import Sequence -from typing import NamedTuple, TypeVar -from typing_extensions import TypeAlias as _TypeAlias +from typing import NamedTuple, TypeAlias as _TypeAlias, TypeVar from mypy.messages import format_type from mypy.nodes import ARG_POS, Argument, Block, ClassDef, Context, SymbolTable, TypeInfo, Var diff --git a/mypy/report.py b/mypy/report.py index 4a0b965077f6a..2667c70793690 100644 --- a/mypy/report.py +++ b/mypy/report.py @@ -11,10 +11,9 @@ import time import tokenize from abc import ABCMeta, abstractmethod -from collections.abc import Iterator +from collections.abc import Callable, Iterator from operator import attrgetter -from typing import Any, Callable, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias from urllib.request import pathname2url from mypy import stats diff --git a/mypy/scope.py b/mypy/scope.py index bc8b7457c9a05..7c234a3c7bc56 100644 --- a/mypy/scope.py +++ b/mypy/scope.py @@ -7,7 +7,7 @@ from collections.abc import Iterator from contextlib import contextmanager, nullcontext -from typing_extensions import TypeAlias as _TypeAlias +from typing import TypeAlias as _TypeAlias from mypy.nodes import FuncBase, TypeInfo diff --git a/mypy/semanal.py b/mypy/semanal.py index 8179813c7171a..f4b8554c0fbc4 100644 --- a/mypy/semanal.py +++ b/mypy/semanal.py @@ -51,10 +51,10 @@ from __future__ import annotations import re -from collections.abc import Collection, Iterable, Iterator +from collections.abc import Callable, Collection, Iterable, Iterator from contextlib import contextmanager -from typing import Any, Callable, Final, TypeVar, cast -from typing_extensions import TypeAlias as _TypeAlias, TypeGuard, assert_never +from typing import Any, Final, TypeAlias as _TypeAlias, TypeGuard, TypeVar, cast +from typing_extensions import assert_never from mypy import errorcodes as codes, message_registry from mypy.constant_fold import constant_fold_expr diff --git a/mypy/semanal_main.py b/mypy/semanal_main.py index a9f492443f940..21e6d9c63c5ee 100644 --- a/mypy/semanal_main.py +++ b/mypy/semanal_main.py @@ -26,11 +26,10 @@ from __future__ import annotations -from collections.abc import Iterator +from collections.abc import Callable, Iterator from contextlib import nullcontext from itertools import groupby -from typing import TYPE_CHECKING, Callable, Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import TYPE_CHECKING, Final, TypeAlias as _TypeAlias import mypy.build import mypy.state diff --git a/mypy/semanal_shared.py b/mypy/semanal_shared.py index c49b13d08f451..a85d4ed00b5e6 100644 --- a/mypy/semanal_shared.py +++ b/mypy/semanal_shared.py @@ -3,7 +3,8 @@ from __future__ import annotations from abc import abstractmethod -from typing import Callable, Final, Literal, Protocol, overload +from collections.abc import Callable +from typing import Final, Literal, Protocol, overload from mypy_extensions import trait diff --git a/mypy/semanal_typeargs.py b/mypy/semanal_typeargs.py index 86f8a8700def6..a37d39e57fe51 100644 --- a/mypy/semanal_typeargs.py +++ b/mypy/semanal_typeargs.py @@ -7,7 +7,7 @@ from __future__ import annotations -from typing import Callable +from collections.abc import Callable from mypy import errorcodes as codes, message_registry from mypy.errorcodes import ErrorCode diff --git a/mypy/server/astdiff.py b/mypy/server/astdiff.py index 74a2e5023f332..9bbc3077ec512 100644 --- a/mypy/server/astdiff.py +++ b/mypy/server/astdiff.py @@ -53,8 +53,7 @@ class level -- these are handled at attribute level (say, 'mod.Cls.method' from __future__ import annotations from collections.abc import Sequence -from typing import Union -from typing_extensions import TypeAlias as _TypeAlias +from typing import TypeAlias as _TypeAlias, Union from mypy.expandtype import expand_type from mypy.nodes import ( diff --git a/mypy/server/aststrip.py b/mypy/server/aststrip.py index 27c1c4a0eedbb..cf706e97c3da7 100644 --- a/mypy/server/aststrip.py +++ b/mypy/server/aststrip.py @@ -35,7 +35,7 @@ from collections.abc import Iterator from contextlib import contextmanager, nullcontext -from typing_extensions import TypeAlias as _TypeAlias +from typing import TypeAlias as _TypeAlias from mypy.nodes import ( CLASSDEF_NO_INFO, diff --git a/mypy/server/update.py b/mypy/server/update.py index 16349a87546d6..f2e3554abda8d 100644 --- a/mypy/server/update.py +++ b/mypy/server/update.py @@ -118,9 +118,8 @@ import re import sys import time -from collections.abc import Sequence -from typing import Callable, Final, NamedTuple -from typing_extensions import TypeAlias as _TypeAlias +from collections.abc import Callable, Sequence +from typing import Final, NamedTuple, TypeAlias as _TypeAlias from mypy.build import ( DEBUG_FINE_GRAINED, diff --git a/mypy/solve.py b/mypy/solve.py index fbbcac2520ad0..e3709106996cd 100644 --- a/mypy/solve.py +++ b/mypy/solve.py @@ -4,7 +4,7 @@ from collections import defaultdict from collections.abc import Iterable, Sequence -from typing_extensions import TypeAlias as _TypeAlias +from typing import TypeAlias as _TypeAlias from mypy.constraints import SUBTYPE_OF, SUPERTYPE_OF, Constraint, infer_constraints, neg_op from mypy.expandtype import expand_type diff --git a/mypy/stubdoc.py b/mypy/stubdoc.py index 8f984037f96ce..f0588343000a7 100644 --- a/mypy/stubdoc.py +++ b/mypy/stubdoc.py @@ -12,8 +12,7 @@ import re import tokenize from collections.abc import MutableMapping, MutableSequence, Sequence -from typing import Any, Final, NamedTuple -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, NamedTuple, TypeAlias as _TypeAlias import mypy.util diff --git a/mypy/stubgenc.py b/mypy/stubgenc.py index e0e063927aadb..d86818adf2a43 100755 --- a/mypy/stubgenc.py +++ b/mypy/stubgenc.py @@ -12,9 +12,9 @@ import inspect import keyword import os.path -from collections.abc import Mapping +from collections.abc import Callable, Mapping from types import FunctionType, ModuleType -from typing import Any, Callable +from typing import Any from mypy.fastparse import parse_type_comment from mypy.moduleinspect import is_c_module diff --git a/mypy/stubtest.py b/mypy/stubtest.py index 312048b0ed89e..e0d978a768bf8 100644 --- a/mypy/stubtest.py +++ b/mypy/stubtest.py @@ -30,8 +30,8 @@ from contextlib import redirect_stderr, redirect_stdout from functools import singledispatch from pathlib import Path -from typing import Any, Final, Generic, TypeVar, Union -from typing_extensions import get_origin, is_typeddict +from typing import Any, Final, Generic, TypeVar, Union, get_origin +from typing_extensions import is_typeddict import mypy.build import mypy.checkexpr diff --git a/mypy/subtypes.py b/mypy/subtypes.py index c02ff068560b4..350d57a7e4adb 100644 --- a/mypy/subtypes.py +++ b/mypy/subtypes.py @@ -1,9 +1,8 @@ from __future__ import annotations -from collections.abc import Iterable, Iterator +from collections.abc import Callable, Iterable, Iterator from contextlib import contextmanager -from typing import Any, Callable, Final, TypeVar, cast -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, TypeAlias as _TypeAlias, TypeVar, cast import mypy.applytype import mypy.constraints diff --git a/mypy/suggestions.py b/mypy/suggestions.py index 756cf6ae2ccdc..a583486799b78 100644 --- a/mypy/suggestions.py +++ b/mypy/suggestions.py @@ -28,9 +28,9 @@ import json import os import sys -from collections.abc import Iterator +from collections.abc import Callable, Iterator from contextlib import contextmanager -from typing import Callable, NamedTuple, TypedDict, TypeVar, cast +from typing import NamedTuple, TypedDict, TypeVar, cast from mypy.argmap import map_actuals_to_formals from mypy.build import Graph, State diff --git a/mypy/test/data.py b/mypy/test/data.py index fc7be6ec2dd1d..501070a3f93c9 100644 --- a/mypy/test/data.py +++ b/mypy/test/data.py @@ -14,8 +14,7 @@ from dataclasses import dataclass from pathlib import Path from re import Pattern -from typing import Any, Final, NamedTuple, NoReturn -from typing_extensions import TypeAlias as _TypeAlias +from typing import Any, Final, NamedTuple, NoReturn, TypeAlias as _TypeAlias import pytest diff --git a/mypy/test/helpers.py b/mypy/test/helpers.py index 8ff6874e746a6..3459163bb6cf7 100644 --- a/mypy/test/helpers.py +++ b/mypy/test/helpers.py @@ -8,9 +8,9 @@ import shutil import sys import time -from collections.abc import Iterable, Iterator +from collections.abc import Callable, Iterable, Iterator from re import Pattern -from typing import IO, Any, Callable +from typing import IO, Any # Exporting Suite as alias to TestCase for backwards compatibility # TODO: avoid aliasing - import and subclass TestCase directly diff --git a/mypy/test/teststubtest.py b/mypy/test/teststubtest.py index 5435b45b46895..59d13cbde605f 100644 --- a/mypy/test/teststubtest.py +++ b/mypy/test/teststubtest.py @@ -9,8 +9,8 @@ import tempfile import textwrap import unittest -from collections.abc import Iterator -from typing import Any, Callable +from collections.abc import Callable, Iterator +from typing import Any from pytest import raises diff --git a/mypy/tvar_scope.py b/mypy/tvar_scope.py index 353809517e8b9..e65f9f5ee3a42 100644 --- a/mypy/tvar_scope.py +++ b/mypy/tvar_scope.py @@ -1,7 +1,7 @@ from __future__ import annotations from collections.abc import Callable -from typing_extensions import TypeAlias as _TypeAlias +from typing import TypeAlias as _TypeAlias from mypy.nodes import ( Context, diff --git a/mypy/typeanal.py b/mypy/typeanal.py index 946280257729c..99cc56ae094fc 100644 --- a/mypy/typeanal.py +++ b/mypy/typeanal.py @@ -3,9 +3,9 @@ from __future__ import annotations import itertools -from collections.abc import Iterable, Iterator, Sequence +from collections.abc import Callable, Iterable, Iterator, Sequence from contextlib import contextmanager -from typing import Callable, Final, Protocol, TypeVar +from typing import Final, Protocol, TypeVar from mypy import errorcodes as codes, message_registry, nodes from mypy.errorcodes import ErrorCode diff --git a/mypy/typeops.py b/mypy/typeops.py index 050252eb62050..dd5f997b1a7b6 100644 --- a/mypy/typeops.py +++ b/mypy/typeops.py @@ -8,8 +8,8 @@ from __future__ import annotations import itertools -from collections.abc import Iterable, Sequence -from typing import Any, Callable, TypeVar, cast +from collections.abc import Callable, Iterable, Sequence +from typing import Any, TypeVar, cast from mypy.checker_state import checker_state from mypy.copytype import copy_type diff --git a/mypy/types.py b/mypy/types.py index cdfc60a8e7dfe..f4ce0f803cde3 100644 --- a/mypy/types.py +++ b/mypy/types.py @@ -5,8 +5,19 @@ import sys from abc import abstractmethod from collections.abc import Iterable, Sequence -from typing import TYPE_CHECKING, Any, ClassVar, Final, NewType, TypeVar, cast, overload -from typing_extensions import Self, TypeAlias as _TypeAlias, TypeGuard +from typing import ( + TYPE_CHECKING, + Any, + ClassVar, + Final, + NewType, + TypeAlias as _TypeAlias, + TypeGuard, + TypeVar, + cast, + overload, +) +from typing_extensions import Self from librt.internal import ( read_int as read_int_bare, diff --git a/mypy/types_utils.py b/mypy/types_utils.py index 124d024e8c1e1..3c1dcb427f29a 100644 --- a/mypy/types_utils.py +++ b/mypy/types_utils.py @@ -8,8 +8,8 @@ from __future__ import annotations -from collections.abc import Iterable -from typing import Callable, cast +from collections.abc import Callable, Iterable +from typing import cast from mypy.nodes import ARG_STAR, ARG_STAR2, FuncItem, TypeAlias from mypy.types import ( diff --git a/mypy/typestate.py b/mypy/typestate.py index 574618668477e..d45837dad645a 100644 --- a/mypy/typestate.py +++ b/mypy/typestate.py @@ -5,8 +5,7 @@ from __future__ import annotations -from typing import Final -from typing_extensions import TypeAlias as _TypeAlias +from typing import Final, TypeAlias as _TypeAlias from mypy.nodes import VARIANCE_NOT_READY, TypeInfo from mypy.server.trigger import make_trigger diff --git a/mypy/util.py b/mypy/util.py index 52ee11de8fc30..03cbc8cbca555 100644 --- a/mypy/util.py +++ b/mypy/util.py @@ -10,9 +10,9 @@ import shutil import sys import time -from collections.abc import Container, Iterable, Sequence, Sized +from collections.abc import Callable, Container, Iterable, Sequence, Sized from importlib import resources as importlib_resources -from typing import IO, Any, Callable, Final, Literal, TypeVar +from typing import IO, Any, Final, Literal, TypeVar orjson: Any try: diff --git a/mypyc/build.py b/mypyc/build.py index e0aa91dc6afe9..9de5ccaabaaa8 100644 --- a/mypyc/build.py +++ b/mypyc/build.py @@ -115,7 +115,7 @@ class ModDesc(NamedTuple): from setuptools import Extension else: from distutils.core import Extension as _distutils_Extension - from typing_extensions import TypeAlias + from typing import TypeAlias from setuptools import Extension as _setuptools_Extension diff --git a/mypyc/codegen/emit.py b/mypyc/codegen/emit.py index 090c8173b6586..778e14355d689 100644 --- a/mypyc/codegen/emit.py +++ b/mypyc/codegen/emit.py @@ -5,7 +5,8 @@ import pprint import sys import textwrap -from typing import Callable, Final +from collections.abc import Callable +from typing import Final from mypyc.codegen.cstring import c_string_initializer from mypyc.codegen.literals import Literals diff --git a/mypyc/codegen/emitclass.py b/mypyc/codegen/emitclass.py index 33e9fcbfb0fde..0d80878f1d4a2 100644 --- a/mypyc/codegen/emitclass.py +++ b/mypyc/codegen/emitclass.py @@ -2,8 +2,7 @@ from __future__ import annotations -from collections.abc import Mapping -from typing import Callable +from collections.abc import Callable, Mapping from mypy.nodes import ARG_STAR, ARG_STAR2 from mypyc.codegen.cstring import c_string_initializer diff --git a/mypyc/codegen/literals.py b/mypyc/codegen/literals.py index 4286bbea48402..ed1ff93277167 100644 --- a/mypyc/codegen/literals.py +++ b/mypyc/codegen/literals.py @@ -1,7 +1,6 @@ from __future__ import annotations -from typing import Final -from typing_extensions import TypeGuard +from typing import Final, TypeGuard # Supported Python literal types. All tuple / frozenset items must have supported # literal types as well, but we can't represent the type precisely. diff --git a/mypyc/ir/rtypes.py b/mypyc/ir/rtypes.py index 2c2fe9da6b049..2ef92efa2f0b3 100644 --- a/mypyc/ir/rtypes.py +++ b/mypyc/ir/rtypes.py @@ -38,8 +38,7 @@ class to enable the new behavior. In rare cases, adding a new from __future__ import annotations from abc import abstractmethod -from typing import TYPE_CHECKING, ClassVar, Final, Generic, TypeVar, final -from typing_extensions import TypeGuard +from typing import TYPE_CHECKING, ClassVar, Final, Generic, TypeGuard, TypeVar, final from mypyc.common import HAVE_IMMORTAL, IS_32_BIT_PLATFORM, PLATFORM_SIZE, JsonDict, short_name from mypyc.namegen import NameGenerator diff --git a/mypyc/irbuild/builder.py b/mypyc/irbuild/builder.py index 43e3d35d16b30..06634c4d98fd6 100644 --- a/mypyc/irbuild/builder.py +++ b/mypyc/irbuild/builder.py @@ -5,9 +5,9 @@ from __future__ import annotations -from collections.abc import Iterator, Sequence +from collections.abc import Callable, Iterator, Sequence from contextlib import contextmanager -from typing import Any, Callable, Final, overload +from typing import Any, Final, overload from mypy.build import Graph from mypy.maptype import map_instance_to_supertype diff --git a/mypyc/irbuild/classdef.py b/mypyc/irbuild/classdef.py index b870274f07cad..2e67d7aa785e9 100644 --- a/mypyc/irbuild/classdef.py +++ b/mypyc/irbuild/classdef.py @@ -3,7 +3,8 @@ from __future__ import annotations from abc import abstractmethod -from typing import Callable, Final +from collections.abc import Callable +from typing import Final from mypy.nodes import ( EXCLUDED_ENUM_ATTRIBUTES, diff --git a/mypyc/irbuild/expression.py b/mypyc/irbuild/expression.py index 2ed347ca1e797..04a55fb257f05 100644 --- a/mypyc/irbuild/expression.py +++ b/mypyc/irbuild/expression.py @@ -7,8 +7,7 @@ from __future__ import annotations import math -from collections.abc import Sequence -from typing import Callable +from collections.abc import Callable, Sequence from mypy.nodes import ( ARG_NAMED, diff --git a/mypyc/irbuild/for_helpers.py b/mypyc/irbuild/for_helpers.py index 715f5432cd133..8c34a14745f4f 100644 --- a/mypyc/irbuild/for_helpers.py +++ b/mypyc/irbuild/for_helpers.py @@ -7,7 +7,8 @@ from __future__ import annotations -from typing import Callable, ClassVar +from collections.abc import Callable +from typing import ClassVar from mypy.nodes import ( ARG_POS, diff --git a/mypyc/irbuild/generator.py b/mypyc/irbuild/generator.py index 4dcd748f6effc..5f06afe9ae8ef 100644 --- a/mypyc/irbuild/generator.py +++ b/mypyc/irbuild/generator.py @@ -10,7 +10,7 @@ from __future__ import annotations -from typing import Callable +from collections.abc import Callable from mypy.nodes import ARG_OPT, FuncDef, Var from mypyc.common import ENV_ATTR_NAME, GENERATOR_ATTRIBUTE_PREFIX, NEXT_LABEL_ATTR_NAME diff --git a/mypyc/irbuild/ll_builder.py b/mypyc/irbuild/ll_builder.py index bbc1d8e6b44a1..0a9e2d230ca5f 100644 --- a/mypyc/irbuild/ll_builder.py +++ b/mypyc/irbuild/ll_builder.py @@ -7,9 +7,8 @@ from __future__ import annotations import sys -from collections.abc import Sequence -from typing import Callable, Final, cast -from typing_extensions import TypeGuard +from collections.abc import Callable, Sequence +from typing import Final, TypeGuard, cast from mypy.argmap import map_actuals_to_formals from mypy.nodes import ARG_POS, ARG_STAR, ARG_STAR2, ArgKind diff --git a/mypyc/irbuild/main.py b/mypyc/irbuild/main.py index f08911a1bc4c9..3e769f2b6d51c 100644 --- a/mypyc/irbuild/main.py +++ b/mypyc/irbuild/main.py @@ -22,7 +22,8 @@ def f(x: int) -> int: from __future__ import annotations -from typing import Any, Callable, TypeVar, cast +from collections.abc import Callable +from typing import Any, TypeVar, cast from mypy.build import Graph from mypy.nodes import ClassDef, Expression, FuncDef, MypyFile diff --git a/mypyc/irbuild/specialize.py b/mypyc/irbuild/specialize.py index ad2a591a0e7de..47d45617ef724 100644 --- a/mypyc/irbuild/specialize.py +++ b/mypyc/irbuild/specialize.py @@ -14,7 +14,8 @@ from __future__ import annotations -from typing import Callable, Final, cast +from collections.abc import Callable +from typing import Final, cast from mypy.nodes import ( ARG_NAMED, diff --git a/mypyc/irbuild/statement.py b/mypyc/irbuild/statement.py index fdcf4f7771538..8e0f56a9a498b 100644 --- a/mypyc/irbuild/statement.py +++ b/mypyc/irbuild/statement.py @@ -9,8 +9,7 @@ from __future__ import annotations import importlib.util -from collections.abc import Sequence -from typing import Callable +from collections.abc import Callable, Sequence import mypy.nodes from mypy.nodes import ( diff --git a/mypyc/lower/registry.py b/mypyc/lower/registry.py index da1e7fd9537a7..dec6a24b9417a 100644 --- a/mypyc/lower/registry.py +++ b/mypyc/lower/registry.py @@ -1,6 +1,7 @@ from __future__ import annotations -from typing import Callable, Final, TypeVar +from collections.abc import Callable +from typing import Final, TypeVar from mypyc.ir.ops import Value from mypyc.irbuild.ll_builder import LowLevelIRBuilder diff --git a/mypyc/test/testutil.py b/mypyc/test/testutil.py index 3e9abc231d9a0..5e485e58c9b59 100644 --- a/mypyc/test/testutil.py +++ b/mypyc/test/testutil.py @@ -7,8 +7,7 @@ import os.path import re import shutil -from collections.abc import Iterator -from typing import Callable +from collections.abc import Callable, Iterator from mypy import build from mypy.errors import CompileError diff --git a/setup.py b/setup.py index 421852e8e0cc1..83571406eb8c7 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ from mypy.version import __version__ as version if TYPE_CHECKING: - from typing_extensions import TypeGuard + from typing import TypeGuard def is_list_of_setuptools_extension(items: list[Any]) -> TypeGuard[list[Extension]]: