Commit Graph

70 Commits

Author SHA1 Message Date
Claudio Ortolina 14c198c2cc Select all tracks for a release/medium 2025-11-19 16:32:38 +00:00
Claudio Ortolina 23c36e2521 Extract ExternalLink module 2025-10-02 11:51:44 +03:00
Claudio Ortolina 09a72734b1 Display cover art for releases 2025-09-24 21:51:38 +03:00
Claudio Ortolina c20e901d21 Show total results inside add record modal 2025-08-27 09:49:18 +03:00
Claudio Ortolina 676c2e4290 Enable quokka with :module_directives rule 2025-05-28 19:41:57 +01:00
Claudio Ortolina 6e19ab410d Account for VHS and Unknown formats 2025-05-25 10:32:11 +01:00
Claudio Ortolina b6c554af34 Display rich release summary in form and details 2025-05-25 08:45:38 +01:00
Claudio Ortolina d666765d18 Include catalog number in selected release label 2025-05-24 19:01:43 +01:00
Claudio Ortolina 3fb0028df6 When fetching releases, include labels 2025-05-24 15:21:24 +01:00
Claudio Ortolina cd3448cd64 Improve heuristics for extraction of Discogs ID 2025-05-21 22:20:16 +01:00
Claudio Ortolina 051c6195b5 Harden release label display 2025-05-18 20:57:17 +01:00
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