Skip to content

Commit 9e59ad2

Browse files
Merge pull request #33 from Keeper-of-the-Keys/episode-art-refinement
Episode art refinement
2 parents f5b6422 + 3325146 commit 9e59ad2

File tree

4 files changed

+13
-8
lines changed

4 files changed

+13
-8
lines changed

share/man/man1/gpo.1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
.TH GPO "1" "March 2020" "gpodder 4.11.0" "User Commands"
1+
.TH GPO "1" "April 2020" "gpodder 4.11.1" "User Commands"
22
.SH NAME
33
gpo \- gPodder command-line interface
44
.SH SYNOPSIS

src/gpodder/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@
5050
# This metadata block gets parsed by setup.py - use single quotes only
5151
__tagline__ = 'Media and podcast aggregator'
5252
__author__ = 'Thomas Perl <[email protected]>'
53-
__version__ = '4.11.0'
54-
__date__ = '2020-03-31'
53+
__version__ = '4.11.1'
54+
__date__ = '2020-04-10'
5555
__relname__ = 'Geshem'
5656
__copyright__ = '© 2005-2020 Thomas Perl and the gPodder Team'
5757
__license__ = 'ISC / GPLv3 or later'

src/gpodder/model.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ class PodcastEpisode(EpisodeModelFields, PodcastModelMixin):
129129
MAX_FILENAME_LENGTH = 200
130130

131131
UPDATE_KEYS = ('title', 'url', 'description', 'link', 'published', 'guid', 'file_size',
132-
'payment_url', 'subtitle', 'description_html')
132+
'payment_url', 'subtitle', 'description_html', 'episode_art_url')
133133

134134
class __minidb_defaults__:
135135
url = ''

src/gpodder/plugins/soundcloud.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -233,16 +233,21 @@ def get_new_episodes(self, channel):
233233

234234
def _get_new_episodes(self, channel, track_type):
235235
tracks = [t for t in self.sc_user.get_tracks(track_type, channel)]
236-
237-
existing_guids = [episode.guid for episode in channel.episodes]
236+
existing_guids = dict((episode.guid, episode) for episode in channel.episodes)
238237
seen_guids = [track['guid'] for track in tracks]
239238
new_episodes = []
240239

241240
for track in tracks:
242-
if track['guid'] not in existing_guids:
241+
episode = existing_guids.get(track['guid'])
242+
243+
if not episode:
243244
episode = channel.episode_factory(track.items())
244-
episode.save()
245245
new_episodes.append(episode)
246+
logger.info('Found new episode: %s', episode.guid)
247+
else:
248+
episode.update_from_dict(track)
249+
logger.info('Updating existing episode: %s', episode.guid)
250+
episode.save()
246251

247252
return new_episodes, seen_guids
248253

0 commit comments

Comments
 (0)