Martin Atukunda
a64acf8aa2
Merge branch 'master' into feature/add-artist-to-item-entry-template
2025-07-07 09:35:15 +03:00
J0J0 Todos
cf557fb41b
playlist: Use pathlib.Path and add types for is_m3u_file()
...
Co-authored-by: Šarūnas Nejus <snejus@protonmail.com>
2025-07-07 08:05:47 +02:00
J0J0 Todos
dcd3a9f7f4
playlist: Support m3u8 ending in playlist plugin
2025-07-07 07:58:59 +02:00
Šarūnas Nejus
0de27cbfb3
Merge branch 'master' into feature/add-artist-to-item-entry-template
2025-07-06 16:43:37 +01:00
Šarūnas Nejus
1a045c9166
Copy paste query, types from library to dbcore
2025-07-06 16:03:46 +01:00
Martin Atukunda
54e76368d0
Avoid rendering extraneous separators
...
handling cases where the artist or album data might be missing to avoid
rendering extraneous separators. Suggested by Copilot.
2025-07-06 12:22:02 +03:00
Martin Atukunda
8ea7346575
Merge branch 'master' into feature/add-artist-to-item-entry-template
2025-07-06 12:14:48 +03:00
J0J0 Todos
47eee070ba
duplicates: remove or delete options mutually exclusive
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-05 07:22:33 +02:00
J0J0 Todos
537a71ff82
duplicates: Add --remove option to duplicates plugin
...
Removes from library but keeps files.
2025-07-05 07:17:59 +02:00
dhruvravii
dd6cb538ac
Fix: Spotify plugin unable to recognize Chinese and Japanese albums. ( #5705 )
...
Fixes an issue where each spotify query was converted to ascii before sending. Adds a
new config option to enable legacy behaviour.
A file called japanese_track_request.json was made to mimic the Spotify
API response since I don't have the credentials. Entries in that will
need to be modified with the actual entries.
Co-authored-by: Sebastian Mohr <sebastian@mohrenclan.de>
Co-authored-by: Sebastian Mohr <39738318+semohr@users.noreply.github.com>
Co-authored-by: J0J0 Todos <2733783+JOJ0@users.noreply.github.com>
2025-07-01 11:08:54 +02:00
Nicolas Mémeint
4893cee5e5
Fix the MusicBrainz search not taking into account the album/recording aliases
2025-06-15 21:33:20 +01:00
Sebastian Mohr
66864fcc27
Minor improvements to spotify plugin typing. ( #5815 )
...
## Description
Added some more typehints to the spotify plugin. Also added a method to
get the tokenfile and changed to logic for the handle_response to use
`requests.request`.
This is done mainly to prepare for
https://github.com/beetbox/beets/pull/5787 , see also
https://github.com/beetbox/beets/pull/5814
2025-06-11 15:19:46 +02:00
Šarūnas Nejus
adbd50b237
Move distance to a separate module
2025-05-31 19:17:43 +01:00
Šarūnas Nejus
509cbdcbe4
Move sanitize_pairs/choices from plugins to util module
2025-05-31 17:55:41 +01:00
Uncorrupt3318
dd2f203090
Feat: Add replace plugin ( #5644 )
...
Adds replace plugin. The plugin allows the user to replace the audio
file of a song, while keeping the tags and file name.
Some music servers keep track of favourite songs via paths and tags. Now
there won't be a need to 'refavourite'. Plus, this skips the
import/merge steps.
2025-05-27 00:17:52 +02:00
wisp3rwind
728076e97d
fetchart: assert some invariants to satisfy mypy
...
Eventually, it would be nice to avoid this by more expressive typings.
For now, avoid such larger refactoring.
2025-05-20 10:06:11 +02:00
wisp3rwind
10d1c51a1d
fetchart: consistently use lazy string formatting for debug logging
2025-05-20 09:23:34 +02:00
wisp3rwind
a6f2389aed
typing: fetchart + tests
2025-05-20 08:57:30 +02:00
wisp3rwind
395aec96a3
fetchart: fixup #5244
...
by restoring config validation and making things more Pythonic
2025-05-20 08:57:30 +02:00
Šarūnas Nejus
e151b4b49b
Implement track_for_id to allow fetching singletons by discogs id
2025-05-19 09:43:56 +01:00
Šarūnas Nejus
d9b67acff5
discogs: simplify getting track from album
2025-05-19 09:43:03 +01:00
Šarūnas Nejus
9cc7ecaceb
discogs: cache TRACK_INDEX_RE
2025-05-19 09:43:03 +01:00
Šarūnas Nejus
8e5858254b
discogs: cache master release lookups
2025-05-19 09:43:03 +01:00
Šarūnas Nejus
12149b3e6d
discogs: remove duplicate error handling
2025-05-19 09:43:03 +01:00
Šarūnas Nejus
09862aeaea
discogs: Add types to public methods
2025-05-19 09:43:01 +01:00
Šarūnas Nejus
9242db04a5
discogs: add configurable search_limit
2025-05-19 09:42:06 +01:00
Šarūnas Nejus
e8e9369bc7
Remove unused extra_tags parameter
2025-05-19 09:18:06 +01:00
Šarūnas Nejus
2ec65ed8ca
Deduplicate candidate methods using _search_api method
2025-05-18 20:09:52 +01:00
Šarūnas Nejus
0102f3ce7d
Take into account va_likely param and remove redundant checks
...
- Instead of checking for empty `artist` query, use `va_likely`
parameter to determine whether we should query for Various Artists or
not.
- `album` / `title` is always a truthy string - no need to handle empty
criteria case
- `tracks` list always has at least one track - no need to check for
`len(items)`
2025-05-18 20:09:52 +01:00
Šarūnas Nejus
6487893315
Synchronise docs with the actual supported extra_tags
2025-05-18 20:09:51 +01:00
Šarūnas Nejus
be74936134
Handle extra_tags the way they used to be handled
2025-05-18 20:09:50 +01:00
Martin Atukunda
7c799beda8
style(plugin/web): run djlint over html to clean it up a bit
2025-05-18 20:59:29 +03:00
Martin Atukunda
992d376d1b
feat(plugin/web): add artist and album to the item entry template
2025-05-18 20:59:29 +03:00
Martin Atukunda
a75d2b4aa6
Update beetsplug/web/static/beets.js
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-18 17:16:29 +01:00
Martin Atukunda
d1d58569e1
Update beetsplug/web/static/beets.js
...
don't pollute global scope with album_id
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-18 17:16:29 +01:00
Martin Atukunda
b0238d934e
feat: plugins/web: use media session api for notifications.
...
The Media Session API provides a way to customize media notifications.
This commit updates the metadata for the media session whenever a new
track (item) starts playing.
https://developer.mozilla.org/en-US/docs/Web/API/Media_Session_API
2025-05-18 17:16:29 +01:00
Šarūnas Nejus
b520981c9c
plugins: restructure id extraction
2025-05-17 14:57:34 +01:00
Sebastian Mohr
a2e316d444
Merge remote-tracking branch 'upstream/master' into importer-restructure
2025-05-17 10:32:50 +02:00
Šarūnas Nejus
f1dc75f743
Fix types in all edited files
2025-05-17 03:32:01 +01:00
Šarūnas Nejus
7ff73d9747
musicbrainz: set default config in the code
2025-05-17 03:31:59 +01:00
Šarūnas Nejus
a538a3a150
musicbrainz: move handling of extra tags to musicbrainz plugin
2025-05-17 03:31:58 +01:00
Šarūnas Nejus
de0958ca65
Use candidate function from plugins instead of hooks
2025-05-17 03:31:57 +01:00
Šarūnas Nejus
2fcb48d7a4
Remove ...for_mbid methods and simplify the rest
2025-05-17 03:31:57 +01:00
Šarūnas Nejus
d8067b219b
musicbrainz: use self.config and self._log
2025-05-17 03:31:57 +01:00
Šarūnas Nejus
fd62d6a0b8
Integrate functionality with BeetsPlugin shenanigans
2025-05-17 03:31:57 +01:00
Šarūnas Nejus
529aaac7dc
Move functionality under MusicBrainzPlugin
2025-05-16 23:08:38 +01:00
Šarūnas Nejus
06dde6e37e
Define MusicBrainzPlugin
2025-05-16 20:17:59 +01:00
Šarūnas Nejus
5dc6f45110
musicbrainz: reorder methods
...
This will make it easier to track changes in later commits.
2025-05-16 19:56:50 +01:00
Šarūnas Nejus
e6e610a3ef
Move musicbrainz to beetsplug directory
2025-05-16 19:56:50 +01:00
Sebastian Mohr
68acaa6470
Renamed all action occurrences with Action.
2025-05-13 13:01:46 +02:00