public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-sound/beets/, media-sound/beets/files/
@ 2019-12-07 22:53 Andreas Sturmlechner
  0 siblings, 0 replies; 5+ messages in thread
From: Andreas Sturmlechner @ 2019-12-07 22:53 UTC (permalink / raw
  To: gentoo-commits

commit:     8d5b730e870a710dea0626c3c94b2c118bde8754
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec  7 18:45:55 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Dec  7 22:51:42 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d5b730e

media-sound/beets: Drop python3_5 support

Package-Manager: Portage-2.3.81, Repoman-2.3.20
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-sound/beets/beets-1.4.9-r1.ebuild        | 144 +++++++++++++++++++++++++
 media-sound/beets/files/beets-1.4.9-py37.patch |  38 +++++++
 2 files changed, 182 insertions(+)

diff --git a/media-sound/beets/beets-1.4.9-r1.ebuild b/media-sound/beets/beets-1.4.9-r1.ebuild
new file mode 100644
index 00000000000..a340e1c3ed4
--- /dev/null
+++ b/media-sound/beets/beets-1.4.9-r1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_PV=${PV/_beta/-beta.}
+MY_P=${PN}-${MY_PV}
+
+PYTHON_COMPAT=( python3_6 )
+PYTHON_REQ_USE="sqlite"
+inherit distutils-r1
+
+DESCRIPTION="Media library management system for obsessive-compulsive music geeks"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+HOMEPAGE="http://beets.io/ https://pypi.org/project/beets/"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="MIT"
+IUSE="badfiles chromaprint discogs doc ffmpeg gstreamer icu lastfm mpd replaygain test thumbnail webserver"
+
+BDEPEND="
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+"
+DEPEND="
+	>=dev-python/jellyfish-0.7.1[${PYTHON_USEDEP}]
+	dev-python/munkres[${PYTHON_USEDEP}]
+	>=dev-python/python-musicbrainz-ngs-0.4[${PYTHON_USEDEP}]
+	dev-python/pyyaml[${PYTHON_USEDEP}]
+	dev-python/requests[${PYTHON_USEDEP}]
+	dev-python/requests-oauthlib[${PYTHON_USEDEP}]
+	>=dev-python/six-1.9[${PYTHON_USEDEP}]
+	dev-python/unidecode[${PYTHON_USEDEP}]
+	>=media-libs/mutagen-1.33[${PYTHON_USEDEP}]
+	virtual/python-enum34[${PYTHON_USEDEP}]
+	badfiles? (
+		media-libs/flac
+		media-sound/mp3val
+	)
+	chromaprint? (
+		dev-python/pyacoustid[${PYTHON_USEDEP}]
+		media-libs/chromaprint[tools]
+	)
+	discogs? ( dev-python/discogs-client[${PYTHON_USEDEP}] )
+	ffmpeg? ( media-video/ffmpeg:0[encode] )
+	gstreamer? (
+		media-libs/gst-plugins-good:1.0
+		media-libs/gst-plugins-bad:1.0
+	)
+	icu? ( dev-db/sqlite[icu] )
+	lastfm? ( dev-python/pylast[${PYTHON_USEDEP}] )
+	mpd? (
+		dev-python/bluelet[${PYTHON_USEDEP}]
+		dev-python/python-mpd[${PYTHON_USEDEP}]
+	)
+	replaygain? (
+		gstreamer? (
+			dev-python/pygobject:3[${PYTHON_USEDEP}]
+			media-plugins/gst-plugins-libav:1.0
+		)
+		!gstreamer? ( media-sound/mp3gain )
+	)
+	thumbnail? (
+		dev-python/pyxdg[${PYTHON_USEDEP}]
+		virtual/python-pathlib[${PYTHON_USEDEP}]
+		|| (
+			dev-python/pillow[${PYTHON_USEDEP}]
+			media-gfx/imagemagick
+		)
+	)
+	webserver? (
+		dev-python/flask[${PYTHON_USEDEP}]
+		dev-python/flask-cors[${PYTHON_USEDEP}]
+	)
+"
+RDEPEND="${DEPEND}"
+
+RESTRICT="test" # tests broken in 1.4.3 already
+
+PATCHES=( "${FILESDIR}/${P}-py37.patch" )
+
+S="${WORKDIR}/${MY_P}"
+
+python_prepare_all() {
+	rm_use_plugins() {
+		[[ -n "${1}" ]] || die "rm_use_plugins: No use option given"
+		local use=${1}
+		local plugins=${use}
+		use ${use} && return
+		einfo "no ${use}:"
+		[[ $# -gt 1 ]] && plugins="${@:2}"
+		for arg in ${plugins[@]}; do
+			einfo "  removing ${arg}"
+			if [[ -e "beetsplug/${arg}.py" ]]; then
+				rm beetsplug/${arg}.py || die "Unable to remove ${arg} plugin"
+			fi
+			if [[ -d "beetsplug/${arg}" ]]; then
+				rm -r beetsplug/${arg} || die "Unable to remove ${arg} plugin"
+			fi
+			sed -e "s:'beetsplug.${arg}',::" -i setup.py || \
+				die "Unable to disable ${arg} plugin "
+		done
+	}
+
+	distutils-r1_python_prepare_all
+
+	rm_use_plugins chromaprint chroma
+	rm_use_plugins ffmpeg convert
+	rm_use_plugins icu loadext
+	rm_use_plugins lastfm lastgenre lastimport
+	rm_use_plugins mpd bpd mpdstats
+	rm_use_plugins webserver web
+	rm_use_plugins thumbnail thumbnails
+
+	# remove plugins that do not have appropriate dependencies installed
+	for flag in badfiles discogs replaygain; do
+		rm_use_plugins ${flag}
+	done
+
+	if ! use mpd; then
+		rm test/test_player.py || die
+	fi
+}
+
+python_compile_all() {
+	use doc && emake -C docs html
+}
+
+python_test() {
+	cd test || die
+	if ! use webserver; then
+		rm test_web.py || die "Failed to remove test_web.py"
+	fi
+	"${EPYTHON}" testall.py || die "Testsuite failed"
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	doman man/beet.1 man/beetsconfig.5
+	use doc && local HTML_DOCS=( docs/_build/html/. )
+	einstalldocs
+}

diff --git a/media-sound/beets/files/beets-1.4.9-py37.patch b/media-sound/beets/files/beets-1.4.9-py37.patch
new file mode 100644
index 00000000000..564357bc378
--- /dev/null
+++ b/media-sound/beets/files/beets-1.4.9-py37.patch
@@ -0,0 +1,38 @@
+From 15d44f02a391764da1ce1f239caef819f08beed8 Mon Sep 17 00:00:00 2001
+From: Adrian Sampson <adrian@radbox.org>
+Date: Sun, 22 Jul 2018 12:34:19 -0400
+Subject: [PATCH] Fix Python 3.7 compatibility (#2978)
+
+---
+ beets/autotag/hooks.py | 8 +++++++-
+ docs/changelog.rst     | 2 ++
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/beets/autotag/hooks.py b/beets/autotag/hooks.py
+index 3615a93337b8..1c62a54c5c35 100644
+--- a/beets/autotag/hooks.py
++++ b/beets/autotag/hooks.py
+@@ -31,6 +31,12 @@ import six
+ 
+ log = logging.getLogger('beets')
+ 
++# The name of the type for patterns in re changed in Python 3.7.
++try:
++    Pattern = re._pattern_type
++except AttributeError:
++    Pattern = re.Pattern
++
+ 
+ # Classes used to represent candidate options.
+ 
+@@ -433,7 +439,7 @@ class Distance(object):
+         be a compiled regular expression, in which case it will be
+         matched against `value2`.
+         """
+-        if isinstance(value1, re._pattern_type):
++        if isinstance(value1, Pattern):
+             return bool(value1.match(value2))
+         return value1 == value2
+ 
+-- 
+2.20.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/beets/, media-sound/beets/files/
@ 2021-06-01  0:28 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2021-06-01  0:28 UTC (permalink / raw
  To: gentoo-commits

commit:     3ebe00e69103aa9840a84123c008ceec779e947c
Author:     Guillaume Seren <guillaumeseren <AT> gmail <DOT> com>
AuthorDate: Wed May 26 11:12:05 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jun  1 00:27:44 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ebe00e6

media-sound/beets: Backport patch for #790215

Package-Manager: Portage-3.0.18, Repoman-3.0.2
Closes: https://bugs.gentoo.org/790215
Signed-off-by: Guillaume Seren <guillaumeseren <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-sound/beets/beets-1.4.9-r6.ebuild            | 135 +++++++++++++++++++++
 ...place-discogs-client-with-python3-discogs.patch | 134 ++++++++++++++++++++
 2 files changed, 269 insertions(+)

diff --git a/media-sound/beets/beets-1.4.9-r6.ebuild b/media-sound/beets/beets-1.4.9-r6.ebuild
new file mode 100644
index 00000000000..4fd12ebc72c
--- /dev/null
+++ b/media-sound/beets/beets-1.4.9-r6.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_SINGLE_IMPL=1
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="sqlite"
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1 bash-completion-r1 optfeature
+
+if [[ ${PV} == "9999" ]]; then
+	EGIT_REPO_URI="https://github.com/beetbox/beets.git"
+	inherit git-r3
+else
+	MY_PV=${PV/_beta/-beta.}
+	MY_P=${PN}-${MY_PV}
+	SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+	KEYWORDS="~amd64 ~x86"
+	S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Media library management system for obsessive-compulsive music geeks"
+HOMEPAGE="https://beets.io/ https://pypi.org/project/beets/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	$(python_gen_cond_dep '
+		>=dev-python/jellyfish-0.7.1[${PYTHON_MULTI_USEDEP}]
+		dev-python/munkres[${PYTHON_MULTI_USEDEP}]
+		>=media-libs/mutagen-1.33[${PYTHON_MULTI_USEDEP}]
+		>=dev-python/python-musicbrainz-ngs-0.4[${PYTHON_MULTI_USEDEP}]
+		dev-python/pyyaml[${PYTHON_MULTI_USEDEP}]
+		dev-python/requests-oauthlib[${PYTHON_MULTI_USEDEP}]
+		dev-python/requests[${PYTHON_MULTI_USEDEP}]
+		>=dev-python/six-1.9[${PYTHON_MULTI_USEDEP}]
+		dev-python/unidecode[${PYTHON_MULTI_USEDEP}]
+	')"
+DEPEND="
+	${RDEPEND}
+"
+BDEPEND="
+	doc? (
+		dev-python/sphinx
+	)
+	$(python_gen_cond_dep '
+		test? (
+			dev-db/sqlite[icu]
+			dev-python/beautifulsoup[${PYTHON_MULTI_USEDEP}]
+			dev-python/bluelet[${PYTHON_MULTI_USEDEP}]
+			dev-python/discogs-client[${PYTHON_MULTI_USEDEP}]
+			dev-python/flask[${PYTHON_MULTI_USEDEP}]
+			dev-python/mock[${PYTHON_MULTI_USEDEP}]
+			dev-python/pyacoustid[${PYTHON_MULTI_USEDEP}]
+			dev-python/pylast[${PYTHON_MULTI_USEDEP}]
+			dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
+			dev-python/python-mpd[${PYTHON_MULTI_USEDEP}]
+			dev-python/pyxdg[${PYTHON_MULTI_USEDEP}]
+			|| (
+				dev-python/pillow[${PYTHON_MULTI_USEDEP}]
+				media-gfx/imagemagick
+			)
+			dev-python/rarfile[${PYTHON_MULTI_USEDEP}]
+			dev-python/responses[${PYTHON_MULTI_USEDEP}]
+			dev-python/wheel[${PYTHON_MULTI_USEDEP}]
+			media-libs/chromaprint[tools]
+			media-libs/flac
+			media-libs/gst-plugins-bad:1.0
+			media-libs/gst-plugins-good:1.0
+			media-sound/mp3val
+			media-sound/mp3gain
+			media-plugins/gst-plugins-libav:1.0
+			media-video/ffmpeg:0[encode]
+		)
+	')"
+
+PATCHES=(
+	"${FILESDIR}/${PV}-0001-compatibility-with-breaking-changes-to-the-ast-modul.patch"
+	"${FILESDIR}/${PV}-0002-Disable-test_completion.patch"
+	"${FILESDIR}/${PV}-0003-Try-to-work-around-a-Werkzeug-change.patch"
+	"${FILESDIR}/${PV}-0004-Fix-3608-Replace-discogs-client-with-python3-discogs.patch"
+)
+
+DOCS=( README.rst docs/changelog.rst )
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+	distutils-r1_python_prepare_all
+
+	# Tests that need network
+	rm test/test_art.py || die "Failed to remove test_art.py"
+	rm test/test_discogs.py || die "Failed to remove test_discogs.py"
+	rm test/test_embyupdate.py || die "Failed to remove test_embyupdate.py"
+	rm test/test_lastgenre.py || die "Failed to remove test_lastgenre.py"
+	rm test/test_spotify.py || die "Failed to remove test_spotify.py"
+	# Not working and dropped in master
+	rm test/test_mediafile.py || die "Failed to remove test_mediafile.py"
+}
+
+python_compile_all() {
+	use doc && esetup.py build_sphinx -b html --build-dir=docs/build
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	doman man/*
+	use doc && local HTML_DOCS=( docs/build/html/. )
+	einstalldocs
+
+	${PYTHON} "${ED}/usr/bin/beet" completion > "${T}/beet.bash" || die
+	newbashcomp "${T}/beet.bash" beet
+	insinto /usr/share/zsh/site-functions
+	newins "${WORKDIR}/${P}/extra/_beet" _beet
+
+	optfeature "badfiles support" "media-libs/flac media-sound/mp3val"
+	optfeature "chromaprint support" "dev-python/pyacoustid media-libs/chromaprint[tools]"
+	optfeature "discogs support" dev-python/discogs-client
+	optfeature "ffmpeg support" media-video/ffmpeg[encode]
+	optfeature "gstreamer support" "media-libs/gst-plugins-bad media-libs/gst-plugins-good"
+	optfeature "icu support" dev-db/sqlite[icu]
+	optfeature "lastfm support" dev-python/pylast
+	optfeature "mpd support" "dev-python/bluelet dev-python/python-mpd"
+	optfeature "replaygain with gstreamer support" "dev-python/pygobject media-plugins/gst-plugins-libav"
+	optfeature "replaygain without gstreamer support" media-sound/mp3gain
+	optfeature "thumbnail support" dev-python/pyxdg "dev-python/pillow media-gfx/imagemagick"
+	optfeature "webserver support" dev-python/flask
+	optfeature "webserver cors support" dev-python/flask-cors
+}

diff --git a/media-sound/beets/files/1.4.9-0004-Fix-3608-Replace-discogs-client-with-python3-discogs.patch b/media-sound/beets/files/1.4.9-0004-Fix-3608-Replace-discogs-client-with-python3-discogs.patch
new file mode 100644
index 00000000000..f7eb3d26b75
--- /dev/null
+++ b/media-sound/beets/files/1.4.9-0004-Fix-3608-Replace-discogs-client-with-python3-discogs.patch
@@ -0,0 +1,134 @@
+From 0da62a5ed7aa5fcfc8501a06f26c3af6afa8bc52 Mon Sep 17 00:00:00 2001
+From: George Rawlinson <george@rawlinson.net.nz>
+Date: Thu, 25 Feb 2021 20:00:34 +1300
+Subject: [PATCH] Fix #3608: Replace discogs-client with python3-discogs-client
+
+discogs-client has been deprecated since June 2020, the replacement
+is actively developed by the community and does not have any breaking
+API changes.
+
+Signed-off-by: George Rawlinson <george@rawlinson.net.nz>
+---
+ beetsplug/discogs.py     |  2 +-
+ docs/plugins/discogs.rst |  8 +++----
+ setup.py                 | 50 +++++++++++++++++++++++++++-------------
+ 4 files changed, 41 insertions(+), 21 deletions(-)
+
+diff --git a/beetsplug/discogs.py b/beetsplug/discogs.py
+index 5a2bf57e..78d94eb1 100644
+--- a/beetsplug/discogs.py
++++ b/beetsplug/discogs.py
+@@ -14,7 +14,7 @@
+ # included in all copies or substantial portions of the Software.
+ 
+ """Adds Discogs album search support to the autotagger. Requires the
+-discogs-client library.
++python3-discogs-client library.
+ """
+ from __future__ import division, absolute_import, print_function
+ 
+ For plugin developers:
+ 
+diff --git a/docs/plugins/discogs.rst b/docs/plugins/discogs.rst
+index a02b3459..f8406fd2 100644
+--- a/docs/plugins/discogs.rst
++++ b/docs/plugins/discogs.rst
+@@ -10,9 +10,9 @@ Installation
+ ------------
+ 
+ To use the ``discogs`` plugin, first enable it in your configuration (see
+-:ref:`using-plugins`). Then, install the `discogs-client`_ library by typing::
++:ref:`using-plugins`). Then, install the `python3-discogs-client`_ library by typing::
+ 
+-    pip install discogs-client
++    pip install python3-discogs-client
+ 
+ You will also need to register for a `Discogs`_ account, and provide
+ authentication credentials via a personal access token or an OAuth2
+@@ -36,7 +36,7 @@ Authentication via Personal Access Token
+ 
+ As an alternative to OAuth, you can get a token from Discogs and add it to
+ your configuration.
+-To get a personal access token (called a "user token" in the `discogs-client`_
++To get a personal access token (called a "user token" in the `python3-discogs-client`_
+ documentation), login to `Discogs`_, and visit the
+ `Developer settings page
+ <https://www.discogs.com/settings/developers>`_. Press the ``Generate new
+@@ -57,4 +57,4 @@ Here are two things you can try:
+ * Make sure that your system clock is accurate. The Discogs servers can reject
+   your request if your clock is too out of sync.
+ 
+-.. _discogs-client: https://github.com/discogs/discogs_client
++.. _python3-discogs-client: https://github.com/joalla/discogs_client
+diff --git a/setup.py b/setup.py
+index 79278f8b..768c40a0 100755
+--- a/setup.py
++++ b/setup.py
+@@ -107,30 +107,48 @@ setup(
+         ['colorama'] if (sys.platform == 'win32') else []
+     ),
+ 
+-    tests_require=[
+-        'beautifulsoup4',
+-        'flask',
+-        'mock',
+-        'pylast',
+-        'rarfile',
+-        'responses',
+-        'pyxdg',
+-        'python-mpd2',
+-        'discogs-client'
+-    ] + (
+-        # Tests for the thumbnails plugin need pathlib on Python 2 too.
+-        ['pathlib'] if (sys.version_info < (3, 4, 0)) else []
+-    ),
+-
+     # Plugin (optional) dependencies:
+     extras_require={
++        'test': [
++            'beautifulsoup4',
++            'coverage',
++            'flask',
++            'mock',
++            'pylast',
++            'pytest',
++            'python-mpd2',
++            'pyxdg',
++            'responses>=0.3.0',
++            'requests_oauthlib',
++            'reflink',
++        ] + (
++            # Tests for the thumbnails plugin need pathlib on Python 2 too.
++            ['pathlib'] if (sys.version_info < (3, 4, 0)) else []
++        ) + [
++            'rarfile<4' if sys.version_info < (3, 6, 0) else 'rarfile',
++        ] + [
++            'discogs-client' if (sys.version_info < (3, 0, 0))
++            else 'python3-discogs-client'
++        ],
++        'lint': [
++            'flake8',
++            'flake8-coding',
++            'flake8-docstrings',
++            'flake8-future-import',
++            'pep8-naming',
++        ],
++
++        # Plugin (optional) dependencies:
+         'absubmit': ['requests'],
+         'fetchart': ['requests', 'Pillow'],
+         'embedart': ['Pillow'],
+         'embyupdate': ['requests'],
+         'chroma': ['pyacoustid'],
+         'gmusic': ['gmusicapi'],
+-        'discogs': ['discogs-client>=2.2.1'],
++        'discogs': (
++            ['discogs-client' if (sys.version_info < (3, 0, 0))
++                else 'python3-discogs-client']
++        ),
+         'beatport': ['requests-oauthlib>=0.6.1'],
+         'kodiupdate': ['requests'],
+         'lastgenre': ['pylast'],
+-- 
+2.26.3
+


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/beets/, media-sound/beets/files/
@ 2021-12-01 21:33 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2021-12-01 21:33 UTC (permalink / raw
  To: gentoo-commits

commit:     dd4c541cccc9fe970eea708ddc18de1c451c83e2
Author:     Arsen Arsenović <arsen <AT> aarsen <DOT> me>
AuthorDate: Sun Nov 28 23:31:51 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec  1 21:33:33 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd4c541c

media-sound/beets: bump to 1.6.0

Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Arsen Arsenović <arsen <AT> aarsen.me>
Closes: https://github.com/gentoo/gentoo/pull/23111
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-sound/beets/Manifest                         |   1 +
 media-sound/beets/beets-1.6.0.ebuild               | 125 +++++++++++++++++++++
 .../files/1.6.0-0001-Remove-test_completion.patch  |  74 ++++++++++++
 3 files changed, 200 insertions(+)

diff --git a/media-sound/beets/Manifest b/media-sound/beets/Manifest
index 2ef455a86dc7..50daf64c1bd6 100644
--- a/media-sound/beets/Manifest
+++ b/media-sound/beets/Manifest
@@ -1,2 +1,3 @@
 DIST beets-1.4.9.tar.gz 1494459 BLAKE2B 2daf77caf395143813c8b288fc376b5aec01d49281d40ba5942daf9941891146d698a1517ced958e480c6f253eadb6a7e09029e079c97e6cc17d44ac18fa0e7b SHA512 616bad4ca3ecdd05d2f59846fd67215f476ce89cc34d63bc6351efcbaf1e33e5ca783cb8a716e8597b56a7e08e6a6dc15e64b51e89dd786bfb6c5d847f66de5a
 DIST beets-1.5.0.tar.gz 1694845 BLAKE2B e4a4ad880edcc396170bca9e7d04548f22a55eac22481d2babca0d2ca71237ed0509bf9be9af12343b0d1b555e9726446e5d61e637312a4808eece5ce0302f33 SHA512 447b01dc750a69d0a33d271774f3bd3b997a203d80c220c1a961f9a8e30420d263b1e2a4682d25ff7b02e1e85155f42186cb0d3bf27ebc8c2777f68e197d4018
+DIST beets-1.6.0.tar.gz 1698333 BLAKE2B 7d3ded703524d5f8740a6adf3769a5752a1e47720ebf0653238f117e4ef6f97461abcd0c7a0d7f428c9848c95277070b5687f9007c04e47b07cdb22eca8c9cbf SHA512 b03759a2be7d3318b4f43cac09ada229cea6496774ba3dcdb1458427e41f6329a627241afc0bfaa9a91afb6818ba944ef6088e38c5635a3bfe730a6a8011a0dc

diff --git a/media-sound/beets/beets-1.6.0.ebuild b/media-sound/beets/beets-1.6.0.ebuild
new file mode 100644
index 000000000000..77fc9c07cd2b
--- /dev/null
+++ b/media-sound/beets/beets-1.6.0.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_SINGLE_IMPL=1
+PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1 bash-completion-r1 optfeature
+
+if [[ ${PV} == "9999" ]]; then
+	EGIT_REPO_URI="https://github.com/beetbox/beets.git"
+	inherit git-r3
+else
+	MY_PV=${PV/_beta/-beta.}
+	MY_P=${PN}-${MY_PV}
+	SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+	KEYWORDS="~amd64"
+	S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Media library management system for obsessive-compulsive music geeks"
+HOMEPAGE="https://beets.io/ https://pypi.org/project/beets/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	$(python_gen_cond_dep '
+		>=dev-python/jellyfish-0.7.1[${PYTHON_USEDEP}]
+		dev-python/munkres[${PYTHON_USEDEP}]
+		>=media-libs/mutagen-1.33[${PYTHON_USEDEP}]
+		>=dev-python/python-musicbrainzngs-0.4[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+		dev-python/requests-oauthlib[${PYTHON_USEDEP}]
+		dev-python/requests[${PYTHON_USEDEP}]
+		dev-python/unidecode[${PYTHON_USEDEP}]
+		dev-python/reflink[${PYTHON_USEDEP}]
+		dev-python/confuse[${PYTHON_USEDEP}]
+		dev-python/mediafile[${PYTHON_USEDEP}]
+	')"
+DEPEND="
+	${RDEPEND}
+"
+BDEPEND="
+	doc? (
+		dev-python/sphinx
+	)
+	$(python_gen_cond_dep '
+		test? (
+			dev-db/sqlite[icu]
+			dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+			dev-python/bluelet[${PYTHON_USEDEP}]
+			dev-python/discogs-client[${PYTHON_USEDEP}]
+			dev-python/flask[${PYTHON_USEDEP}]
+			dev-python/mock[${PYTHON_USEDEP}]
+			dev-python/pyacoustid[${PYTHON_USEDEP}]
+			dev-python/pylast[${PYTHON_USEDEP}]
+			dev-python/pygobject:3[${PYTHON_USEDEP}]
+			dev-python/python-mpd[${PYTHON_USEDEP}]
+			dev-python/pyxdg[${PYTHON_USEDEP}]
+			|| (
+				dev-python/pillow[${PYTHON_USEDEP}]
+				media-gfx/imagemagick
+			)
+			dev-python/rarfile[${PYTHON_USEDEP}]
+			dev-python/responses[${PYTHON_USEDEP}]
+			dev-python/wheel[${PYTHON_USEDEP}]
+			media-libs/chromaprint[tools]
+			media-libs/flac
+			media-libs/gst-plugins-bad:1.0
+			media-libs/gst-plugins-good:1.0
+			media-sound/mp3val
+			media-sound/mp3gain
+			media-plugins/gst-plugins-libav:1.0
+			media-video/ffmpeg:0[encode]
+			app-shells/bash-completion
+		)
+	')"
+
+PATCHES=(
+	"${FILESDIR}/${PV}-0001-Remove-test_completion.patch"
+)
+
+DOCS=( README.rst docs/changelog.rst )
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+	distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+	use doc && esetup.py build_sphinx -b html --build-dir=docs/build
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	doman man/*
+	use doc && local HTML_DOCS=( docs/build/html/. )
+	einstalldocs
+
+	${PYTHON} "${ED}/usr/bin/beet" completion > "${T}/beet.bash" || die
+	newbashcomp "${T}/beet.bash" beet
+	insinto /usr/share/zsh/site-functions
+	newins "${WORKDIR}/${P}/extra/_beet" _beet
+
+	optfeature "badfiles support" "media-libs/flac media-sound/mp3val"
+	optfeature "chromaprint support" "dev-python/pyacoustid media-libs/chromaprint[tools]"
+	optfeature "discogs support" dev-python/discogs-client
+	optfeature "ffmpeg support" media-video/ffmpeg[encode]
+	optfeature "gstreamer support" "media-libs/gst-plugins-bad media-libs/gst-plugins-good"
+	optfeature "icu support" dev-db/sqlite[icu]
+	optfeature "lastfm support" dev-python/pylast
+	optfeature "mpd support" "dev-python/bluelet dev-python/python-mpd"
+	optfeature "replaygain with gstreamer support" "dev-python/pygobject media-plugins/gst-plugins-libav"
+	optfeature "replaygain without gstreamer support" media-sound/mp3gain
+	optfeature "thumbnail support" dev-python/pyxdg "dev-python/pillow media-gfx/imagemagick"
+	optfeature "webserver support" dev-python/flask
+	optfeature "webserver cors support" dev-python/flask-cors
+}

diff --git a/media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch b/media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch
new file mode 100644
index 000000000000..e51f31c380dc
--- /dev/null
+++ b/media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch
@@ -0,0 +1,74 @@
+From 8e37acd04af1b6d0723bf9d1992da49ee0155758 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Thu, 21 Oct 2021 23:16:45 +0200
+Subject: [PATCH] Remove test_completion
+
+Known issue: https://github.com/beetbox/beets/issues/1876
+---
+ test/test_ui.py | 50 -------------------------------------------------
+ 1 file changed, 50 deletions(-)
+
+diff --git a/test/test_ui.py b/test/test_ui.py
+index 9804b0a1..5c321040 100644
+--- a/test/test_ui.py
++++ b/test/test_ui.py
+@@ -1208,56 +1208,6 @@ class PluginTest(_common.TestCase, TestHelper):
+         self.run_command('test', lib=None)
+ 
+ 
+-@_common.slow_test()
+-class CompletionTest(_common.TestCase, TestHelper):
+-    def test_completion(self):
+-        # Load plugin commands
+-        config['pluginpath'] = [_common.PLUGINPATH]
+-        config['plugins'] = ['test']
+-
+-        # Do not load any other bash completion scripts on the system.
+-        env = dict(os.environ)
+-        env['BASH_COMPLETION_DIR'] = os.devnull
+-        env['BASH_COMPLETION_COMPAT_DIR'] = os.devnull
+-
+-        # Open a `bash` process to run the tests in. We'll pipe in bash
+-        # commands via stdin.
+-        cmd = os.environ.get('BEETS_TEST_SHELL', '/bin/bash --norc').split()
+-        if not has_program(cmd[0]):
+-            self.skipTest('bash not available')
+-        tester = subprocess.Popen(cmd, stdin=subprocess.PIPE,
+-                                  stdout=subprocess.PIPE, env=env)
+-
+-        # Load bash_completion library.
+-        for path in commands.BASH_COMPLETION_PATHS:
+-            if os.path.exists(util.syspath(path)):
+-                bash_completion = path
+-                break
+-        else:
+-            self.skipTest('bash-completion script not found')
+-        try:
+-            with open(util.syspath(bash_completion), 'rb') as f:
+-                tester.stdin.writelines(f)
+-        except OSError:
+-            self.skipTest('could not read bash-completion script')
+-
+-        # Load completion script.
+-        self.io.install()
+-        self.run_command('completion', lib=None)
+-        completion_script = self.io.getoutput().encode('utf-8')
+-        self.io.restore()
+-        tester.stdin.writelines(completion_script.splitlines(True))
+-
+-        # Load test suite.
+-        test_script_name = os.path.join(_common.RSRC, b'test_completion.sh')
+-        with open(test_script_name, 'rb') as test_script_file:
+-            tester.stdin.writelines(test_script_file)
+-        out, err = tester.communicate()
+-        if tester.returncode != 0 or out != b'completion tests passed\n':
+-            print(out.decode('utf-8'))
+-            self.fail('test/test_completion.sh did not execute properly')
+-
+-
+ class CommonOptionsParserCliTest(unittest.TestCase, TestHelper):
+     """Test CommonOptionsParser and formatting LibModel formatting on 'list'
+     command.
+-- 
+2.32.0
+


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/beets/, media-sound/beets/files/
@ 2023-02-22 16:00 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2023-02-22 16:00 UTC (permalink / raw
  To: gentoo-commits

commit:     9d611ed29750cf1035eb1a77f5097c69bb0573d5
Author:     Petr Vaněk <arkamar <AT> atlas <DOT> cz>
AuthorDate: Wed Feb 22 15:16:44 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 22 15:59:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d611ed2

media-sound/beets: Fix tests

Few tests were failing because of changes in dependencies, namely in
dev-python/mediafile and dev-python/unidecode.

Closes: https://bugs.gentoo.org/876427
Closes: https://bugs.gentoo.org/895862
Signed-off-by: Petr Vaněk <arkamar <AT> atlas.cz>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-sound/beets/beets-1.6.0.ebuild               |  2 +
 media-sound/beets/files/1.6.0-mediafile-test.patch | 41 +++++++++++++++++++
 media-sound/beets/files/1.6.0-unicode-test.patch   | 47 ++++++++++++++++++++++
 3 files changed, 90 insertions(+)

diff --git a/media-sound/beets/beets-1.6.0.ebuild b/media-sound/beets/beets-1.6.0.ebuild
index 4fc0ecd49e53..d27548ed87e2 100644
--- a/media-sound/beets/beets-1.6.0.ebuild
+++ b/media-sound/beets/beets-1.6.0.ebuild
@@ -85,6 +85,8 @@ BDEPEND="
 PATCHES=(
 	"${FILESDIR}/${PV}-0001-Remove-test_completion.patch"
 	"${FILESDIR}/${PV}-sphinx-6.patch"
+	"${FILESDIR}/${PV}-mediafile-test.patch"
+	"${FILESDIR}/${PV}-unicode-test.patch"
 )
 
 DOCS=( README.rst docs/changelog.rst )

diff --git a/media-sound/beets/files/1.6.0-mediafile-test.patch b/media-sound/beets/files/1.6.0-mediafile-test.patch
new file mode 100644
index 000000000000..0feb8be7c98d
--- /dev/null
+++ b/media-sound/beets/files/1.6.0-mediafile-test.patch
@@ -0,0 +1,41 @@
+used to work due to inconsistent mediafile implementation, but with
+https://github.com/beetbox/mediafile/pull/64 (in mediafile >= 0.11.0)
+list fields are None if non-existent, not the empty list
+
+Upstream-PR: https://github.com/beetbox/beets/pull/4593
+
+diff --git a/test/test_embedart.py b/test/test_embedart.py
+index 6b6d616..bc550a8 100644
+--- a/test/test_embedart.py
++++ b/test/test_embedart.py
+@@ -81,7 +81,7 @@ class EmbedartCliTest(_common.TestCase, TestHelper):
+         self.run_command('embedart', '-f', self.small_artpath)
+         mediafile = MediaFile(syspath(item.path))
+         # make sure that images array is empty (nothing embedded)
+-        self.assertEqual(len(mediafile.images), 0)
++        self.assertFalse(mediafile.images)
+ 
+     def test_embed_art_from_file(self):
+         self._setup_data()
+@@ -202,7 +202,7 @@ class EmbedartCliTest(_common.TestCase, TestHelper):
+         self.io.addinput('y')
+         self.run_command('clearart')
+         mediafile = MediaFile(syspath(item.path))
+-        self.assertEqual(len(mediafile.images), 0)
++        self.assertFalse(mediafile.images)
+ 
+     def test_clear_art_with_no_input(self):
+         self._setup_data()
+diff --git a/test/test_zero.py b/test/test_zero.py
+index c4c1769..b48367b 100644
+--- a/test/test_zero.py
++++ b/test/test_zero.py
+@@ -103,7 +103,7 @@ class ZeroPluginTest(unittest.TestCase, TestHelper):
+         item.write()
+ 
+         mf = MediaFile(syspath(path))
+-        self.assertEqual(0, len(mf.images))
++        self.assertFalse(mf.images)
+ 
+     def test_auto_false(self):
+         self.config['zero']['fields'] = ['year']

diff --git a/media-sound/beets/files/1.6.0-unicode-test.patch b/media-sound/beets/files/1.6.0-unicode-test.patch
new file mode 100644
index 000000000000..8b69e09557c9
--- /dev/null
+++ b/media-sound/beets/files/1.6.0-unicode-test.patch
@@ -0,0 +1,47 @@
+Unidecode 1.3.5 (a yanked PyPI version) changed the behavior of
+Unidecode for some specific characters:
+
+> Remove trailing space in replacements for vulgar fractions.
+
+As luck would have it, our tests used the 1/2 character specifically to
+test the behavior when these characters decoded to contain slashes. We
+now pin a sufficiently recent version of Unidecode and adapt the tests
+to match the new behavior.
+
+Upstream-Commit: https://github.com/beetbox/beets/commit/5ae1e0f3c8d3a450cb39f7933aa49bb78c2bc0d9
+
+diff --git a/setup.py b/setup.py
+index 264bb2e..69eb987 100755
+--- a/setup.py
++++ b/setup.py
+@@ -85,7 +85,7 @@ setup(
+     },
+ 
+     install_requires=[
+-        'unidecode',
++        'unidecode>=1.3.6',
+         'musicbrainzngs>=0.4',
+         'pyyaml',
+         'mediafile>=0.2.0',
+diff --git a/test/test_library.py b/test/test_library.py
+index 667d92c..b1cb579 100644
+--- a/test/test_library.py
++++ b/test/test_library.py
+@@ -441,7 +441,7 @@ class DestinationTest(_common.TestCase):
+         self.lib.directory = b'lib'
+         self.lib.path_formats = [('default', '$title')]
+         self.i.title = 'ab\xa2\xbdd'
+-        self.assertEqual(self.i.destination(), np('lib/abC_ 1_2 d'))
++        self.assertEqual(self.i.destination(), np('lib/abC_ 1_2d'))
+ 
+     def test_destination_with_replacements(self):
+         self.lib.directory = b'base'
+@@ -637,7 +637,7 @@ class DestinationFunctionTest(_common.TestCase, PathFormattingMixin):
+ 
+     def test_asciify_variable(self):
+         self._setf('%asciify{ab\xa2\xbdd}')
+-        self._assert_dest(b'/base/abC_ 1_2 d')
++        self._assert_dest(b'/base/abC_ 1_2d')
+ 
+     def test_left_variable(self):
+         self._setf('%left{$title, 3}')


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/beets/, media-sound/beets/files/
@ 2024-06-03  5:06 Matt Jolly
  0 siblings, 0 replies; 5+ messages in thread
From: Matt Jolly @ 2024-06-03  5:06 UTC (permalink / raw
  To: gentoo-commits

commit:     29d3ec64942c8d20ca64b0d49c7f9032d0c5bf08
Author:     Matt Jolly <kangie <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  3 04:52:16 2024 +0000
Commit:     Matt Jolly <kangie <AT> gentoo <DOT> org>
CommitDate: Mon Jun  3 05:05:00 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29d3ec64

media-sound/beets: drop 1.6.0-r1

Closes: https://bugs.gentoo.org/909990
Signed-off-by: Matt Jolly <kangie <AT> gentoo.org>

 media-sound/beets/Manifest                         |   1 -
 media-sound/beets/beets-1.6.0-r1.ebuild            | 131 ---------------------
 .../files/1.6.0-0001-Remove-test_completion.patch  |  74 ------------
 media-sound/beets/files/1.6.0-mediafile-test.patch |  41 -------
 media-sound/beets/files/1.6.0-sphinx-6.patch       |  28 -----
 media-sound/beets/files/1.6.0-unicode-test.patch   |  47 --------
 6 files changed, 322 deletions(-)

diff --git a/media-sound/beets/Manifest b/media-sound/beets/Manifest
index 7939d4065748..7e408c416fcb 100644
--- a/media-sound/beets/Manifest
+++ b/media-sound/beets/Manifest
@@ -1,2 +1 @@
-DIST beets-1.6.0.tar.gz 1698333 BLAKE2B 7d3ded703524d5f8740a6adf3769a5752a1e47720ebf0653238f117e4ef6f97461abcd0c7a0d7f428c9848c95277070b5687f9007c04e47b07cdb22eca8c9cbf SHA512 b03759a2be7d3318b4f43cac09ada229cea6496774ba3dcdb1458427e41f6329a627241afc0bfaa9a91afb6818ba944ef6088e38c5635a3bfe730a6a8011a0dc
 DIST beets-1.7.0_pre20240501.gh.tar.gz 2247319 BLAKE2B e215c8a2a30a44d298746351be4fa2de1cebb7d6aec2bc7dfc679b133ea5eddefec20d038aa1aa1d734b176c09163b93f917c6c29ea5115c4c2349e090c8c5df SHA512 f397c72b481d7d8822db598ab37c99d0b9063ae45455c0d34116fab7b5a4cc683a3357bdfe436181b1dea46ee05192cc37faf355b5e093d63c2e440e523b92bc

diff --git a/media-sound/beets/beets-1.6.0-r1.ebuild b/media-sound/beets/beets-1.6.0-r1.ebuild
deleted file mode 100644
index 05075184f5f8..000000000000
--- a/media-sound/beets/beets-1.6.0-r1.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="sqlite"
-
-inherit distutils-r1 bash-completion-r1 optfeature
-
-if [[ ${PV} == "9999" ]]; then
-	EGIT_REPO_URI="https://github.com/beetbox/beets.git"
-	inherit git-r3
-else
-	inherit pypi
-	MY_PV=${PV/_beta/-beta.}
-	MY_P=${PN}-${MY_PV}
-	KEYWORDS="amd64 ~x86"
-	S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Media library management system for obsessive music geeks"
-HOMEPAGE="https://beets.io/ https://pypi.org/project/beets/"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	$(python_gen_cond_dep '
-		>=dev-python/jellyfish-0.7.1[${PYTHON_USEDEP}]
-		dev-python/munkres[${PYTHON_USEDEP}]
-		>=media-libs/mutagen-1.33[${PYTHON_USEDEP}]
-		>=dev-python/musicbrainzngs-0.4[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/requests-oauthlib[${PYTHON_USEDEP}]
-		dev-python/requests[${PYTHON_USEDEP}]
-		dev-python/unidecode[${PYTHON_USEDEP}]
-		dev-python/reflink[${PYTHON_USEDEP}]
-		dev-python/confuse[${PYTHON_USEDEP}]
-		dev-python/mediafile[${PYTHON_USEDEP}]
-	')"
-DEPEND="
-	${RDEPEND}
-"
-BDEPEND="
-	doc? (
-		dev-python/sphinx
-	)
-	$(python_gen_cond_dep '
-		test? (
-			dev-db/sqlite[icu]
-			dev-python/beautifulsoup4[${PYTHON_USEDEP}]
-			dev-python/bluelet[${PYTHON_USEDEP}]
-			dev-python/python3-discogs-client[${PYTHON_USEDEP}]
-			dev-python/flask[${PYTHON_USEDEP}]
-			dev-python/mock[${PYTHON_USEDEP}]
-			dev-python/pyacoustid[${PYTHON_USEDEP}]
-			dev-python/pylast[${PYTHON_USEDEP}]
-			dev-python/pygobject:3[${PYTHON_USEDEP}]
-			dev-python/python-mpd2[${PYTHON_USEDEP}]
-			dev-python/pyxdg[${PYTHON_USEDEP}]
-			dev-python/reflink[${PYTHON_USEDEP}]
-			|| (
-				dev-python/pillow[${PYTHON_USEDEP}]
-				media-gfx/imagemagick
-			)
-			dev-python/rarfile[${PYTHON_USEDEP}]
-			dev-python/responses[${PYTHON_USEDEP}]
-			dev-python/wheel[${PYTHON_USEDEP}]
-			media-libs/chromaprint[tools]
-			media-libs/flac
-			media-libs/gst-plugins-bad:1.0
-			media-libs/gst-plugins-good:1.0
-			media-sound/mp3val
-			media-sound/mp3gain
-			media-plugins/gst-plugins-libav:1.0
-			media-video/ffmpeg:0[encode]
-			app-shells/bash-completion
-		)
-	')"
-
-PATCHES=(
-	"${FILESDIR}/${PV}-0001-Remove-test_completion.patch"
-	"${FILESDIR}/${PV}-sphinx-6.patch"
-	"${FILESDIR}/${PV}-mediafile-test.patch"
-	"${FILESDIR}/${PV}-unicode-test.patch"
-)
-
-DOCS=( README.rst docs/changelog.rst )
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	if use doc ; then
-		sphinx-build -b html docs docs/build || die
-	fi
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	doman man/*
-	use doc && local HTML_DOCS=( docs/build/html/. )
-	einstalldocs
-
-	${PYTHON} "${ED}/usr/bin/beet" completion > "${T}/beet.bash" || die
-	newbashcomp "${T}/beet.bash" beet
-	insinto /usr/share/zsh/site-functions
-	newins "${WORKDIR}/${P}/extra/_beet" _beet
-
-	optfeature "badfiles support" "media-libs/flac media-sound/mp3val"
-	optfeature "chromaprint support" "dev-python/pyacoustid media-libs/chromaprint[tools]"
-	optfeature "discogs support" dev-python/python3-discogs-client
-	optfeature "ffmpeg support" media-video/ffmpeg[encode]
-	optfeature "gstreamer support" "media-libs/gst-plugins-bad media-libs/gst-plugins-good"
-	optfeature "icu support" dev-db/sqlite[icu]
-	optfeature "lastfm support" dev-python/pylast
-	optfeature "mpd support" "dev-python/bluelet dev-python/python-mpd2"
-	optfeature "replaygain with gstreamer support" "dev-python/pygobject media-plugins/gst-plugins-libav"
-	optfeature "replaygain without gstreamer support" media-sound/mp3gain
-	optfeature "thumbnail support" dev-python/pyxdg "dev-python/pillow media-gfx/imagemagick"
-	optfeature "webserver support" dev-python/flask
-	optfeature "webserver cors support" dev-python/flask-cors
-}

diff --git a/media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch b/media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch
deleted file mode 100644
index e51f31c380dc..000000000000
--- a/media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 8e37acd04af1b6d0723bf9d1992da49ee0155758 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
-Date: Thu, 21 Oct 2021 23:16:45 +0200
-Subject: [PATCH] Remove test_completion
-
-Known issue: https://github.com/beetbox/beets/issues/1876
----
- test/test_ui.py | 50 -------------------------------------------------
- 1 file changed, 50 deletions(-)
-
-diff --git a/test/test_ui.py b/test/test_ui.py
-index 9804b0a1..5c321040 100644
---- a/test/test_ui.py
-+++ b/test/test_ui.py
-@@ -1208,56 +1208,6 @@ class PluginTest(_common.TestCase, TestHelper):
-         self.run_command('test', lib=None)
- 
- 
--@_common.slow_test()
--class CompletionTest(_common.TestCase, TestHelper):
--    def test_completion(self):
--        # Load plugin commands
--        config['pluginpath'] = [_common.PLUGINPATH]
--        config['plugins'] = ['test']
--
--        # Do not load any other bash completion scripts on the system.
--        env = dict(os.environ)
--        env['BASH_COMPLETION_DIR'] = os.devnull
--        env['BASH_COMPLETION_COMPAT_DIR'] = os.devnull
--
--        # Open a `bash` process to run the tests in. We'll pipe in bash
--        # commands via stdin.
--        cmd = os.environ.get('BEETS_TEST_SHELL', '/bin/bash --norc').split()
--        if not has_program(cmd[0]):
--            self.skipTest('bash not available')
--        tester = subprocess.Popen(cmd, stdin=subprocess.PIPE,
--                                  stdout=subprocess.PIPE, env=env)
--
--        # Load bash_completion library.
--        for path in commands.BASH_COMPLETION_PATHS:
--            if os.path.exists(util.syspath(path)):
--                bash_completion = path
--                break
--        else:
--            self.skipTest('bash-completion script not found')
--        try:
--            with open(util.syspath(bash_completion), 'rb') as f:
--                tester.stdin.writelines(f)
--        except OSError:
--            self.skipTest('could not read bash-completion script')
--
--        # Load completion script.
--        self.io.install()
--        self.run_command('completion', lib=None)
--        completion_script = self.io.getoutput().encode('utf-8')
--        self.io.restore()
--        tester.stdin.writelines(completion_script.splitlines(True))
--
--        # Load test suite.
--        test_script_name = os.path.join(_common.RSRC, b'test_completion.sh')
--        with open(test_script_name, 'rb') as test_script_file:
--            tester.stdin.writelines(test_script_file)
--        out, err = tester.communicate()
--        if tester.returncode != 0 or out != b'completion tests passed\n':
--            print(out.decode('utf-8'))
--            self.fail('test/test_completion.sh did not execute properly')
--
--
- class CommonOptionsParserCliTest(unittest.TestCase, TestHelper):
-     """Test CommonOptionsParser and formatting LibModel formatting on 'list'
-     command.
--- 
-2.32.0
-

diff --git a/media-sound/beets/files/1.6.0-mediafile-test.patch b/media-sound/beets/files/1.6.0-mediafile-test.patch
deleted file mode 100644
index 0feb8be7c98d..000000000000
--- a/media-sound/beets/files/1.6.0-mediafile-test.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-used to work due to inconsistent mediafile implementation, but with
-https://github.com/beetbox/mediafile/pull/64 (in mediafile >= 0.11.0)
-list fields are None if non-existent, not the empty list
-
-Upstream-PR: https://github.com/beetbox/beets/pull/4593
-
-diff --git a/test/test_embedart.py b/test/test_embedart.py
-index 6b6d616..bc550a8 100644
---- a/test/test_embedart.py
-+++ b/test/test_embedart.py
-@@ -81,7 +81,7 @@ class EmbedartCliTest(_common.TestCase, TestHelper):
-         self.run_command('embedart', '-f', self.small_artpath)
-         mediafile = MediaFile(syspath(item.path))
-         # make sure that images array is empty (nothing embedded)
--        self.assertEqual(len(mediafile.images), 0)
-+        self.assertFalse(mediafile.images)
- 
-     def test_embed_art_from_file(self):
-         self._setup_data()
-@@ -202,7 +202,7 @@ class EmbedartCliTest(_common.TestCase, TestHelper):
-         self.io.addinput('y')
-         self.run_command('clearart')
-         mediafile = MediaFile(syspath(item.path))
--        self.assertEqual(len(mediafile.images), 0)
-+        self.assertFalse(mediafile.images)
- 
-     def test_clear_art_with_no_input(self):
-         self._setup_data()
-diff --git a/test/test_zero.py b/test/test_zero.py
-index c4c1769..b48367b 100644
---- a/test/test_zero.py
-+++ b/test/test_zero.py
-@@ -103,7 +103,7 @@ class ZeroPluginTest(unittest.TestCase, TestHelper):
-         item.write()
- 
-         mf = MediaFile(syspath(path))
--        self.assertEqual(0, len(mf.images))
-+        self.assertFalse(mf.images)
- 
-     def test_auto_false(self):
-         self.config['zero']['fields'] = ['year']

diff --git a/media-sound/beets/files/1.6.0-sphinx-6.patch b/media-sound/beets/files/1.6.0-sphinx-6.patch
deleted file mode 100644
index d946e93b76b8..000000000000
--- a/media-sound/beets/files/1.6.0-sphinx-6.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-https://bugs.gentoo.org/889460
-https://github.com/beetbox/beets/commit/2106f471affd1dab35b4b26187b9c74d034528c5
-
-From 2106f471affd1dab35b4b26187b9c74d034528c5 Mon Sep 17 00:00:00 2001
-From: Jack Wilsdon <jack.wilsdon@gmail.com>
-Date: Sat, 31 Dec 2022 14:23:34 +0000
-Subject: [PATCH] Add missing placeholders to extlinks captions
-
-Sphinx 6.0.0 changed extlinks to always require placeholders in link
-captions. See https://github.com/sphinx-doc/sphinx/commit/93cf1a57d916a1ff96c8e8a0356d0256e40489ac
---- a/docs/conf.py
-+++ b/docs/conf.py
-@@ -18,10 +18,10 @@
- 
- # External links to the bug tracker and other sites.
- extlinks = {
--    'bug': ('https://github.com/beetbox/beets/issues/%s', '#'),
--    'user': ('https://github.com/%s', ''),
--    'pypi': ('https://pypi.org/project/%s/', ''),
--    'stdlib': ('https://docs.python.org/3/library/%s.html', ''),
-+    'bug': ('https://github.com/beetbox/beets/issues/%s', '#%s'),
-+    'user': ('https://github.com/%s', '%s'),
-+    'pypi': ('https://pypi.org/project/%s/', '%s'),
-+    'stdlib': ('https://docs.python.org/3/library/%s.html', '%s'),
- }
- 
- linkcheck_ignore = [
-

diff --git a/media-sound/beets/files/1.6.0-unicode-test.patch b/media-sound/beets/files/1.6.0-unicode-test.patch
deleted file mode 100644
index 8b69e09557c9..000000000000
--- a/media-sound/beets/files/1.6.0-unicode-test.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Unidecode 1.3.5 (a yanked PyPI version) changed the behavior of
-Unidecode for some specific characters:
-
-> Remove trailing space in replacements for vulgar fractions.
-
-As luck would have it, our tests used the 1/2 character specifically to
-test the behavior when these characters decoded to contain slashes. We
-now pin a sufficiently recent version of Unidecode and adapt the tests
-to match the new behavior.
-
-Upstream-Commit: https://github.com/beetbox/beets/commit/5ae1e0f3c8d3a450cb39f7933aa49bb78c2bc0d9
-
-diff --git a/setup.py b/setup.py
-index 264bb2e..69eb987 100755
---- a/setup.py
-+++ b/setup.py
-@@ -85,7 +85,7 @@ setup(
-     },
- 
-     install_requires=[
--        'unidecode',
-+        'unidecode>=1.3.6',
-         'musicbrainzngs>=0.4',
-         'pyyaml',
-         'mediafile>=0.2.0',
-diff --git a/test/test_library.py b/test/test_library.py
-index 667d92c..b1cb579 100644
---- a/test/test_library.py
-+++ b/test/test_library.py
-@@ -441,7 +441,7 @@ class DestinationTest(_common.TestCase):
-         self.lib.directory = b'lib'
-         self.lib.path_formats = [('default', '$title')]
-         self.i.title = 'ab\xa2\xbdd'
--        self.assertEqual(self.i.destination(), np('lib/abC_ 1_2 d'))
-+        self.assertEqual(self.i.destination(), np('lib/abC_ 1_2d'))
- 
-     def test_destination_with_replacements(self):
-         self.lib.directory = b'base'
-@@ -637,7 +637,7 @@ class DestinationFunctionTest(_common.TestCase, PathFormattingMixin):
- 
-     def test_asciify_variable(self):
-         self._setf('%asciify{ab\xa2\xbdd}')
--        self._assert_dest(b'/base/abC_ 1_2 d')
-+        self._assert_dest(b'/base/abC_ 1_2d')
- 
-     def test_left_variable(self):
-         self._setf('%left{$title, 3}')


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-06-03  5:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-12-01 21:33 [gentoo-commits] repo/gentoo:master commit in: media-sound/beets/, media-sound/beets/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-06-03  5:06 Matt Jolly
2023-02-22 16:00 Sam James
2021-06-01  0:28 Sam James
2019-12-07 22:53 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox