Broque Thomas
917c25afd9
Fix Tidal OAuth — override Accept header on token requests to application/json
2026-03-12 09:35:36 -07:00
Broque Thomas
691e026208
Fix Tidal API search — correct endpoint casing, JSON:API Accept header, and best-match selection
2026-03-11 22:51:51 -07:00
Broque Thomas
ecfa30c918
Fix Tidal V2 search endpoint, duration parsing, and library badge display
2026-03-11 22:08:25 -07:00
Broque Thomas
cc35864e7d
Tidal & Qobuz Enrichment Workers - Bug Fixes & Rate Limiting
2026-03-11 21:49:31 -07:00
Broque Thomas
ac2c710a1e
Tidal & Qobuz Background Enrichment Workers
2026-03-11 21:26:20 -07:00
Broque Thomas
70c32aa640
Hybrid Mode Redesign
2026-03-11 18:10:35 -07:00
Broque Thomas
fb04d0f4bc
Full qobuz support
2026-03-11 17:43:27 -07:00
Broque Thomas
4390036556
Include Tidal version field in track names — fixes remixes all resolving to base title
2026-03-11 15:51:20 -07:00
Broque Thomas
d329dd4fe8
Fix Tidal playlist endpoints redundantly re-fetching all playlists — use direct single-playlist fetch
2026-03-11 13:50:53 -07:00
Broque Thomas
27bd896540
Use largest available Spotify album artwork instead of medium size
2026-03-11 12:59:23 -07:00
Broque Thomas
2930b5334e
Fix Tidal playlist pagination rate limiting — exponential backoff, inter-page delay, and HTTPError propagation
2026-03-11 12:49:02 -07:00
Broque Thomas
d452cd0a55
Validate Tidal downloads and clean up unplayable hi-res stubs
2026-03-11 11:59:13 -07:00
Broque Thomas
bc22bdca07
Fix infinite Spotify rate limit loop from unguarded auth probes and swallowed errors
2026-03-11 11:07:48 -07:00
Broque Thomas
bde2be1cfa
Spotify rate limit re-trigger loop caused by periodic auth probes
2026-03-11 08:28:36 -07:00
Broque Thomas
0aa8950436
fix build a playlist functionality and update the ui
2026-03-11 07:52:58 -07:00
Broque Thomas
603db69b10
Fix Genius 429 backoff by re-raising rate limit errors from _make_request
2026-03-10 15:46:37 -07:00
Broque Thomas
1b0fca9009
Service Badges, Page Headers, Docs Page, and Bug Fixe
2026-03-10 14:47:11 -07:00
Broque Thomas
c8975f8186
Make iTunes country setting apply immediately without restart
2026-03-10 12:56:22 -07:00
Broque Thomas
87d567151e
iTunes storefront fallback with configurable country setting
2026-03-10 12:13:21 -07:00
Broque Thomas
87db94554a
Fix Genius search blind fallback matching wrong artists/songs
2026-03-10 10:38:52 -07:00
Broque Thomas
f26f6f8266
Last.fm & Genius full worker parity, clickable service badges, and playlist folder race condition fix
2026-03-10 10:35:55 -07:00
Broque Thomas
92ba36a9ba
Add no-auth state to Last.fm and Genius dashboard buttons with greyed-out UI and settings guidance
2026-03-10 09:20:16 -07:00
Broque Thomas
dc7140c459
Add Last.fm and Genius to on-demand enrichment, settings reload, and enrich dropdown parity
2026-03-10 09:12:36 -07:00
Broque Thomas
f8d23ec37c
Add Last.fm and Genius API clients with settings integration
2026-03-09 22:35:10 -07:00
Broque Thomas
aa93458ed3
Configurable ListenBrainz API endpoint for self-hosted instances
2026-03-09 20:52:33 -07:00
Broque Thomas
07a79e7af6
Full Cleanup automation: combined housekeeping sweep for quarantine, downloads, staging, and search history
2026-03-09 16:39:29 -07:00
Broque Thomas
eac97a6c2b
Smart Spotify rate limit detection with global ban, auto-suppression, and frontend modal
2026-03-09 16:05:33 -07:00
Broque Thomas
729f42f1a4
Skip redundant scheduled automations on restart if last run is still recent
2026-03-09 13:37:00 -07:00
Broque Thomas
ea1441d09d
"Write Tags to File" in the Enhanced Library Manager
2026-03-09 11:17:01 -07:00
Broque Thomas
98746961aa
Improve AcoustID verification normalization for version tags and suffixes
2026-03-08 15:42:41 -07:00
Broque Thomas
d2c1e24ff7
Fix ampersand in artist names breaking search queries
2026-03-08 13:17:18 -07:00
Broque Thomas
7de84c535c
Add file path and bitrate support for Jellyfin tracks
2026-03-08 13:08:26 -07:00
Broque Thomas
b1cb9f9964
Add scheduled database backup system automation
2026-03-08 08:24:49 -07:00
Broque Thomas
8b3b82702a
Add deep library scan automation for enrichment-safe sync
2026-03-07 18:39:45 -08:00
Broque Thomas
d97b3d1846
Fix automation timezone bug
2026-03-07 11:42:44 -08:00
Broque Thomas
dbe9745794
Add new automations for refreshing beatport, cleaning download folder and cleaning search history.
2026-03-07 11:11:43 -08:00
Broque Thomas
b34e348937
keep a history of automation runs
2026-03-07 09:39:08 -08:00
Broque Thomas
ba6aea5435
Add rich progress tracking to all automation cards with stall detection and timeout handling
2026-03-07 00:57:03 -08:00
Broque Thomas
cdcaa245d1
Add post-scan phase progress to watchlist automation card
2026-03-06 23:15:30 -08:00
Broque Thomas
156c37d907
Replace hardcoded post-download chain with system automations
2026-03-06 19:48:48 -08:00
Broque Thomas
8b6a2c0adc
allow multiple notification calls per automation as well as a new signal fire utility
2026-03-06 18:10:15 -08:00
Broque Thomas
dd5f2f07e9
detail modal for each action and trgiger
2026-03-06 16:43:24 -08:00
Broque Thomas
9f416475e2
Live automation progress tracking with real-time output panels
2026-03-05 20:39:26 -08:00
Broque Thomas
f99f873d60
Replace hardcoded wishlist/watchlist timers with system automations + add Pushbullet & Telegram notifications
2026-03-05 16:50:09 -08:00
Broque Thomas
da707dcf0a
Full automation engine expansion with scheduling, triggers, actions, and UI polish
2026-03-05 15:13:32 -08:00
Broque Thomas
75f9b7364a
User configurable youtube rate limiting and optional cookies for bot detection
2026-03-05 10:50:06 -08:00
Broque Thomas
60f93d5858
hydrabase changes
2026-03-04 19:48:12 -08:00
Broque Thomas
2d6c55e294
Fix chromaprint crash on surround audio and Spotify worker status display
2026-03-04 11:00:34 -08:00
Broque Thomas
548b5cfbdf
Fix chromaprint C-level assertion crash on 5.1 surround FLAC files. Not possible to check
2026-03-04 10:51:01 -08:00
Broque Thomas
4fee005dee
Add multi-profile support with Netflix-style profile picker
...
Allow multiple users to share a single SoulSync instance with isolated personal data. Each profile gets its own watchlist, wishlist, discovery pool, similar artists, and bubble snapshots — while sharing the same music library, database, and service credentials.
- Netflix-style profile picker on startup when multiple profiles exist
- Optional PIN protection per profile; admin PIN required when >1 profiles
- Admin-only profile management (create, edit, rename, delete)
- Profile avatar images via URL with colored-initial fallback
- Zero-downtime SQLite migration — all existing data maps to auto-created
admin profile
- Single-user installs see no changes — profile system is invisible until
a second profile is created
- WebSocket count emitters scoped to profile rooms (watchlist/wishlist)
- Background scanners (watchlist, wishlist, discovery) iterate all profiles
2026-03-04 10:46:08 -08:00