Commits
* Remove ListenProgress specific serialization tests and function since its not needed anymore
* postfix tmp dirs with test name hints for easier debugging
* try to prevent filecache from leaving files behind
* re-use dead scrobble removal method for clearing all
* temp fix for rendering queue errors in frontend
* properly decrement queue based on dead scrobble queue status
* display total dead on status card
Was setting all failed states to dead queue when it should have been a where condition ON dead queue name
#588
* Reduce storage backend to valkey only (or inferred file for auth)
* Remove metadata and scrobble config options
* Simplify cache init with new config
* Add deprecation/warnings for cache ENVs
* Rewrite/simplify cache docs
Refactor from string to artist so we can support adding mbids etc. directly to artists
#425
* Will allow more flexibility in startup and stopping/silencing component by user (in the future)
* Remove unused tasks
Will allow more flexibility in startup and stopping/silencing component by user (in the future)
* Refactor should play methods to return result and reason, rather than always logging reason
* Combine reasons when logging to reduce log statements
* Demote "no update" logging to TRACE, promot "update" logging to VERBOSE
* Use same kind of function behavior as scrobble queue to reduce cognitive load
* Pass retries to repo method to actually get queued dead scrobbles
Creating the majority of it now, esp with jobId in plays table, will make later migrations/usage easier
Normalizes the logic used for detected dupes/existing by using it for both sources and clients
* Use new updatedAt column to determine if plays should be deleted
* Update plays on already discovered to keep them from being delted
* Fix various bugs and missed awaits in retention cleanup function
multiplatform is still useful for memory players but is not useful for discovery and just complicates code paths.
there is no reason to discover based on platform as the Source is the smallest UoW anyway. If a play should be discovered (or not) it shouldn't matter what platform is was played on, it's all the same Source
multiplatform is still useful for memory players but is not useful for discovery and just complicates code paths.
there is no reason to discover based on platform as the Source is the smallest UoW anyway. If a play should be discovered (or not) it shouldn't matter what platform is was played on, it's all the same Source