Commit Graph

  • 7fd98ffcb9 feat: revert c8ccf31 master Uyanide 2026-04-10 18:50:12 +02:00
  • cfac95ca03 refactor: add __all__ and more decouple Uyanide 2026-04-10 16:43:51 +02:00
  • 10bfb6090c chore: preferred_player default to none Uyanide 2026-04-10 15:46:50 +02:00
  • c8ccf31583 feat: log blacklisted player Uyanide 2026-04-10 15:43:25 +02:00
  • 6e971941f8 chore: 0.7.7 Uyanide 2026-04-10 15:37:17 +02:00
  • 794f42b42b feat: --player bypasses players_blacklist Uyanide 2026-04-10 15:19:51 +02:00
  • b18d860aca chore: update requirements.txt Uyanide 2026-04-10 15:10:39 +02:00
  • 1771b43bba chore: 0.7.6 Uyanide 2026-04-10 14:05:35 +02:00
  • 0485410285 fix: watch pos not updated after starting as paused Uyanide 2026-04-10 13:55:40 +02:00
  • aba77a23cb chore: add poe Uyanide 2026-04-10 12:25:45 +02:00
  • c505e117d1 style: add future annotations Uyanide 2026-04-10 12:01:24 +02:00
  • 1b48386132 chore: add script to capture api response references Uyanide 2026-04-10 10:50:29 +02:00
  • 0f1f5b418a test: add api fixtures Uyanide 2026-04-10 08:45:24 +02:00
  • 60732f2986 feat: add watch print mode test: refactor test_watch style: add inline comments for watch Uyanide 2026-04-10 07:45:02 +02:00
  • 633983ed98 feat: watch mode fetch immediatly on track changes regardless of player status Uyanide 2026-04-10 07:24:29 +02:00
  • 1c160d5ccb fix: watch pipe skips refetch after resume from pause Uyanide 2026-04-09 23:54:55 +02:00
  • b7e539de3b feat: add --no-newline option for watch pipe Uyanide 2026-04-09 23:39:01 +02:00
  • e6997a76c4 fix: watch pipe mode repeatedly refetch when no lyrics available Uyanide 2026-04-09 23:28:29 +02:00
  • 6d9cfaf8be refactor: modules only need to know the config values they need to know Uyanide 2026-04-09 23:00:10 +02:00
  • 66a32c751a style: relative import Uyanide 2026-04-09 22:45:48 +02:00
  • d2a3e64b89 feat: config file refactor: as the config module changed test: add test for config test: add test for local fetcher and local enrichers test: add test for manual insertion fix: some random bugs left by the last commit Uyanide 2026-04-09 15:16:21 +02:00
  • e6b8583868 feat: add watch command and pipe view Uyanide 2026-04-09 10:15:14 +02:00
  • 03970bf17f chore: update README and LICENSE Uyanide 2026-04-08 13:14:48 +02:00
  • 9b42cab76b fix: preserve input order for equal-timestamp lyrics in normalize and to_plain Uyanide 2026-04-08 12:28:28 +02:00
  • f8db549d8e fix: change TTL of unsynced lyrics to infinite Uyanide 2026-04-08 09:02:35 +02:00
  • d5188107ff test: clarify semantics & remove duplicates Uyanide 2026-04-08 08:42:19 +02:00
  • 587d5dbe46 feat: normalize option Uyanide 2026-04-08 07:32:25 +02:00
  • 1e0f8e2868 fix: remove unused to_unsynced Uyanide 2026-04-08 07:20:28 +02:00
  • 573f8b5b8b test: update tests for lrc Uyanide 2026-04-08 07:07:13 +02:00
  • b922a0df28 refactor: better (really?🤨) lrc parsing and handling Uyanide 2026-04-07 18:23:26 +02:00
  • 1414066eed chore: de-markdown-lize comments Uyanide 2026-04-07 15:15:44 +02:00
  • 5666dd13c0 test: -1 Uyanide 2026-04-07 14:55:37 +02:00
  • f175eda57e refactor: change cache schema to slots based Uyanide 2026-04-06 23:08:57 +02:00
  • 92860f0d30 test: clarify known limitations in the only xfail case Uyanide 2026-04-06 22:37:56 +02:00
  • 0c85af534e refactor: large scale refactor regarding selection & fetchers Uyanide 2026-04-06 13:37:51 +02:00
  • 69b7f5c60c chore: switch to src layout Uyanide 2026-04-06 09:15:07 +02:00
  • c5abbff14c chore: enhance comments Uyanide 2026-04-06 08:20:23 +02:00
  • 2d70231502 refactor: move some impl-specific constants out from config.py Uyanide 2026-04-06 07:44:05 +02:00
  • 9b04160783 refactor: lazy load credentials for testing Uyanide 2026-04-06 07:20:23 +02:00
  • a8335d9920 test: remove tests that require credentials Uyanide 2026-04-06 06:05:18 +02:00
  • 8fabb0de86 fix: handle inconsistent response format of mxm Uyanide 2026-04-05 19:43:01 +02:00
  • 262d385b00 chore: 0.5.3 Uyanide 2026-04-05 11:53:01 +02:00
  • 65327eb431 fix: remove inflated confidence for unsynced results (impacts: sp, mxm-sp, local, lrclib, manual) Uyanide 2026-04-05 11:48:19 +02:00
  • 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 Uyanide 2026-04-05 09:42:42 +02:00
  • 84a3e1076e fix: missing await Uyanide 2026-04-05 06:28:23 +02:00
  • 449952c6c1 feat: auth: add auth module Uyanide 2026-04-05 02:36:10 +02:00
  • 1ed51fdbdb feat: enricher: +1 Uyanide 2026-04-05 01:52:19 +02:00
  • d8c3813e39 refactor: move out some constants from config.py Uyanide 2026-04-05 01:14:39 +02:00
  • 9d6c2e2113 feat: add musixmatch as fetcher Uyanide 2026-04-04 16:02:19 +02:00
  • 38dc845abe feat: cache stats now prints total row Uyanide 2026-04-04 09:47:36 +02:00
  • 1c7456c588 perf: parallelize lrclib search queries Uyanide 2026-04-04 09:02:31 +02:00
  • 303eeaa661 chore: add disclaimer Uyanide 2026-04-04 08:34:00 +02:00
  • e3f12c1756 feat: fetcher: try multiple candidates rather just the best one Uyanide 2026-04-03 22:16:49 +02:00
  • aa13940aa7 fix: adjust fetcher groups, sequentially fetch from sp and lrclib Uyanide 2026-04-03 22:13:08 +02:00
  • 4c5aba04b0 refactor: async parallel fetching Uyanide 2026-04-03 18:39:31 +02:00
  • c91d5220bd refactor: skip a enricher if fields it can provide are already filled Uyanide 2026-04-03 17:51:59 +02:00
  • 3917d68880 fix: no one uses artist/album/track.ext layout Uyanide 2026-04-03 16:47:06 +02:00
  • 9a200aa58d feat: add hard duration filter to avoid fake positive matches Uyanide 2026-04-03 16:12:02 +02:00
  • 871ae2d589 fix: confidence should not be 100 for irrelevant cases Uyanide 2026-04-03 15:44:09 +02:00
  • c44797fbf9 feat: able to set confidence for certain source via cli Uyanide 2026-04-02 19:28:20 +02:00
  • 6baa487565 test: remove 1 test for _raw_tag_to_ms since its already covered by tests for to_plain Uyanide 2026-04-02 11:19:16 +02:00
  • e382783f52 feat: export to a .txt file instead of .lrc when --plain Uyanide 2026-04-02 11:12:40 +02:00
  • 6791e9e965 feat: better cache stats Uyanide 2026-04-02 10:48:26 +02:00
  • d18d8afb37 refactor: confidence should always have a value Uyanide 2026-04-02 10:33:12 +02:00
  • 66682e8b45 fix: only record spotify's trackid, ignore local ones Uyanide 2026-04-02 10:15:50 +02:00
  • 4d31a971a1 fix: --plain now sorts lyrics to handle multi-tag lrc correctly Uyanide 2026-04-02 09:51:08 +02:00
  • 2df167e31d feat: evaluate fetch results with "confidence" Uyanide 2026-04-02 04:26:19 +02:00
  • 9aaf4d8aed feat: lrclib-search fetcher now do multiple request to cover more cases refactor: abstract selection logic & test dafür Uyanide 2026-04-02 04:00:24 +02:00
  • 5a44f2ba34 fix: --no-cache now also skips cache writing Uyanide 2026-04-02 03:55:02 +02:00
  • 8001c3f7e8 refactor: add LRCData class Uyanide 2026-04-02 02:57:50 +02:00
  • 83c9553309 fix: --plain should trim leading and trailing blank lines & v0.2.0 Uyanide 2026-04-01 20:55:20 +02:00
  • 8af43ed112 test: add test for cache db Uyanide 2026-04-01 20:38:30 +02:00
  • 0b830e176d feat: better lrc handling Uyanide 2026-04-01 17:51:28 +02:00
  • cd60d3042c feat: print plain lyrics without tags Uyanide 2026-04-01 17:26:09 +02:00
  • 5930f70bf2 chore: edit gitignore Uyanide 2026-04-01 17:23:38 +02:00
  • 13eb317e5b refactor: only import DB_PATH once Uyanide 2026-04-01 17:15:57 +02:00
  • 7959a2efb9 feat: able to specify db path Uyanide 2026-03-31 22:53:08 +02:00
  • 88cf0115af finish renaming Uyanide 2026-03-31 22:34:15 +02:00
  • 4d48e21533 delete old files Uyanide 2026-03-31 22:33:03 +02:00
  • ae1dd7481d rename to lrx Uyanide 2026-03-31 22:24:08 +02:00
  • 4c18efa10c refactor: remove dep pydantic Uyanide 2026-03-31 18:34:41 +02:00
  • 8f44a0da35 feat: add insert subcommand to cache command Uyanide 2026-03-31 17:21:33 +02:00
  • a1681c2551 chore: 0.1.7 Uyanide 2026-03-31 17:46:51 +02:00
  • d3090ceb1c refactor: add is_available method to fetchers Uyanide 2026-03-31 16:56:49 +02:00
  • 03acda4478 feat: better LRC format handling Uyanide 2026-03-31 15:35:22 +02:00
  • 29273ad9fe feat: include appversion in UA Uyanide 2026-03-31 15:10:39 +02:00
  • 3af6cee7e3 fix: sp Uyanide 2026-03-31 13:50:57 +02:00
  • cc706c3117 refactor: remove unnecessary list of fetcher methods Uyanide 2026-03-31 06:43:21 +02:00
  • 4e83e6be15 feat: add metadata enrichers & refactor Uyanide 2026-03-31 06:08:16 +02:00
  • d76b25e250 feat: 'search' command no longer requires 'title' param Uyanide 2026-03-31 05:44:50 +02:00
  • cf7651ae84 fix: request param and header of sp fetcher Uyanide 2026-03-31 03:32:36 +02:00
  • 2337ff3472 feat: add player preference configuration and improve MPRIS player selection logic Uyanide 2026-03-31 02:56:45 +02:00
  • e482fb1a82 feat: export lyrics default to sidecar path Uyanide 2026-03-31 02:29:15 +02:00
  • 4f6244bc9e chore: bump version to 0.1.3 Uyanide 2026-03-31 02:08:48 +02:00
  • a0f988d0d8 feat: add qqmusic fetcher Uyanide 2026-03-31 00:43:37 +02:00
  • d51a3eda1d feat: replace typer with cycplots & improve cli Uyanide 2026-03-30 18:04:53 +02:00
  • f49d305f0e update .gitignore Uyanide 2026-03-30 01:04:14 +02:00
  • 1a04e46b48 feat: enhance fuzzy matching and add artist normalization in cache.py Uyanide 2026-03-28 07:35:29 +01:00
  • 6ccd90ba6a feat: add exact metadata match for cache search in CacheSearchFetcher Uyanide 2026-03-28 06:54:30 +01:00
  • d2b4134c96 feat: implement cache-search fetcher for cross-album fuzzy lookup Uyanide 2026-03-28 06:21:31 +01:00