Commit Graph

76 Commits

Author SHA1 Message Date
Uyanide 0c85af534e refactor: large scale refactor regarding selection & fetchers 2026-04-06 22:30:55 +02:00
Uyanide 69b7f5c60c chore: switch to src layout 2026-04-06 10:29:03 +02:00
Uyanide c5abbff14c chore: enhance comments 2026-04-06 08:40:59 +02:00
Uyanide 2d70231502 refactor: move some impl-specific constants out from config.py 2026-04-06 08:13:00 +02:00
Uyanide 9b04160783 refactor: lazy load credentials for testing 2026-04-06 08:13:00 +02:00
Uyanide a8335d9920 test: remove tests that require credentials 2026-04-06 08:13:00 +02:00
Uyanide 8fabb0de86 fix: handle inconsistent response format of mxm 2026-04-05 19:59:46 +02:00
Uyanide 262d385b00 chore: 0.5.3 2026-04-05 11:53:55 +02:00
Uyanide 65327eb431 fix: remove inflated confidence for unsynced results (impacts: sp, mxm-sp, local, lrclib, manual) 2026-04-05 11:52:53 +02:00
Uyanide 0d56cde927 test: add basic tests for cache-search & network fetchers
test: enable debug
test: add pytest.ini to mark tests that require network
fix: cache-search should not aquire full match of artists due to different translations
fix: replace dynamic f-string SQL in track WHERE clauses with parameterized nullable conditions
refactor: lrc.py should never directly call print, return a str instead
chore: add requirements.txt (via 'uv export')
chore: update README.md with dev instructions
2026-04-05 11:35:04 +02:00
Uyanide 84a3e1076e fix: missing await 2026-04-05 06:28:51 +02:00
Uyanide 449952c6c1 feat: auth: add auth module 2026-04-05 04:12:49 +02:00
Uyanide 1ed51fdbdb feat: enricher: +1 2026-04-05 02:25:33 +02:00
Uyanide d8c3813e39 refactor: move out some constants from config.py 2026-04-05 02:25:33 +02:00
Uyanide 9d6c2e2113 feat: add musixmatch as fetcher 2026-04-04 16:02:19 +02:00
Uyanide 38dc845abe feat: cache stats now prints total row 2026-04-04 09:52:02 +02:00
Uyanide 1c7456c588 perf: parallelize lrclib search queries 2026-04-04 09:05:51 +02:00
Uyanide 303eeaa661 chore: add disclaimer 2026-04-04 08:40:09 +02:00
Uyanide e3f12c1756 feat: fetcher: try multiple candidates rather just the best one 2026-04-04 08:29:20 +02:00
Uyanide aa13940aa7 fix: adjust fetcher groups, sequentially fetch from sp and lrclib 2026-04-03 22:15:16 +02:00
Uyanide 4c5aba04b0 refactor: async parallel fetching 2026-04-03 22:09:59 +02:00
Uyanide c91d5220bd refactor: skip a enricher if fields it can provide are already filled 2026-04-03 22:09:59 +02:00
Uyanide 3917d68880 fix: no one uses artist/album/track.ext layout 2026-04-03 22:09:58 +02:00
Uyanide 9a200aa58d feat: add hard duration filter to avoid fake positive matches 2026-04-03 16:38:46 +02:00
Uyanide 871ae2d589 fix: confidence should not be 100 for irrelevant cases 2026-04-03 15:46:13 +02:00
Uyanide c44797fbf9 feat: able to set confidence for certain source via cli 2026-04-02 20:29:17 +02:00
Uyanide 6baa487565 test: remove 1 test for _raw_tag_to_ms since its already covered by
tests for to_plain
2026-04-02 11:57:23 +02:00
Uyanide e382783f52 feat: export to a .txt file instead of .lrc when --plain 2026-04-02 11:15:29 +02:00
Uyanide 6791e9e965 feat: better cache stats 2026-04-02 10:52:48 +02:00
Uyanide d18d8afb37 refactor: confidence should always have a value 2026-04-02 10:47:17 +02:00
Uyanide 66682e8b45 fix: only record spotify's trackid, ignore local ones 2026-04-02 10:47:17 +02:00
Uyanide 4d31a971a1 fix: --plain now sorts lyrics to handle multi-tag lrc correctly 2026-04-02 10:07:36 +02:00
Uyanide 2df167e31d feat: evaluate fetch results with "confidence" 2026-04-02 09:44:20 +02:00
Uyanide 9aaf4d8aed feat: lrclib-search fetcher now do multiple request to cover more cases
refactor: abstract selection logic & test dafür
2026-04-02 09:44:20 +02:00
Uyanide 5a44f2ba34 fix: --no-cache now also skips cache writing 2026-04-02 03:56:04 +02:00
Uyanide 8001c3f7e8 refactor: add LRCData class 2026-04-02 03:56:04 +02:00
Uyanide 83c9553309 fix: --plain should trim leading and trailing blank lines & v0.2.0 2026-04-01 21:05:55 +02:00
Uyanide 8af43ed112 test: add test for cache db 2026-04-01 21:05:54 +02:00
Uyanide 0b830e176d feat: better lrc handling 2026-04-01 20:33:23 +02:00
Uyanide cd60d3042c feat: print plain lyrics without tags 2026-04-01 20:33:23 +02:00
Uyanide 5930f70bf2 chore: edit gitignore 2026-04-01 20:33:23 +02:00
Uyanide 13eb317e5b refactor: only import DB_PATH once 2026-04-01 20:33:23 +02:00
Uyanide 7959a2efb9 feat: able to specify db path 2026-04-01 10:21:14 +02:00
Uyanide 88cf0115af finish renaming 2026-03-31 22:46:55 +02:00
Uyanide 4d48e21533 delete old files 2026-03-31 22:46:55 +02:00
Uyanide ae1dd7481d rename to lrx
resolve conflicts
2026-03-31 22:46:55 +02:00
Uyanide 4c18efa10c refactor: remove dep pydantic 2026-03-31 18:36:44 +02:00
Uyanide 8f44a0da35 feat: add insert subcommand to cache command 2026-03-31 18:08:40 +02:00
Uyanide a1681c2551 chore: 0.1.7 2026-03-31 18:08:40 +02:00
Uyanide d3090ceb1c refactor: add is_available method to fetchers 2026-03-31 18:08:40 +02:00