mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 22:26:40 -05:00
gnu: python-packaging: Fix test failures on non-x86_64 architectures.
* gnu/packages/patches/python-packaging-test-arch.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/python-xyz.scm (python-packaging)[source](patches): New field.
This commit is contained in:
parent
7699e32289
commit
fdd0c36963
3 changed files with 67 additions and 0 deletions
|
@ -1319,6 +1319,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/python-libxml2-utf8.patch \
|
%D%/packages/patches/python-libxml2-utf8.patch \
|
||||||
%D%/packages/patches/python-mox3-python3.6-compat.patch \
|
%D%/packages/patches/python-mox3-python3.6-compat.patch \
|
||||||
%D%/packages/patches/python-testtools.patch \
|
%D%/packages/patches/python-testtools.patch \
|
||||||
|
%D%/packages/patches/python-packaging-test-arch.patch \
|
||||||
%D%/packages/patches/python-paste-remove-timing-test.patch \
|
%D%/packages/patches/python-paste-remove-timing-test.patch \
|
||||||
%D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \
|
%D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \
|
||||||
%D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
|
%D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
|
||||||
|
|
65
gnu/packages/patches/python-packaging-test-arch.patch
Normal file
65
gnu/packages/patches/python-packaging-test-arch.patch
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
Fix tests that are "hard coded" to expect x86_64 output by mocking the platform interface.
|
||||||
|
|
||||||
|
Submitted upstream:
|
||||||
|
https://github.com/pypa/packaging/pull/176
|
||||||
|
|
||||||
|
diff --git a/tests/test_tags.py b/tests/test_tags.py
|
||||||
|
index 1eacf68..0a3f1b4 100644
|
||||||
|
--- a/tests/test_tags.py
|
||||||
|
+++ b/tests/test_tags.py
|
||||||
|
@@ -435,37 +435,43 @@ class TestManylinuxPlatform:
|
||||||
|
linux_platform = list(tags._linux_platforms(is_32bit=False))
|
||||||
|
assert linux_platform == ["linux_x86_64"]
|
||||||
|
|
||||||
|
- def test_linux_platforms_manylinux1(self, monkeypatch):
|
||||||
|
+ def test_linux_platforms_manylinux1(self, is_x86, monkeypatch):
|
||||||
|
monkeypatch.setattr(
|
||||||
|
tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux1"
|
||||||
|
)
|
||||||
|
- if platform.system() != "Linux":
|
||||||
|
+ if platform.system() != "Linux" or not is_x86:
|
||||||
|
monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64")
|
||||||
|
+ monkeypatch.setattr(platform, "machine", lambda: "x86_64")
|
||||||
|
platforms = list(tags._linux_platforms(is_32bit=False))
|
||||||
|
- assert platforms == ["manylinux1_x86_64", "linux_x86_64"]
|
||||||
|
+ arch = platform.machine()
|
||||||
|
+ assert platforms == ["manylinux1_" + arch, "linux_" + arch]
|
||||||
|
|
||||||
|
- def test_linux_platforms_manylinux2010(self, monkeypatch):
|
||||||
|
+ def test_linux_platforms_manylinux2010(self, is_x86, monkeypatch):
|
||||||
|
monkeypatch.setattr(
|
||||||
|
tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux2010"
|
||||||
|
)
|
||||||
|
- if platform.system() != "Linux":
|
||||||
|
+ if platform.system() != "Linux" or not is_x86:
|
||||||
|
monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64")
|
||||||
|
+ monkeypatch.setattr(platform, "machine", lambda: "x86_64")
|
||||||
|
platforms = list(tags._linux_platforms(is_32bit=False))
|
||||||
|
- expected = ["manylinux2010_x86_64", "manylinux1_x86_64", "linux_x86_64"]
|
||||||
|
+ arch = platform.machine()
|
||||||
|
+ expected = ["manylinux2010_" + arch, "manylinux1_" + arch, "linux_" + arch]
|
||||||
|
assert platforms == expected
|
||||||
|
|
||||||
|
- def test_linux_platforms_manylinux2014(self, monkeypatch):
|
||||||
|
+ def test_linux_platforms_manylinux2014(self, is_x86, monkeypatch):
|
||||||
|
monkeypatch.setattr(
|
||||||
|
tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux2014"
|
||||||
|
)
|
||||||
|
- if platform.system() != "Linux":
|
||||||
|
+ if platform.system() != "Linux" or not is_x86:
|
||||||
|
monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64")
|
||||||
|
+ monkeypatch.setattr(platform, "machine", lambda: "x86_64")
|
||||||
|
platforms = list(tags._linux_platforms(is_32bit=False))
|
||||||
|
+ arch = platform.machine()
|
||||||
|
expected = [
|
||||||
|
- "manylinux2014_x86_64",
|
||||||
|
- "manylinux2010_x86_64",
|
||||||
|
- "manylinux1_x86_64",
|
||||||
|
- "linux_x86_64",
|
||||||
|
+ "manylinux2014_" + arch,
|
||||||
|
+ "manylinux2010_" + arch,
|
||||||
|
+ "manylinux1_" + arch,
|
||||||
|
+ "linux_" + arch,
|
||||||
|
]
|
||||||
|
assert platforms == expected
|
||||||
|
|
|
@ -13054,6 +13054,7 @@ (define-public python-packaging
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "packaging" version))
|
(uri (pypi-uri "packaging" version))
|
||||||
|
(patches (search-patches "python-packaging-test-arch.patch"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1y2ip3a4ykkpgnwgn85j6hkspcl0cg3mzms97f40mk57vwqq67gy"))))
|
"1y2ip3a4ykkpgnwgn85j6hkspcl0cg3mzms97f40mk57vwqq67gy"))))
|
||||||
|
|
Loading…
Reference in a new issue