golangci-lint: disable default exclusion rules
The default exclusion rules were too permissive; disable
them, but copy the relevant ones to the configuation.
@@ -27,7 +27,35 @@ linters-settings:
check-shadowing: false
issues:
+ # The default exclusion rules are a bit too permissive, so copying the relevant ones below
+ exclude-use-default: false
+
exclude-rules:
+ # These are copied from the default exclude rules, except for "ineffective break statement"
+ # and GoDoc checks.
+ # https://github.com/golangci/golangci-lint/blob/0cc87df732aaf1d5ad9ce9ca538d38d916918b36/pkg/config/config.go#L36
+ - text: "Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*printf?|os\\.(Un)?Setenv). is not checked"
+ linters:
+ - errcheck
+ - text: "func name will be used as test\\.Test.* by other packages, and that stutters; consider calling this"
+ linters:
+ - golint
+ - text: "G103: Use of unsafe calls should be audited"
+ linters:
+ - gosec
+ - text: "G104: Errors unhandled"
+ linters:
+ - gosec
+ - text: "G204: Subprocess launch(ed with (variable|function call)|ing should be audited)"
+ linters:
+ - gosec
+ - text: "(G301|G302): (Expect directory permissions to be 0750 or less|Expect file permissions to be 0600 or less)"
+ linters:
+ - gosec
+ - text: "G304: Potential file inclusion via variable"
+ linters:
+ - gosec
+
# Exclude some linters from running on tests files.
- path: _test\.go
linters:
