diff --git a/.ci/requirements-mypy.txt b/.ci/requirements-mypy.txt index 99eac6027..3519707f1 100644 --- a/.ci/requirements-mypy.txt +++ b/.ci/requirements-mypy.txt @@ -11,4 +11,4 @@ sphinx types-atheris types-defusedxml types-olefile -types-setuptools +types-setuptools>=75.2.0 diff --git a/setup.py b/setup.py index 82986f140..dcc07eaf6 100644 --- a/setup.py +++ b/setup.py @@ -16,11 +16,15 @@ import subprocess import sys import warnings from collections.abc import Iterator +from typing import TYPE_CHECKING, Any from pybind11.setup_helpers import ParallelCompile from setuptools import Extension, setup from setuptools.command.build_ext import build_ext +if TYPE_CHECKING: + from setuptools import _BuildInfo + configuration: dict[str, list[str]] = {} # parse configuration from _custom_build/backend.py @@ -1072,7 +1076,7 @@ def debug_build() -> bool: return hasattr(sys, "gettotalrefcount") or FUZZING_BUILD -libraries = [ +libraries: list[tuple[str, _BuildInfo]] = [ ("pil_imaging_mode", {"sources": ["src/libImaging/Mode.c"]}), ]