App version
Production
Issue description
When Ampache is set up to deny calls to artist art links without a valid user sesion (ie, no public art links), Symfonium seems to successfully cache artist art at first, but then it disappears.
Device type
Phone
Media provider
Subsonic (Open)
Steps to reproduce
- Create a Subsonic (Open) provider connected to an Ampache backend
- During sync, refresh the All (or Album) Artists views. You’ll see Artist art is caching properly.
- Eventually, artist art will begin disappearing (clearing) from the Artists views.
Additional information
Backend: Ampache 7.10.0 (reproducible on dev branch)
Symfonium version: 14.1.0 (reproducible on latest beta as well)
I set up my DEV instance with only a small subset of my music to demonstrate the issue and simplify the debug output. Looking through the debug output, what seems to be happening is:
- Symfonium first calls the getCoverArt API to retrieve the Artist art during the initial sync. These calls are successful. Artist art is cached.
- During metadata sync, it calls getArtistInfo2 and pulls the ImageURLs from that output.
- It then attempts to update artist art again using one of the *ImageURLs in the API output.
- When Ampache is configured to not allow public access to artist art links, this call results in an HTTP 403 forbidden response.
- Although not obvious to me in the log output, I suspect Symfonium replaces the previously downloaded art via the getCoverArt call with a null entry, basically removing what it successfully downloaded earlier.
I’ve noticed that if during the getArtistInfo2 call, the API does not return any ImageURLs, Symfonium seems to leave the Artist art it previously downloaded via getCoverArt. I have a handful of Artists that fail to respond with ImageURLs for an unknown reason. These same Artists have artist art. For my test, I included examples of artists that return ImageURLs (missing artist art), and those that don’t (have artist art).
I searched existing issues first
on
I understand that logs are mandatory
on
Log upload name / description
JoeDat
