[gpodder] Re: Podcast URL normalization

  • From: Kevin Hausmann <kevin@xxxxxxxxxxxxxxxxxxxxx>
  • To: gpodder@xxxxxxxxxxxxx
  • Date: Wed, 30 Apr 2014 16:26:20 +0200

On 28 April 2014 21:51, Thomas Perl <th.perl@xxxxxxxxx> wrote:
> On 2014-04-27 21:20, Kevin Hausmann wrote:
>>>
>>> >Just use the API, that's what it's here for. A database dump is not
>>> >available and not the way to go here. If you have subscription sync, you
>>> >upload the newly-added subscriptions and get - in the reply - the
>>> > canonical
>>> >URL back (if it's different from the added one), and update your local
>>> >database to have the canonical URL instead of the alias one.
>>
>> No. This is not an option since gpodder.net is not the only sync
>> service Podcatcher Deluxe supports and the user can enable/disable
>> sync at any time. The podcast URL is used as an ID in multiple places
>> within the app's data model and I cannot change it around at will or
>> rely on gpodder.net being available whenever the users adds a new
>> podcast. Simply imagine the case where the user has been using the app
>> for a while and then starts to sync with gpodder.net. Any exported
>> OPML would yield duplicate entries and the episode metadata look-up by
>> podcast (again, URL is ID) would break.
>
>
> Well, there is your problem. Using the podcast URL as ID is not the way to
> go. What if the original feed sends a HTTP 301 (for some months, before the
> old URL becomes invalid for some reason not under control of the author)?
> Then you should update the URL on the client, if you are using the URL as
> ID, that's going to be problematic, anyway. Or the feed could be even more
> exotic and use RSS Redirection[1] to redirect to a new URL. In any case, the
> problem here is really that you are using something that's not suitable as a
> unique ID/primary key in your data model.

Thomas, thanks for taking the time to write this all up. I never had
any issues with using the URL (until I implemented sync) and still
think that there are also advantages. That said, your comments on
redirects are of course very valid, I will experiment with other IDs
and come back to this point. And by the way, what ID does gpodder use
for episodes?

And, even if it is only to estimate how big my problem is, can you
share how many podcast URL aliases are represented in the gpodder.net
database?

Best, K.

Other related posts: