pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/audio/py-beets



Module Name:    pkgsrc
Committed By:   adam
Date:           Wed May 14 13:33:05 UTC 2025

Modified Files:
        pkgsrc/audio/py-beets: Makefile PLIST distinfo

Log Message:
py-beets: updated to 2.3.1

2.3.1 (May 14, 2025)

Bug fixes:
* :doc:`/reference/pathformat`: Fixed a regression where path legalization
  incorrectly removed parts of user-configured path formats that followed a dot
  (**.**).
  :bug:`5771`

For packagers:
* Force ``poetry`` version below 2 to avoid it mangling file modification times
  in ``sdist`` package.
  :bug:`5770`

2.3.0 (May 07, 2025)

Beets now requires Python 3.9 or later since support for EOL Python 3.8 has
been dropped.

New features:

* :doc:`plugins/lastgenre`: The new configuration option, ``keep_existing``,
  provides more fine-grained control over how pre-populated genre tags are
  handled. The ``force`` option now behaves in a more conventional manner.
  :bug:`4982`
* :doc:`plugins/lyrics`: Add new configuration option ``dist_thresh`` to
  control the maximum allowed distance between the lyrics search result and the
  tagged item's artist and title. This is useful for preventing false positives
  when fetching lyrics.
* :doc:`plugins/lyrics`: Rewrite lyrics translation functionality to use Azure
  AI Translator API and add relevant instructions to the documentation.
* :doc:`plugins/missing`: Add support for all metadata sources.
* :doc:`plugins/mbsync`: Add support for all metadata sorces.

Bug fixes:

* :doc:`plugins/thumbnails`: Fix API call to GIO on big endian architectures
  (like s390x) in thumbnails plugin.
  :bug:`5708`
* :doc:`plugins/listenbrainz`: Fix rST formatting for URLs of Listenbrainz API Key documentation and config.yaml.
* :doc:`plugins/listenbrainz`: Fix ``UnboundLocalError`` in cases where 'mbid' is not defined.
* :doc:`plugins/fetchart`: Fix fetchart bug where a tempfile could not be deleted due to never being
  properly closed.
  :bug:`5521`
* :doc:`plugins/lyrics`: LRCLib will fallback to plain lyrics if synced lyrics
  are not found and `synced` flag is set to `yes`.
* Synchronise files included in the source distribution with what we used to
  have before the introduction of Poetry.
  :bug:`5531`
  :bug:`5526`
* :ref:`write-cmd`: Fix the issue where for certain files differences in
  ``mb_artistid``, ``mb_albumartistid`` and ``albumtype`` fields are shown on
  every attempt to write tags. Note: your music needs to be reimported with
  ``beet import -LI`` or synchronised with ``beet mbsync`` in order to fix
  this!
  :bug:`5265`
  :bug:`5371`
  :bug:`4715`
* :ref:`import-cmd`: Fix ``MemoryError`` and improve performance tagging large
  albums by replacing ``munkres`` library with ``lap.lapjv``.
  :bug:`5207`
* :ref:`query-sort`: Fix a bug that would raise an exception when sorting on
  a non-string field that is not populated in all items.
  :bug:`5512`
* :doc:`plugins/lastgenre`: Fix track-level genre handling. Now when an album-level
  genre is set already, single tracks don't fall back to the album's genre and
  request their own last.fm genre. Also log messages regarding what's been
  tagged are now more polished.
  :bug:`5582`
* Fix ambiguous column name ``sqlite3.OperationalError`` that occured in album
  queries that filtered album track titles, for example ``beet list -a keyword
  title:foo``.
* :doc:`plugins/lyrics`: Rewrite lyrics tests using pytest to provide isolated
  configuration for each test case. This fixes the issue where some tests
  failed because they read developers' local lyrics configuration.
  :bug:`5133`
* :doc:`plugins/lyrics`: Do not attempt to search for lyrics if either the
  artist or title is missing and ignore ``artist_sort`` value if it is empty.
  :bug:`2635`
* :doc:`plugins/lyrics`: Fix fetching lyrics from ``lrclib`` source. If we
  cannot find lyrics for a specific album, artist, title combination, the
  plugin now tries to search for the artist and title and picks the most
  relevant result. Update the default ``sources`` configuration to prioritize
  ``lrclib`` over other sources since it returns reliable results quicker than
  others.
  :bug:`5102`
* :doc:`plugins/lyrics`: Fix the issue with ``genius`` backend not being able
  to match lyrics when there is a slight variation in the artist name.
  :bug:`4791`
* :doc:`plugins/lyrics`: Fix plugin crash when ``genius`` backend returns empty
  lyrics.
  :bug:`5583`
* ImageMagick 7.1.1-44 is now supported.
* :doc:`plugins/parentwork`: Only output parentwork changes when running in verbose mode.

For packagers:

* The minimum supported Python version is now 3.9.
* External plugin developers: ``beetsplug/__init__.py`` file can be removed
  from your plugin as beets now uses native/implicit namespace package setup.

Other changes:

* Release workflow: fix the issue where the new release tag is created for the
  wrong (outdated) commit. Now the tag is created in the same workflow step
  right after committing the version update.
  :bug:`5539`
* :doc:`/plugins/smartplaylist`: URL-encode additional item `fields` within generated
  EXTM3U playlists instead of JSON-encoding them.
* typehints: `./beets/importer.py` file now has improved typehints.
* typehints: `./beets/plugins.py` file now includes typehints.
* :doc:`plugins/ftintitle`: Optimize the plugin by avoiding unnecessary writes
  to the database.
* Database models are now serializable with pickle.


To generate a diff of this commit:
cvs rdiff -u -r1.37 -r1.38 pkgsrc/audio/py-beets/Makefile
cvs rdiff -u -r1.21 -r1.22 pkgsrc/audio/py-beets/PLIST
cvs rdiff -u -r1.22 -r1.23 pkgsrc/audio/py-beets/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/audio/py-beets/Makefile
diff -u pkgsrc/audio/py-beets/Makefile:1.37 pkgsrc/audio/py-beets/Makefile:1.38
--- pkgsrc/audio/py-beets/Makefile:1.37 Mon Jan 27 11:25:02 2025
+++ pkgsrc/audio/py-beets/Makefile      Wed May 14 13:33:05 2025
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.37 2025/01/27 11:25:02 wiz Exp $
+# $NetBSD: Makefile,v 1.38 2025/05/14 13:33:05 adam Exp $
 
-DISTNAME=      beets-2.2.0
+DISTNAME=      beets-2.3.1
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
-PKGREVISION=   2
 CATEGORIES=    audio python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=b/beets/}
 
@@ -16,9 +15,10 @@ TOOL_DEPENDS+=       ${PYPKGPREFIX}-poetry-cor
 DEPENDS+=      ${PYPKGPREFIX}-Unidecode>=1.3.6:../../textproc/py-Unidecode
 DEPENDS+=      ${PYPKGPREFIX}-confuse>=1.5.0:../../devel/py-confuse
 DEPENDS+=      ${PYPKGPREFIX}-jellyfish-[0-9]*:../../textproc/py-jellyfish
+DEPENDS+=      ${PYPKGPREFIX}-lap>=0.5.12:../../math/py-lap
 DEPENDS+=      ${PYPKGPREFIX}-mediafile>=0.12.0:../../audio/py-mediafile
-DEPENDS+=      ${PYPKGPREFIX}-munkres>=1.0.0:../../math/py-munkres
 DEPENDS+=      ${PYPKGPREFIX}-musicbrainz-ngs>=0.4:../../audio/py-musicbrainz-ngs
+DEPENDS+=      ${PYPKGPREFIX}-numpy>=1.24.4:../../math/py-numpy
 DEPENDS+=      ${PYPKGPREFIX}-platformdirs>=3.5.0:../../misc/py-platformdirs
 DEPENDS+=      ${PYPKGPREFIX}-yaml-[0-9]*:../../textproc/py-yaml
 # update
@@ -28,6 +28,7 @@ DEPENDS+=     ${PYPKGPREFIX}-last-[0-9]*:../
 # scrub
 DEPENDS+=      ${PYPKGPREFIX}-mutagen>=1.33:../../audio/py-mutagen
 TEST_DEPENDS+= ${PYPKGPREFIX}-discogs-client-[0-9]*:../../audio/py-discogs-client
+TEST_DEPENDS+= ${PYPKGPREFIX}-mock-[0-9]*:../../devel/py-mock
 TEST_DEPENDS+= ${PYPKGPREFIX}-mpd2-[0-9]*:../../audio/py-mpd2
 TEST_DEPENDS+= ${PYPKGPREFIX}-requests-oauthlib-[0-9]*:../../security/py-requests-oauthlib
 TEST_DEPENDS+= ${PYPKGPREFIX}-responses>=0.3.0:../../net/py-responses

Index: pkgsrc/audio/py-beets/PLIST
diff -u pkgsrc/audio/py-beets/PLIST:1.21 pkgsrc/audio/py-beets/PLIST:1.22
--- pkgsrc/audio/py-beets/PLIST:1.21    Mon Jan 27 11:25:02 2025
+++ pkgsrc/audio/py-beets/PLIST Wed May 14 13:33:05 2025
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.21 2025/01/27 11:25:02 wiz Exp $
+@comment $NetBSD: PLIST,v 1.22 2025/05/14 13:33:05 adam Exp $
 bin/beet-${PYVERSSUFFIX}
 ${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
 ${PYSITELIB}/${WHEEL_INFODIR}/METADATA
@@ -103,9 +103,9 @@ ${PYSITELIB}/beets/util/pipeline.pyo
 ${PYSITELIB}/beets/vfs.py
 ${PYSITELIB}/beets/vfs.pyc
 ${PYSITELIB}/beets/vfs.pyo
-${PYSITELIB}/beetsplug/__init__.py
-${PYSITELIB}/beetsplug/__init__.pyc
-${PYSITELIB}/beetsplug/__init__.pyo
+${PYSITELIB}/beetsplug/_typing.py
+${PYSITELIB}/beetsplug/_typing.pyc
+${PYSITELIB}/beetsplug/_typing.pyo
 ${PYSITELIB}/beetsplug/absubmit.py
 ${PYSITELIB}/beetsplug/absubmit.pyc
 ${PYSITELIB}/beetsplug/absubmit.pyo

Index: pkgsrc/audio/py-beets/distinfo
diff -u pkgsrc/audio/py-beets/distinfo:1.22 pkgsrc/audio/py-beets/distinfo:1.23
--- pkgsrc/audio/py-beets/distinfo:1.22 Thu Jan  2 10:21:02 2025
+++ pkgsrc/audio/py-beets/distinfo      Wed May 14 13:33:05 2025
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.22 2025/01/02 10:21:02 adam Exp $
+$NetBSD: distinfo,v 1.23 2025/05/14 13:33:05 adam Exp $
 
-BLAKE2s (beets-2.2.0.tar.gz) = e52ad19e709226963b84377d1633fdd170ad80b8a9f019197579da427ad8eeb9
-SHA512 (beets-2.2.0.tar.gz) = aa14978d8ff9ddcab88db846371209e69bdf6f8c22d98bf819b9dcf583c2a38d3259b3f8afad0574e73f333d0edb9ddd6752b6ae3c7e92e93a0f7532a22f0fe9
-Size (beets-2.2.0.tar.gz) = 2044230 bytes
+BLAKE2s (beets-2.3.1.tar.gz) = 16198c080d7e219873d4133822726325351684a9ab2011c78b61af196130fb08
+SHA512 (beets-2.3.1.tar.gz) = b065dd9f1ce5dd63779b085d44510e5158d23046fdc9ecaa1ce9a10d5f8fa660e1ad130c68fed4ddac323453fcbf6d1ea2dc2a9897931c486da099b87dcfc047
+Size (beets-2.3.1.tar.gz) = 2133246 bytes



Home | Main Index | Thread Index | Old Index