Skip to content

FeedEcho v1.5.0 — Pause, Retries & Failure Notifications

Choose a tag to compare

@jcrabapple jcrabapple released this 09 Aug 01:06
· 2 commits to master since this release

FeedEcho v1.5.0 — Pause, Retries & Failure Notifications

Reliability release: feeds can be paused, failed deliveries retry intelligently, and FeedEcho tells you when something is broken.

Per-feed pause

Pause button on each feed (Feeds page). Paused feeds are skipped entirely — no fetching, no posting — while echoes and cursor state are preserved for when you resume. Useful for feeds that go temporarily spammy (liveblogs, event coverage).

Bounded retries with backoff

  • Failed deliveries retry automatically with exponential backoff (default: 5 min, doubling per attempt, capped at 1 day)
  • Max attempts setting (default 5, 0 = retry forever). Exhausted items are marked Gave up — terminal — so one broken item can no longer stall the whole feed
  • A retry sweep after each feed check picks up due retries even behind the cursor; items that have aged out of the feed give up cleanly instead of looping
  • History shows attempt counts and next retry times, with per-row Retry (reset + requeue) and Give up actions

Failure notifications

  • After N consecutive failed delivery attempts (default 3), FeedEcho emails you once via the existing SMTP settings — with the likely causes (expired Mastodon token, changed SMTP credentials, unreachable host)
  • One recovery email when delivery starts working again
  • Alert state is persisted, so restarts don't re-send alerts
  • Notification address defaults to your first email account; overridable in Settings

All knobs live in Settings → Retries & Failure Notifications.

Quality

  • 12 new tests: pause behavior, backoff gating, give-up at cap, retry sweep, notification state machine (97 total passing)
  • Schema migrates automatically on startup

Upgrade

Docker: `docker compose pull && docker compose up -d`. From source: pull master and restart. No config changes required.