Date: Saturday, April 2, 2022 @ 14:39:02 Author: archange Revision: 1180818
archrelease: copy trunk to community-any Added: quodlibet/repos/community-any/PKGBUILD (from rev 1180817, quodlibet/trunk/PKGBUILD) quodlibet/repos/community-any/quodlibet-4.4.0-collections.patch (from rev 1180817, quodlibet/trunk/quodlibet-4.4.0-collections.patch) Deleted: quodlibet/repos/community-any/PKGBUILD quodlibet/repos/community-any/quodlibet-4.4.0-collections.patch -----------------------------------+ PKGBUILD | 127 +++++++++---------- quodlibet-4.4.0-collections.patch | 236 ++++++++++++++++++------------------ 2 files changed, 178 insertions(+), 185 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2022-04-02 14:38:34 UTC (rev 1180817) +++ PKGBUILD 2022-04-02 14:39:02 UTC (rev 1180818) @@ -1,67 +0,0 @@ -# Maintainer: David Runge <dv...@archlinux.org> -# Maintainer: Bruno Pagani <archa...@archlinux.org> -# Contributor: Eric Bélanger <e...@archlinux.org> - -pkgname=quodlibet -pkgver=4.4.0 -pkgrel=3 -pkgdesc="Music player and music library manager" -arch=(any) -url="https://quodlibet.readthedocs.io/" -license=(GPL2) -depends=(dbus-python gtk3 python-cairo python-feedparser python-gobject python-mutagen) -makedepends=(python-sphinx_rtd_theme) -# python-raven python-senf are currently vendored -checkdepends=(gst-plugins-base gst-plugins-good python-pytest python-xvfbwrapper) -optdepends=('gst-libav: Extra media codecs for the GStreamer backend' - 'gst-plugins-bad: Extra media codecs for the GStreamer backend; Audio Pitch / Speed, Crossfeed, Submit Acoustic Fingerprints plugins' - 'gst-plugins-base: Default audio backend' - 'gst-plugins-good: Extra media codecs, PulseAudio support for the GStreamer backend; Audio Compressor, Karaoke, Replay Gain plugins' - 'gst-plugins-ugly: Extra media codecs for the GStreamer backend' - 'gtksourceview3: Undo and redo support in multiline text fields' - 'kakasi: Kana/Kanji Simple Inverter plugin' - 'libappindicator-gtk3: Appindicator support in the Tray Icon plugin' - 'libkeybinder3: Multimedia key support under non Gnome setups' - 'libmodplug: MOD support' - 'python-musicbrainzngs: MusicBrainz Lookup, MusicBrainz Sync plugins' - 'python-paho-mqtt: MQTT Publisher plugin' - 'python-pyinotify: Automatic Library Update plugin' - 'rygel: UPnP AV Media Server plugin' - 'webkit2gtk: Web Lyrics plugin' - 'xine-lib: Alternative audio backend') -source=( - "https://github.com/${pkgname}/${pkgname}/releases/download/release-${pkgver}/${pkgname}-${pkgver}.tar.gz"{,.sig} - "${pkgname}-4.4.0-collections.patch::https://github.com/quodlibet/quodlibet/commit/49dd6474484f9f157adae485a51afc37e6c884f4.patch" -) -sha256sums=('a03318d2767e4959551763d0a87fad977387af712608fe572714176a24bbf367' - 'SKIP' - '6a5665838f01c30b2df0456985779e55a2e05d4ce76b7e3f1438c36e089ebc90') -validpgpkeys=(0EBF782C5D53F7E5FB02A66746BD761F7A49B0EC) # Christoph Reiter <reiter.christ...@gmail.com> - -prepare() { - cd ${pkgname}-${pkgver} - # use collections.abc - # backport of https://github.com/quodlibet/quodlibet/commit/49dd6474484f9f157adae485a51afc37e6c884f4 - patch -Np1 -i ../"${pkgname}-4.4.0-collections.patch" - # Fix zsh completions dir - sed -e 's|vendor-completions|site-functions|' -i gdist/zsh_completions.py -} - -build() { - cd ${pkgname}-${pkgver} - python setup.py build -} - -check() { - cd ${pkgname}-${pkgver} - export PYTHONPATH="build:${PYTHONPATH}" - # not running useless linter checks - # disable tests that are broken due to telnetlib (SqueezeboxPlaylistPlugin) - pytest -v -k 'not TFlake8 and not test_remove_all and not test_plugin_pref' -} - -package() { - cd ${pkgname}-${pkgver} - python setup.py install --root="${pkgdir}" --optimize=1 - install -vDm 644 {README,NEWS}.rst -t "${pkgdir}"/usr/share/doc/${pkgname} -} Copied: quodlibet/repos/community-any/PKGBUILD (from rev 1180817, quodlibet/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2022-04-02 14:39:02 UTC (rev 1180818) @@ -0,0 +1,60 @@ +# Maintainer: David Runge <dv...@archlinux.org> +# Maintainer: Bruno Pagani <archa...@archlinux.org> +# Contributor: Eric Bélanger <e...@archlinux.org> + +pkgname=quodlibet +pkgver=4.5.0 +pkgrel=1 +pkgdesc="Music player and music library manager" +arch=(any) +url="https://quodlibet.readthedocs.io/" +license=(GPL2) +depends=(dbus-python gtk3 python-cairo python-feedparser python-gobject python-mutagen) +makedepends=(python-sphinx_rtd_theme) +# python-raven python-senf are currently vendored +checkdepends=(gst-plugins-base gst-plugins-good python-pytest python-xvfbwrapper) +optdepends=('gst-libav: Extra media codecs for the GStreamer backend' + 'gst-plugins-bad: Extra media codecs for the GStreamer backend; Audio Pitch / Speed, Crossfeed, Submit Acoustic Fingerprints plugins' + 'gst-plugins-base: Default audio backend' + 'gst-plugins-good: Extra media codecs, PulseAudio support for the GStreamer backend; Audio Compressor, Karaoke, Replay Gain plugins' + 'gst-plugins-ugly: Extra media codecs for the GStreamer backend' + 'gtksourceview3: Undo and redo support in multiline text fields' + 'kakasi: Kana/Kanji Simple Inverter plugin' + 'libappindicator-gtk3: Appindicator support in the Tray Icon plugin' + 'libkeybinder3: Multimedia key support under non Gnome setups' + 'libmodplug: MOD support' + 'python-musicbrainzngs: MusicBrainz Lookup, MusicBrainz Sync plugins' + 'python-paho-mqtt: MQTT Publisher plugin' + 'python-pyinotify: Automatic Library Update plugin' + 'rygel: UPnP AV Media Server plugin' + 'webkit2gtk: Web Lyrics plugin' + 'xine-lib: Alternative audio backend') +source=("https://github.com/${pkgname}/${pkgname}/releases/download/release-${pkgver}/${pkgname}-${pkgver}.tar.gz"{,.sig}) +sha256sums=('301615829f652cbafedb35539237162a58bc1ee71a567d249f7789d9268245bc' + 'SKIP') +validpgpkeys=(0EBF782C5D53F7E5FB02A66746BD761F7A49B0EC) # Christoph Reiter <reiter.christ...@gmail.com> + +prepare() { + cd ${pkgname}-${pkgver} + # Fix zsh completions dir + sed -e 's|vendor-completions|site-functions|' -i gdist/zsh_completions.py +} + +build() { + cd ${pkgname}-${pkgver} + python setup.py build +} + +check() { + cd ${pkgname}-${pkgver} + export PYTHONPATH="${PWD}/build" + # not running useless linter checks + # two failures in operon suite https://github.com/quodlibet/quodlibet/issues/3966 + pytest -v --color=yes -k 'not TFlake8 and not test_remove_all and not test_dry_run' +} + +package() { + cd ${pkgname}-${pkgver} + python setup.py install --root="${pkgdir}" --optimize=1 + install -vDm 644 {README,NEWS}.rst -t "${pkgdir}"/usr/share/doc/${pkgname} +} Deleted: quodlibet-4.4.0-collections.patch =================================================================== --- quodlibet-4.4.0-collections.patch 2022-04-02 14:38:34 UTC (rev 1180817) +++ quodlibet-4.4.0-collections.patch 2022-04-02 14:39:02 UTC (rev 1180818) @@ -1,118 +0,0 @@ -diff -ruN a/quodlibet/packages/raven/context.py b/quodlibet/packages/raven/context.py ---- a/quodlibet/packages/raven/context.py 2021-02-28 20:26:26.003186000 +0100 -+++ b/quodlibet/packages/raven/context.py 2021-12-04 11:59:34.974753115 +0100 -@@ -7,7 +7,10 @@ - """ - from __future__ import absolute_import - --from collections import Mapping, Iterable -+try: -+ from collections import abc -+except ImportError: -+ import collections as abc # type: ignore - from threading import local - from weakref import ref as weakref - -@@ -30,7 +33,7 @@ - return [] - - --class Context(local, Mapping, Iterable): -+class Context(local, abc.Mapping, abc.Iterable): - """ - Stores context until cleared. - -diff -ruN a/quodlibet/player/gstbe/util.py b/quodlibet/player/gstbe/util.py ---- a/quodlibet/player/gstbe/util.py 2021-02-28 20:26:26.007186000 +0100 -+++ b/quodlibet/player/gstbe/util.py 2021-12-04 11:59:34.978086457 +0100 -@@ -6,7 +6,10 @@ - # the Free Software Foundation; either version 2 of the License, or - # (at your option) any later version. - --import collections -+try: -+ from collections import abc -+except ImportError: -+ import collections as abc # type: ignore - import subprocess - from enum import Enum - from typing import Iterable, Tuple -@@ -183,7 +186,7 @@ - return pipe, pipeline_desc - - --class TagListWrapper(collections.Mapping): -+class TagListWrapper(abc.Mapping): - def __init__(self, taglist, merge=False): - self._list = taglist - self._merge = merge -diff -ruN a/quodlibet/util/collection.py b/quodlibet/util/collection.py ---- a/quodlibet/util/collection.py 2021-02-28 20:26:26.015186000 +0100 -+++ b/quodlibet/util/collection.py 2021-12-04 12:01:23.532557722 +0100 -@@ -24,7 +24,10 @@ - AudioFile) - from quodlibet.formats._audio import PEOPLE as _PEOPLE - from quodlibet.pattern import Pattern --from collections import Iterable -+try: -+ from collections import abc -+except ImportError: -+ import collections as abc # type: ignore - - from quodlibet.util import is_windows - from quodlibet.util.path import escape_filename, unescape_filename, limit_path -@@ -332,7 +335,7 @@ - - @hashable - @total_ordering --class Playlist(Collection, Iterable): -+class Playlist(Collection, abc.Iterable): - """A Playlist is a `Collection` that has list-like features - Songs can appear more than once. - """ -@@ -340,7 +343,7 @@ - __instances: Set["Playlist"] = set() - - @classmethod -- def playlists_featuring(cls, song: AudioFile) -> Iterable[Playlist]: -+ def playlists_featuring(cls, song: AudioFile) -> abc.Iterable[Playlist]: - """Returns a generator yielding playlists in which this song appears""" - return (pl for pl in cls.__instances if song in pl._list) - -diff -ruN a/quodlibet/util/collections.py b/quodlibet/util/collections.py ---- a/quodlibet/util/collections.py 2021-02-28 20:26:26.015186000 +0100 -+++ b/quodlibet/util/collections.py 2021-12-04 12:03:18.200303036 +0100 -@@ -9,7 +9,11 @@ - - from __future__ import absolute_import - --from collections import MutableSequence, defaultdict -+try: -+ from collections import abc -+except ImportError: -+ import collections as abc # type: ignore -+from collections import defaultdict - - from .misc import total_ordering - -@@ -139,7 +143,7 @@ - return self.__dict.keys() - - --class HashedList(MutableSequence): -+class HashedList(abc.MutableSequence): - """A list-like collection that can only take hashable items - and provides fast membership tests. - -diff -ruN a/quodlibet/util/http.py b/quodlibet/util/http.py ---- a/quodlibet/util/http.py 2021-02-28 20:26:26.015186000 +0100 -+++ b/quodlibet/util/http.py 2021-12-04 12:13:21.410973754 +0100 -@@ -7,7 +7,7 @@ - # (at your option) any later version. - - import json --from collections import Callable -+from collections.abc import Callable - from typing import Optional, Any - - from gi.repository import Soup, Gio, GLib, GObject Copied: quodlibet/repos/community-any/quodlibet-4.4.0-collections.patch (from rev 1180817, quodlibet/trunk/quodlibet-4.4.0-collections.patch) =================================================================== --- quodlibet-4.4.0-collections.patch (rev 0) +++ quodlibet-4.4.0-collections.patch 2022-04-02 14:39:02 UTC (rev 1180818) @@ -0,0 +1,118 @@ +diff -ruN a/quodlibet/packages/raven/context.py b/quodlibet/packages/raven/context.py +--- a/quodlibet/packages/raven/context.py 2021-02-28 20:26:26.003186000 +0100 ++++ b/quodlibet/packages/raven/context.py 2021-12-04 11:59:34.974753115 +0100 +@@ -7,7 +7,10 @@ + """ + from __future__ import absolute_import + +-from collections import Mapping, Iterable ++try: ++ from collections import abc ++except ImportError: ++ import collections as abc # type: ignore + from threading import local + from weakref import ref as weakref + +@@ -30,7 +33,7 @@ + return [] + + +-class Context(local, Mapping, Iterable): ++class Context(local, abc.Mapping, abc.Iterable): + """ + Stores context until cleared. + +diff -ruN a/quodlibet/player/gstbe/util.py b/quodlibet/player/gstbe/util.py +--- a/quodlibet/player/gstbe/util.py 2021-02-28 20:26:26.007186000 +0100 ++++ b/quodlibet/player/gstbe/util.py 2021-12-04 11:59:34.978086457 +0100 +@@ -6,7 +6,10 @@ + # the Free Software Foundation; either version 2 of the License, or + # (at your option) any later version. + +-import collections ++try: ++ from collections import abc ++except ImportError: ++ import collections as abc # type: ignore + import subprocess + from enum import Enum + from typing import Iterable, Tuple +@@ -183,7 +186,7 @@ + return pipe, pipeline_desc + + +-class TagListWrapper(collections.Mapping): ++class TagListWrapper(abc.Mapping): + def __init__(self, taglist, merge=False): + self._list = taglist + self._merge = merge +diff -ruN a/quodlibet/util/collection.py b/quodlibet/util/collection.py +--- a/quodlibet/util/collection.py 2021-02-28 20:26:26.015186000 +0100 ++++ b/quodlibet/util/collection.py 2021-12-04 12:01:23.532557722 +0100 +@@ -24,7 +24,10 @@ + AudioFile) + from quodlibet.formats._audio import PEOPLE as _PEOPLE + from quodlibet.pattern import Pattern +-from collections import Iterable ++try: ++ from collections import abc ++except ImportError: ++ import collections as abc # type: ignore + + from quodlibet.util import is_windows + from quodlibet.util.path import escape_filename, unescape_filename, limit_path +@@ -332,7 +335,7 @@ + + @hashable + @total_ordering +-class Playlist(Collection, Iterable): ++class Playlist(Collection, abc.Iterable): + """A Playlist is a `Collection` that has list-like features + Songs can appear more than once. + """ +@@ -340,7 +343,7 @@ + __instances: Set["Playlist"] = set() + + @classmethod +- def playlists_featuring(cls, song: AudioFile) -> Iterable[Playlist]: ++ def playlists_featuring(cls, song: AudioFile) -> abc.Iterable[Playlist]: + """Returns a generator yielding playlists in which this song appears""" + return (pl for pl in cls.__instances if song in pl._list) + +diff -ruN a/quodlibet/util/collections.py b/quodlibet/util/collections.py +--- a/quodlibet/util/collections.py 2021-02-28 20:26:26.015186000 +0100 ++++ b/quodlibet/util/collections.py 2021-12-04 12:03:18.200303036 +0100 +@@ -9,7 +9,11 @@ + + from __future__ import absolute_import + +-from collections import MutableSequence, defaultdict ++try: ++ from collections import abc ++except ImportError: ++ import collections as abc # type: ignore ++from collections import defaultdict + + from .misc import total_ordering + +@@ -139,7 +143,7 @@ + return self.__dict.keys() + + +-class HashedList(MutableSequence): ++class HashedList(abc.MutableSequence): + """A list-like collection that can only take hashable items + and provides fast membership tests. + +diff -ruN a/quodlibet/util/http.py b/quodlibet/util/http.py +--- a/quodlibet/util/http.py 2021-02-28 20:26:26.015186000 +0100 ++++ b/quodlibet/util/http.py 2021-12-04 12:13:21.410973754 +0100 +@@ -7,7 +7,7 @@ + # (at your option) any later version. + + import json +-from collections import Callable ++from collections.abc import Callable + from typing import Optional, Any + + from gi.repository import Soup, Gio, GLib, GObject