Garra is a Go best practices checker based on go vet.
-Go 1.10 and above.
-
nilchecknot nil err but object used checker- Example:
user, err := svc.User().GetUserCache(uid) if nil != err{ printf("err occurs) } user.GetUid() // <-- fail! haven't check user
- Example:
-
sawagogo routine specification in Ziipin Sawa.-
Example:
- SUGGEST:
func (dao *UserService)testFunc(){ asynHandle(func(svc *Svc) { //XXXX }) }
- NOT SUGGEST:
func (dao *UserService)testFunc(){ go func() { //XXX } }
-
- go install -a github.com/carsonfeng/garra@latest
- go vet -vettool=$(which garra) ./...
The project welcomes all contributors. We appreciate your help!