diff options
author | Quentin Retornaz <gentoo@retornaz.com> | 2024-05-08 20:34:56 +0200 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-05-08 22:33:25 +0100 |
commit | 87a88d8b829733826fda808a9b7fb843bcf5eb55 (patch) | |
tree | 06efcc5992f4411d92a429d98262138dedcaa62f /media-sound | |
parent | media-sound/beets: fix build w/ USE=doc and >=sphinx-7 (diff) | |
download | gentoo-87a88d8b829733826fda808a9b7fb843bcf5eb55.tar.gz gentoo-87a88d8b829733826fda808a9b7fb843bcf5eb55.tar.bz2 gentoo-87a88d8b829733826fda808a9b7fb843bcf5eb55.zip |
media-sound/whipper: update RDEPEND="dev-python/ruamel-yaml"
Closes: https://bugs.gentoo.org/930466
Signed-off-by: Quentin Retornaz <gentoo@retornaz.com>
Closes: https://github.com/gentoo/gentoo/pull/36607
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-sound')
-rw-r--r-- | media-sound/whipper/files/whipper-0.10.0-ruamel-yaml.patch | 109 | ||||
-rw-r--r-- | media-sound/whipper/whipper-0.10.0-r2.ebuild | 56 |
2 files changed, 165 insertions, 0 deletions
diff --git a/media-sound/whipper/files/whipper-0.10.0-ruamel-yaml.patch b/media-sound/whipper/files/whipper-0.10.0-ruamel-yaml.patch new file mode 100644 index 000000000000..206547e4b3e9 --- /dev/null +++ b/media-sound/whipper/files/whipper-0.10.0-ruamel-yaml.patch @@ -0,0 +1,109 @@ +From e0942417a1c267781a8b676789730457dcb2e6fa Mon Sep 17 00:00:00 2001 +From: Martin Weinelt <hexa@darmstadt.ccc.de> +Date: Sun, 20 Jun 2021 15:18:37 +0200 +Subject: [PATCH] Use custom YAML subclass to be compatible with + ruamel_yaml>=0.17 + +Signed-off-by: Martin Weinelt <hexa@darmstadt.ccc.de> +--- + whipper/common/yaml.py | 18 ++++++++++++++++++ + whipper/result/logger.py | 11 ++++++----- + whipper/test/test_result_logger.py | 14 ++++++-------- + 3 files changed, 30 insertions(+), 13 deletions(-) + create mode 100644 whipper/common/yaml.py + +diff --git a/whipper/common/yaml.py b/whipper/common/yaml.py +new file mode 100644 +index 00000000..4edb0b36 +--- /dev/null ++++ b/whipper/common/yaml.py +@@ -0,0 +1,18 @@ ++from ruamel.yaml import YAML as ruamel_YAML ++from ruamel.yaml.compat import StringIO ++ ++# https://yaml.readthedocs.io/en/latest/example.html#output-of-dump-as-a-string ++class YAML(ruamel_YAML): ++ def __init__(self, *args, **kwargs): ++ super().__init__() ++ self.width = 4000 ++ self.default_flow_style = False ++ ++ def dump(self, data, stream=None, **kw): ++ inefficient = False ++ if stream is None: ++ inefficient = True ++ stream = StringIO() ++ ruamel_YAML.dump(self, data, stream, **kw) ++ if inefficient: ++ return stream.getvalue() +diff --git a/whipper/result/logger.py b/whipper/result/logger.py +index b7043adc..f4471a00 100644 +--- a/whipper/result/logger.py ++++ b/whipper/result/logger.py +@@ -1,12 +1,12 @@ + import time + import hashlib + import re +-import ruamel.yaml as yaml + from ruamel.yaml.comments import CommentedMap as OrderedDict + + import whipper + + from whipper.common import common ++from whipper.common.yaml import YAML + from whipper.result import result + + +@@ -148,11 +148,12 @@ def logRip(self, ripResult, epoch): + data["EOF"] = "End of status report" + riplog["Conclusive status report"] = data + ++ yaml = YAML( ++ typ="rt", ++ pure=True ++ ) + riplog = yaml.dump( +- riplog, +- default_flow_style=False, +- width=4000, +- Dumper=yaml.RoundTripDumper ++ riplog + ) + # Add a newline after the "Log creation date" line + riplog = re.sub( +diff --git a/whipper/test/test_result_logger.py b/whipper/test/test_result_logger.py +index 411b61af..98c89ab5 100644 +--- a/whipper/test/test_result_logger.py ++++ b/whipper/test/test_result_logger.py +@@ -3,8 +3,8 @@ + import os + import re + import unittest +-import ruamel.yaml + ++from whipper.common.yaml import YAML + from whipper.result.result import TrackResult, RipResult + from whipper.result.logger import WhipperLogger + +@@ -163,16 +163,14 @@ def testLogger(self): + )) + ) + +- yaml = ruamel.yaml.YAML() ++ yaml = YAML( ++ typ='rt', ++ pure=True ++ ) + parsedLog = yaml.load(actual) + self.assertEqual( + actual, +- ruamel.yaml.dump( +- parsedLog, +- default_flow_style=False, +- width=4000, +- Dumper=ruamel.yaml.RoundTripDumper +- ) ++ yaml.dump(parsedLog) + ) + log_body = "\n".join(actualLines[:-1]).encode() + self.assertEqual( diff --git a/media-sound/whipper/whipper-0.10.0-r2.ebuild b/media-sound/whipper/whipper-0.10.0-r2.ebuild new file mode 100644 index 000000000000..4458574acf2f --- /dev/null +++ b/media-sound/whipper/whipper-0.10.0-r2.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_PEP517="setuptools" +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 + +DESCRIPTION="A Python CD-DA ripper preferring accuracy over speed (forked from morituri)" +HOMEPAGE="https://github.com/whipper-team/whipper" +SRC_URI="https://github.com/whipper-team/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND=" + media-libs/libsndfile:= +" +RDEPEND=" + ${DEPEND} + app-cdr/cdrdao + >=dev-libs/libcdio-paranoia-0.94_p2 + dev-python/musicbrainzngs[${PYTHON_USEDEP}] + >=dev-python/pycdio-2.1.0[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/discid[${PYTHON_USEDEP}] + dev-python/ruamel-yaml[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + media-libs/mutagen[${PYTHON_USEDEP}] + media-sound/sox[flac] +" +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + dev-python/twisted[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +PATCHES=( + "${FILESDIR}/${PN}-0.7.0-cdparanoia-name-fix.patch" + "${FILESDIR}/${PN}-0.10.0-ruamel-yaml.patch" +) + +python_prepare_all() { + # accurip test totally depends on network access + rm "${PN}"/test/test_common_accurip.py || die + + export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} + + distutils-r1_python_prepare_all +} |