version: "2" linters: default: all exclusions: paths: - internal/compress/flate - internal/compress/internal disable: - dupword # extremely normal in tests and a pretty unnecessary linter - goconst # unnecessary especially for our parsing code; many false positives - mnd # unnecessary especially for our parsing code; many false positives - lll # common sense is much better than these sort of rules - gosmopolitan # completely normal to have CJK and such in tests - nonamedreturns # named returns are often good for clarity - wsl # outdated, use wsl_v5 instead - varnamelen # it's rather reasonable to have counters like i, even when it spans quite a bit - gocyclo # cyclomatic metrics aren't that good - cyclop # cyclomatic metrics aren't that good - godox # TODO/etc comments are allowed in our codebase - funlen # long functions are fine - dogsled # definitely not an issue, ignoring returns is normal settings: perfsprint: errorf: false depguard: rules: Main: list-mode: strict files: - $all allow: - $gostd - codeberg.org/lindenii/furgit - golang.org/x revive: rules: - name: error-strings disabled: true issues: max-issues-per-linter: 0 max-same-issues: 0