Serge Bazanski | 0ef9629 | 2021-05-21 15:41:32 +0200 | [diff] [blame] | 1 | load("@io_bazel_rules_go//go:def.bzl", "nogo") |
| 2 | |
| 3 | # These deps enable the analyses equivalent to running `go vet`. |
| 4 | # Passing vet = True enables only a tiny subset of these (the ones |
| 5 | # that are always correct). |
| 6 | # You can see the what `go vet` does by running `go doc cmd/vet`. |
| 7 | govet = [ |
Lorenz Brun | c2e3b1b | 2021-11-11 11:06:41 +0100 | [diff] [blame] | 8 | "@org_golang_x_tools//go/analysis/passes/asmdecl:go_default_library", |
| 9 | "@org_golang_x_tools//go/analysis/passes/assign:go_default_library", |
| 10 | "@org_golang_x_tools//go/analysis/passes/atomic:go_default_library", |
| 11 | "@org_golang_x_tools//go/analysis/passes/bools:go_default_library", |
| 12 | "@org_golang_x_tools//go/analysis/passes/buildtag:go_default_library", |
Serge Bazanski | 0ef9629 | 2021-05-21 15:41:32 +0200 | [diff] [blame] | 13 | # Disable cgocall because it fails processing com_github_mattn_go_sqlite3 before exclusions are applied |
Lorenz Brun | c2e3b1b | 2021-11-11 11:06:41 +0100 | [diff] [blame] | 14 | #"@org_golang_x_tools//go/analysis/passes/cgocall:go_default_library", |
| 15 | "@org_golang_x_tools//go/analysis/passes/composite:go_default_library", |
| 16 | "@org_golang_x_tools//go/analysis/passes/copylock:go_default_library", |
| 17 | "@org_golang_x_tools//go/analysis/passes/httpresponse:go_default_library", |
| 18 | "@org_golang_x_tools//go/analysis/passes/loopclosure:go_default_library", |
| 19 | "@org_golang_x_tools//go/analysis/passes/lostcancel:go_default_library", |
| 20 | "@org_golang_x_tools//go/analysis/passes/nilfunc:go_default_library", |
| 21 | "@org_golang_x_tools//go/analysis/passes/printf:go_default_library", |
| 22 | "@org_golang_x_tools//go/analysis/passes/shift:go_default_library", |
| 23 | "@org_golang_x_tools//go/analysis/passes/stdmethods:go_default_library", |
| 24 | "@org_golang_x_tools//go/analysis/passes/structtag:go_default_library", |
| 25 | "@org_golang_x_tools//go/analysis/passes/tests:go_default_library", |
| 26 | "@org_golang_x_tools//go/analysis/passes/unmarshal:go_default_library", |
| 27 | "@org_golang_x_tools//go/analysis/passes/unreachable:go_default_library", |
| 28 | "@org_golang_x_tools//go/analysis/passes/unsafeptr:go_default_library", |
| 29 | "@org_golang_x_tools//go/analysis/passes/unusedresult:go_default_library", |
Serge Bazanski | 0ef9629 | 2021-05-21 15:41:32 +0200 | [diff] [blame] | 30 | ] |
| 31 | |
| 32 | nogo( |
| 33 | name = "nogo", |
| 34 | config = "nogo_config.json", |
| 35 | visibility = ["//visibility:public"], |
Serge Bazanski | 6ebdc41 | 2021-05-21 16:25:55 +0200 | [diff] [blame] | 36 | deps = govet + [ |
| 37 | # This analyzer ensures that all comment lines are <= 80 characters long |
| 38 | # in Go source. This is in line with general practices around the Go |
| 39 | # community, where code lines can be as long as needed (and is expected |
| 40 | # to be soft-reflowable by text editors), but comments are kept at a |
| 41 | # 'standard' 80 characters long, as prose within comment blocks does not |
| 42 | # soft-reflow well. |
Lorenz Brun | c2e3b1b | 2021-11-11 11:06:41 +0100 | [diff] [blame] | 43 | "@com_github_corverroos_commentwrap//:go_default_library", |
Lorenz Brun | cb2dcf6 | 2021-11-22 22:57:34 +0100 | [diff] [blame] | 44 | "//build/analysis/noioutil:go_default_library", |
Serge Bazanski | 13050ef | 2021-12-17 17:33:20 +0100 | [diff] [blame] | 45 | "//build/analysis/importsort:go_default_library", |
Serge Bazanski | 6ebdc41 | 2021-05-21 16:25:55 +0200 | [diff] [blame] | 46 | ], |
Serge Bazanski | 0ef9629 | 2021-05-21 15:41:32 +0200 | [diff] [blame] | 47 | ) |