Snowplow Ruby Tracker v0.5.0
Makes the Tracker more robust, plus introduces several breaking API changes
Bug fixes
- Made synchronous flush wait until buffer is empty (#79)
- Started handling all network-related exceptions (#76)
- Started treating all 2xx and 3xx status codes as successful (#75)
- Prevented the buffer from being flushed when it is empty (#62)
- Made Emitter and AsyncEmitter thread-safe (#74)
- Fixed callback logic to only fire one callback per buffer flush (#61)
New features
API changes
- Made tracker.flush synchronous by default (#80)
- Added SelfDescribingJson class (#82)
- Made buffer size 1-indexed rather than 0-indexed (#67)
- Made number of worker threads used by AsyncEmitter configurable (#77)
Under the hood
- Bumped contexts schema to 1-0-1 (#53)
- Updated Contracts dependency range to "~> 0.7", "<= 0.11" (#81)
- Moved Contracts mixin inside classes (#73)