Releases: linuxserver/docker-beets
nightly-06512c9b-ls259
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-06512c9b-ls259/index.html
LinuxServer Changes:
No changes
Remote Changes:
Use multi value remixers, composers, lyricists and arrangers (#6487)
Migrate artist-credit fields to multi-value lists
Fixes: #5698
Supersedes: #5847
This converts remixer, lyricist, composer, and arranger into
proper multi-value fields: remixers, lyricists, composers, and
arrangers.
What changed
- Data model (
beets/library/models.py): replaces the legacy
single-stringremixer,lyricist,composer, andarrangerfields
with multi-value list fields. - Migrations (
beets/library/migrations.py,
beets/library/library.py): extracts a reusable
MultiValueFieldMigrationbase class and adds field-specific migrations
forremixers,lyricists,composers, andarrangers. - Metadata compatibility (
beets/autotag/hooks.py): centralizes
legacy singular-to-plural compatibility inInfo/TrackInfo, so old
assignments likeinfo.remixer = "..."still work and populate the new
list fields. - MusicBrainz (
beetsplug/musicbrainz.py): now preserves these
credits as lists instead of comma-joined strings. - Follow-up updates: adjusts tests, docs, and related field mappings
(aura,bpd) to use the plural multi-value fields, and bumps the
minimummediafileversion to0.16.0.
Impact
- Existing libraries are migrated automatically on first run.
- Older code assigning singular string fields continues to work via the
compatibility shim, but emitsDeprecationWarnings. - These metadata fields now behave consistently with other multi-value
fields likegenres.
2.8.0-ls322
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/2.8.0-ls322/index.html
LinuxServer Changes:
Full Changelog: 2.8.0-ls321...2.8.0-ls322
Remote Changes:
Updating PIP version of beets to 2.8.0
nightly-e5365145-ls258
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-e5365145-ls258/index.html
LinuxServer Changes:
Full Changelog: nightly-ad20cc71-ls257...nightly-e5365145-ls258
Remote Changes:
autobpm: Add --force and --quiet options; Deprecate overwrite (#6481)
Description
Reveal the overwrite config setting to the CLI and at the same time
deprecate the option name. It should be named force to streamline with
other beets configs of the same kind.
Add a quiet CLI flag and config option that leaves out output
pointing to already existing BPM values
nightly-e5365145-ls257
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-e5365145-ls257/index.html
LinuxServer Changes:
No changes
Remote Changes:
autobpm: Add --force and --quiet options; Deprecate overwrite (#6481)
Description
Reveal the overwrite config setting to the CLI and at the same time
deprecate the option name. It should be named force to streamline with
other beets configs of the same kind.
Add a quiet CLI flag and config option that leaves out output
pointing to already existing BPM values
nightly-ad20cc71-ls257
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-ad20cc71-ls257/index.html
LinuxServer Changes:
Full Changelog: nightly-712bada6-ls256...nightly-ad20cc71-ls257
Remote Changes:
Add filename extension for music files with no extension during import (#6457)
Fixes #4881.
When user imports files with no extension, ffprobe is used to check the
format of the file. If its in a music format, a copy of the file is
created with the detected extension and that file is imported instead of
the original. If it is not a music format, it change nothing (I believe
non-music files are already filtered out somewhere else in the import
pipeline). If there is a file in the same directory with the same name
and has the same extension as the detected format, import that file
instead.
nightly-a8a73008-ls258
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-a8a73008-ls258/index.html
LinuxServer Changes:
No changes
Remote Changes:
smartplaylist: Copy-paste-able list of playlists (#6404)
A simple QoL feature for splupdate - when wanting to update multiple
(not all) smartplaylists, it is not very convenient to copy-paste the
name from the output the plugin uses.
So for example issuing beet splupdate non_existent_list we get:
['playlist_name_1', 'playlist name 2', ...]. This output can't easily
be copy-pasted back to a shell command like
beet splupdate playlist_name_1 'playlist name 2'
This change handles quoting for shell using shlex.quote which makes it
easy to copy-paste several lists in a row (eg. with common prefixes).
Also the list of playlists is now sorted alphabetically prior to
printing on the shell!
Addition refactorings
A tiny fix below if not pretend: where .items() for dict-iterating
should have been used in the first place.
nightly-131768b7-ls258
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-131768b7-ls258/index.html
LinuxServer Changes:
No changes
Remote Changes:
Fix albumartists_sort prepending joined artist credit (#6470) (#6491)
Fixes #6470
Since beets 2.8.0, albumartists_sort incorrectly includes the full
combined artist credit as the first element of the list. For example,
for a release with artists "Hans Zimmer" and "John Powell", the field
returns ["Zimmer, Hans and Powell, John", "Zimmer, Hans", "Powell,
John"] instead of ["Zimmer, Hans", "Powell, John"].
The issue was in ensure_first_value in hooks.py. The set intersection
returned an empty set for comma separated sort names, so the early
return never triggered and the joined name got prepended. For the fix a
substring check was added to correctly detect when the single value is a
joined version of the list values.
nightly-712bada6-ls256
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-712bada6-ls256/index.html
LinuxServer Changes:
Full Changelog: nightly-201989b8-ls255...nightly-712bada6-ls256
Remote Changes:
Update deps (#6479)
Updated dependencies given multiple vulnerability issues:
2.8.0-ls321
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/2.8.0-ls321/index.html
LinuxServer Changes:
Full Changelog: 2.7.1-ls320...2.8.0-ls321
Remote Changes:
Updating PIP version of beets to 2.8.0
nightly-e69a5889-ls255
CI Report:
https://ci-tests.linuxserver.io/linuxserver/beets/nightly-e69a5889-ls255/index.html
LinuxServer Changes:
No changes
Remote Changes:
Explicitly normalize delimited genres on read (#6468)
Fixes #6450.
Delimited genres are currently split when reading from the db, but this
does not cover externally-tagged files that contain semicolon-delimited
genre values, which can occur during import. Explicitly normalize these
values to ensure genres are always correctly parsed.
