- Add
key_namespace
parameter to theredis
configuration section. Adds a prefix to all keys used by Ocypod to allow Redis to be shared with other applications without risk of key collisions. - Add config file interpolation from environment variables #21.
- Fix bug where tag names were stricter on read than creation.
- Update various 3rd party dependencies.
- Switch docker musl builder image to one that supports newer rust compiler versions.
- Updated to use Actix web 4.x (beta), Tokio 1.x.
- Switch to using deadpool to manage async Redis connections, to avoid possible race conditions with transactions over a multiplexed connection (see #26.
- More consistent HTTP status codes returned on error.
- Fix bug where requesting "ended" without one of the fields it depended on caused an error.
- Fix bug where calculation of derived "ended" field did not take into account number of retries attempted.
- Add optional configuration sections for queues, simplifying deployment by allowing them to be created when Ocypod starts.
- Allow
redis
andserver
sections of configuration to optional in configuration, using default values if not specified.
- Large internal refactoring to move to using async/await throughout.
- Migrated from using Actix web 1.0 to 2.0.
- Moved to using async Redis connection, and connection manager.
- Removed use of Actix actors.
- Redis threads configuration option removed.
- Added
/queue/{name}/job_ids
endpoint to return job IDs by status for a given queue. - Fix to
/queue/{name}/size
endpoint returning 404. - Fix to incorrect endpoint handler mapping for
/job/{id}/output
endpoint.
- Migrated codebase to use actix-web 1.0.
- Migrated to Rust 2018 edition.
- Added graceful shutdown timeout parameter.
- Added queue size endpoint.
- Default to setting number of Redis workers to number of CPUs.
- Return JSON from version endpoint for consistency.
Initial release.