A Go linter that forbids inline error handling using if err := ...; err != nil
.
Inline error handling in Go can hurt readability by hiding the actual function call behind error plumbing. We believe errors and functions deserve their own spotlight.
Instead of:
if err := doSomething(); err != nil {
return err
}
Prefer the more explicit and readable:
err := doSomething()
if err != nil {
return err
}
go install github.com/AlwxSin/noinlineerr/cmd/noinlineerr@latest
noinlineerr ./...
foo().Err()
where Err()
returns an error via an interface).
Run tests:
go test ./...
Test data lives under testdata/src/...
PRs are welcome. Let's make Go code cleaner, one err
at a time.