diff --git a/fix-deprecation-warning.patch b/fix-deprecation-warning.patch index 9526b95..030b483 100644 --- a/fix-deprecation-warning.patch +++ b/fix-deprecation-warning.patch @@ -8,11 +8,11 @@ Subject: [PATCH] fix DeprecationWarning for logging and fake_filesystem pyu2f/tests/hid/linux_test.py | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) -diff --git a/pyu2f/hid/macos.py b/pyu2f/hid/macos.py -index 905bce2..919fd4d 100644 ---- a/pyu2f/hid/macos.py -+++ b/pyu2f/hid/macos.py -@@ -174,7 +174,7 @@ class _CFAllocator(_CFType): +Index: pyu2f-0.1.5a/pyu2f/hid/macos.py +=================================================================== +--- pyu2f-0.1.5a.orig/pyu2f/hid/macos.py ++++ pyu2f-0.1.5a/pyu2f/hid/macos.py +@@ -174,7 +174,7 @@ if sys.platform.startswith('darwin'): ctypes.POINTER(ctypes.c_uint8), CF_INDEX] else: @@ -21,11 +21,11 @@ index 905bce2..919fd4d 100644 def CFStr(s): -diff --git a/pyu2f/tests/hid/linux_test.py b/pyu2f/tests/hid/linux_test.py -index 1a299fa..610d200 100644 ---- a/pyu2f/tests/hid/linux_test.py -+++ b/pyu2f/tests/hid/linux_test.py -@@ -49,14 +49,14 @@ +Index: pyu2f-0.1.5a/pyu2f/tests/hid/linux_test.py +=================================================================== +--- pyu2f-0.1.5a.orig/pyu2f/tests/hid/linux_test.py ++++ pyu2f-0.1.5a/pyu2f/tests/hid/linux_test.py +@@ -49,14 +49,14 @@ KEYBOARD_RD = ( def AddDevice(fs, dev_name, product_name, vendor_id, product_id, report_descriptor_b64): @@ -44,7 +44,7 @@ index 1a299fa..610d200 100644 class FakeDeviceOsModule(object): -@@ -79,10 +79,10 @@ def read(self, unused_dev, unused_length): # pylint: disable=invalid-name +@@ -79,10 +79,10 @@ class FakeDeviceOsModule(object): class LinuxTest(unittest.TestCase): def setUp(self): self.fs = fake_filesystem.FakeFilesystem() diff --git a/python-pyu2f.changes b/python-pyu2f.changes index 9ab3680..ca271ec 100644 --- a/python-pyu2f.changes +++ b/python-pyu2f.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Tue Oct 17 07:32:00 UTC 2023 - Daniel Garcia Moreno + +- Use upstream patches instead of custom one for python312 + compatibility. + - drop python312.patch + - add python312-1.patch gh#google/pyu2f@793acd9ff661 + - add python312-2.patch gh#google/pyu2f@dad654010a03 + ------------------------------------------------------------------- Tue Oct 17 07:18:36 UTC 2023 - Daniel Garcia Moreno diff --git a/python-pyu2f.spec b/python-pyu2f.spec index 0fe2422..6ef18da 100644 --- a/python-pyu2f.spec +++ b/python-pyu2f.spec @@ -29,17 +29,17 @@ Source: https://github.com/google/pyu2f/archive/refs/tags/%{version}.tar Patch: fix-deprecation-warning.patch # https://github.com/google/pyu2f/issues/34 Patch1: python-pyu2f-no-six.patch -# PATCH-FIX-OPENSUSE python312.patch -Patch2: python312.patch +# PATCH-FIX-UPSTREAM python312-1.patch gh#google/pyu2f@793acd9ff661 +Patch2: python312-1.patch +# PATCH-FIX-UPSTREAM python312-2.patch gh#google/pyu2f@dad654010a03 +Patch3: python312-2.patch BuildRequires: %{python_module setuptools} BuildRequires: python-rpm-macros # SECTION test requirements -BuildRequires: %{python_module six} BuildRequires: %{python_module pyfakefs >= 2.4} BuildRequires: %{python_module pytest} # /SECTION BuildRequires: fdupes -Requires: python-six BuildArch: noarch %python_subpackages diff --git a/python312-1.patch b/python312-1.patch new file mode 100644 index 0000000..7360467 --- /dev/null +++ b/python312-1.patch @@ -0,0 +1,771 @@ +From dad654010a030f1038bd2df95a9647fb417e0447 Mon Sep 17 00:00:00 2001 +From: Felix Yan +Date: Mon, 2 Aug 2021 17:11:20 +0800 +Subject: [PATCH] Fix warnings about assertEquals + +Example: +``` +pyu2f/tests/hid/macos_test.py::MacOsTest::testInitHidDevice + /build/python-pyu2f/src/pyu2f-0.1.5/pyu2f/tests/hid/macos_test.py:61: DeprecationWarning: Please use assertEqual instead. + self.assertEquals(64, device.GetOutReportDataLength()) +``` +--- + pyu2f/tests/customauthenticator_test.py | 48 ++++++------ + pyu2f/tests/hardware_test.py | 56 ++++++------- + pyu2f/tests/hid/linux_test.py | 24 +++--- + pyu2f/tests/hid/macos_test.py | 18 ++--- + pyu2f/tests/hidtransport_test.py | 44 +++++------ + pyu2f/tests/localauthenticator_test.py | 34 ++++---- + pyu2f/tests/model_test.py | 16 ++-- + pyu2f/tests/u2f_test.py | 100 ++++++++++++------------ + pyu2f/tests/util_test.py | 12 +-- + 9 files changed, 176 insertions(+), 176 deletions(-) + +Index: pyu2f-0.1.5a/pyu2f/tests/customauthenticator_test.py +=================================================================== +--- pyu2f-0.1.5a.orig/pyu2f/tests/customauthenticator_test.py ++++ pyu2f-0.1.5a/pyu2f/tests/customauthenticator_test.py +@@ -122,44 +122,44 @@ class CustomAuthenticatorTest(unittest.T + + self.assertTrue(mock_communicate_method.called) + communicate_args = mock_communicate_method.call_args[0] +- self.assertEquals(len(communicate_args), 1, +- 'communicate() should have been called with two args') ++ self.assertEqual(len(communicate_args), 1, ++ 'communicate() should have been called with two args') + + communicate_stdin = communicate_args[0] + communicate_json_len_le = communicate_stdin[:4] + communicate_json_len = struct.unpack(' +Date: Fri, 15 Oct 2021 10:38:31 +0000 +Subject: [PATCH] Use assertRaisesRegex instead of assertRaisesRegexp for + Python 3.11 compatibility. + +--- + pyu2f/tests/hidtransport_test.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: pyu2f-0.1.5a/pyu2f/tests/hidtransport_test.py +=================================================================== +--- pyu2f-0.1.5a.orig/pyu2f/tests/hidtransport_test.py ++++ pyu2f-0.1.5a/pyu2f/tests/hidtransport_test.py +@@ -128,8 +128,8 @@ class TransportTest(unittest.TestCase): + # the second will succeed on the second retry. + fake_hid_dev.SetChannelBusyCount(3) + with mock.patch.object(hidtransport, 'time') as _: +- self.assertRaisesRegexp(errors.HidError, '^Device Busy', t.SendMsgBytes, +- [0x00, 0x01, 0x00, 0x00]) ++ self.assertRaisesRegex(errors.HidError, '^Device Busy', t.SendMsgBytes, ++ [0x00, 0x01, 0x00, 0x00]) + + reply = t.SendMsgBytes([0x00, 0x01, 0x00, 0x00]) + self.assertEqual(reply, bytearray([0x01, 0x90, 0x00])) diff --git a/python312.patch b/python312.patch deleted file mode 100644 index f2ce85c..0000000 --- a/python312.patch +++ /dev/null @@ -1,148 +0,0 @@ -Index: pyu2f-0.1.5a/pyu2f/tests/u2f_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/u2f_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/u2f_test.py -@@ -30,6 +30,9 @@ else: - - class U2fTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def testRegisterSuccessWithTUP(self): - mock_sk = mock.MagicMock() - mock_sk.CmdRegister.side_effect = [errors.TUPRequiredError, 'regdata'] -Index: pyu2f-0.1.5a/pyu2f/tests/util_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/util_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/util_test.py -@@ -26,6 +26,9 @@ else: - - class UtilTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def testSimplePing(self): - dev = util.FakeHidDevice(cid_to_allocate=None) - dev.Write([0, 0, 0, 1, 0x81, 0, 3, 1, 2, 3]) -Index: pyu2f-0.1.5a/pyu2f/tests/hid/macos_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/hid/macos_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/hid/macos_test.py -@@ -47,6 +47,9 @@ def init_mock_get_int_property(mock_get_ - - class MacOsTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - @mock.patch.object(macos.threading, 'Thread') - @mock.patch.multiple(macos, iokit=mock.DEFAULT, cf=mock.DEFAULT, - GetDeviceIntProperty=mock.DEFAULT) -Index: pyu2f-0.1.5a/pyu2f/tests/hid/linux_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/hid/linux_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/hid/linux_test.py -@@ -77,6 +77,10 @@ class FakeDeviceOsModule(object): - - - class LinuxTest(unittest.TestCase): -+ -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def setUp(self): - self.fs = fake_filesystem.FakeFilesystem() - self.fs.create_dir('/sys/class/hidraw') -Index: pyu2f-0.1.5a/pyu2f/tests/model_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/model_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/model_test.py -@@ -28,6 +28,9 @@ else: - - class ModelTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def testClientDataRegistration(self): - cd = model.ClientData(model.ClientData.TYP_REGISTRATION, b'ABCD', - 'somemachine') -Index: pyu2f-0.1.5a/pyu2f/tests/localauthenticator_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/localauthenticator_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/localauthenticator_test.py -@@ -57,6 +57,9 @@ SIGN_SUCCESS['client_data'] = model.Clie - @mock.patch.object(sys, 'stderr', new=mock.MagicMock()) - class LocalAuthenticatorTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - @mock.patch.object(localauthenticator.u2f, 'GetLocalU2FInterface') - def testSignSuccess(self, mock_get_u2f_method): - """Test successful signing with a valid key.""" -Index: pyu2f-0.1.5a/pyu2f/tests/hardware_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/hardware_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/hardware_test.py -@@ -29,6 +29,9 @@ else: - - class HardwareTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def testSimpleCommands(self): - mock_transport = mock.MagicMock() - sk = hardware.SecurityKey(mock_transport) -Index: pyu2f-0.1.5a/pyu2f/tests/hidtransport_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/hidtransport_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/hidtransport_test.py -@@ -56,6 +56,9 @@ def RPad(collection, to_size): - - class DiscoveryTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def testHidUsageSelector(self): - u2f_device = {'usage_page': 0xf1d0, 'usage': 0x01} - other_device = {'usage_page': 0x06, 'usage': 0x01} -@@ -98,6 +101,9 @@ class DiscoveryTest(unittest.TestCase): - - class TransportTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - def testInit(self): - fake_hid_dev = util.FakeHidDevice(bytearray([0x00, 0x00, 0x00, 0x01])) - t = hidtransport.UsbHidTransport(fake_hid_dev) -@@ -128,8 +134,8 @@ class TransportTest(unittest.TestCase): - # the second will succeed on the second retry. - fake_hid_dev.SetChannelBusyCount(3) - with mock.patch.object(hidtransport, 'time') as _: -- self.assertRaisesRegexp(errors.HidError, '^Device Busy', t.SendMsgBytes, -- [0x00, 0x01, 0x00, 0x00]) -+ self.assertRaisesRegex(errors.HidError, '^Device Busy', t.SendMsgBytes, -+ [0x00, 0x01, 0x00, 0x00]) - - reply = t.SendMsgBytes([0x00, 0x01, 0x00, 0x00]) - self.assertEquals(reply, bytearray([0x01, 0x90, 0x00])) -Index: pyu2f-0.1.5a/pyu2f/tests/customauthenticator_test.py -=================================================================== ---- pyu2f-0.1.5a.orig/pyu2f/tests/customauthenticator_test.py -+++ pyu2f-0.1.5a/pyu2f/tests/customauthenticator_test.py -@@ -57,6 +57,9 @@ SIGN_SUCCESS = { - @mock.patch.object(sys, 'stderr', new=mock.MagicMock()) - class CustomAuthenticatorTest(unittest.TestCase): - -+ def assertEquals(self, *args, **kwargs): -+ return self.assertEqual(*args, **kwargs) -+ - @mock.patch.object(customauthenticator.os.environ, 'get', return_value=None) - def testEnvVarNotSet(self, os_get_method): - authenticator = customauthenticator.CustomAuthenticator('testorigin')