- Report the APNS certificate expiry as a prometheus metric. (#106, #112)
- Change APNS payload to be mutable and include the
event_id
in payload. (#114)
- Sygnal will no longer warn about the
database
config field being not understood. (#100) - Log errors during start-up and fix the sample logging config. (#122)
- Document platform value for APNS apps (#110)
- Add Dockerfile. (#63)
- Reuse Configurations With asterisk App IDs and Token Based APNS Auth (#108)
- Fix an issue where using PostgreSQL would cause Sygnal to crash (#95)
NOTE: The config schema has changed. The db
config section has been replaced
by database
. Example configuration can be found in sygnal.yaml.sample
. db
will
continue to work, but the section is deprecated and may be removed in a future release.
- Add support for PostgreSQL (#91)
- Replace occurances of 'assertEquals' with 'assertEqual' to reduce deprecation noise while running tests. (#93)
- Add prometheus metric for the number of requests in flight. (#87)
- Add prometheus metrics to track pushkin things. (#88)
- Fix warnings about
finish()
after disconnect. (#84) - Fix a bug which meant that requests were logged with an invalid timestamp. (#86)
- Change how we stub out HTTP requests in the tests. (#85)
- Fix typo leading to poor handling of 5xx GCM response codes.
- Handle 404 GCM response codes.
- Actually fix GCM connection limiting, and exception handling of exceptions that occur whilst reading the response body.
- Reduce logging for successful requests.
- Improve TLS performance to reduce CPU usage.
- Add a Prometheus metric that tracks the time taken to handle a
/notify
request. - Add a
/health
endpoint for checking whether Sygnal is up.
- Fix GCM connection limiting.
- Clean up exception handling code.
- Declare sentry-sdk as a dependency.
- Obey GCM maximum connections count.
- Document
max_connections
config option in GCM. - Separate Twisted's logging and the access logging.
This is a rewrite of Sygnal 0.0.1. Before upgrading, please note that Python 3.7 or higher is required.
- Use new version of Apple Push Notification service (HTTP/2 protocol)
- Depend on Python 3.7+
- Depend on Twisted for async
- Add support for OpenTracing with Jaeger Tracing