X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Flib%2Fwebserv.py;h=699385d7587c09d22f8553f71047880bb2cd22fc;hb=24cc6f0ba625f217d6127fc0cee880b22a8c6cbf;hp=f1afd55a41b7e2f279fed0d3ec0d02bd28ec6594;hpb=a6a2ea116e050cd0f1c3f81a392878bcd22a5960;p=mpd-sima.git diff --git a/sima/lib/webserv.py b/sima/lib/webserv.py index f1afd55..699385d 100644 --- a/sima/lib/webserv.py +++ b/sima/lib/webserv.py @@ -143,8 +143,7 @@ class WebService(Plugin): # TODO: move to utils as a decorator duration = self.daemon_conf.getint('sima', 'history_duration') art_in_hist = list() - for trk in self.sdb.get_history(duration=duration, - artists=alist): + for trk in self.sdb.get_history(duration=duration, artists=alist): if trk[0] not in art_in_hist: art_in_hist.append(trk[0]) art_in_hist.reverse() @@ -179,8 +178,7 @@ class WebService(Plugin): # initialize artists deque list to construct from DB as_art = deque() as_artists = self.ws().get_similar(artist=artist) - self.log.debug('Requesting {1} for "{0}"'.format(artist, - self.ws.name)) + self.log.debug('Requesting {} for {!r}'.format(self.ws.name,artist)) try: # TODO: let's propagate Artist type [as_art.append(str(art)) for art in as_artists] @@ -246,14 +244,17 @@ class WebService(Plugin): self.log.warning('Got nothing from music library.') self.log.warning('Try running in debug mode to guess why...') return [] - self.log.info('Got {} artists in library'.format(len(ret))) queued_artists = { trk.artist for trk in self.player.queue } if ret & queued_artists: self.log.debug('Removing already queued artist: {0}'.format(ret & queued_artists)) - ret = list(ret - queued_artists) + ret = ret - queued_artists + if self.player.current.artist in ret: + self.log.debug('Removing current artist: {0}'.format(self.player.current.artist)) + ret = ret - {self.player.current.artist} # Move around similars items to get in unplayed|not recently played # artist first. - return self._get_artists_list_reorg(ret) + self.log.info('Got {} artists in library'.format(len(ret))) + return self._get_artists_list_reorg(list(ret)) def _get_album_history(self, artist=None): """Retrieve album history"""