From af767bd1f111eb893ae7e8ba5673f98c2d76d17c1acba4b6616c843ca1f4fbd6 Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Mon, 27 Mar 2023 05:47:50 +0000 Subject: [PATCH 1/2] - Add patch use_python3_interpreter_in_tests.diff: * Call python3, not python. - Actually run the testsuite. - Fix the Summary, and run fdupes to fix the most egregious rpmlint issues. - Stop using %{python_sitelib}/*. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-securesystemslib?expand=0&rev=3 --- python-securesystemslib.changes | 9 ++++++++ python-securesystemslib.spec | 41 +++++++++++++++++++++------------ 2 files changed, 35 insertions(+), 15 deletions(-) diff --git a/python-securesystemslib.changes b/python-securesystemslib.changes index 8765c79..e1edf1e 100644 --- a/python-securesystemslib.changes +++ b/python-securesystemslib.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Mon Mar 27 05:47:20 UTC 2023 - Steve Kowalik + +- Add patch use_python3_interpreter_in_tests.diff: + * Call python3, not python. +- Actually run the testsuite. +- Fix the Summary, and run fdupes to fix the most egregious rpmlint issues. +- Stop using %{python_sitelib}/*. + ------------------------------------------------------------------- Fri Dec 10 12:14:29 UTC 2021 - Adrian Schröter diff --git a/python-securesystemslib.spec b/python-securesystemslib.spec index 1ad8287..72be8fc 100644 --- a/python-securesystemslib.spec +++ b/python-securesystemslib.spec @@ -1,7 +1,7 @@ # -# spec file for package python-wakeonlan +# spec file for package python-securesystemslib # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,27 +12,33 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# -%{?!python_module:%define python_module() python-%{**} python3-%{**}} -%define skip_python2 1 Name: python-securesystemslib Version: 0.21.0 Release: 0 License: MIT -Summary: Cryptographic and general-purpose routines for Secure Systems Lab projects at NYU -Group: Development/Languages/Python -Url: https://github.com/secure-systems-lab/securesystemslib +Summary: Cryptographic and general routines for Secure Systems Lab +URL: https://github.com/secure-systems-lab/securesystemslib Source: securesystemslib-%{version}.tar.xz +# PATCH-FIX-UPSTREAM Contained in debian/patches directory +Patch0: use_python3_interpreter_in_tests.diff +BuildRequires: %{python_module PyNaCl} +BuildRequires: %{python_module asn1crypto} +BuildRequires: %{python_module cryptography >= 3.3.2} +BuildRequires: %{python_module ed25519} +BuildRequires: %{python_module hatchling} BuildRequires: %{python_module pip} +BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros - -Requires: python-cryptography >= 3.3.2 -Requires: python-PyNaCl -Requires: python-colorama +Requires: python-PyNaCl +Requires: python-asn1crypto +Requires: python-colorama +Requires: python-cryptography >= 3.3.2 BuildArch: noarch %python_subpackages @@ -41,15 +47,20 @@ BuildArch: noarch Cryptographic and general-purpose routines for Secure Systems Lab projects at NYU %prep -%setup -q -n securesystemslib-%version +%autosetup -p1 -n securesystemslib-%version %build -export CFLAGS="%{optflags}" %python_build %install %python_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%check +%pytest -k 'not (test_ed25519_kat or test_checkparams)' %files %{python_files} -%{python_sitelib}/* +%{python_sitelib}/securesystemslib +%{python_sitelib}/securesystemslib-%{version}*info +%changelog From af896f2f522204162dff06376781f27d6a35cfc1708d1f35d050e3c0597fb54c Mon Sep 17 00:00:00 2001 From: Daniel Garcia Date: Mon, 27 Mar 2023 16:20:06 +0000 Subject: [PATCH 2/2] Add the actual patch use_python3_interpreter_in_tests.diff OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-securesystemslib?expand=0&rev=4 --- use_python3_interpreter_in_tests.diff | 46 +++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 use_python3_interpreter_in_tests.diff diff --git a/use_python3_interpreter_in_tests.diff b/use_python3_interpreter_in_tests.diff new file mode 100644 index 0000000..af6e8a9 --- /dev/null +++ b/use_python3_interpreter_in_tests.diff @@ -0,0 +1,46 @@ +Description: Use python3 in tests + Some upstream tests for the custom `process` module call the python interpreter + in a subprocess. In Debian, where we only build for python3, "python" is not + available during build and thus makes those tests fail. This patch replaces + "python" with "python3" where applicable. +Author: Lukas Puehringer +Forwarded: not-needed + +--- python-securesystemslib-0.16.0.orig/tests/test_process.py ++++ python-securesystemslib-0.16.0/tests/test_process.py +@@ -38,7 +38,7 @@ class Test_Process(unittest.TestCase): + + stdin_file = open(path) + cmd = \ +- "python -c \"import sys; assert(sys.stdin.read() == '{}')\"" ++ "python3 -c \"import sys; assert(sys.stdin.read() == '{}')\"" + + # input is used in favor of stdin + securesystemslib.process.run(cmd.format("use input kwarg"), +@@ -57,7 +57,7 @@ class Test_Process(unittest.TestCase): + def test_run_duplicate_streams(self): + """Test output as streams and as returned. """ + # Command that prints 'foo' to stdout and 'bar' to stderr. +- cmd = ("python -c \"" ++ cmd = ("python3 -c \"" + "import sys;" + "sys.stdout.write('foo');" + "sys.stderr.write('bar');\"") +@@ -101,7 +101,7 @@ class Test_Process(unittest.TestCase): + + def test_run_cmd_arg_return_code(self): + """Test command arg as string and list using return code. """ +- cmd_str = ("python -c \"" ++ cmd_str = ("python3 -c \"" + "import sys;" + "sys.exit(100)\"") + cmd_list = shlex.split(cmd_str) +@@ -117,7 +117,7 @@ class Test_Process(unittest.TestCase): + def test_run_duplicate_streams_timeout(self): + """Test raise TimeoutExpired. """ + with self.assertRaises(securesystemslib.process.subprocess.TimeoutExpired): +- securesystemslib.process.run_duplicate_streams("python --version", ++ securesystemslib.process.run_duplicate_streams("python3 --version", + timeout=-1) + +