if not tags_config.get('filter', None) and \
config_tags.isdisjoint(sup_tags):
log.warning('Found no config for Tags plugin! '
- 'Need at least "filter" or a supported tag')
+ 'Need at least "filter" or a supported tag')
log.info('Supported Tags are : %s', ', '.join(sup_tags))
# raise PluginException('plugin misconfiguration')
return False
if config_tags.difference(sup_tags):
log.error('Found unsupported tag in config: %s',
- config_tags.difference(sup_tags))
+ config_tags.difference(sup_tags))
# raise PluginException('plugin misconfiguration')
return False
return True
if self.plugin_conf['filter']:
# Use window to limit response size
self.player.find(self.plugin_conf['filter'], "window", (0, 1))
- except CommandError:
+ except CommandError as err:
raise PluginException('Badly formated filter in tags plugin configuration: "%s"'
- % self.plugin_conf['filter'])
+ % self.plugin_conf['filter']) from err
def callback_need_track(self):
candidates = []
for artist in artists:
self.log.debug('looking for %s', artist)
tracks = self.player.find_tracks(artist)
- trk = self.filter_track(tracks)
+ if not tracks:
+ continue
+ trk = self.filter_track(tracks, candidates)
if not trk:
continue
if queue_mode == 'track':