mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-29 22:28:08 -07:00
dev-python/pyusb: enable py3.11, use pypi.eclass, fix w/ newer setuptools
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
37
dev-python/pyusb/files/pyusb-1.2.1-setuptools.patch
Normal file
37
dev-python/pyusb/files/pyusb-1.2.1-setuptools.patch
Normal file
@@ -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]
|
||||
|
||||
@@ -3,12 +3,11 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..10} )
|
||||
inherit distutils-r1
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="USB support for Python"
|
||||
HOMEPAGE="https://pyusb.github.io/pyusb/ https://pypi.org/project/pyusb/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
@@ -20,6 +19,10 @@ RDEPEND="${DEPEND}"
|
||||
|
||||
DOCS=( README.rst docs/tutorial.rst )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-setuptools.patch
|
||||
)
|
||||
|
||||
python_test() {
|
||||
cd tests || die
|
||||
"${EPYTHON}" testall.py || die "Tests failed with ${EPYTHON}"
|
||||
|
||||
Reference in New Issue
Block a user