diff --git a/0001-literal-comparison.patch b/0001-literal-comparison.patch new file mode 100644 index 0000000..e3feff1 --- /dev/null +++ b/0001-literal-comparison.patch @@ -0,0 +1,66 @@ +From b4a53389c3e6ad41c836aa82998149f427fe1ad8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tibor=20Dudl=C3=A1k?= +Date: Tue, 10 Sep 2019 19:12:19 +0200 +Subject: [PATCH] Do not use comparision with "is" for literals +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +There is a warning with python 3.8 at fedora rawhide about +comparision with "is" while running ipa-server install. +See: https://bugs.python.org/issue34850 + +Signed-off-by: Tibor Dudlák +--- + yubico/yubikey_config.py | 4 ++-- + yubico/yubikey_usb_hid.py | 6 +++--- + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/yubico/yubikey_config.py b/yubico/yubikey_config.py +index b5a30c4..caeed02 100644 +--- a/yubico/yubikey_config.py ++++ b/yubico/yubikey_config.py +@@ -475,12 +475,12 @@ def to_frame(self, slot=1): + """ + data = self.to_string() + payload = data.ljust(64, yubico_util.chr_byte(0x0)) +- if slot is 1: ++ if slot == 1: + if self._update_config: + command = SLOT.UPDATE1 + else: + command = SLOT.CONFIG +- elif slot is 2: ++ elif slot == 2: + if self._update_config: + command = SLOT.UPDATE2 + else: +diff --git a/yubico/yubikey_usb_hid.py b/yubico/yubikey_usb_hid.py +index c07dcaa..b87ff3c 100644 +--- a/yubico/yubikey_usb_hid.py ++++ b/yubico/yubikey_usb_hid.py +@@ -285,13 +285,13 @@ def _waitfor(self, mode, mask, may_block, timeout=2): + seconds_left = min(20, seconds_left) + wait_num = (seconds_left * 2) - 1 + 6 + +- if mode is 'nand': ++ if mode == 'nand': + if not flags & mask == mask: + finished = True + else: + self._debug("Status %s (0x%x) has not cleared bits %s (0x%x)\n" + % (bin(flags), flags, bin(mask), mask)) +- elif mode is 'and': ++ elif mode == 'and': + if flags & mask == mask: + finished = True + else: +@@ -303,7 +303,7 @@ def _waitfor(self, mode, mask, may_block, timeout=2): + if not finished: + wait_num -= 1 + if wait_num == 0: +- if mode is 'nand': ++ if mode == 'nand': + reason = 'Timed out waiting for YubiKey to clear status 0x%x' % mask + else: + reason = 'Timed out waiting for YubiKey to set status 0x%x' % mask diff --git a/python-yubico.spec b/python-yubico.spec index d445664..b815f43 100644 --- a/python-yubico.spec +++ b/python-yubico.spec @@ -3,12 +3,13 @@ Name: python-%{srcname} Version: 1.3.3 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Pure-python library for interacting with Yubikeys License: BSD URL: https://github.com/Yubico/%{name} Source0: https://github.com/Yubico/%{name}/archive/%{name}-%{version}.tar.gz +Patch0001: 0001-literal-comparison.patch BuildArch: noarch @@ -20,7 +21,7 @@ Pure-python library for interacting with Yubikeys Summary: Pure-python library for interacting with Yubikeys BuildRequires: python3-devel BuildRequires: python3-setuptools -BuildRequires: python3-nose +BuildRequires: python3-pytest BuildRequires: python3-pyusb %{?python_provide:%python_provide python3-%{srcname}} @@ -42,7 +43,7 @@ Pure-python library for interacting with Yubikeys. For Python 3. %check -nosetests-%{python3_version} -e test_challenge_response -e test_serial -e test_status +%pytest test/soft/ %files -n python3-%{srcname} @@ -52,6 +53,10 @@ nosetests-%{python3_version} -e test_challenge_response -e test_serial -e test_s %changelog +* Wed Feb 03 18:03:23 CET 2021 Christian Heimes - 1.3.3-5 +- Use pytest instead of nose (#1918336) +- Don't use is to compare literals (#1749216) + * Wed Jan 27 2021 Fedora Release Engineering - 1.3.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild