github bscott/subtrackr v0.6.5
v0.6.5 - Cancellation Notice Periods, Search & Autopay

3 hours ago

What's New

Per-Subscription Cancellation Notice Period (#132)

  • New Cancellation Notice (days) field on every subscription (0–365; default 0 keeps existing behavior)
  • Renewal reminders now count down to the cancel-by deadline (renewal date minus notice period) across email, Pushover, Telegram, and webhooks, with clear "Cancel by" wording
  • Once a deadline passes, reminders fall back to the renewal date so no subscription goes silent
  • Cancel-by deadlines are shown in the subscription list, the in-app calendar, and the iCal export/subscription feed
  • Available via the REST API, MCP tools, and CSV export; localized in English, German, Spanish, and Dutch

Subscription Search

  • Filter the subscription list live, without disrupting column sorting

Autopay Tracking

  • Track whether each subscription is charged automatically (yes / no / not recorded), with list badges, form toggle, CSV export, and MCP support

ARMv7 Docker Support (#133)

  • Docker images now also build for linux/arm/v7 (32-bit Raspberry Pi and similar boards) — thanks to @DustinOnGithub for the contribution

Technical Changes

  • New migration adds cancellation_notice_days (default 0), clamped to 0–365 on all write paths
  • Reminder de-duplication state resets when a notice period changes mid-cycle
  • Webhook renewal reminders keep the stable renewal_reminder event name; payloads now include cancel_by_date and cancellation_notice_days
  • Notification text unified in a shared builder across all four channels
  • New unit, handler, migration, and Playwright end-to-end coverage

Don't miss a new subtrackr release

NewReleases is sending notifications on new releases.