Skip to content

Conversation

paytonison
Copy link

Add auto-generated RSS feed for new/updated Cookbook content

Summary

This PR introduces an automated RSS (Atom-compatible) feed so users can subscribe to Cookbook updates without watching the repo or checking manually.

  • Solves issue [FEATURE] Add an rss feed #2103.
  • Generates rss.xml from registry.yaml + authors.yaml
  • Publishes/updates the feed on every push to main via GitHub Actions
  • Documents the feed URL in the README

Changes

  • New: .github/scripts/generate_rss.py
    • Builds rss.xml (UTF-8, XML declaration)
    • Sorts entries by date (desc), skips archived: true
    • Uses GitHub blob links for stable item permalinks
    • Maps tags → <category> and authors → dc:creator
    • Sets channel lastBuildDate to newest entry date (or now UTC if none)
  • New: .github/workflows/generate-rss.yaml
    • Runs on push to main and workflow_dispatch
    • Installs pyyaml, runs the generator, commits rss.xml if changed
  • Docs: README.md
    • Adds “Subscribe to updates via RSS” with the feed URL
  • Artifact: rss.xml at repo root (auto-updated by CI)

Motivation

Many users prefer a feed reader to track new tutorials, examples, and significant docs revisions. GitHub “Watch → All activity” is noisy; an RSS feed is low-friction and standard.

Implementation details

  • Source of truth: registry.yaml (plus authors.yaml)
  • Links: Each item links to the GitHub source (/blob/main/<path>) for stability.
  • Metadata:
    • title, pubDate from entry date
    • guid is a permalink to the blob URL
    • description includes Tags and Authors
    • Dublin Core dc:creator for each author
  • Limits: Emits up to 100 most recent non-archived entries.
  • Namespaces: Adds dc namespace for creators.

Feed location

Testing

Local

This pull request introduces automated generation and publishing of an RSS feed for the OpenAI Cookbook, making it easier for users to subscribe to updates. The main changes include adding a Python script to build the RSS feed from existing data, setting up a GitHub Actions workflow to run this script and publish rss.xml on every push to main, and updating documentation to advertise the RSS feed.

RSS Feed Generation and Automation:

  • Added .github/scripts/generate_rss.py, a Python script that reads registry.yaml and authors.yaml to generate an RSS 2.0 feed (rss.xml). The feed includes metadata, links to source files, and skips archived items.
  • Introduced .github/workflows/generate-rss.yaml, a GitHub Actions workflow that runs the RSS generation script on pushes to main, installs dependencies, and commits/pushes updates to rss.xml if there are changes.

Documentation Update:

  • Updated README.md to include a link to the new RSS feed, allowing users to easily subscribe to cookbook updates.

Introduces a Python script to generate an RSS feed from registry.yaml and authors.yaml, a GitHub Actions workflow to automate feed updates on main branch changes, and adds the generated rss.xml file. Updates README to include RSS subscription link.
@Copilot Copilot AI review requested due to automatic review settings September 9, 2025 05:33
Copilot

This comment was marked as outdated.

paytonison and others added 3 commits September 8, 2025 23:35
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@paytonison paytonison requested a review from Copilot September 9, 2025 05:36
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces automated RSS feed generation for the OpenAI Cookbook, making it easier for users to subscribe to updates without manually watching the repository. The implementation builds an RSS 2.0 feed from existing YAML data and publishes it automatically via GitHub Actions.

  • Automated RSS feed generation from registry.yaml and authors.yaml data
  • GitHub Actions workflow for automatic feed updates on every push to main
  • Documentation update advertising the RSS feed URL to users

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
.github/scripts/generate_rss.py Python script that builds RSS 2.0 feed from YAML data with proper metadata and Dublin Core namespaces
.github/workflows/generate-rss.yaml GitHub Actions workflow that runs RSS generation and commits updates automatically
README.md Adds RSS feed subscription link for user visibility
rss.xml Generated RSS feed artifact containing all cookbook entries with metadata

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

paytonison and others added 6 commits September 8, 2025 23:38
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: paytonison <148833579+paytonison@users.noreply.github.com>
Fix duplicate namespace declarations in RSS feed XML generation
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

Successfully merging this pull request may close these issues.

2 participants