Back to skills
extension
Category: Development & EngineeringNo API key required

staticcheck

Fix staticcheck issues

personAuthor: jakexiaohubgithub

staticcheck

Advanced static analyzer with comprehensive checks.

Install

go install honnef.co/go/tools/cmd/staticcheck@latest

Usage

staticcheck ./...
staticcheck -checks=all ./...

Common Issues

SA1019: Deprecated Function

// Bad
ioutil.ReadFile("file.txt")

// Good
os.ReadFile("file.txt")

SA4006: Unused Value

// Bad
value := compute()
value = other()

// Good
_ = compute()
value := other()

SA9003: Empty Branch

// Bad
if err != nil {
    // TODO
}

// Good - remove or implement
if err != nil {
    return err
}

S1002: Simplify Condition

// Bad
if x == true {
    return true
}

// Good
return x

ST1003: Naming Convention

// Bad
func GetHTTPSUrl() string

// Good
func GetHTTPSURL() string

SA1006: Printf on os.Stderr

// Bad
fmt.Printf("error: %v\n", err)

// Good
fmt.Fprintf(os.Stderr, "error: %v\n", err)

SA4010: Result Not Used

// Bad
append(slice, item)

// Good
slice = append(slice, item)

Configuration

# .staticcheck.conf
checks = ["all", "-ST1000"]