linters: enable: - bodyclose - dogsled - errcheck - goprintffuncname - gosimple - govet - ineffassign - nakedret - nilerr - predeclared - revive - sqlclosecheck - staticcheck - typecheck - unconvert - unparam - unused - varcheck disable: - asciicheck - deadcode - depguard - dupl - exhaustive - funlen - gci - gochecknoglobals - gochecknoinits - gocognit - goconst - gocritic - gocyclo - godot - godox - goerr113 - gofmt - gofumpt - goheader - goimports - golint - gomnd - gomodguard - gosec - ifshort - interfacer - lll - makezero - maligned - megacheck - misspell - nestif - nlreturn - noctx - nolintlint - paralleltest - prealloc - rowserrcheck - scopelint - structcheck - stylecheck - testpackage - thelper - tparallel - wastedassign - whitespace - wrapcheck - wsl linters-settings: revive: rules: - name: argument-limit arguments: [ 6 ] - name: atomic - name: bare-return - name: blank-imports - name: bool-literal-in-expr - name: call-to-gc - name: confusing-naming - name: confusing-results - name: constant-logical-expr - name: context-as-argument - name: context-keys-type - name: deep-exit - name: defer - name: dot-imports - name: duplicated-imports - name: early-return - name: empty-block - name: empty-lines - name: error-naming - name: error-return - name: error-strings - name: errorf - name: flag-parameter - name: function-result-limit arguments: [ 3 ] - name: identical-branches - name: if-return - name: imports-blacklist arguments: [ "log" ] - name: import-shadowing - name: increment-decrement - name: indent-error-flow - name: modifies-parameter - name: modifies-value-receiver - name: package-comments - name: range - name: range-val-address - name: range-val-in-closure - name: receiver-naming - name: redefines-builtin-id - name: string-of-int - name: struct-tag - name: superfluous-else - name: time-naming - name: unconditional-recursion - name: unexported-naming - name: unhandled-error - name: unnecessary-stmt - name: unreachable-code - name: unused-parameter - name: var-declaration - name: var-naming - name: waitgroup-by-value nakedret: # make an issue if func has more lines of code than this setting and it has naked returns; default is 30 max-func-lines: 1 run: # timeout for analysis, e.g. 30s, 5m, default is 1m timeout: 5m # which dirs to skip: issues from them won't be reported; # can use regexp here: generated.*, regexp is applied on full path; # default value is empty list, but default dirs are skipped independently # from this option's value (see skip-dirs-use-default). # "/" will be replaced by current OS file path separator to properly work # on Windows. skip-dirs: - assets - docs - etc - scripts # which files to skip: they will be analyzed, but issues from them # won't be reported. Default value is empty list, but there is # no need to include all autogenerated files, we confidently recognize # autogenerated files. If it's not please let us know. # "/" will be replaced by current OS file path separator to properly work # on Windows. skip-files: - plugins/parsers/influx/machine.go* issues: # Maximum issues count per one linter. Set to 0 to disable. Default is 50. max-issues-per-linter: 0 # Maximum count of issues with the same text. Set to 0 to disable. Default is 3. max-same-issues: 0 exclude: - don't use an underscore in package name #revive:var-naming exclude-rules: - path: plugins/parsers/influx linters: - govet # Show only new issues created after git revision `HEAD~` # Great for CI setups # It's not practical to fix all existing issues at the moment of integration: much better to not allow issues in new code. # new-from-rev: "HEAD~" output: format: tab