Hi sford56,
Thanks for the kind words!
I just checked the feed and there is indeed a problem: For some reason the site producing the feed is violating the RSS feed protocol. Every news item is supposed to have a unique ID, identifying the particular news item, but a feed might leave this out if it wants to. So in Heartfeed I use the identifier if it is set, and if it isn't I instead use the http address for the news story.
This normally works fine, and the only time I've seen a problem with this is for a few feeds where they don't supply an ID and they reuse the same http link for reoccurring news items (like e.g. The Verge which now and then posts a news item with good deals on tech items, and they always use the same web page for the current deal) -> the "new" news item is marked by Heartfeed as having already been read (since the "old" news item has been read), and in case the image for the old news item is still in the app's cache, this image is shown. So no big deal.
However, your feed is doing something much worse: The feed does set an identifier for all news items, but quite often the identifier is simply "http://", meaning a bunch of news items does have identifiers specified but they are not unique. Looking at those news items which actually do have a unique identifier and thus works fine, this identifier is always equal to the http link to the story (which is common to use as identifier, exactly like I do if identifiers are not set).
So to me it looks as if their feed configuration must have been changed, and when they did so they broke something so that certain items gets a faulty news item identifier. A quick glance at those news items with wrong identifier (i.e. identifier = "http://") seems to indicate that they are all news items corresponding to a listing of a car for sale have, and the news item link always start with "
http://bringatrailer.com/listing/<something indicating the actual listing>". So if an item corresponds to a car being listed, the identifier is identical to all other listings -> the image shown will all be the same, and the image will simply be the image corresponding to the image corresponding to the first item with this same identifier (and read status of the items will all be the same when identifiers are the same).
Unfortunately it is not trivial to fix in the app. One way I see as possible would be to change Heartfeed to always ignore the identifiers specified by the feed and instead always use the http link to the story. I think this would almost always work, but I don't like this idea since it means if some feed has correctly configured unique identifiers while reusing web link addresses, this feed would work with the current Heartfeed but fail to work with one where I skip identifiers and instead use addresses. So in essence, I'd punish well-behaved feeds while being kind to misbehaving ones.
Another way would be to skip trying to be smart about finding images; I could simply always look for the image in the feed instead of trying to see if I already have an image for a given identifier, and also never caching found images. I suspect this is what other apps do. But this would have a cost in bandwidth usage which is why I'm hesitant about going in that direction.
Way too long answer I'm afraid
Anyhow, action possibilities:
- I'll think about it a bit more to see if I can come up with some harmless way of handling a misconfigured feed like this, but not sure if I'll get anywhere.
- We could also hope that the site notices the misconfiguration as well.
- Or if you feel lika taking action, you could send them a mail about their bug (if so, feel free to refer to this comment).
Hope at least this explains the issue and maybe helps somewhat!