dev-python/pyyaml: new package, add 6.0.1-r1

Signed-off-by: Andreas Billmeier <b@edevau.net>
This commit is contained in:
2024-09-22 09:48:04 +02:00
parent 4e1d1d7d22
commit 0eca660dd4
5 changed files with 112 additions and 2 deletions

View File

@@ -0,0 +1,4 @@
AUX pyyaml-6.0.1-cython3.patch 1423 BLAKE2B ff93a6bc36d0ca7b85a3c3c5cf67c57c600334b817cd52db5336a52427bd41bf667aa42405eb4c539eb8024b2b8533462f50da439def3be53bdedabfe9459ac4 SHA512 9ad485f625c859b67cefb45cd3f5cdd3304117c9d2b7e926f157b0b127805fad6ef83783fbead1e53e536eeafc60570eb1a75b309835de136c386faa8ba6f6c0
DIST pyyaml-6.0.1.gh.tar.gz 120376 BLAKE2B c34f2169f6eb6aa718aeb53dbfaf02590e11e504d16cc85a802e1a1191f296ef9aa2501db683e1a48173ce6adeaeca09f2ab989581dcf1c1ba4004831bb4cf47 SHA512 1c74a92a4ad7d47854dc7bcb2e89b3c8e0b14fa815c7dbfbc22b24480dbba6c81e971c77ee384c494a960914b95f06edf943d7431925a5ed674a0ba830d258e0
EBUILD pyyaml-6.0.1-r1.ebuild 921 BLAKE2B 69548407972be6cbc52a080cbf483d9437e4e2e99eda7ee3a19fc25ff7586ffdeab891d8c11356946191c6a92df11b9d52f1ede05a4889f46a01d6bd7177512c SHA512 a148974c0a39184e4ef31928fa02700297d96a29466acbc238461c285550b33344e4fccfb8bb3ff105ce769e51d028e6685920d049f19a7a3f493fa5811cc687
MISC metadata.xml 502 BLAKE2B 7d10b84e7a6d5887d3356dfadb450e7cf516611ff84fa97e66f59543b00d430b3ccba26ef9249ad1f7031e97a6662afcfb0db771c71dda38c59a20d0130807ba SHA512 24d81d6986f177eb94ca46cd783cc505f0698c701047133c6e8408f6dc2eb97ec5acc2843ac6948ceb7337eb859a6a77e6b16922365065994bf11e3a190da10a

View File

@@ -0,0 +1,36 @@
https://bugs.gentoo.org/898680
https://github.com/yaml/pyyaml/pull/731
From 17dc5b6cd96dcfe64fd71789c771ca9b96d260e5 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Fri, 21 Jul 2023 09:50:00 -0400
Subject: [PATCH] Fix builds with Cython 3
This is a *de minimis* fix for building with Cython 3. Recent Cython<3
releases provided `Cython.Distutils.build_ext` as an alias to
`Cython.Distutils.old_build_ext.old_build_ext`; Cython 3 drops this
alias and instead uses a wholly new `Cython.Distutils.build_ext` that
does not provide the `cython_sources` function used in `setup.py`.
Explicitly importing `old_build_ext` preserves the existing behavior for
recent Cython<3 and uses the correct behavior for Cython 3. Should the
import fail (*e.g.*, because the version of Cython available predates
the availability of `old_build_ext`), the import falls back to just
`Cython.Distutils.build_ext`.
Signed-off-by: Andrew J. Hesford <ajh@sideband.org>
--- a/setup.py
+++ b/setup.py
@@ -82,7 +82,11 @@
with_cython = True
try:
from Cython.Distutils.extension import Extension as _Extension
- from Cython.Distutils import build_ext as _build_ext
+ try:
+ from Cython.Distutils.old_build_ext import old_build_ext as _build_ext
+ except ImportError:
+ from Cython.Distutils import build_ext as _build_ext
+
with_cython = True
except ImportError:
if with_cython:

View File

@@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>b@edevau.net</email>
<name>Andreas Billmeier</name>
</maintainer>
<upstream>
<remote-id type="pypi">PyYAML</remote-id>
<remote-id type="github">yaml/pyyaml</remote-id>
<maintainer status="unknown">
<email>xi@resolvent.net</email>
<name>Kirill Simonov</name>
</maintainer>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,54 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..13} )
inherit distutils-r1
DESCRIPTION="YAML parser and emitter for Python"
HOMEPAGE="
https://pyyaml.org/wiki/PyYAML
https://pypi.org/project/PyYAML/
https://github.com/yaml/pyyaml/
"
SRC_URI="
https://github.com/yaml/pyyaml/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm arm64 x86"
IUSE="examples"
DEPEND="
dev-libs/libyaml:=
"
RDEPEND="
${DEPEND}
"
BDEPEND="
dev-python/cython[${PYTHON_USEDEP}]
"
PATCHES=(
"${FILESDIR}"/${PN}-6.0.1-cython3.patch
)
distutils_enable_tests setup.py
src_configure() {
export PYYAML_FORCE_CYTHON=1
}
python_install_all() {
distutils-r1_python_install_all
if use examples; then
dodoc -r examples
docompress -x /usr/share/doc/${PF}
fi
}