github Starosdev/scrutiny v1.76.0

4 hours ago

v1.76.0 (2026-09-27)

Release Highlights

Before upgrading: back up scrutiny.db. The first start runs a one-time migration that deletes duplicate settings rows, keeping the most recent value of each key. SQLite stays the default; PostgreSQL is opt-in.

  • Add optional PostgreSQL backend (#899) - Fixes #880, Fixes #888, Fixes #889
    • Full setup guide: docs/POSTGRESQL.md.
    • New web.database.type: postgres with web.database.dsn. It works through pgbouncer in transaction mode, since no prepared statements are used.
    • New scrutiny db import-sqlite --from moves an existing SQLite install to PostgreSQL.
    • With several replicas, one replica holds a lease and runs the monitors, the report scheduler, and notification delivery. Other replicas record their notifications in an outbox table that the leader drains. A report run is claimed before it is sent, so it goes out once.
    • Quiet-hours notifications are now stored in the database, so they survive a restart.
    • The health check reports the configured database (sqlite or postgres).
    • Fix (#888): the heartbeat setting of a new notification URL is now saved as entered. Before, a new URL saved with heartbeat off was stored with heartbeat on. After upgrading, check the heartbeat toggle on each notification URL.
    • Fix (#889): the settings table now keeps one row per key and enforces it with a unique index. The migration removes existing duplicates.

Don't miss a new scrutiny release

NewReleases is sending notifications on new releases.