From 5f3f83a7b414184ac39d703a4e57ffb1bb0ecce9 Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Tue, 31 Jan 2023 14:32:59 -0800 Subject: [PATCH 1/2] Fix pyinfo for Python 3.12 changes --- mypy/pyinfo.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/mypy/pyinfo.py b/mypy/pyinfo.py index 5929bfb696b5..47993282eabf 100644 --- a/mypy/pyinfo.py +++ b/mypy/pyinfo.py @@ -31,9 +31,7 @@ def getsitepackages() -> list[str]: if hasattr(site, "getusersitepackages") and site.ENABLE_USER_SITE: res.insert(0, site.getusersitepackages()) else: - from distutils.sysconfig import get_python_lib - - res = [get_python_lib()] + res = [sysconfig.get_paths()["purelib"]] return res From 4aaac17a716d9d35fe0595f18a0b52fb4ea83d7b Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Sat, 22 Apr 2023 18:32:19 -0600 Subject: [PATCH 2/2] sysconfig now imports types --- mypy/pyinfo.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/mypy/pyinfo.py b/mypy/pyinfo.py index 47993282eabf..079b2c486f4f 100644 --- a/mypy/pyinfo.py +++ b/mypy/pyinfo.py @@ -7,10 +7,7 @@ library found in Python 3.7. This file is run each mypy run, so it should be kept as fast as possible. """ -import os -import site import sys -import sysconfig if __name__ == "__main__": # HACK: We don't want to pick up mypy.types as the top-level types @@ -22,6 +19,10 @@ sys.path = old_sys_path +import os +import site +import sysconfig + def getsitepackages() -> list[str]: res = []