- Add guard to prevent duplicate confirmations
- Defer when validating message for dispatch
- Add forcible shutdown support after timeout
- Fix supervisor return value to provide subclassed implementation
- Update async requests to be locked requests
- Adjust minimum constraint on zoidberg dependency
- Fix access to default logger on source setup failure
- Re-raise exception after supervisor is destroyed
- Remove celluloid, add zoidberg
- Explicit celluloid constraint due to breaking changes in 0.16.1
- Disable support for local loop back (not currently used)
- Call out errors caught that were not handled
- Add tight constraint on celluloid due to major changes in 0.17
- Remove config loader to prevent early loading
- Do not reset comms for local loop back to prevent looping aliases
- Allow content to be provided and auto nest
- Re-add config file for libraries doing direct loading
- Ensure source teardown does not hang
- Add
Carnivore::Source.clear!
helper - Integrate memoization helpers
- Fix up config specs to proper load in config
- Remove loading of unused CLI library
- Only terminate callback supervisor if alive
- Set logging level to debug if env var is set
- Update auto configuration behavior
- Return configuration instance when running configure
- Remove custom rolled configuration
- Auto define configuration when not set prior to start
- Log incoming messages at info level
- Add Source#touch method
- Rescue and log encoding errors on transmission (prevent fatal teardown)
- Add Message#touch proxy helper
- Always return
Smash
types when config value isHash
- Prevent source configuration output at INFO level on build
- Keep all sources paused until all sources are built
- Add helper for performing hash conversions
- Support deep hash conversions (process through enumerables)
- Remove explicit JSON usage
- Make supporting library auto loaded as needed
- Provide arguments method alias for sources (#args)
- Allow configuration via directory and file merge
- Move receive starts out of processing loop
- Extract source name from arguments on setup
- Deep force smash type on conversion
- Add optional disablement of multiple callback matches
- Local loopback is optional and disabled by default
- Include Smash utility for Hash management
- Provide originating source to callback instances on initialization
- Add spec helpers
- Clean up custom supervisor implementation
- Remove
fog
from dependency list - Add common spec helper for testing
- Only start sources if callbacks are defined
- Add custom supervisor with isolated registry
- Include auto-restart support
- Loop local messages internally instead of transmit/retrieve loop
- Use auto loading to clean things up
- Remove builtin sources
- Allow optional auto-symbolize
- Let
confirm!
accept extra parameters - Add custom supervisor for future expansion
- Clean up requires
- Register sources by name for easy lookup
- Fix hash symbolizer to not symbolize non-strings
- Add confirmation helper method to message
- Start including tests
- Do not register callback if no worker is created
- Update
Source#send
toSource#transmit
- Add common util module for logging
- Allow SQS queues to be provided in named Hash form
- Allow sending to named SQS queues
- Make automatic response optional on HTTP source
- Use
Carnivore::Message
instead of bare hash for message passing
- Allow ARN based queue endpoints for SQS
- Update block implementation within callback
- Allow multiple queues on single SQS source
- Custom logging to provide instance source information
- Initial release