summaryrefslogtreecommitdiff
path: root/dev-python/pyusb/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-17 08:06:58 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-17 08:06:58 +0000
commit29394d0921808a94a409f01eff49f681651de5d5 (patch)
tree93d18027cb4ea68a3c967602c5793af032180bab /dev-python/pyusb/files
parent5987fa693ef880163ebde423615a177cb5bda20e (diff)
gentoo auto-resync : 17:02:2023 - 08:06:58
Diffstat (limited to 'dev-python/pyusb/files')
-rw-r--r--dev-python/pyusb/files/pyusb-1.2.1-setuptools.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/dev-python/pyusb/files/pyusb-1.2.1-setuptools.patch b/dev-python/pyusb/files/pyusb-1.2.1-setuptools.patch
new file mode 100644
index 000000000000..26b5e204d648
--- /dev/null
+++ b/dev-python/pyusb/files/pyusb-1.2.1-setuptools.patch
@@ -0,0 +1,37 @@
+https://github.com/pyusb/pyusb/commit/777dea9d718e70d7323c821d4497c706b35742da
+
+From 777dea9d718e70d7323c821d4497c706b35742da Mon Sep 17 00:00:00 2001
+From: Jonas Malaco <jonas@protocubo.io>
+Date: Tue, 12 Jul 2022 03:12:50 -0300
+Subject: [PATCH] version: handle when patch component is missing
+
+actions/checkout@v3 (by default) no longer fetches the tags while
+checking out the repository. This, combined with our use of
+setuptools_scm post-release scheme, results in tox trying to run the
+tests with version strings that look something like
+
+ pyusb-0.0.post1+g3678fc1.zip
+
+and breaking _get_extended_version_info().
+
+Make _get_extended_version_info() robust against this case. This is
+preferable to configuring actions/checkout@v3 to fetch the tags as,
+being related shallow clones, it might also happen in other contexts.
+
+Fixes: 678fc1867f4 ("github: update to actions/checkout@v3")
+--- a/usb/__init__.py
++++ b/usb/__init__.py
+@@ -55,9 +55,9 @@
+
+ def _get_extended_version_info(version):
+ import re
+- m = re.match(r'(\d+)\.(\d+)\.(\d+)[.-]?(.*)', version)
+- major, minor, patch, suffix = m.groups()
+- return int(major), int(minor), int(patch), suffix
++ m = re.match(r'(\d+)\.(\d+)(\.(\d+))?[.-]?(.*)', version)
++ major, minor, _, patch, suffix = m.groups()
++ return int(major), int(minor), int(patch or "0"), suffix
+
+ extended_version_info = _get_extended_version_info(__version__)
+ version_info = extended_version_info[:3]
+