datatracker icon indicating copy to clipboard operation
datatracker copied to clipboard

Invalid Atom Feed for Tracking RFC Drafts

Open Saklad5 opened this issue 3 years ago • 8 comments

Describe the issue

The Atom feed offered for fetching changes to a user's tracked drafts is not valid. It fails W3C's Feed Validator in many ways, but the main problem is that it does not have actual URLs for the entries.

This manifests itself by making it impossible to open updated drafts from within feed readers such as NetNewsWire: as an example, the article URL for a recent draft revision in my feed is /doc/draft-ietf-dnssd-srp/, rather than https://datatracker.ietf.org/doc/draft-ietf-dnssd-srp/17/.

This doesn't make the feed useless, as it still serves to let me know that changes to drafts I'm interested in have occurred. It does make it considerably more annoying to use, though, as I have to manually navigate to the revised drafts to view them.


While not necessarily a bug, I also feel that the feed (or an alternative version thereof) could stand to benefit from some deduplication. Each revision of each draft generates three distinct "articles" in the Atom feed: one marking the upload of a new revision, one marking the acceptance of a new revision, and one marking the availability of a new revision. Omitting the first two events (unless they somehow fail to lead to the third) would make the Atom feed easier to browse.

Code of Conduct

Saklad5 avatar Oct 12 '22 20:10 Saklad5

One of the other issues causing it to fail validation is that the feed's timestamps, while compliant with ISO 8601, are not compliant with RFC 3339. I believe the precise issue is that the UTC offset is missing a colon.

Saklad5 avatar Oct 12 '22 21:10 Saklad5

The W3C validator is actually wrong about the encoding: they're using the obsolete RFC 3023, which says that text/xml's encoding is US-ASCII by default, instead of the current RFC 7303, which uses UTF-8 by default.

I've opened an issue for that with them as well.

Saklad5 avatar Oct 12 '22 21:10 Saklad5

See also #4311.

rjsparks avatar Oct 13 '22 23:10 rjsparks

It's all very ironic.

Saklad5 avatar Oct 13 '22 23:10 Saklad5

We can investigate what you are describing as de-duplication, but the feed is on docevents, and there are people that are interested in each of those doc events.

rjsparks avatar Oct 13 '22 23:10 rjsparks

We can investigate what you are describing as de-duplication, but the feed is on docevents, and there are people that are interested in each of those doc events.

I recognize that. It isn't necessarily something to "fix", and it may not be worth the effort of making a third variant of feed. But I felt it was worth mentioning.

The three articles for each revision all get updated and published in the same second, which implies that they are not discrete events. Would it make sense to combine them somehow?

Saklad5 avatar Oct 13 '22 23:10 Saklad5

For many drafts, preconditions are such that these three events happen close to each other, but that is not always the case. The first two, in particular, can be separated by days.

rjsparks avatar Oct 14 '22 15:10 rjsparks

I've also noticed that the Atom feed isn't being cached correctly: it includes an updated timestamp that changes every quarter-hour or so, even if nothing else in the feed has. That causes ETags to no longer match, which causes the entire feed to be transferred again.

Saklad5 avatar Oct 20 '22 19:10 Saklad5