Release 4.2.0
Beymax 4.2.0 / API 1.3.0
API Changes
- Added a heartbeat file function to the webui controller. This allows the times of successful heartbeats to be tracked externally (ie: by docker/k8s managers).
- Removed support for the terrible
docker-discriminator
pairing method. I'm choosing not to track this as a major version because I'm in charge and there's nothing you can do to stop me - Renamed database
core_traces.traceID
and.shardID
columns to snake_case (trace_id
andshard_id
)
Webui Controller changes
- Made the DB connection more robust at startup, avoiding an issue where if the connection fails the first time, it can never be retried
- Pairing tokens no longer expire. This solves an issue where shards would crash and restart after the pairing token expired, providing no method for them to reauthenticate with the controller.
- It's very important that controllers and shards are properly secured. Choose a sufficiently complex pairing token and keep it safe
- Added a mechanism to restrict the shard api
/api/shard
to a given subnet. This is a stopgap, but the real best way to secure the shard API is with a reverse proxy. This subnet filter only supports IPv4 at the moment - An unlimited amount of shards can pair, but the controller will only allow a given number to start at once.
- Removed unused API endpoints:
/api/guild/suites
/api/guild/suites/<suite_name>
/reservations/
/api/shard/devel/cya
/api/shard/discriminator
- Switched to Yarn for nodejs package management
Edited by Aaron Graubert