Bug#938969: python-packaging: test failures due to wrong arch check
Please consider the following debdiff to fix this issue. diff -Nru python-packaging-19.1/debian/changelog python-packaging-19.1/debian/changelog --- python-packaging-19.1/debian/changelog 2019-08-17 08:49:26.0 -0300 +++ python-packaging-19.1/debian/changelog 2019-08-29 18:58:34.0 -0300 @@ -1,3 +1,11 @@ +python-packaging (19.1-2) unstable; urgency=medium + + * debian/patches/update-platform-for-pybuild.patch: use amd64 instead +of x86_64 during the build as pybuild forcefully sets get_platform() +to return linux-amd64. + + -- Tiago Stürmer Daitx Thu, 29 Aug 2019 21:58:34 + + python-packaging (19.1-1) unstable; urgency=medium * New upstream version. diff -Nru python-packaging-19.1/debian/patches/series python-packaging-19.1/debian/patches/series --- python-packaging-19.1/debian/patches/series 2015-10-28 11:18:13.0 -0200 +++ python-packaging-19.1/debian/patches/series 2019-08-29 18:58:34.0 -0300 @@ -1 +1,2 @@ # empty +update-platform-for-pybuild.patch diff -Nru python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch --- python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch 1969-12-31 21:00:00.0 -0300 +++ python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch 2019-08-29 18:58:34.0 -0300 @@ -0,0 +1,84 @@ +Description: update x86_64 references to amd64 + pybuild sets the _PYTHON_HOST_PLATFORM environment variable which + causes distutils.util.get_platform() to return linux-amd64 instead + of linux-x86_64. This causes 2 tests in test/test_tags.py to fail. + This patch updates the test_tags.py file to expect amd64 instead + of x86_64. Meanwhile packaging/tags.py needs to be updated to + support both linux-x86_64 (for runtime) and linux-amd64 (for build + time). +Author: Tiago Stürmer Daitx +Bug-Debian: http://bugs.debian.org/938969 +Forwarded: not-needed +Last-Update: 2019-08-30 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/tests/test_tags.py b/tests/test_tags.py +@@ -487,18 +487,18 @@ def test_have_compatible_glibc(monkeypat + + + def test_linux_platforms_64bit_on_64bit_os(monkeypatch): +-is_64bit_os = distutils.util.get_platform().endswith("_x86_64") ++is_64bit_os = distutils.util.get_platform().endswith("_amd64") + if platform.system() != "Linux" or not is_64bit_os: +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) + linux_platform = tags._linux_platforms(is_32bit=False)[-1] +-assert linux_platform == "linux_x86_64" ++assert linux_platform == "linux_amd64" + + + def test_linux_platforms_32bit_on_64bit_os(monkeypatch): +-is_64bit_os = distutils.util.get_platform().endswith("_x86_64") ++is_64bit_os = distutils.util.get_platform().endswith("_amd64") + if platform.system() != "Linux" or not is_64bit_os: +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) + linux_platform = tags._linux_platforms(is_32bit=True)[-1] + assert linux_platform == "linux_i686" +@@ -509,9 +509,9 @@ def test_linux_platforms_manylinux1(monk + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux1" + ) + if platform.system() != "Linux": +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + platforms = tags._linux_platforms(is_32bit=False) +-assert platforms == ["manylinux1_x86_64", "linux_x86_64"] ++assert platforms == ["manylinux1_amd64", "linux_amd64"] + + + def test_linux_platforms_manylinux2010(monkeypatch): +@@ -519,9 +519,9 @@ def test_linux_platforms_manylinux2010(m + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux2010" + ) + if platform.system() != "Linux": +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + platforms = tags._linux_platforms(is_32bit=False) +-expected = ["manylinux2010_x86_64", "manylinux1_x86_64", "linux_x86_64"] ++expected = ["manylinux2010_amd64", "manylinux1_amd64", "linux_amd64"] + assert platforms == expected + + +@@ -531,7 +531,7 @@ def test_sys_tags_linux_cpython(monkeypa + monkeypatch.setattr(tags, "_cpython_abi", lambda py_version: "cp33m") + if platform.system() != "Linux": + monkeypatch.setattr(platform, "system", lambda: "Linux") +-monkeypatch.setattr(tags,
Bug#938969: python-packaging: test failures due to wrong arch check
Please consider the following debdiff to fix this issue. diff -Nru python-packaging-19.1/debian/changelog python-packaging-19.1/debian/changelog --- python-packaging-19.1/debian/changelog 2019-08-17 08:49:26.0 -0300 +++ python-packaging-19.1/debian/changelog 2019-08-29 18:58:34.0 -0300 @@ -1,3 +1,11 @@ +python-packaging (19.1-2) unstable; urgency=medium + + * debian/patches/update-platform-for-pybuild.patch: use amd64 instead +of x86_64 during the build as pybuild forcefully sets get_platform() +to return linux-amd64. + + -- Tiago Stürmer Daitx Thu, 29 Aug 2019 21:58:34 + + python-packaging (19.1-1) unstable; urgency=medium * New upstream version. diff -Nru python-packaging-19.1/debian/patches/series python-packaging-19.1/debian/patches/series --- python-packaging-19.1/debian/patches/series 2015-10-28 11:18:13.0 -0200 +++ python-packaging-19.1/debian/patches/series 2019-08-29 18:58:34.0 -0300 @@ -1 +1,2 @@ # empty +update-platform-for-pybuild.patch diff -Nru python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch --- python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch 1969-12-31 21:00:00.0 -0300 +++ python-packaging-19.1/debian/patches/update-platform-for-pybuild.patch 2019-08-29 18:58:34.0 -0300 @@ -0,0 +1,84 @@ +Description: update x86_64 references to amd64 + pybuild sets the _PYTHON_HOST_PLATFORM environment variable which + causes distutils.util.get_platform() to return linux-amd64 instead + of linux-x86_64. This causes 2 tests in test/test_tags.py to fail. + This patch updates the test_tags.py file to expect amd64 instead + of x86_64. Meanwhile packaging/tags.py needs to be updated to + support both linux-x86_64 (for runtime) and linux-amd64 (for build + time). +Author: Tiago Stürmer Daitx +Bug-Debian: http://bugs.debian.org/938969 +Forwarded: not-needed +Last-Update: 2019-08-30 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/tests/test_tags.py b/tests/test_tags.py +@@ -487,18 +487,18 @@ def test_have_compatible_glibc(monkeypat + + + def test_linux_platforms_64bit_on_64bit_os(monkeypatch): +-is_64bit_os = distutils.util.get_platform().endswith("_x86_64") ++is_64bit_os = distutils.util.get_platform().endswith("_amd64") + if platform.system() != "Linux" or not is_64bit_os: +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) + linux_platform = tags._linux_platforms(is_32bit=False)[-1] +-assert linux_platform == "linux_x86_64" ++assert linux_platform == "linux_amd64" + + + def test_linux_platforms_32bit_on_64bit_os(monkeypatch): +-is_64bit_os = distutils.util.get_platform().endswith("_x86_64") ++is_64bit_os = distutils.util.get_platform().endswith("_amd64") + if platform.system() != "Linux" or not is_64bit_os: +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) + linux_platform = tags._linux_platforms(is_32bit=True)[-1] + assert linux_platform == "linux_i686" +@@ -509,9 +509,9 @@ def test_linux_platforms_manylinux1(monk + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux1" + ) + if platform.system() != "Linux": +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + platforms = tags._linux_platforms(is_32bit=False) +-assert platforms == ["manylinux1_x86_64", "linux_x86_64"] ++assert platforms == ["manylinux1_amd64", "linux_amd64"] + + + def test_linux_platforms_manylinux2010(monkeypatch): +@@ -519,9 +519,9 @@ def test_linux_platforms_manylinux2010(m + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux2010" + ) + if platform.system() != "Linux": +-monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_amd64") + platforms = tags._linux_platforms(is_32bit=False) +-expected = ["manylinux2010_x86_64", "manylinux1_x86_64", "linux_x86_64"] ++expected = ["manylinux2010_amd64", "manylinux1_amd64", "linux_amd64"] + assert platforms == expected + + +@@ -531,7 +531,7 @@ def test_sys_tags_linux_cpython(monkeypa + monkeypatch.setattr(tags, "_cpython_abi", lambda py_version: "cp33m") + if platform.system() != "Linux": + monkeypatch.setattr(platform, "system", lambda: "Linux") +-monkeypatch.setattr(tags,
Bug#938969: python-packaging: test failures due to wrong arch check
Package: python-packaging Version: 19.0-1 Severity: important Dear Maintainer, Since 19.1-1 python-packaging introduced a Tags class that has methods that depend upon distutils.util.get_platform(). The problem is that the behavior of get_platform() changes during build time, as pybuild sets _PYTHON_HOST_PLATFORM which overrides the default output of get_platform(). This causes linux-x86_64 to be changed to linux-amd64, leading to 2 test failures and some if clauses to run amok as they expect the string x86_64. Both tests/test_tags.py and packaging/tags.py require updates to deal with the build time get_platform changes. Regards, Tiago -- System Information: Debian Release: buster/sid APT prefers eoan APT policy: (500, 'eoan'), (400, 'eoan-proposed') Architecture: amd64 (x86_64) Kernel: Linux 5.0.0-20-generic (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8), LANGUAGE=en_US (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages python-packaging depends on: ii python2.7.16-1 ii python-pyparsing 2.2.0+dfsg1-2 ii python-six1.12.0-1build1 python-packaging recommends no packages. python-packaging suggests no packages. -- no debconf information