summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-02-03 14:35:08 +0100
committerMichał Górny <mgorny@gentoo.org>2024-02-03 14:36:16 +0100
commit068caa88a680297633f17f26e64a45bfffe6fb5b (patch)
treeeb56941539aaa10c4872351ccc6cf6835a595e26 /dev-python/build
parentprofiles/package.mask: split into dev-libs/libtracecmd to fix dep (diff)
downloadgentoo-068caa88a680297633f17f26e64a45bfffe6fb5b.tar.gz
gentoo-068caa88a680297633f17f26e64a45bfffe6fb5b.tar.bz2
gentoo-068caa88a680297633f17f26e64a45bfffe6fb5b.zip
dev-python/build: Backport setuptools-69.0.3+ test fixes
Closes: https://bugs.gentoo.org/923622 Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/build')
-rw-r--r--dev-python/build/build-1.0.3.ebuild7
-rw-r--r--dev-python/build/files/build-1.0.3-setuptools-69.patch102
2 files changed, 108 insertions, 1 deletions
diff --git a/dev-python/build/build-1.0.3.ebuild b/dev-python/build/build-1.0.3.ebuild
index e1c120c79606..b5380c983e46 100644
--- a/dev-python/build/build-1.0.3.ebuild
+++ b/dev-python/build/build-1.0.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2023 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -41,6 +41,11 @@ BDEPEND="
distutils_enable_tests pytest
+PATCHES=(
+ # https://github.com/pypa/build/pull/722
+ "${FILESDIR}/${P}-setuptools-69.patch"
+)
+
python_test() {
local EPYTEST_DESELECT=(
# broken by the presence of flit_core
diff --git a/dev-python/build/files/build-1.0.3-setuptools-69.patch b/dev-python/build/files/build-1.0.3-setuptools-69.patch
new file mode 100644
index 000000000000..3aa79d080245
--- /dev/null
+++ b/dev-python/build/files/build-1.0.3-setuptools-69.patch
@@ -0,0 +1,102 @@
+From 9f6e34228a0da7e5ce724f400a34bc9f4e69a1ac Mon Sep 17 00:00:00 2001
+From: Henry Schreiner <HenrySchreinerIII@gmail.com>
+Date: Wed, 17 Jan 2024 02:44:57 -0500
+Subject: [PATCH] tests: support setuptools v69.0.3+ (#722)
+
+* tests: support setuptools v69.0.3+
+
+Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
+
+* tests: missed one more normalization fix
+
+Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
+
+* fix: add MANIFEST.in for old setuptools in tests
+
+Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
+
+* tests: used the wrong name
+
+Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
+
+---------
+
+Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
+---
+ tests/packages/test-setuptools/MANIFEST.in | 1 +
+ tests/test_projectbuilder.py | 6 ++++--
+ tests/test_self_packaging.py | 1 +
+ tests/test_util.py | 6 ++++--
+ 4 files changed, 10 insertions(+), 4 deletions(-)
+ create mode 100644 tests/packages/test-setuptools/MANIFEST.in
+
+diff --git a/tests/packages/test-setuptools/MANIFEST.in b/tests/packages/test-setuptools/MANIFEST.in
+new file mode 100644
+index 0000000..e69e3cf
+--- /dev/null
++++ b/tests/packages/test-setuptools/MANIFEST.in
+@@ -0,0 +1 @@
++include pyproject.toml setup.cfg
+diff --git a/tests/test_projectbuilder.py b/tests/test_projectbuilder.py
+index d46927b..69914ab 100644
+--- a/tests/test_projectbuilder.py
++++ b/tests/test_projectbuilder.py
+@@ -502,7 +502,8 @@ def test_metadata_path_no_prepare(tmp_dir, package_test_no_prepare):
+ pathlib.Path(builder.metadata_path(tmp_dir)),
+ ).metadata
+
+- assert metadata['name'] == 'test-no-prepare'
++ # Setuptools < v69.0.3 (https://github.com/pypa/setuptools/pull/4159) normalized this to dashes
++ assert metadata['name'].replace('-', '_') == 'test_no_prepare'
+ assert metadata['Version'] == '1.0.0'
+
+
+@@ -513,7 +514,8 @@ def test_metadata_path_with_prepare(tmp_dir, package_test_setuptools):
+ pathlib.Path(builder.metadata_path(tmp_dir)),
+ ).metadata
+
+- assert metadata['name'] == 'test-setuptools'
++ # Setuptools < v69.0.3 (https://github.com/pypa/setuptools/pull/4159) normalized this to dashes
++ assert metadata['name'].replace('-', '_') == 'test_setuptools'
+ assert metadata['Version'] == '1.0.0'
+
+
+diff --git a/tests/test_self_packaging.py b/tests/test_self_packaging.py
+index fb1d124..3a436ef 100644
+--- a/tests/test_self_packaging.py
++++ b/tests/test_self_packaging.py
+@@ -27,6 +27,7 @@ sdist_files = {
+ 'tests/constraints.txt',
+ 'tests/packages/test-cant-build-via-sdist/some-file-that-is-needed-for-build.txt',
+ 'tests/packages/test-no-project/empty.txt',
++ 'tests/packages/test-setuptools/MANIFEST.in',
+ 'tox.ini',
+ }
+
+diff --git a/tests/test_util.py b/tests/test_util.py
+index 8045b51..0ab81b8 100644
+--- a/tests/test_util.py
++++ b/tests/test_util.py
+@@ -12,7 +12,8 @@ import build.util
+ def test_wheel_metadata(package_test_setuptools, isolated):
+ metadata = build.util.project_wheel_metadata(package_test_setuptools, isolated)
+
+- assert metadata['name'] == 'test-setuptools'
++ # Setuptools < v69.0.3 (https://github.com/pypa/setuptools/pull/4159) normalized this to dashes
++ assert metadata['name'].replace('-', '_') == 'test_setuptools'
+ assert metadata['version'] == '1.0.0'
+ assert isinstance(metadata.json, dict)
+
+@@ -41,7 +42,8 @@ def test_wheel_metadata_isolation(package_test_flit):
+ def test_with_get_requires(package_test_metadata):
+ metadata = build.util.project_wheel_metadata(package_test_metadata)
+
+- assert metadata['name'] == 'test-metadata'
++ # Setuptools < v69.0.3 (https://github.com/pypa/setuptools/pull/4159) normalized this to dashes
++ assert metadata['name'].replace('-', '_') == 'test_metadata'
+ assert str(metadata['version']) == '1.0.0'
+ assert metadata['summary'] == 'hello!'
+ assert isinstance(metadata.json, dict)
+--
+2.43.0
+