Find yourself needing the same packages over and over?
Me too.
Instead of re-writting them for each project/client/company I decided it was time to do it one more time in public.
To use these packages simply:
go get github.com/corsc/go-commons/
(vendoring recommended)
- Cache - A simple cache with pluggable storage (currently includes Redis and DynamoDb storage)
- Concurrency - Packages related to concurrency
- Concurrent Map - A concurrent map implementations with pluggable sharding implementations
- HTTP - Packages related to serving or consuming HTTP
- Middleware - Middleware to decorate your HTTP handlers with additional features/functionality. Including
- I/O Closer - a convenience function for closing and optionally logging io.Closers in 1 line (useful for defer calls)
- Resilience - Packages related to resilience
- Go 1.8
- (optional) GoMetaLinter
- (optional) My GoMetaLinter Config
Contributions, suggestions, bug request, etc are all welcome. Please use Github Issues and Pull Requests.
Nothing special, standard go test ./...
will get the job done.
If me, you want the fastest possible tests, I would skip vendor by using:
go test $(go list ./... | grep -v /vendor)
Please check all PRs before sending them using the following settings
gometalinter --config=gometa-config.json ./...
- Corey Scott - corsc
This project is licensed under the Apache 2.0 License - see the LICENSE file for details
- Chao Gao - reterVision - Code Reviews and Advice
- Ryan Cumming - etaoins - Code Reviews and Advice