yesodweb / yesod

A RESTful Haskell web framework built on WAI.
http://www.yesodweb.com/
MIT License
2.64k stars 374 forks source link

logo element should not go at end of Atom feed from yesod-newsfeed #1743

Open cdepillabout opened 2 years ago

cdepillabout commented 2 years ago

It appears that Atom feeds produced by yesod-newsfeed don't validate the w3 validator: https://validator.w3.org/feed/check.cgi

In particular, my personal website is using yesod-newsfeed, and it has the following errors: https://validator.w3.org/feed/check.cgi?url=https%3A%2F%2Ffunctor.tokyo%2Fblog%2Ffeed

image

This appears to be caused by Yesod.AtomFeed.template putting the logo at the end of the feed, instead of near the top:

https://github.com/yesodweb/yesod/blob/b54210cef2298e90a2f3d10b1c4afae6f9f8efc2/yesod-newsfeed/Yesod/AtomFeed.hs#L64-L75

I tried to read through the Atom specification to find where it was specified that logo must come before any entries, but I couldn't actually find anything saying this: https://datatracker.ietf.org/doc/html/rfc4287. So it is also entirely possible that the w3 validator is incorrect here, and it is okay to have logo at the end of a feed.

All things considered, I think this is a very benign bug (if a bug at all).

schoettl commented 2 years ago

I think it wouldn't hurt to move the logo up and put it before the feedEntries... and the validator would be happy ;)

But I also don't know why the implementers of the validator think that this matters.