Skip to content

Releases: linuxserver/docker-beets

nightly-bcf516b8-ls97

19 Dec 17:07
840e223
Compare
Choose a tag to compare
nightly-bcf516b8-ls97 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-bcf516b8-ls97/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

Remote Changes:

Properly type db on the model, sort out generic types issues (#5545)

Thanks to @wisp3rwind's suggestion this PR adds types to the
relationship between Model, Database and Library.

Then I worked through the rest of the issues found in the edited files.
Most of this involved providing type parameters for generic types (or
defining defaults, rather 😉).

There queryparse module had a somewhat significant issue where the
sorting construction logic only expected to receive FieldSort
subclasses, while SmartArtistSort was not one. Thus SmartArtistSort
has now been forced to behave and is a FieldSort subclass. It's also
been moved to query.py module which is where the rest of sorts are
defined.

nightly-994f9b83-ls97

19 Dec 06:17
840e223
Compare
Choose a tag to compare
nightly-994f9b83-ls97 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-994f9b83-ls97/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

Remote Changes:

pyproject.toml: don't install docs et al into the wheel

wheels are directly unpacked into site-packages, so this means likely
conflict with other packages

nightly-9110a111-ls96

15 Dec 15:16
05d8ebb
Compare
Choose a tag to compare
nightly-9110a111-ls96 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-9110a111-ls96/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

Remote Changes:

Stop perpetually writing mb_artistid, mb_albumartistid and albumtypes fields (#5540)

This PR fixes an issue where the beet write command repeatedly shows
differences for certain fields (mb_artistid, mb_albumartistid,
albumtype) even after writing the tags.
This happens because these fields are actually stored as lists in the
media files (mb_artistids, mb_albumartistids, albumtypes), but
beets maintains both single and list versions in its database.

This PR addresses this issue in a non-invasive way: the fix ensures
consistency between single fields and their list counterparts by:

  1. When setting a single field value, making it the first element of the
    corresponding list
  2. When setting a list, using its first element as the single field
    value

This resolves long-standing issues #5265, #5371, and #4715 where users
experienced persistent "differences" in these fields despite writing
tags multiple times.

Changes:

  • Added ensure_consistent_list_fields() function to synchronize field
    pairs
  • Applied this function during metadata application
  • Added tests for all field combinations

Fixes #5265, #5371, #4715

Note: your music needs to be reimported with beet import -LI or
synchronised with beet mbsync in order to fix these fields!

nightly-22163d70-ls95

13 Dec 19:03
4b4b7e0
Compare
Choose a tag to compare
nightly-22163d70-ls95 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-22163d70-ls95/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

beets Changes:

Remove support for Python 3.8 (#5508)

  • Drop support for EOL Python 3.8 making Python 3.9 the minimum
    supported version

  • Take advantage of Python 3.9+ type hint syntax by:

    • Using list[T] instead of List[T] etc. from typing module
    • Using Type | None syntax for unions instead of Union[Type, None]
    • Moving collection type hints from typing to collections.abc
    • Using TYPE_CHECKING guard for runtime import optimization

Note: in #5503 we found that we cannot support Python 3.12 unless we
upgrade our minimum support Python to 3.9.

nightly-af41eef7-ls94

07 Dec 18:10
c76552b
Compare
Choose a tag to compare
nightly-af41eef7-ls94 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-af41eef7-ls94/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

beets Changes:

lyrics: Fallback to plain lyrics if synced lyrics not available (#5089)

The synced config flag was not working the way the docs described it
for the LRCLIB source. With synced: yes, if a track does not have
synced lyrics, but does have plain lyrics, the plugin would return no
lyrics. The docs imply that, with the flag enabled, it would still use
plain lyrics if there are no synced lyrics.

LRCLIB API call that returns plain lyrics can be found
here.

nightly-3cc129b8-ls94

10 Dec 06:07
c76552b
Compare
Choose a tag to compare
nightly-3cc129b8-ls94 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-3cc129b8-ls94/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

beets Changes:

Package: fix release workflow, exclude plugin tests, include all files from MANIFEST.in (#5536)

Fixes #5526
Fixes #5531
Fixes #5539

Package contents

See #5526 where a package maintainer fails running plugin tests. I found that before
introduction of Poetry beets never bundled plugin tests, therefore I now excluded them.

I also remembered that previously MANIFEST.in file was used to specify which files get
included in the package, so I mirrored the same configuration. This includes zsh
completion in extra/_beet which fixes #5531.

I removed MANIFEST.in file since it has no use anymore.

Release workflow

The last release workflow run failed to pick up the commit with the version updates and
tagged an outdated commit (#5539). I simplified the workflow to create the tag at the same
time the version upgrade is committed.

nightly-22163d70-ls94

10 Dec 07:07
c76552b
Compare
Choose a tag to compare
nightly-22163d70-ls94 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-22163d70-ls94/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

beets Changes:

Remove support for Python 3.8 (#5508)

  • Drop support for EOL Python 3.8 making Python 3.9 the minimum
    supported version

  • Take advantage of Python 3.9+ type hint syntax by:

    • Using list[T] instead of List[T] etc. from typing module
    • Using Type | None syntax for unions instead of Union[Type, None]
    • Moving collection type hints from typing to collections.abc
    • Using TYPE_CHECKING guard for runtime import optimization

Note: in #5503 we found that we cannot support Python 3.12 unless we
upgrade our minimum support Python to 3.9.

2.2.0-ls248

06 Dec 18:58
2c2e912
Compare
Choose a tag to compare

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/2.2.0-ls248/index.html

LinuxServer Changes:

Add packages required for Discogs plugin.

PIP Changes:

Updating PIP version of beets to 2.2.0

nightly-755e8259-ls93

06 Dec 18:57
6d14c94
Compare
Choose a tag to compare
nightly-755e8259-ls93 Pre-release
Pre-release

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-755e8259-ls93/index.html

LinuxServer Changes:

Pin beetcamp to 0.19.2 until upstream requirements fixed.

beets Changes:

ARM install instructions (#5460)

Add info for ARM installs.

2.2.0-ls247

02 Dec 07:16
07b5106
Compare
Choose a tag to compare

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/2.2.0-ls247/index.html

LinuxServer Changes:

Add packages required for Discogs plugin.

PIP Changes:

Updating PIP version of beets to 2.2.0