Healthchecks Versions Save

Open-source cron job and background task monitoring service, written in Python & Django

v2.8

1 year ago

Improvements

  • Add GitHub Actions examples
  • Update the Dockerfile to use Python 3.11
  • Update the Ping Details dialog to show the "HTML" tab by default (#801)
  • Add a "Switch Project" menu in top navigation
  • Update Trello onboarding form to allow longer Trello auth tokens (#806)
  • Remove L10N markup from base.html, and associated translations
  • Add Arduino usage example
  • Upgrade to Django 4.2
  • Add email fallback for Signal notifications that hit rate limit
  • Make warnings about no backup second factor more assertive
  • Add cron expression tester and sample expressions in the cron cheatsheet page

Bug Fixes

  • Fix notification query in the Log page

v2.7

1 year ago

Improvements

  • Add last ping body in Mattermost notifications (#785)
  • Improve the error message about rejected private IPs
  • Update Docker image's uwsgi.ini to use SMTPD_PORT env var (#791)
  • Update Telegram notification template to include more data
  • Add CSRF protection in the signup view

Bug Fixes

  • Fix URL validation to allow hostnames with no TLD ("http://example") (#782)
  • Add handling for ProtocolError exceptions in hc.lib.s3.get_object
  • Fix a race condition in Check.ping method
  • Fix the SameSite and Secure attributes on the "auto-login" cookie
  • Fix the "Test" button in the Integrations screen for read-only users
  • Add form double submit protection when registering a WebAuthn key

v2.6.1

1 year ago

Improvements

  • Improve Prometheus docs, add section "Available Metrics"

Bug Fixes

  • Fix a crash in the "createsuperuser" management command (#779)

v2.6

1 year ago

Improvements

  • Improve layout in "My Checks" for checks with long ping URLs (#745)
  • Add support for communicating with signal-cli over TCP (#732)
  • Add /api/v2/ (changes the status reporting of checks in started state) (#633)
  • Update settings.py to read the ADMINS setting from an environment variable
  • Add "Start Keyword" filtering for inbound emails (#716)
  • Add rate limiting by client IP in the signup and login views

Bug Fixes

  • Fix the Signal integration to handle unexpected RPC messages better (#763)
  • Fix special character encoding in Signal notifications (#767)
  • Fix project sort order to be case-insensitive everywhere in the UI (#768)
  • Fix special character encoding in project invite emails
  • Fix check transfer between same account's projects when at check limit
  • Fix wording in the invite email when inviting read-only users
  • Fix login and signup views to make email enumeration harder

v2.5

1 year ago

Improvements

  • Upgrade to fido2 1.1.0 and simplify hc.lib.webauthn
  • Add handling for ipv4address:port values in the X-Forwarded-For header (#714)
  • Add a form for submitting Signal CAPTCHA solutions
  • Add Duration field in the Ping Details dialog (#720)
  • Update Mattermost setup instructions
  • Add support for specifying a run ID via a "rid" query parameter (#722)
  • Add last ping body in Slack notifications (#735)
  • Add ntfy integration (#728)
  • Add ".txt" suffix to the filename when downloading ping body (#738)
  • Add API support for fetching ping bodies (#737)
  • Change "Settings - Email Reports" page to allow manual timezone selection

Bug Fixes

  • Fix the most recent ping lookup in the "Ping Details" dialog
  • Fix binary data handling in the hc.front.views.ping_body view
  • Fix downtime summaries in weekly reports (#736)
  • Fix week, month boundary calculation to use user's timezone

v2.4.1

1 year ago

Bug Fixes

  • Fix the GHA workflow for building arm/v7 docker image

v2.4

1 year ago

Improvements

  • Add support for EMAIL_USE_SSL environment variable (#685)
  • Switch from requests to pycurl
  • Implement documentation search
  • Add date filters in the Log page
  • Upgrade to cronsim 2.3
  • Add support for the $BODY placeholder in webhook payloads (#708)
  • Implement the "Clear Events" function
  • Add support for custom topics in Zulip notifications (#583)

Bug Fixes

  • Fix the handling of TooManyRedirects exceptions
  • Fix MySQL 8 support in the Docker image (upgrade from buster to bullseye) (#717)

v2.3

1 year ago

Improvements

  • Update Dockerfile to start SMTP listener (#668)
  • Implement the "Add Check" dialog
  • Include last ping type in Slack, Mattermost, Discord notifications
  • Upgrade to cron-descriptor 1.2.30
  • Add "Filter by keywords in the message body" feature (#653)
  • Upgrade to HiDPI screenshots in the documentation
  • Add support for the $JSON placeholder in webhook payloads
  • Add ping endpoints for "log" events
  • Add the "Badges" page in docs
  • Add support for multiple recipients in incoming email (#669)
  • Upgrade to fido2 1.0.0, requests 2.28.1, segno 1.5.2
  • Implement auto-refresh and running indicator in the My Projects page (#681)
  • Upgrade to Django 4.1 and django-compressor 4.1
  • Add API support for resuming paused checks (#687)

Bug Fixes

  • Fix the display of ignored pings with non-zero exit status
  • Fix a race condition in the "Change Email" flow
  • Fix grouping and sorting in the text version of the report/nag emails (#679)
  • Fix the update_timeout and pause views to create flips (for downtime bookkeeping)
  • Fix the checks list to preserve selected filters when adding/updating checks (#684)
  • Fix duration calculation to skip "log" and "ign" events

v2.2.1

1 year ago

Improvements

  • Improve the text version of the alert email template

Bug Fixes

  • Fix the version number displayed in the footer

v2.2

1 year ago

Improvements

  • Add address verification step in the "Change Email" flow
  • Reduce logging output from sendalerts and sendreports management commands (#656)
  • Add Ctrl+C handler in sendalerts and sendreports management commands
  • Add notes in docs about configuring uWSGI via UWSGI_ env vars (#656)
  • Implement login link expiration (login links will now expire in 1 hour)
  • Add Gotify integration (#270)
  • Add API support for reading/writing the subject and subject_fail fields (#659)
  • Add "Disabled" priority for Pushover notifications (#663)

Bug Fixes

  • Update hc.front.views.channels to handle empty strings in settings (#635)
  • Add logic to handle ContentDecodingError exceptions