upmpdcli-docker icon indicating copy to clipboard operation
upmpdcli-docker copied to clipboard

[BUG] Traceback - AttributeError: 'ArtistCover' object has no attribute 'getCoverArt'

Open tomellis opened this issue 4 months ago • 7 comments

I've connected upmpdcli with navidrome. The connection between them works fine and I can see the genres pulled etc. However, the moment I try any renderers in this case, Upplay, I receive an error "Service login or communication failure".

The upmpcli docker container is showing a traceback each time I try to get Upplay to connect:

upmpdcli | CMDTALK: subsonic-app.py: browse: args: --{'cmdtalk:proc': 'browse', 'count': '20', 'offset': '0', 'flag': 'children', 'objid': '0$subsonic$'}-- upmpdcli | CMDTALK: subsonic-app.py: browse: path: ----
upmpdcli | CMDTALK: subsonic-app.py: browse: path_list: --['0$subsonic$']-- last: --0$subsonic$-- upmpdcli | CMDTALK: subsonic-app.py: processmessage: processor raised: ['ArtistCover' object has no attribute 'getCoverArt'] upmpdcli | Traceback (most recent call last): upmpdcli | File "/usr/share/upmpdcli/cdplugins/pycommon/cmdtalk.py", line 167, in processmessage upmpdcli | outfields = processor.process(params) upmpdcli | File "/usr/share/upmpdcli/cdplugins/pycommon/cmdtalkplugin.py", line 64, in process
upmpdcli | return self.dispatcher.run(params[prcnmkey], params)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/pycommon/cmdtalkplugin.py", line 49, in run
upmpdcli | return func(params)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/subsonic-app.py", line 1285, in browse
upmpdcli | entries = _show_tags(objid, entries)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/subsonic-app.py", line 1263, in _show_tags
upmpdcli | if tag_enabled_in_initial_page(tag): entries.append(tag_to_entry(objid, tag))
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/subsonic-app.py", line 1254, in tag_to_entry upmpdcli | art_id = tag_art_retrievertagname
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 54, in group_artists_art_retriever upmpdcli | if not art: art = random_artist_art_retriever()
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 124, in random_artist_art_retriever upmpdcli | return _get_random_artist_cover()
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 116, in _get_random_artist_cover upmpdcli | return __get_random_artist_cover_by_initial(select_initial) upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 108, in __get_random_artist_cover_by_initial upmpdcli | return get_artist_cover(artist_id) upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 121, in get_artist_cover upmpdcli | return artist_cover.getCoverArt() upmpdcli | AttributeError: 'ArtistCover' object has no attribute 'getCoverArt'

Expected behavior Browse the artist list

Docker-compose.yaml file upmpdcli: image: giof71/upmpdcli:latest container_name: upmpdcli network_mode: host environment: - PUID=1000 #optional - PGID=1000 #optional - PORT_OFFSET=4 #optional - UPNPAV=0 #not a renderer - OPENHOME=0 #not a renderer - FRIENDLY_NAME=NavidromeUpmpdcli - SUBSONIC_ENABLE=yes - SUBSONIC_AUTOSTART=yes - SUBSONIC_BASE_URL=${SUBSONIC_BASE_URL} - SUBSONIC_PORT=${SUBSONIC_PORT} - SUBSONIC_USER=${SUBSONIC_USER} - SUBSONIC_PASSWORD=${SUBSONIC_PASSWORD - SUBSONIC_DOWNLOAD_PLUGIN=yes #optional, will download updated plugin from the specified branch - SUBSONIC_PLUGIN_BRANCH=latest #optional, it is the branch to be downloaded if SUBSONIC_DOWNLOAD_PLUGIN is set to yes restart: unless-stopped

Additional context Container versions: deluan/navidrome latest d8156521ce64 giof71/upmpdcli latest 6cbe66f83952

tomellis avatar Feb 19 '24 15:02 tomellis