# Copyright (C) 2022-2023 Luke Shumaker # # SPDX-License-Identifier: GPL-2.0-or-later linters: enable-all: true disable: # Deprecated - deadcode # deprecated, replaced by 'unused' - exhaustivestruct # deprecated, replaced by 'exhauststruct' - golint # deprecated, replaced by 'revive' - ifshort # deprecated - interfacer # deprecated - maligned # deprecated, replaced by 'govet fieldalignement' - nosnakecase # deprecated, replaced by 'revive var-naming' - scopelint # deprecated, replaced by 'exportloopref' - structcheck # deprecated, replaced by 'unused' - varcheck # deprecated, replaced by 'unused' # Don't support Go 1.18 generics yet - rowserrcheck - sqlclosecheck - wastedassign # These are disabled not because I think they're bad, but because # they currently don't pass, and I haven't evaluated them yet. - cyclop - exhaustive - exhaustruct - funlen - gochecknoglobals - gochecknoinits - gocognit - gocyclo - godot - godox - goerr113 - ireturn - lll - maintidx - nestif - nilerr - nlreturn - nonamedreturns - paralleltest - predeclared - revive - stylecheck - tagliatelle - testpackage - thelper - unconvert - unparam - varnamelen - whitespace - wrapcheck - wsl linters-settings: gci: sections: - standard - default - prefix(git.lukeshu.com/btrfs-progs-ng) gocritic: disabled-checks: - appendAssign gofmt: simplify: true gomnd: ignored-numbers: - '2' ignored-functions: - 'binutil.NeedNBytes' - 'textui.Tunable' gomoddirectives: replace-allow-list: - github.com/jacobsa/fuse nolintlint: require-explanation: true require-specific: true allow-no-explanation: - dupword issues: exclude-rules: # Ignore false positives that don't actually have any words. - linters: [dupword] source: "^[^a-zA-Z]*$" max-issues-per-linter: 0 max-same-issues: 0