Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add RSS feed for announcements, notes, logs #625

Open
stickies-v opened this issue Feb 10, 2023 · 5 comments
Open

Add RSS feed for announcements, notes, logs #625

stickies-v opened this issue Feb 10, 2023 · 5 comments

Comments

@stickies-v
Copy link
Contributor

Instead of having people rely on Twitter or announcements in the IRC channel, I think having an RSS feed would be nice?

The most naive approach is to push an update for any change to the _posts/ dir, or perhaps more elegantly could also allow people to individually subscribe to announcements, questions/nodes, and logs updates.

Found e.g. https://github.com/jekyll/jekyll-feed which seems to also supports tagging.

@stickies-v stickies-v changed the title Add RSS feed for notes Add RSS feed for announcements, notes, logs Feb 10, 2023
@jnewbery
Copy link
Contributor

Hi @stickies-v . We already do publish an Atom feed here: https://bitcoincore.reviews/feed.xml using the jekyll-feed plugin.

I think there are a couple of things we could do to improve the feed:

  1. Advertise it a bit better. Perhaps there could be links to twitter and the feed somewhere very visible on the site like this:

image

  1. The feed generator generates an entry for all posts, including upcoming posts that don't have notes and questions yet. Feed catchers can then cache those entries so even after the post is updated to include notes and questions, they appear as not having notes and questions:

image

From reading the jekyll-feed docs and a quick read of the code, I couldn't see a way of excluding individual posts from the feed (it excludes draft posts, but marking a post as draft would also prevent it from being published as a page). We could get around that by vendoring in the jekyll-feed plugin and then modifying the feed.xml template to exclude posts with a specific variable in the post front matter. That way the feed could only include posts that have notes and questions written.

If you think either of those are worth doing, I'm happy to show you how to do it/review a PR.

@stickies-v
Copy link
Contributor Author

Thanks, @jnewbery ! I agree that making the feed (and Twitter) more visible would be nice, I was not able to find it. See #648 for an implementation of the first part of your suggestion.

For maintenance reasons, I'm wary of vendoring any plugins myself. I'm also not sure if delaying a post until notes/questions are up is strictly an improvement, I think the announcements are useful as well so people can start looking at the PR already. I'm not sure how it would work in the RSS paradigm to notify people for updates to posts while still keeping the link with the previous version (i.e. not just pushing new seemingly unrelated posts for every update). Or perhaps this is something where the client would be expected to periodically poll and notify the user of diffs? I'm not an RSS user, so I'm just thinking out loud.

@stickies-v stickies-v linked a pull request Mar 24, 2023 that will close this issue
@stickies-v stickies-v removed a link to a pull request Mar 24, 2023
@jnewbery
Copy link
Contributor

I'm not sure how it would work in the RSS paradigm to notify people for updates to posts while still keeping the link with the previous version (i.e. not just pushing new seemingly unrelated posts for every update). Or perhaps this is something where the client would be expected to periodically poll and notify the user of diffs? I'm not an RSS user, so I'm just thinking out loud.

I'm not sure either. At least in the RSS reader that I looked at (feedly), it seemed to be caching the original post, even long after the post had been updated with notes and questions. I think that having an <updated> tag in the feed with a later date might cause it to refresh the cache, but doing so would require setting the last_modified_at tag manually, since github pages can't set that automatically (see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/feed.xml#L62 and github/pages-gem#119).

If we want to just use this as a notification method, then perhaps we could use the excerpt only flag, so that the feed isn't filled with zombie "notes and questions to follow soon!" entries:

image

We would have to add a description parameter in the front matter so that the <summary> tag in the feed shows something sensible, such as "In the review club meeting on {date} we'll review {PR}. See {url} for full details."

What do you think?

@jnewbery
Copy link
Contributor

@stickies-v what do you think about changing the atom feed to just displaying a summary? That'd also prevent any issues like #666 from happening again.

@stickies-v
Copy link
Contributor Author

I think I agree with that. The current full body formatting also looks pretty terrible (unless that's just my client), so I'm not sure anyone's reading it directly on the feed.

So for example just keep the title, pr, components, host, date, and links to review club and pr, for example?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants