X-Git-Url: https://git.giacomolli.uk/onechat/blobdiff_plain/087d725b5ab41ad34ffd24938482d45a8b99a080..HEAD:/.golangci.yml diff --git a/.golangci.yml b/.golangci.yml index 58a78b4..2a4cdaf 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -7,3 +7,64 @@ linters: - gocritic - testifylint - revive + - wrapcheck + - nlreturn + - wsl_v5 + settings: + wsl_v5: + # go-code: Keep an operation with its immediate error check. + enable: + - err + - after-block + - after-decl + - after-defer + - after-expr + - after-go + # go-code: Keep a short declaration with its immediate use. + allow-first-in-block: true + allow-whole-block: true + cuddle-max-statements: 2 + disable: + # go-code: Keep a short declaration with its immediate assignment use. + - assign + # go-code: Keep a short declaration, its operation, and its error check + # together. + - if + # go-code: A short declaration can feed the next loop setup. + - for + # go-code: A short declaration can feed the next switch setup. + - switch + # go-code: Keep a declared cleanup with its immediate defer. + - defer + # go-code: Keep a short declaration with its immediate append use. + - append + # go-code: Keep a short declaration with its immediate worker setup. + - go + nlreturn: + # go-code: Keep a short declaration with its immediate use. + block-size: 2 + wrapcheck: + # go-code: Return ctx.Err() directly. + extra-ignore-sigs: + - "(context.Context).Err() error" + exclusions: + rules: + # go-code: A function with one error path can return it directly. + - linters: [wrapcheck] + path: ^records\.go$ + source: 'return r\.file\.Close\(\)' + - linters: [wrapcheck] + path: ^log_test\.go$ + source: 'return os\.Truncate\(' + - linters: [wrapcheck] + path: ^sync_buffer_helper_test\.go$ + source: 'return b\.buffer\.Write\(' + - linters: [wrapcheck] + path: ^probe\.go$ + source: 'return s\.inner\.Summarize\(' + - linters: [wrapcheck] + path: ^view\.go$ + source: 'return false, err' + - linters: [wrapcheck] + path: ^whatsapp\.go$ + text: 'sqlstore\.Container\)\.Close\('