# playlist is always in-library
playlist.in_library = True
await self.mass.music.playlists.add_db_item(playlist)
+ except MusicAssistantError as err:
+ self.logger.error("Error processing %s - %s", item.path, str(err))
except Exception as err: # pylint: disable=broad-except
# we don't want the whole sync to crash on one file so we catch all exceptions here
self.logger.exception("Error processing %s - %s", item.path, str(err))
]
else:
# default action is to skip the track
- raise InvalidDataError(f"{file_item.path} is missing ID3 tag [albumartist]")
+ raise InvalidDataError("missing ID3 tag [albumartist]")
track.album = await self._parse_album(
tags.album,
)
)
if authors := playlist_obj.get("author"):
- playlist.owner = authors[0]["name"] if isinstance(authors, list) else authors["name"]
+ if isinstance(authors, str):
+ playlist.owner = authors
+ elif isinstance(authors, list):
+ playlist.owner = authors[0]["name"]
+ else:
+ playlist.owner = authors["name"]
else:
playlist.owner = self.instance_id
playlist.metadata.checksum = playlist_obj.get("checksum")