Version 0.3.0
Pre-releaseThis release adds a few reliability enhancements and bug fixes. There is one small breaking change, which is that NewPool
now can return an error.
Jobs is now safe for use in binary executables. Previously, jobs would attempt to read lua scripts from the scripts directory during initialization. However, now there is a generation step that parses the files and generates go code which just contains strings. See #13 for more information.
Recovery from failed or disconnected pools is now a little more efficient. Each pool gets a unique id based on the MAC address of the machine its running on instead of a randomly generated id. What this means is that if a machine running a worker pool fails and restarts, it will automatically clean up after itself by re-queuing any jobs it was working on when it crashed. See #5 for more information.
I've made some updates to the README. In particular, I felt in important to note that jobs follows semantic versioning but offers no promises of backwards compatibility until version 1.0. Please note that we are likely going to break backwards compatibility in a major way when #14 is implemented (likely in version 0.4.0 or 0.5.0). I also added a CONTRIBUTING.md file to welcome contributors by making the instructions more obvious.
Full Changelog
- Jobs no longer reads from files in the scripts directory and instead loads them in a generated file as strings.
- Each pool now gets a unique hardware id based on its mac address.
- Pools more efficiently clean up after themselves in the event of a restart.
NewPool
now can return an error.- Some previously unexpected methods are now exported: