Claudio Ortolina
7df136c890
Sort aliases
2025-02-20 15:27:01 +00:00
Claudio Ortolina
26297a8bb1
Avoid unnecessary module attributes
2025-02-20 15:08:39 +00:00
Claudio Ortolina
ab2d1726bf
Use Application.app_dir/2 instead of :code.priv_dir
2025-02-20 15:04:29 +00:00
Claudio Ortolina
17a1e87be5
Fix 'variable name before the pattern' consistency issue
2025-02-18 12:41:10 +00:00
Claudio Ortolina
4e77894783
Slow down batch refresh of metadata
2025-02-12 22:31:09 +00:00
Claudio Ortolina
219d39de00
Use correct method to batch refresh musicbrainz data
2025-02-12 21:55:28 +00:00
Claudio Ortolina
1ae77b512e
Make released?/2 handle nil releases
2025-02-11 20:14:30 +00:00
Claudio Ortolina
f8147a6f52
Do not require a record release date
2025-02-11 20:05:54 +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
f99a55fca7
Simplify included release groups logic
...
This makes the code slightly less efficient as it constructs
intermediate structures BEFORE filtering, but it makes it for simpler
code to maintain down the line.
Performance is not visible affected as the largest lists involved count
around 200 items.
2025-02-10 09:59:25 +00:00
Claudio Ortolina
224bcdba38
Extract MusicbrainzData module
2025-02-10 09:49:34 +00:00
Claudio Ortolina
791807c137
Fix issue with formatting of "" release dates
2025-02-10 09:33:26 +00:00
Claudio Ortolina
d39129e7ff
Reorder module functions roughly by topic/usage
2025-02-09 17:02:54 +00:00
Claudio Ortolina
b42a774936
Remove unused functionality and make functions private
2025-02-09 17:01:00 +00:00
Claudio Ortolina
be1de52984
Refactor Records.Record for simplification
...
- Remove unnecessary intermediate variables
- Remove unnecessary pipes
2025-02-09 08:33:00 +00:00
Claudio Ortolina
9b25556245
Refactor Record.child_release_groups/1 to use stored ids
2025-02-06 21:03:38 +00:00
Claudio Ortolina
b80a98a881
Included published releases count in record details pages
2025-02-06 11:37:55 +00:00
Claudio Ortolina
0d0350a514
Reuse Artist schema inside SearchIndex
2025-01-29 15:41:46 +00:00
Claudio Ortolina
9c3acd0fcf
Remove duplication of types and formats definitions
2025-01-29 15:39:29 +00:00
Claudio Ortolina
9e1f00c9a8
Refactor type/format labels to enable translations
2025-01-29 11:04:19 +00:00
Claudio Ortolina
96bd453900
When not possible to determine otherwise, assums a record has been released
2025-01-29 10:21:41 +00:00
Claudio Ortolina
06f1997d59
Show if a wishlisted album is unreleased
2025-01-29 10:13:39 +00:00
Claudio Ortolina
a0c06606fb
Validate before constructing a complete record
2025-01-24 14:29:38 +00:00
Claudio Ortolina
38f7bf70bf
Extract artist_changeset/2 to Artist module
2025-01-24 14:28:52 +00:00
Claudio Ortolina
abc48cfdf3
Move fallback cover handling into Cover module
2025-01-24 12:48:03 +00:00
Claudio Ortolina
01ed11c0ab
Use labels for selects in record edit form
2025-01-24 12:22:29 +00:00
Claudio Ortolina
9428828064
Consolidate datetime as date formatting
2025-01-05 15:48:56 +00:00
Claudio Ortolina
bb4da4143e
Add "backup" format
2025-01-03 19:16:43 +00:00
Claudio Ortolina
8bd7197d18
Show purchase date in collection view
2025-01-01 16:45:43 +00:00
Claudio Ortolina
97533416f7
Support arbitrary resizing in cover controller
2024-12-31 11:58:30 +00:00
Claudio Ortolina
6a51251d55
Consolidate hashing into Cover module
2024-12-31 11:57:33 +00:00
Claudio Ortolina
b68a7ac734
Can fetch genres from OpenAI
2024-12-10 16:45:29 +03:00
Claudio Ortolina
7575e5978a
Extract config for MusicBrainz
2024-12-04 10:33:41 +00:00
Claudio Ortolina
b63b3a633a
Can fetch records by a specific artist
2024-12-02 10:55:12 +00:00
Claudio Ortolina
963b3c826f
Extract Records.Artist
2024-12-02 10:55:12 +00:00
Claudio Ortolina
eda0245c2c
Format code
2024-12-02 09:38:20 +00:00
Claudio Ortolina
3733ef74ba
Add batch function to remove artist IDs
2024-12-02 09:37:00 +00:00
Claudio Ortolina
228b4bc440
Use musicbrainz_id as a key for embedded artists
2024-12-02 09:23:13 +00:00
Claudio Ortolina
cf51cab7ce
Add basic test for Records.Cover module
2024-11-29 22:08:40 +00:00
Claudio Ortolina
010c769b55
Stream 50 rows at a time for batch operations
2024-11-29 10:00:18 +00:00
Claudio Ortolina
cb0e06d603
Add batch operation to resize covers with incorrect sizes
2024-11-28 17:15:12 +00:00
Claudio Ortolina
6339196b17
Search by genre
...
Can also click on genres in detail views.
2024-11-26 13:35:15 +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
bbfafbe519
Document search index schema
2024-11-23 12:28:06 +00:00
Claudio Ortolina
2e2000fe01
Introduce separate search index
...
Uses a fts5 virtual table, kept up to date via triggers on the records
table.
2024-11-22 19:37:13 +00:00
Claudio Ortolina
c97064fd70
Update fallback cover art
...
Track the file inside the Record module to aid recompilation
2024-11-21 18:33:44 +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
87cd668a33
Populate release_ids and included_release_groups when record is created
2024-11-18 15:34:16 +00:00
Claudio Ortolina
659894aaee
Materialize included release group ids
2024-11-17 11:52:47 +00:00