Commit Graph

265 Commits

Author SHA1 Message Date
Claudio Ortolina 8a2fda5f73 Increase sample rate to get a more faithful set of colors 2025-06-07 19:43:54 +01:00
Claudio Ortolina ccb3089ddf Experiment: show dominant colors in collected record details page 2025-06-07 14:36:29 +01:00
Claudio Ortolina a63f2de60b Use ->> instead of json_extract in queries
Improves readability of queries.
2025-06-06 21:05:44 +01:00
Claudio Ortolina fd997e853f Update artists when refreshing MusicBrainz data 2025-06-04 15:57:25 +01:00
Claudio Ortolina 27c1cc0eda Import artist joinphrase 2025-06-03 18:16:47 +01:00
Claudio Ortolina 669b144c55 Find last listened track based on title and artist as well 2025-06-03 18:05:23 +01:00
Claudio Ortolina c23260d03d Show last listen at for each collected record 2025-06-03 15:57:12 +01:00
Claudio Ortolina 1f64c71efa Apply quokka blocks rule 2025-05-28 19:51:54 +01:00
Claudio Ortolina 676c2e4290 Enable quokka with :module_directives rule 2025-05-28 19:41:57 +01:00
Claudio Ortolina 423d1e7764 Can sort wishlisted records by insertion 2025-05-26 23:12:34 +01:00
Claudio Ortolina ad29b8f96d Normalized search index
So that one can search for 'bjorn' and find 'Bjørn'
2025-05-25 09:26:01 +01:00
Claudio Ortolina b6c554af34 Display rich release summary in form and details 2025-05-25 08:45:38 +01:00
Claudio Ortolina 7172551552 Poor man's rate limiting 2025-05-24 18:28:06 +01:00
Claudio Ortolina ee808fb041 Add ability to refresh musicbrainz data async 2025-05-24 18:04:20 +01:00
Claudio Ortolina b44693b022 Move Artist and ArtistInfo under Artists context 2025-05-23 20:11:57 +01:00
Claudio Ortolina d38fcd6fee Account for no artist country or area 2025-05-21 22:35:45 +01:00
Claudio Ortolina 051c6195b5 Harden release label display 2025-05-18 20:57:17 +01:00
Claudio Ortolina 083b245862 Fallback to country when areas have no country data 2025-05-16 10:25:22 +01:00
Claudio Ortolina 157b408341 Fix Artists.exists?/1 to account for multiple records 2025-05-13 10:22:23 +01:00
Claudio Ortolina b831a2e1d7 Can scrobble individual discs 2025-05-10 09:46:07 +01:00
Claudio Ortolina f223d6d739 Rename scrobble -> scrobble_release and tighten options check 2025-05-10 08:08:42 +01:00
Claudio Ortolina 80ec4336f6 Account for artist info areas having iso-3166-2-codes 2025-05-09 11:27:47 +01:00
Claudio Ortolina ee4d9dd29a Set the selected release id when scanning a wishlisted record 2025-05-09 10:10:33 +01:00
Claudio Ortolina ebaaa8d95b Sort releases in edit form select 2025-05-07 15:01:30 +01:00
Claudio Ortolina fddc2dcbf0 Link Last.fm account from tracks 2025-05-07 11:26:41 +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 95f71519d3 Store Last.fm API key with encrypted secret 2025-05-06 15:18:14 +01:00
Claudio Ortolina 0952bcd399 Use strftime to format date and datetimes 2025-05-04 17:23:33 +01:00
Claudio Ortolina 93e1fad88e Make purchase order deterministic
Avoids ordering issues when records have the same purchased_at datetime
(which is what happens when they're scanned in batches).
2025-05-04 09:20:45 +01:00
Claudio Ortolina cfe357239b Refactor to move record release helpers to better places 2025-05-01 20:21:18 +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 9fc729d5e1 Support secondary Discogs images 2025-04-29 18:56:48 +01:00
Claudio Ortolina 1c3efb262b Return 404 for artist image requests without image data 2025-04-29 18:52:38 +01:00
Claudio Ortolina 818a416b1c Prune artist info after deleting the artist's last record 2025-04-29 18:44:37 +01:00
Claudio Ortolina fa49e73385 When creating a record, queue a job to fetch artist info 2025-04-29 16:56:22 +01:00
Claudio Ortolina 5e9fba824c Refactor function to remove nested error handling 2025-04-29 16:11:05 +01:00
Claudio Ortolina f1dd45e438 Show country flag for artist 2025-04-29 09:58:06 +01:00
Claudio Ortolina 91a00fab94 Account for fetch_artist_info error 2025-04-28 20:24:57 +01:00
Claudio Ortolina 26be067750 Implement failure cases in fetch artist image background job 2025-04-28 20:12:15 +01:00
Claudio Ortolina f3e2b0e68a Account for lack of images in discogs data 2025-04-28 20:11:56 +01:00
Claudio Ortolina d603bc2ffd Define a queue for heavy writes 2025-04-27 21:23:13 +01:00
Claudio Ortolina f5b783bdff Add async job to fetch artist image 2025-04-27 21:20:38 +01:00
Claudio Ortolina 3d3e758a7a Add endpoint to display an artist image 2025-04-27 21:20:38 +01:00
Claudio Ortolina 9b7990c14c Account for absence of discogs id 2025-04-26 14:32:40 +01:00
Claudio Ortolina 34e789fa76 Store artist infos async 2025-04-26 14:03:33 +01:00
Claudio Ortolina ece877086f Store artist infos 2025-04-26 13:57:43 +01:00
Claudio Ortolina 35a792df8a Polyfill artist id in scrobble activity 2025-04-25 16:36:57 +01:00