diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 547a520cc..ddedabf7a 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -46,7 +46,7 @@ jobs: - uses: actions/setup-python@v4 with: python-version: '3.x' - - run: python -m pip install mypy types-PyYAML + - run: python -m pip install mypy coverage types-PyYAML types-tqdm types-chevron - run: python run_mypy.py --allver env: PYTHONUNBUFFERED: 1 diff --git a/.mypy.ini b/.mypy.ini index 70fdcd9f3..d00944bb2 100644 --- a/.mypy.ini +++ b/.mypy.ini @@ -2,7 +2,7 @@ strict_optional = False show_error_context = False show_column_numbers = True -ignore_missing_imports = True +ignore_missing_imports = False implicit_reexport = False follow_imports = silent diff --git a/docs/refman/loaderyaml.py b/docs/refman/loaderyaml.py index fc06b0d67..e7ec57a7e 100644 --- a/docs/refman/loaderyaml.py +++ b/docs/refman/loaderyaml.py @@ -41,7 +41,7 @@ class Template: class StrictTemplate(Template): def __init__(self) -> None: - from strictyaml import Map, MapPattern, Optional, Str, Seq, Int, Bool, EmptyList, OrValidator + from strictyaml import Map, MapPattern, Optional, Str, Seq, Int, Bool, EmptyList, OrValidator # type: ignore[import-untyped] d_named_object = { 'name': Str(), diff --git a/mesonbuild/compilers/mixins/compcert.py b/mesonbuild/compilers/mixins/compcert.py index ac4d5aaa0..a40f635fa 100644 --- a/mesonbuild/compilers/mixins/compcert.py +++ b/mesonbuild/compilers/mixins/compcert.py @@ -20,7 +20,7 @@ import re import typing as T if T.TYPE_CHECKING: - from envconfig import MachineInfo + from ...envconfig import MachineInfo from ...environment import Environment from ...compilers.compilers import Compiler else: diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py index 5528abe7a..ad6eb4b89 100644 --- a/mesonbuild/interpreter/compiler.py +++ b/mesonbuild/interpreter/compiler.py @@ -30,7 +30,7 @@ if T.TYPE_CHECKING: from ..compilers import Compiler, RunResult from ..interpreterbase import TYPE_var, TYPE_kwargs from .kwargs import ExtractRequired, ExtractSearchDirs - from .interpreter.interpreter import SourceOutputs + from .interpreter import SourceOutputs from ..mlog import TV_LoggableList from typing_extensions import TypedDict, Literal @@ -856,7 +856,8 @@ class CompilerHolder(ObjectHolder['Compiler']): ) def preprocess_method(self, args: T.Tuple[T.List['mesonlib.FileOrString']], kwargs: 'PreprocessKW') -> T.List[build.CustomTargetIndex]: compiler = self.compiler.get_preprocessor() - sources: 'SourceOutputs' = self.interpreter.source_strings_to_files(args[0]) + _sources: T.List[mesonlib.File] = self.interpreter.source_strings_to_files(args[0]) + sources = T.cast('T.List[SourceOutputs]', _sources) if any(isinstance(s, (build.CustomTarget, build.CustomTargetIndex, build.GeneratedList)) for s in sources): FeatureNew.single_use('compiler.preprocess with generated sources', '1.1.0', self.subproject, location=self.current_node) diff --git a/mesonbuild/mdevenv.py b/mesonbuild/mdevenv.py index 9f3d1b973..c8d0144c5 100644 --- a/mesonbuild/mdevenv.py +++ b/mesonbuild/mdevenv.py @@ -5,6 +5,7 @@ import argparse import tempfile import shutil import itertools +import typing as T from pathlib import Path from . import build, minstall @@ -12,9 +13,9 @@ from .mesonlib import (EnvironmentVariables, MesonException, is_windows, setup_v get_wine_shortpath, MachineChoice) from . import mlog -import typing as T + if T.TYPE_CHECKING: - from .backends import InstallData + from .backend.backends import InstallData POWERSHELL_EXES = {'pwsh.exe', 'powershell.exe'}