Implement an interface to view feeds with loading errors #31

Closed
opened 2026-06-30 06:05:58 -07:00 by serrebi · 2 comments
Owner

Over time, RSS feeds may stop working due to various reasons (e.g., moved/deleted content, changed URLs, server errors). Currently, there is no obvious indication for the user when a feed fails to load. As a result, users may simply assume that a feed has no new articles, rather than realizing that the feed itself is failing to update.

This lack of visibility makes it difficult for users to maintain an up‑to‑date list of feeds. They cannot easily identify which feeds are broken, so they may keep outdated or non‑functional feeds in their collection without knowing it.

Desired behavior

Provide a clear and accessible way for users to see which feeds failed to load during the latest update, along with relevant error information. This should help users decide whether to fix the feed URL, adjust settings, or remove the feed entirely.

Proposed solution

Add a new category in the feed/article navigation view: “Feeds with Errors” (or “Problematic Feeds”).

This category should:

  • Appear alongside existing built‑in categories such as:
    • All Articles
    • Unread Articles
    • Read Articles
    • Favorites
    • Uncategorized
  • Display a list of feeds that encountered errors during their most recent update attempt.
  • Show, for each feed in the list:
    • Feed name
    • Last update attempt timestamp
    • Error status/message (e.g., “HTTP 404: Not Found”, “Connection timed out”, “Invalid feed format”)
    • Optionally, the number of consecutive failed updates (to distinguish one‑off glitches from permanently broken feeds)

Possible UI implementations:

  1. As a filter/category in the main sidebar – similar to “Unread Articles”, clicking “Feeds with Errors” shows only the problematic feeds and their latest error details.
  2. Optional detail panel – when a user selects a feed from the “Feeds with Errors” category, show more detailed error logs (e.g., HTTP status codes, raw error messages, last successful update date) in a text view field.

The goal is to make it easy to spot, inspect, and act on broken feeds.

Acceptance criteria

  • A new category “Feeds with Errors” is available in the navigation/filter UI.
  • The category appears alongside other built‑in categories (“All Articles”, “Unread Articles”, etc.).
  • Only feeds that failed during their latest update attempt are shown in this category.
  • For each feed in the category, the UI displays:
    • Feed name
    • Last update attempt time
    • Clear error status/message
    • (Optional) Number of consecutive failures
  • Selecting a feed from this category provides enough context to help the user decide how to fix or remove it.
  • One‑off transient errors (e.g., temporary network issues) are distinguishable from persistent failures (e.g., via consecutive failure count or error type).
  • Keyboard navigation and accessibility requirements are preserved for all new UI elements.
Over time, RSS feeds may stop working due to various reasons (e.g., moved/deleted content, changed URLs, server errors). Currently, there is no obvious indication for the user when a feed fails to load. As a result, users may simply assume that a feed has no new articles, rather than realizing that the feed itself is failing to update. This lack of visibility makes it difficult for users to maintain an up‑to‑date list of feeds. They cannot easily identify which feeds are broken, so they may keep outdated or non‑functional feeds in their collection without knowing it. #### Desired behavior Provide a clear and accessible way for users to see which feeds failed to load during the latest update, along with relevant error information. This should help users decide whether to fix the feed URL, adjust settings, or remove the feed entirely. #### Proposed solution Add a new category in the feed/article navigation view: **“Feeds with Errors”** (or “Problematic Feeds”). This category should: - Appear alongside existing built‑in categories such as: - All Articles - Unread Articles - Read Articles - Favorites - Uncategorized - Display a list of feeds that encountered errors during their most recent update attempt. - Show, for each feed in the list: - Feed name - Last update attempt timestamp - Error status/message (e.g., “HTTP 404: Not Found”, “Connection timed out”, “Invalid feed format”) - Optionally, the number of consecutive failed updates (to distinguish one‑off glitches from permanently broken feeds) Possible UI implementations: 1. **As a filter/category in the main sidebar** – similar to “Unread Articles”, clicking “Feeds with Errors” shows only the problematic feeds and their latest error details. 2. **Optional detail panel** – when a user selects a feed from the “Feeds with Errors” category, show more detailed error logs (e.g., HTTP status codes, raw error messages, last successful update date) in a text view field. The goal is to make it easy to spot, inspect, and act on broken feeds. #### Acceptance criteria - [ ] A new category “Feeds with Errors” is available in the navigation/filter UI. - [ ] The category appears alongside other built‑in categories (“All Articles”, “Unread Articles”, etc.). - [ ] Only feeds that failed during their latest update attempt are shown in this category. - [ ] For each feed in the category, the UI displays: - Feed name - Last update attempt time - Clear error status/message - (Optional) Number of consecutive failures - [ ] Selecting a feed from this category provides enough context to help the user decide how to fix or remove it. - [ ] One‑off transient errors (e.g., temporary network issues) are distinguishable from persistent failures (e.g., via consecutive failure count or error type). - [ ] Keyboard navigation and accessibility requirements are preserved for all new UI elements. <!-- forgejo-github-sync: issue github=serrebidev/BlindRSS#32 -->
Author
Owner

Implemented in v1.71.0.

BlindRSS now records why each feed's most recent update failed and surfaces it in a dedicated view.

  • New File → View Feed Errors… opens an accessible dialog listing every feed whose latest update attempt failed.
  • For each feed it shows the name, last attempt time, consecutive-failure count (so a one-off network blip is distinguishable from a permanently broken feed), and the full error message (e.g. "HTTP 404: Not Found", "Connection timed out", invalid feed format) in a detail field.
  • From the dialog you can Refresh Selected to retry, Copy Details, open Feed Properties… to fix the URL or adjust per-feed settings, or Remove Feed.
  • Errors are persisted in the database, so the list survives restarts; a feed drops off the list automatically once it updates successfully.

One deviation from the proposal: per the maintainer's preference this is a File-menu view rather than a new sidebar category, which keeps the built-in categories list unchanged. Full keyboard navigation and screen-reader labels are in place.

Implemented in **v1.71.0**. BlindRSS now records why each feed's most recent update failed and surfaces it in a dedicated view. - New **File → View Feed Errors…** opens an accessible dialog listing every feed whose latest update attempt failed. - For each feed it shows the **name**, **last attempt time**, **consecutive-failure count** (so a one-off network blip is distinguishable from a permanently broken feed), and the **full error message** (e.g. "HTTP 404: Not Found", "Connection timed out", invalid feed format) in a detail field. - From the dialog you can **Refresh Selected** to retry, **Copy Details**, open **Feed Properties…** to fix the URL or adjust per-feed settings, or **Remove Feed**. - Errors are persisted in the database, so the list survives restarts; a feed drops off the list automatically once it updates successfully. One deviation from the proposal: per the maintainer's preference this is a **File-menu view** rather than a new sidebar category, which keeps the built-in categories list unchanged. Full keyboard navigation and screen-reader labels are in place. <!-- forgejo-github-sync: comment github=serrebidev/BlindRSS#32/4845531459 -->
Author
Owner

Thanks! The issue is resolved and I’m closing it now.

Thanks! The issue is resolved and I’m closing it now. <!-- forgejo-github-sync: comment github=serrebidev/BlindRSS#32/4847275296 -->
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
serrebi/BlindRSS#31
No description provided.