Claudio Ortolina
cc3cf02490
Show artist MusicBrainz ID (with link and copy button)
2025-05-15 16:59:12 +01:00
Claudio Ortolina
f21a289008
Load release when opening collection show page
...
Includes small fixes to make both logic and tests more robust
2025-05-11 11:04:28 +01:00
Claudio Ortolina
952d3388a1
Scrobble using finished_at time
2025-05-07 10:46:51 +01:00
Claudio Ortolina
a94c349781
Add context function to scrobble a release
2025-05-07 09:07:45 +01:00
Claudio Ortolina
5b23e1d5a5
Add title to MusicBrainz.Release
2025-05-07 09:03:20 +01:00
Claudio Ortolina
79d2bdff7b
Account for tracks with nil length
2025-05-05 16:18:49 +01:00
Claudio Ortolina
e1938f698c
Display medium title if available
2025-05-05 16:18:47 +01:00
Claudio Ortolina
72843ed835
Show total and per disc duration
2025-05-05 16:05:05 +01:00
Claudio Ortolina
1401cc19d3
Display artist names in compilations track sheet
2025-05-04 21:58:44 +01:00
Claudio Ortolina
fba621db10
Include artists in get_release
2025-05-04 21:50:23 +01:00
Claudio Ortolina
f4fe638a95
Display tracks for records with a selected release
2025-05-04 21:10:40 +01:00
Claudio Ortolina
bc213caa45
Store selected release id when scanning a record
2025-05-01 19:36:47 +01:00
Claudio Ortolina
3e7341d4ca
Support choosing a selected release
2025-05-01 17:42:40 +01:00
Claudio Ortolina
e083950138
Rename record.release to record.release_date
...
Includes changes to dependent tables (i.e. the record search index) and
related functions.
2025-05-01 14:04:57 +01:00
Claudio Ortolina
6484f94f38
Account for lack of MusicBrainz artist relations
2025-04-28 20:15:35 +01:00
Claudio Ortolina
ece877086f
Store artist infos
2025-04-26 13:57:43 +01:00
Claudio Ortolina
a5c261d9ad
Can extract discogs id from a musicbrainz artist
2025-04-26 08:13:05 +01:00
Claudio Ortolina
61e9a48b65
Get artist from MusicBrainz
2025-04-25 20:41:25 +01:00
Claudio Ortolina
9f13d090ed
Use more precise types
2025-04-07 19:27:17 +01:00
Claudio Ortolina
a52a980938
Exclude digital releases when searching via barcode
2025-03-22 15:08:13 +00:00
Claudio Ortolina
2f5c83b026
Show album covers when importing/scanning
2025-03-01 17:36:21 +00:00
Claudio Ortolina
a218942110
Remove mox in favour of built-in Req stubs
2025-02-28 16:41:16 +00:00
Claudio Ortolina
8aa283cb84
Refactor MusicBrainz.APIImpl to use Req
2025-02-28 11:19:37 +00:00
Claudio Ortolina
025a5105ed
Use map_join instead of map+join
2025-02-18 10:14:31 +00:00
Claudio Ortolina
94a2784020
Move function in MusicBrainz main module
2025-02-17 22:07:49 +00:00
Claudio Ortolina
bb6e805e7b
Show release metadata after scanning
2025-02-15 18:08:30 +00:00
Claudio Ortolina
d077f08afa
Start making it more robust
...
- Use structured data for search/render
- Start testing component
- Start testing domain logic
2025-02-15 18:08:30 +00:00
Claudio Ortolina
949fdb7138
Formalize search_release_by_barcode/2 callback
2025-02-15 18:08:30 +00:00
Claudio Ortolina
3c7c9cc596
Scan barcodes and display releases
2025-02-15 18:08:30 +00:00
Claudio Ortolina
bb72790be6
Include media in releases
2025-02-12 21:53:47 +00:00
Claudio Ortolina
ba288b8802
Rename parse_subtype to parse_type
2025-02-10 19:02:58 +00:00
Claudio Ortolina
27bd32b2a9
Move subtype parsing to ReleaseGroup
2025-02-10 19:01:56 +00:00
Claudio Ortolina
c19184337b
Move url/1 to ReleaseGroup
2025-02-10 19:01:00 +00:00
Claudio Ortolina
86db563bd4
Rename MusicbrainzData -> ReleaseGroup
2025-02-10 16:41:21 +00:00
Claudio Ortolina
027b3af547
Rename ReleaseGroup to ReleaseGroupSearchResult
2025-02-10 16:38:04 +00:00
Claudio Ortolina
4593b60da5
Always use @base_url
2025-02-08 13:20:49 +00:00
Claudio Ortolina
6ad28f1271
When importing a record, stream all its releases
2025-02-05 15:31:08 +00:00
Claudio Ortolina
f29dd1f0ab
Fetch 100 releases when importing a record
...
The release group contains only 25 releases, which breaks tracking
scrobble status. Albums like "Toto IV" or "Hounds of Love" end up
looking like they're not part of the collections because the individual
releases are not stored.
Still error prone, because this change doesn't paginate to more than 100
records, but that will be addressed in a future commit.
2025-02-05 10:12:27 +00:00
Claudio Ortolina
8bf3de9b55
Enforce keys for all structs
2025-01-24 10:35:58 +00:00
Claudio Ortolina
16e8282891
Fix typing for config modules
2025-01-03 18:52:43 +00:00
Claudio Ortolina
9dce1cacb9
Where possible, use built-in JSON instead of Jason
...
Note that it's not possible to replace any call where we encode and
pretty print, as JSON doesn't have such functionality.
2024-12-19 20:18:09 +00:00
Claudio Ortolina
91b81de0f8
Remove duplication around MusicBrainz URL generation
2024-12-11 23:54:21 +03:00
Claudio Ortolina
3409ba6d6b
Fix typings on config modules
2024-12-11 23:53:29 +03:00
Claudio Ortolina
39b925676f
Use NimbleOptions to validate MusicBrainz.Config
2024-12-04 15:01:52 +00:00
Claudio Ortolina
e1dc2bfc7f
Make MusicBrainz user agent configurable
2024-12-04 10:44:31 +00:00
Claudio Ortolina
7575e5978a
Extract config for MusicBrainz
2024-12-04 10:33:41 +00:00
Claudio Ortolina
f0212eeb6f
Consolidate cover resize logic
...
Moves resizing out of the MusicBrainz namespace to Records - which
improves division of responsibilities, and removes double resizing
during import.
2024-11-26 08:35:16 +00:00
Claudio Ortolina
5cee7db630
Add comment around hardcoded limits in release group rels fetch
2024-11-24 21:24:12 +00:00
Claudio Ortolina
4581666282
Don't apply fallback cover when refreshing it
...
So that we don't accidentally override a user-uploaded cover with the
fallback one.
2024-11-21 17:57:49 +00:00
Claudio Ortolina
cc1d2e3b0f
Increase stored cover size to 600px
...
Doesn't affect existing covers
2024-11-19 11:28:50 +00:00