Šarūnas Nejus
bfd3b7e04a
Make RSRC a pathlib.Path
2026-07-21 16:23:49 +01:00
Šarūnas Nejus
d24c0d341e
Rename PathsMixin.temp_dir_path to PathsMixin.temp_path for consistency
2026-07-21 11:15:25 +01:00
Šarūnas Nejus
2e9ace7b20
Replace PathsMixin.temp_dir attribute with PathsMixin.temp_dir_path
2026-07-21 11:15:25 +01:00
Šarūnas Nejus
dc2826fa4b
Replace TestHelper.libdir attribute with TestHelper.lib_path
2026-07-21 11:15:25 +01:00
Šarūnas Nejus
7970a90214
Replace ImporterMixin.import_dir attribute with ImporterMixin.import_path
...
- Update importer fixtures and tests to use pathlib paths directly.
- Encode import paths only at the ImportSession boundary.
2026-07-21 11:15:25 +01:00
Šarūnas Nejus
afa5bdaf97
Do not IncludeLazyConfig.log_sources while testing to reduce verbosity
2026-07-20 21:22:02 +01:00
Šarūnas Nejus
431b242f5f
Use active stderr for CLI logging
...
Add a CLI log handler that resolves stderr when each record is emitted.
This avoids retaining temporary capture streams across repeated CLI runs.
2026-07-20 21:22:02 +01:00
Šarūnas Nejus
7b59604c54
Fix the issue
2026-07-16 14:21:52 +01:00
Šarūnas Nejus
84c01ef4f9
Add a failing test
2026-07-16 14:21:41 +01:00
Šarūnas Nejus
856087258b
dbcore: rename Database._fetch to Database.get_results
...
This removes ambiguity with Library._fetch
2026-07-16 13:11:16 +01:00
Šarūnas Nejus
3f277ad5a0
typing: feed PathLike as database path
2026-07-16 13:11:16 +01:00
Šarūnas Nejus
439a7fa75d
discogs: Refactor _coalesce_tracks to make use of various tracks type_
2026-07-16 11:57:10 +01:00
Šarūnas Nejus
8867848612
discogs: Add descriptions of each possible Tracks
2026-07-16 11:57:10 +01:00
Šarūnas Nejus
c46f6a549b
discogs: Dedupe test_strip_disambiguation
2026-07-16 11:51:32 +01:00
Šarūnas Nejus
bbb1b5c1ef
discogs: And now add full _coalesce_tracks coverage
2026-07-16 11:51:32 +01:00
Šarūnas Nejus
bd9c753b99
discogs: Test index_tracks behaviour
2026-07-16 11:51:32 +01:00
Šarūnas Nejus
b8f43e994a
discogs: Test inherited track group artist
2026-07-16 11:51:31 +01:00
Šarūnas Nejus
bc0591fdb6
discogs: Consolidate test_parse_tracklist_subtracks... tests
2026-07-16 11:50:58 +01:00
Šarūnas Nejus
1343d613d3
discogs: Move test_parse_tracklist_positions... under TestTracklist
2026-07-16 11:50:58 +01:00
Šarūnas Nejus
951af6d3e8
discogs: Use a single global fixture to kill DiscogsPlugin.setup
2026-07-16 11:50:58 +01:00
Šarūnas Nejus
a126a3aaa3
discogs: Use Release instead of Bag in tests
2026-07-16 11:50:58 +01:00
Šarūnas Nejus
69cdd58240
discogs: remove redundant check for required fields
2026-07-16 11:50:58 +01:00
Samad
4ccdcc90c9
replaygain: add metaflac backend
...
Add a MetaflacBackend that computes ReplayGain for FLAC files with metaflac --add-replay-gain and reads the values back with --show-tag. Only FLAC is supported. Includes docs, a changelog entry, and tests.
2026-07-15 22:22:07 +01:00
TowyTowy
4a1e9164a1
Fix uncaught KeyError on date queries containing a stray pipe
...
The relative-date regex used character classes [+|-] and [y|m|w|d],
which mistakenly treat | as a literal member rather than alternation.
As a result a value like added:2000|2001 (as a user might type expecting
| to mean "or") captured | as the relative-date unit and crashed with
an uncaught KeyError in Period.parse instead of raising the documented
InvalidQueryArgumentValueError.
Remove the stray | from both character classes so malformed date strings
fall through to the normal invalid-date error path.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-07-15 21:55:46 +02:00
Šarūnas Nejus
1266256f5e
typing: fix beets.dbcore.types
2026-07-15 20:23:55 +01:00
Vinícius Martins Cotrim
6a051f9699
Recognize native Spotify URIs when extracting IDs ( #6840 )
...
### Description
`extract_release_id` now accepts the native Spotify URI format
(`spotify:album:<id>`, `spotify:track:<id>`) in addition to the already
supported `open.spotify.com` URLs and bare IDs.
Co-authored-by: Marina Pena Malschitzky Crespo <marinacrespo@estudante.ufscar.br >
2026-07-15 21:21:25 +02:00
f1nn
0d65a46bbc
lyrics: add lrcmux backend
2026-07-15 16:12:21 +02:00
J0J0 Todos
c51f5755f3
lastgenre: Whitelist/Tree fixes; Default aliases
...
- Fixes some inconsistencies in spelling in the data files we ship with
the plugin as well as adds some new genres to both files that seem to
be returned often by last.fm.
- For some changes the default aliases feature helps to streamline
inconsistencies that come from last.fm already.
- The default aliases file that ships with beets
- Tests fixes that prove that most of the alias normalization patterns
work as they are supposed to.
Co-authored-by: Šarūnas Nejus <snejus@protonmail.com >
2026-07-15 16:04:51 +02:00
J0J0 Todos
3ce8c9bbf5
lastgenre: Tests for _filter_valid helper,
...
even though it's indirectly tested via resolve_genres tests and
elsewhere, it makes sense to keep them to help with future refactoring.
2026-07-15 16:04:51 +02:00
J0J0 Todos
1674b5e7f9
lastgenre: Tests for genre alias normalization
...
Co-authored-by: Šarūnas Nejus <snejus@protonmail.com >
2026-07-15 16:04:51 +02:00
AleksZyro
a6d576d039
Preserve null artpath in edit
2026-07-15 14:30:42 +01:00
Valentyn Kit
eb7c832fc9
Make InQuery hashable when its pattern is a list
...
InQuery inherited FieldQuery.__hash__, which hashes the pattern directly.
A list pattern raises `unhashable type: 'list'`, which broke the
smartplaylist `splupdate` command whenever a `playlist:` query was configured.
2026-07-15 08:02:01 +01:00
Sebastian Cao
7d4f160c36
missing: honor -f/--format in album mode
2026-07-15 14:31:58 +08:00
AleksZyro
04f2c3e794
Improve subsonicupdate server error
2026-07-14 20:09:56 +02:00
Sebastian Mohr
19f944698d
rewrite: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
5364644238
replace: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
9f75017d72
mpdstats: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
a06c4b4736
inline: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
ca2acfc28a
tidal: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
2b90679100
advancedrewrite: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
9f75e2b211
acousticbrainz: Removed unittest.TestCase
2026-07-14 17:24:17 +02:00
Sebastian Mohr
757af4aebd
util/m3u: Removed unittest.TestCase
2026-07-14 17:24:17 +02:00
Sebastian Mohr
d19e36a0a1
substitute: PluginTestCase -> PluginTestHelper
2026-07-14 17:24:17 +02:00
Sebastian Mohr
9616065591
the: Removed unittest.TestCase
2026-07-14 17:24:17 +02:00
Sebastian Mohr
c04bae3c8f
ihate: Removed unittest.TestCase
2026-07-14 17:24:17 +02:00
Šarūnas Nejus
e671c375f1
Make music_dir a Path, simplify setup
2026-07-14 14:36:12 +01:00
Šarūnas Nejus
364d027371
Define attribute for item paths
2026-07-14 14:36:12 +01:00
Šarūnas Nejus
70174db929
Write playlists inside setUp
2026-07-14 14:36:12 +01:00
Šarūnas Nejus
ea12df17a9
Define write_relative_playlist
2026-07-14 14:36:12 +01:00
Šarūnas Nejus
6586ea82cb
Define write_absolute_playlist
2026-07-14 14:36:12 +01:00