diff --git a/python-scikit-build.changes b/python-scikit-build.changes index cecc166..d27b7a2 100644 --- a/python-scikit-build.changes +++ b/python-scikit-build.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Nov 27 15:31:45 UTC 2024 - Ben Greiner + +- Add scikit-build-pr1120-upddistutils.patch + * gh#scikit-build/scikit-build#1120 + ------------------------------------------------------------------- Thu Aug 29 13:35:59 UTC 2024 - Ben Greiner diff --git a/python-scikit-build.spec b/python-scikit-build.spec index 461e29f..1270c65 100644 --- a/python-scikit-build.spec +++ b/python-scikit-build.spec @@ -34,6 +34,8 @@ License: MIT URL: https://github.com/scikit-build/scikit-build Source: https://files.pythonhosted.org/packages/source/s/scikit-build/scikit_build-%{version}.tar.gz Source99: sample-setup.cfg +# PATCH-FIX-UPSTREAM scikit-build-pr1120-upddistutils.patch gh#scikit-build/scikit-build#1120 +Patch0: scikit-build-pr1120-upddistutils.patch BuildRequires: %{python_module devel >= 3.8} BuildRequires: %{python_module hatch-fancy-pypi-readme} BuildRequires: %{python_module hatch-vcs} diff --git a/scikit-build-pr1120-upddistutils.patch b/scikit-build-pr1120-upddistutils.patch new file mode 100644 index 0000000..5726c10 --- /dev/null +++ b/scikit-build-pr1120-upddistutils.patch @@ -0,0 +1,78 @@ +From 3992485c67331097553ec8f54233c4c295943f70 Mon Sep 17 00:00:00 2001 +From: Henry Schreiner +Date: Mon, 30 Sep 2024 13:12:38 -0400 +Subject: [PATCH 1/2] fix(types): Update for newer setuptools + +Signed-off-by: Henry Schreiner +--- + skbuild/platform_specifics/windows.py | 2 +- + skbuild/setuptools_wrap.py | 2 +- + tests/__init__.py | 6 +++++- + 3 files changed, 7 insertions(+), 3 deletions(-) + +diff --git a/skbuild/platform_specifics/windows.py b/skbuild/platform_specifics/windows.py +index 01085a3c..144dec81 100644 +--- a/skbuild/platform_specifics/windows.py ++++ b/skbuild/platform_specifics/windows.py +@@ -215,7 +215,7 @@ def _get_msvc_compiler_env(vs_version: int, vs_toolset: str | None = None) -> Ca + return __get_msvc_compiler_env_cache[cache_key] + + if hasattr(monkey, "patch_for_msvc_specialized_compiler"): +- monkey.patch_for_msvc_specialized_compiler() # type: ignore[no-untyped-call] ++ monkey.patch_for_msvc_specialized_compiler() + + vc_dir = find_visual_studio(vs_version) + vcvarsall = os.path.join(vc_dir, "vcvarsall.bat") +diff --git a/skbuild/setuptools_wrap.py b/skbuild/setuptools_wrap.py +index 8e59631b..f6c60cd5 100644 +--- a/skbuild/setuptools_wrap.py ++++ b/skbuild/setuptools_wrap.py +@@ -250,7 +250,7 @@ def _parse_setuptools_arguments( + + return ( + display_only, +- dist.help_commands, # type: ignore[attr-defined] ++ bool(dist.help_commands), + dist.commands, + dist.hide_listing, # type: ignore[attr-defined] + dist.force_cmake, # type: ignore[attr-defined] +diff --git a/tests/__init__.py b/tests/__init__.py +index 4f3c9543..e3942246 100644 +--- a/tests/__init__.py ++++ b/tests/__init__.py +@@ -215,7 +215,11 @@ def execute_setup_py(project_dir, setup_args, disable_languages_test=False): + """ + + # See https://stackoverflow.com/questions/9160227/dir-util-copy-tree-fails-after-shutil-rmtree +- distutils.dir_util._path_created.clear() # type: ignore[attr-defined] ++ to_clear = getattr( ++ distutils.dir_util, "SkipRepeatAbsolutePaths", getattr(distutils.dir_util, "_path_created", None) ++ ) ++ assert to_clear, "Must have one of the two supported clearing mechanisms" ++ to_clear.clear() + + # Clear _PYTHON_HOST_PLATFORM to ensure value sets in skbuild.setuptools_wrap.setup() does not + # influence other tests. + +From ca5bdb781816540b84a4015e3e62af4e736f7f05 Mon Sep 17 00:00:00 2001 +From: Henry Schreiner +Date: Tue, 26 Nov 2024 11:06:15 -0500 +Subject: [PATCH 2/2] Update tests/__init__.py + +--- + tests/__init__.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/__init__.py b/tests/__init__.py +index e3942246..381a67be 100644 +--- a/tests/__init__.py ++++ b/tests/__init__.py +@@ -218,7 +218,7 @@ def execute_setup_py(project_dir, setup_args, disable_languages_test=False): + to_clear = getattr( + distutils.dir_util, "SkipRepeatAbsolutePaths", getattr(distutils.dir_util, "_path_created", None) + ) +- assert to_clear, "Must have one of the two supported clearing mechanisms" ++ assert to_clear is not None, "Must have one of the two supported clearing mechanisms" + to_clear.clear() + + # Clear _PYTHON_HOST_PLATFORM to ensure value sets in skbuild.setuptools_wrap.setup() does not