Skip to main content

RSS Tests

As described in FeedPipe (Part 3), index/feed items have a revisions property defined in the item metadata. The list of revisions acts as a CHANGELOG for the item, and each revision is marked as major or minor. A major revision should result in a change notification in the RSS feed, while a minor revision should not.

For example, an index of books may only mark revisions as major when a new edition of the book is published. In this case, users see a change notification in the RSS feed, with the reason for the notification in the RSS item description. Users do not get notifications for minor revisions, such as the addition of comments/reviews. The goal is to keep the signal to noise ratio high.

Some people may be interested in getting change notifications for minor revisions as well. It would be easy to provide an additional RSS feed that includes all revisions.

I am using RSS 2.0 to implement feeds. In the specification, each item can optionally have a guid (globally unique identifier) that identifies the item. The specification says:

When present, an aggregator may choose to use this string to determine if an item is new.

In FeedPipe, a guid is specified in {link}#{timestamp} format, where link is the item URL and timestamp is the UTC timestamp of the most recent major revision (or any revision for the feed that includes all revisions). This should result in change notifications as desired.

Tests

I recently subscribed to the RSS feed of a friend’s wiki, and I get change notifications even when there are no changes. Investigating the issue, I found that the RSS items do not include a guid and the item description keeps changing due to a bug in the wiki software. Since the above design is an important aspect of FeedPipe, I decided to do some tests and confirm the behavior.

I tested with the two RSS feed readers that I use regularly: Thunderbird and Newsboat.

First, I tested an RSS feed with a guid specified for each item. The behavior of both feed readers is the same:

Change Thunderbird Notification? Newsboat Notification?
guid Yes Yes
pubDate No No
title No No
description No No

This is the expected/desired behavior. The RSS specification says “may choose,” but I hope that other feed readers behave in this way.

Next, I tested an RSS feed with no guid specified for each item. The behavior of the tested feed readers is different:

Change Thunderbird Notification? Newsboat Notification?
pubDate No Yes
title Yes No
description Yes No

That is unexpected. It is not an issue for FeedPipe, however, where each item has a guid.

Author

Travis Cardwell

Published

Tags