Commit Graph

  • ff6dfede87 Change Spotify lyrics API external port to 8365 Josh Patra 2026-02-06 10:54:43 -05:00
  • d8696e254f Expose Spotify lyrics API on port 8080 for testing Josh Patra 2026-02-06 10:52:31 -05:00
  • 261f20f378 Add Spotify lyrics test endpoint Josh Patra 2026-02-06 10:51:16 -05:00
  • ad5fea7d8e Fix LRCLib and SquidWTF error handling Josh Patra 2026-02-06 02:07:45 -05:00
  • 8a3abdcbf7 Fix LyricsStartupValidator build errors Josh Patra 2026-02-06 01:54:32 -05:00
  • f103dac6c8 Add comprehensive lyrics startup validation with '22' test Josh Patra 2026-02-06 01:48:12 -05:00
  • 7abc26c069 Fix album detail endpoint to use correct parameter Josh Patra 2026-02-06 01:45:10 -05:00
  • a2e9021100 Fix artist detail parsing to handle missing artist property Josh Patra 2026-02-06 01:39:43 -05:00
  • 5f22fb0a3b Integrate Spotify lyrics sidecar service Josh Patra 2026-02-06 01:24:49 -05:00
  • a3d1d81810 Add Spotify lyrics sidecar service and integrate with prefetch Josh Patra 2026-02-06 01:21:30 -05:00
  • 2dd7020a61 Add logging to Spotify lyrics search for better debugging Josh Patra 2026-02-06 00:59:23 -05:00
  • e36e685bee Fix lyrics cache key mismatch between prefetch and lookup Josh Patra 2026-02-06 00:58:13 -05:00
  • 7ff6dbbe7a Prioritize local Jellyfin lyrics over LRCLib in prefetch Josh Patra 2026-02-05 15:09:59 -05:00
  • e0dbd1d4fd feat: Add lyrics ID mapping system, fix playlist display, enhance track view Josh Patra 2026-02-05 14:58:57 -05:00
  • 328a6a0eea Add lyrics completion bar per playlist showing percentage of tracks with cached lyrics Josh Patra 2026-02-05 12:44:11 -05:00
  • 9abb53de1a Fix search to use SquidWTF HiFi API with round-robin base URLs, capitalize provider names in UI, and widen tracks modal to 90% Josh Patra 2026-02-05 12:35:33 -05:00
  • 349fb740a2 Fix scrobbling: track playing item in session and send proper PlaybackStopped data on cleanup Josh Patra 2026-02-05 11:56:26 -05:00
  • b604d61039 Adjust modal size to 75% width and 65% height, call PlaybackStopped when cleaning up sessions Josh Patra 2026-02-05 11:53:35 -05:00
  • 3b8d83b43e Add lyrics prefetch endpoint and UI button: prefetch lyrics for individual playlists with progress feedback Josh Patra 2026-02-05 11:45:36 -05:00
  • 8555b67a38 Fix external track streaming: normalize provider names to lowercase (squidwtf, deezer, qobuz) Josh Patra 2026-02-05 11:40:45 -05:00
  • 629e95ac30 Improve logging: clarify search vs manual mappings, show manual mapping counts in final log Josh Patra 2026-02-05 11:38:26 -05:00
  • 2153a24c86 Make modal wider (800px) and taller (90vh) to fit buttons side by side Josh Patra 2026-02-05 11:35:09 -05:00
  • 1ddb3954f3 Add missing using statement for IMusicMetadataService Josh Patra 2026-02-05 11:27:22 -05:00
  • 3319c9b21b Fix external mapping: add Map to External button for external tracks, fetch metadata from provider, set searchQuery for missing tracks Josh Patra 2026-02-05 11:23:01 -05:00
  • 8966fb1fa2 Add lyrics prefetching for injected playlists with file cache Josh Patra 2026-02-05 11:15:42 -05:00
  • 3b24ef3e78 Fix: Fetch full metadata for manual external mappings Josh Patra 2026-02-05 11:13:26 -05:00
  • dbeb060d52 Fix: Manual external mappings now work correctly for playback Josh Patra 2026-02-05 11:12:15 -05:00
  • 2155a287a5 Add manual mapping indicators and search button for missing tracks Josh Patra 2026-02-05 10:20:31 -05:00
  • cb57b406c1 Fix: Manual external mappings now properly included in playlist cache Josh Patra 2026-02-05 10:07:57 -05:00
  • e91833ebbb Fix variable name conflict and change cache logs to DEBUG level Josh Patra 2026-02-05 09:59:28 -05:00
  • 2e1577eb5a Fix external mapping deserialization and suppress cache MISS logs Josh Patra 2026-02-05 09:57:07 -05:00
  • 7cb722c396 Fix HasValue method to handle JsonElement properly Josh Patra 2026-02-05 09:40:39 -05:00
  • 9dcaddb2db Make manual mappings permanent and persist to file Josh Patra 2026-02-05 09:33:37 -05:00
  • 5766cf9f62 Delete file caches when manual mappings are created Josh Patra 2026-02-05 09:31:07 -05:00
  • a12d5ea3c9 Fix excessive track matching and reduce HTTP logging noise Josh Patra 2026-02-05 09:30:00 -05:00
  • 25bbf45cbb Fix memory leak in ActiveDownloads dictionary Josh Patra 2026-02-05 09:19:32 -05:00
  • 3fd13b855d Fix RuntimeBinderException, add session cleanup, memory stats endpoint, and fix all warnings Josh Patra 2026-02-05 09:17:40 -05:00
  • d9c0b8bb54 Add separate 'Map to External' button for missing tracks Josh Patra 2026-02-05 00:26:02 -05:00
  • 400ea31477 Fix missing track labeling and add external manual mapping support Josh Patra 2026-02-05 00:15:23 -05:00
  • b1cab0ddfc Fix missing track labeling and add external manual mapping support Josh Patra 2026-02-04 23:56:21 -05:00
  • 7cba915c5e Fix authentication issues in SpotifyTrackMatchingService Josh Patra 2026-02-04 23:44:45 -05:00
  • dfd7d678e7 Add internal API method and fix playlist count authentication Josh Patra 2026-02-04 23:42:16 -05:00
  • 4071f6d650 Fix authentication issue in UpdateSpotifyPlaylistCounts Josh Patra 2026-02-04 23:40:13 -05:00
  • d045b33afd Fix Spotify playlist track counts to include external tracks Josh Patra 2026-02-04 23:35:10 -05:00
  • 4f74b34b9a Fix Spotify playlist track counts in client responses Josh Patra 2026-02-04 23:31:30 -05:00
  • b7417614b3 Remove memory optimization markdown file Josh Patra 2026-02-04 23:18:38 -05:00
  • 72b1584d51 Fix admin dashboard to show total playable tracks (local + external matched) Josh Patra 2026-02-04 23:16:56 -05:00
  • 4b289e4ddd Move admin endpoints to internal port 5275 for security Josh Patra 2026-02-04 22:55:21 -05:00
  • 07844cc9c5 Add GC hints to prevent memory leaks from large byte arrays Josh Patra 2026-02-04 22:50:35 -05:00
  • 1601b96800 Add memory monitoring endpoint Josh Patra 2026-02-04 22:45:11 -05:00
  • 7db66067f4 Complete mark-for-deletion system and memory optimization Josh Patra 2026-02-04 22:41:08 -05:00
  • f44d8652b4 Improve favorite/unfavorite logic - copy from cache, avoid re-downloads Josh Patra 2026-02-04 22:34:11 -05:00
  • 8fad6d8c4e Fix manual mapping detection in Active Playlists tab Josh Patra 2026-02-04 19:35:34 -05:00
  • d11b656b23 Add loading state to save mapping button and timeout handling Josh Patra 2026-02-04 19:24:02 -05:00
  • cf1428d678 Fix manual mapping race condition and add log gitignore Josh Patra 2026-02-04 19:17:48 -05:00
  • 030937b196 Add error handling and better logging for playlist cache deserialization Josh Patra 2026-02-04 19:10:04 -05:00
  • f77281fd3d Fix GetJellyfinTrack: add UserId and verify Audio type for URL-based mapping Josh Patra 2026-02-04 19:04:12 -05:00
  • 791a8b3fdb Fix Jellyfin search: add UserId and verify Audio type Josh Patra 2026-02-04 19:03:21 -05:00
  • 7311bbc04a Add debug logging to GetPlaylists cache reading Josh Patra 2026-02-04 18:59:00 -05:00
  • 696a2d56f2 Fix manual mappings: preserve on rematch + fix local/external count detection Josh Patra 2026-02-04 18:53:09 -05:00
  • 5680b9c7c9 Fix GetPlaylists to use pre-built cache with manual mappings for accurate counts Josh Patra 2026-02-04 18:49:12 -05:00
  • 1d31784ff8 Fix manual mapping: add immediate playlist rebuild and manual mapping priority in cache builder Josh Patra 2026-02-04 18:38:25 -05:00
  • 10e58eced9 fix: add authentication to playlist cache pre-building Josh Patra 2026-02-04 18:23:11 -05:00
  • 0937fcf163 fix: accurate playlist counting and three-color progress bars Josh Patra 2026-02-04 17:49:10 -05:00
  • 506f39d606 feat: instant UI update after manual track mapping Josh Patra 2026-02-04 17:44:57 -05:00
  • 7bb7c6a40e fix: manual mapping UI and [S] tag consistency Josh Patra 2026-02-04 17:31:56 -05:00
  • 3403f7a8c9 fix: remove orphaned code causing JavaScript syntax error Josh Patra 2026-02-04 17:06:24 -05:00
  • 3e5c57766b feat: pre-build playlist cache and make matching interval configurable Josh Patra 2026-02-04 17:03:50 -05:00
  • 24c6219189 Fix external track counting by checking matched tracks cache Josh Patra 2026-02-04 16:54:56 -05:00
  • ea21d5aa77 Add clickable search links and enhanced debug logging Josh Patra 2026-02-04 16:51:46 -05:00
  • ee84770397 Improve progress bar visibility and add debug logging Josh Patra 2026-02-04 16:50:20 -05:00
  • 7ccb660299 Add startup cache warming service Josh Patra 2026-02-04 16:46:27 -05:00
  • 0793c4614b Add file-based caching for MusicBrainz genres Josh Patra 2026-02-04 16:44:35 -05:00
  • bf02dc5a57 Add MusicBrainz genre enrichment and improve track counting Josh Patra 2026-02-04 16:43:17 -05:00
  • 7938871556 Release 1.0.0 - Production ready Josh Patra 2026-02-04 16:33:58 -05:00
  • 39f6893741 Add MusicBrainz API integration for metadata enrichment Josh Patra 2026-02-04 16:23:16 -05:00
  • cd4fd702fc Match Jellyfin response structure exactly based on real API responses Josh Patra 2026-02-04 16:17:45 -05:00
  • 038c3a9614 Fix playlist count caching and make external tracks perfectly mimic Jellyfin responses Josh Patra 2026-02-04 16:12:41 -05:00
  • 6e966f9e0d Fix nullability warnings in SpotifyTrackMatchingService Josh Patra 2026-02-04 16:10:16 -05:00
  • b778b3d31e Fix MediaSources null array fields and add logging for artist albums Josh Patra 2026-02-04 16:04:04 -05:00
  • 526a079368 Fix compilation errors and nullability warnings Josh Patra 2026-02-04 15:40:52 -05:00
  • 7a7b884af2 Update playlist progress bar to show stacked blue/yellow segments Josh Patra 2026-02-04 15:37:07 -05:00
  • 6ab5e44112 Fix apostrophe normalization syntax error - use Unicode escape sequences Josh Patra 2026-02-04 15:33:59 -05:00
  • 7c92515723 Fix null boolean error and playlist count showing 0 after restart Josh Patra 2026-02-04 15:32:18 -05:00
  • 8091d30602 Add parallel provider racing for searches and lyrics pre-fetching Josh Patra 2026-02-04 15:29:56 -05:00
  • e7ff330625 Add logging for server-to-client WebSocket messages to debug remote control Josh Patra 2026-02-04 11:30:12 -05:00
  • aadda9b873 Fix apostrophe matching, add URL input for track mapping, improve search caching Josh Patra 2026-02-04 01:44:56 -05:00
  • 8a84237f13 Fix MediaSources field appending to query string Josh Patra 2026-02-03 23:56:40 -05:00
  • e3a118e578 Fix bitrate for injected playlists by preserving raw Jellyfin items Josh Patra 2026-02-03 23:41:29 -05:00
  • e17eee9bf3 Fix Map to Local button using data attributes instead of inline onclick Josh Patra 2026-02-03 23:24:19 -05:00
  • 4229924f61 Fix bitrate showing 0K for favorited songs and browse views Josh Patra 2026-02-03 20:04:10 -05:00
  • a2a48f6ed9 Fix Map to Local button when artists array is empty Josh Patra 2026-02-03 19:55:30 -05:00
  • c7785b6488 Fix playlist track count to show actual available tracks Josh Patra 2026-02-03 19:53:22 -05:00
  • af03a53af5 Enhanced playlist statistics in admin dashboard Josh Patra 2026-02-03 19:49:32 -05:00
  • c1c2212b53 Fix undefined artists array causing syntax error Josh Patra 2026-02-03 19:46:48 -05:00
  • 17560f0d34 Fix Map to Local button by properly escaping JavaScript parameters Josh Patra 2026-02-03 19:46:31 -05:00
  • 6ab314f603 Enhanced cache clearing to include all Spotify playlist Redis keys Josh Patra 2026-02-03 19:41:16 -05:00
  • 64ac09becf Preserve MediaSources metadata for local tracks in playlists to show bitrate Josh Patra 2026-02-03 19:35:39 -05:00
  • a0bbb7cd4c Integrate WebSocket proxy with session manager to cleanup sessions on client disconnect Josh Patra 2026-02-03 19:10:02 -05:00
  • 4bd478e85c Add HLS playlist (.m3u8, .ts) support to binary proxy handler Josh Patra 2026-02-03 19:04:24 -05:00