Lumpik
Lumpik copied to clipboard
TODO for v1.0
- [x] interfaces
- [x] store
- [x] fetcher
- [x] router
- [x] processor
- [x] manager
- [x] launcher
- [x] cli
- [x] README.md
- [x] exception handling
- [x] api
- [x] retry
- [x] fundamental logger https://github.com/SwiftyBeaver/SwiftyBeaver
- [x] shutdown behavior
- [x] signal handling
- [x] command line interface for starting process
- [x] connection pooling
- [x] replacing vapor/redbird to vapor/Redis v2
- [x] dropping storable protocol for simplicity
- [x] better logging format instead of Swiftbeaver's default
- [x] logging into logfiles
- [x] compatibility of job arguments (serialize -> put arguments in order)
- [x] command option parser
- [x] lanuch options from yaml file
- [x] correct error handling flow
- [x] bencmark mode
- [x] compatibility for webadmin /busy
- [x] renaming the project's name
- [x] dead queue
- [x] compatibility for webadmin /scheduled
- [x] compatibility for webadmin /retrys
- [x] compatibility for webadmin /morgue
- [ ] logrotation by a SIGNAL
- [ ] compiling on linux
- [ ] swifty design - api naming, enum-based state machine, value semantics
- [ ] command line tools for process kill
- [ ] reliable dequeuing, use BRPOPLPUSH instead of BRPOP
- [ ] make the fastest Redis client
- [ ] test coverage
- [ ] stats api
Tools
- [ ] CI/CD setup
- [ ] SwiftLint