summaryrefslogtreecommitdiff
path: root/media-sound/beets
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-06-04 00:07:50 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-06-04 00:07:50 +0100
commitdafa6f367240d1f5329ca89fb6f78985dbdc025b (patch)
tree96ba5ff3cc1d06604d928ca1b58ed15a4f8733dc /media-sound/beets
parenta3bb28551df94028000fb72308a9e9baa01458b0 (diff)
gentoo auto-resync : 04:06:2024 - 00:07:50
Diffstat (limited to 'media-sound/beets')
-rw-r--r--media-sound/beets/Manifest10
-rw-r--r--media-sound/beets/beets-1.6.0-r1.ebuild131
-rw-r--r--media-sound/beets/beets-1.7.0_pre20240501.ebuild10
-rw-r--r--media-sound/beets/beets-9999.ebuild12
-rw-r--r--media-sound/beets/files/1.6.0-0001-Remove-test_completion.patch74
-rw-r--r--media-sound/beets/files/1.6.0-mediafile-test.patch41
-rw-r--r--media-sound/beets/files/1.6.0-sphinx-6.patch28
-rw-r--r--media-sound/beets/files/1.6.0-unicode-test.patch47
8 files changed, 15 insertions, 338 deletions
diff --git a/media-sound/beets/Manifest b/media-sound/beets/Manifest
index dc1b29ffddcc..18e545d01651 100644
--- a/media-sound/beets/Manifest
+++ b/media-sound/beets/Manifest
@@ -1,10 +1,4 @@
-AUX 1.6.0-0001-Remove-test_completion.patch 2874 BLAKE2B d1a748712d118783c39b1e7d082b1ca5fe6edb26378a26e0f25a70d07129f009ba27a7fee1ec4af5f6515744e0ccce0d4d46779105c3fd5f2e18a00489b8b354 SHA512 c3f471adf8e86bf7ecad99af66213a229b0afa1431f480e3ae48bb87304fc5c39ba313e3fd9fd6b7e3382c792bd8c266f61bf1e56368f9dd28ecbf5bd3547ef2
-AUX 1.6.0-mediafile-test.patch 1613 BLAKE2B 488d8bdf7950d03bc37584c6ff64f3ea63298c4cf532549e82892390d5f2c5a9f966df3beff71591256538e94a33624295fe4a26e718fe78dc4dc826b1604c71 SHA512 50a36b83ff26ef03f7281c4ef9c2f05bbd0184301b7734fee283bc34aa89237f7e86b390744627c5ef0afeb67b57114a16cfa0ef88a0f5e272fa4d4478410202
-AUX 1.6.0-sphinx-6.patch 1114 BLAKE2B f37fe23ea86e47ed6eaf5705ae569103d3ae3b5141b9c80c22b30c650a499f915951e5db3e420e36d2829e3508d3e75729391a5de90cfa809271361692c4f485 SHA512 fe2290aec4d6356d4bd2690bd716370e45ae45f98845fb42adda9fab160f306c076f31fd30971f69431b7507917e201d82b494a49d34bf4549024b4df701a83a
-AUX 1.6.0-unicode-test.patch 1703 BLAKE2B efcdba4db1a7377954b768770d41ce8377d391bb4507bc099aae96469ac0eb250b7458c92013703b6b9d0498a62379a5fb9973b467418b8f6c8af4aed94b0829 SHA512 102d154b30617ab64511ad04ec92e33b58603da04caa7812324cc4a10e0caafeaa1e3c286bfbc712e5c09fc23f250d5a4b10ea5ab5112dea316269d80971e20a
-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
-EBUILD beets-1.6.0-r1.ebuild 3878 BLAKE2B c8617f3921066507dc8c9e3f953fc9c76a6e24ef74796da98dfba677116b093a0a429fd9563dbccda08624e12bbc9c7125402c5a3e93a12dc87cf1fa2987865e SHA512 c4b14351c8a5c82f6fdcaf3fe9afcfa90e7ee4654acb76bd815adfee1f6990aab4206077411317b37fb6dc6a10e8771201ae593de1e6b066a5a3252077b7a25a
-EBUILD beets-1.7.0_pre20240501.ebuild 6066 BLAKE2B fa2c7ff07455daf10f2be5a73c5708eac60ade65c660a065e2b1c1a718233a66fc00a1c5c716e8c935d9503a88baea3cb8be20dc4f2793aeb671372e1877a6d5 SHA512 ebde628d16b678deb456ee2d3b0ff60cd8871f3298b6cc09656a3e187803f5798fdfec22fd5be5c62c6d79fd1e345e0a4413a00d4e54c166a21d313f8b19fa9d
-EBUILD beets-9999.ebuild 5836 BLAKE2B df16e6aebeb29f3b9561ec22b544cba0cb0ef6f8ff377eb625b695aa945a8d6d1980c56e3924292730f256826d5b4fdd7a779038a9ea58b4603ecdc9d3dc4de5 SHA512 4c6d462d665f06250825523a524ecf15a91f42310d019bc18d87625cc89a16d0c63de6dfa8e86c99f29f38b4c89ea27dd54f151a0bdb81413b0eb84182fcfe85
+EBUILD beets-1.7.0_pre20240501.ebuild 6153 BLAKE2B f630dc3ee3ac6b7397e52ba2fdf15b19538d70179ac854cf292832351d192cc8ffd583815b47d2aea170f7b4e337173a9e270dedb45e7ec484fa4382fba4586c SHA512 e74fe44c6fe0ee290b027276e102d6019d04c27a88ed60e1d218a6fd8b8e86ff4e26188b9dab500ac67018becc75e3ff028b803c8737c956eec3d570853bb3f1
+EBUILD beets-9999.ebuild 5919 BLAKE2B 11a16cc36113540f1b95d63039f7afa938a1639b2060ef2dba1f8ea6b856e23fb20ec6ef5a064ec373d79e4a6bdc88017d7b8589950d1e7ace3f3920daad1508 SHA512 abd074b9e394fb9e4fe7cee27cf5567f388f7bc7d6f945bd08ef3a3430d7a469f940f37d9c741b4d0059a3c838a185d731f387bd5cb3c3dbd0b27468b3294142
MISC metadata.xml 1856 BLAKE2B 0c3482123a1452fbd45e94c83d7eaba9c9548f781f87b7981c3df694eb09e0078f2de68a1e12b5ecd8ee0d69e6eb0f3189472b8c09bee17dfdd5494e9ecd3af7 SHA512 37369b9bb3a5607694bc5b40ba4f59bb33a41d6ac716ccb75f55f93ae35c71187d681a305e4fb6e03f6bf045867b3def2413342cb89784ac4b44a80d36760f73
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/beets-1.7.0_pre20240501.ebuild b/media-sound/beets/beets-1.7.0_pre20240501.ebuild
index ae3fa77e2a88..71c42d29cfe8 100644
--- a/media-sound/beets/beets-1.7.0_pre20240501.ebuild
+++ b/media-sound/beets/beets-1.7.0_pre20240501.ebuild
@@ -43,12 +43,13 @@ RDEPEND="
>=media-libs/mutagen-1.33[${PYTHON_USEDEP}]
>=dev-python/musicbrainzngs-0.4[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/confuse[${PYTHON_USEDEP}]
+ dev-python/mediafile[${PYTHON_USEDEP}]
+ dev-python/reflink[${PYTHON_USEDEP}]
dev-python/requests-oauthlib[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
dev-python/unidecode[${PYTHON_USEDEP}]
- dev-python/reflink[${PYTHON_USEDEP}]
- dev-python/confuse[${PYTHON_USEDEP}]
- dev-python/mediafile[${PYTHON_USEDEP}]
')"
DEPEND="
${RDEPEND}
@@ -56,6 +57,7 @@ DEPEND="
BDEPEND="
doc? (
dev-python/sphinx
+ dev-python/pydata-sphinx-theme
)
$(python_gen_cond_dep '
test? (
@@ -123,7 +125,7 @@ python_prepare_all() {
python_compile_all() {
if use doc ; then
- sphinx-build -b html docs docs/build || die
+ sphinx-build -b html docs docs/build/html || die
fi
# If building from VCS sources we need to generate manpages, then copy them to ${S}/man
# We could install mans from the sphinx build path, but to be consistent with pypi for src_install
diff --git a/media-sound/beets/beets-9999.ebuild b/media-sound/beets/beets-9999.ebuild
index 4bb022d375b0..00a1c997e652 100644
--- a/media-sound/beets/beets-9999.ebuild
+++ b/media-sound/beets/beets-9999.ebuild
@@ -40,13 +40,14 @@ RDEPEND="
dev-python/munkres[${PYTHON_USEDEP}]
>=media-libs/mutagen-1.33[${PYTHON_USEDEP}]
>=dev-python/musicbrainzngs-0.4[${PYTHON_USEDEP}]
+ dev-python/confuse[${PYTHON_USEDEP}]
+ dev-python/mediafile[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/reflink[${PYTHON_USEDEP}]
dev-python/requests-oauthlib[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
dev-python/unidecode[${PYTHON_USEDEP}]
- dev-python/reflink[${PYTHON_USEDEP}]
- dev-python/confuse[${PYTHON_USEDEP}]
- dev-python/mediafile[${PYTHON_USEDEP}]
')"
DEPEND="
${RDEPEND}
@@ -54,6 +55,7 @@ DEPEND="
BDEPEND="
doc? (
dev-python/sphinx
+ dev-python/pydata-sphinx-theme
)
$(python_gen_cond_dep '
test? (
@@ -109,7 +111,7 @@ src_prepare() {
sed -i -e "/--cov=beets/,+9d" setup.cfg || die "Failed to disable code coverage options in setup.cfg"
# Update the version if we're not building from pypy; it's probably a _pre or live ebuild.
if [[ ${PV} == "9999" ]] || [[ ${UPDATE_VERSION} == "yes" ]]; then
- sed -i -e "s/version=\".*\"/version=\"${PV}\"/" setup.py || die "Failed to update version in VCS sources"
+ sed -i -e "s/version='.*'/version='${PV}'/" setup.py || die "Failed to update version in VCS sources"
sed -i -e "s/__version__ = \".*\"/__version__ = \"${PV}\"/" beets/__init__.py
fi
default
@@ -121,7 +123,7 @@ python_prepare_all() {
python_compile_all() {
if use doc ; then
- sphinx-build -b html docs docs/build || die
+ sphinx-build -b html docs docs/build/html || die
fi
# If building from VCS sources we need to generate manpages, then copy them to ${S}/man
# We could install mans from the sphinx build path, but to be consistent with pypi for src_install
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}')