From fb7e33519a59e0da203d50750e5fca214f5ee204 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Olivier=20Mengu=C3=A9?= Date: Mon, 26 May 2025 21:12:58 +0200 Subject: [PATCH] chores: major upgrade of golangci-lint from v1.64.8 to v2.1.6 (#3062) .golangci.yml migrated with "golangci-lint migrated" and then tweaked to add comments back. --- .github/workflows/ci.yml | 2 +- .github/workflows/publish-release.yml | 2 +- .golangci.yml | 101 +++++++++++++++----------- 3 files changed, 60 insertions(+), 45 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0d98d90b..b4061f91 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,7 +25,7 @@ jobs: - name: Get dependencies env: # renovate: datasource=github-tags depName=golangci/golangci-lint - GOLANGCI_LINT_VERSION: v1.64.8 + GOLANGCI_LINT_VERSION: v2.1.6 run: | curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION} curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 5e23d8ad..61c61e32 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -50,7 +50,7 @@ jobs: - name: Get dependencies env: # renovate: datasource=github-tags depName=golangci/golangci-lint - GOLANGCI_LINT_VERSION: v1.64.8 + GOLANGCI_LINT_VERSION: v2.1.6 run: | curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION} curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter diff --git a/.golangci.yml b/.golangci.yml index 5d82ab91..0ebecab6 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -1,50 +1,65 @@ -run: - timeout: 120s +version: "2" linters: + default: none enable: + - bodyclose + - copyloopvar + - dogsled + - goconst + - gocritic + - goprintffuncname + - gosec - govet - ineffassign - - goconst - - gofmt - - goimports - - gosec - - gosimple - - staticcheck - - typecheck - - unused - - bodyclose - - dogsled - - goprintffuncname - misspell - prealloc - - copyloopvar - - stylecheck - - unconvert - - gocritic - revive - disable-all: true -issues: - exclude: - # To ease migration to golangci-lint v2.1 - # https://staticcheck.dev/docs/checks/#QF1008 - - QF1008 - exclude-rules: - - path: _test\.go - linters: - - scopelint - - bodyclose - - unconvert - - gocritic - - gosec - - goconst - - revive - - path: _test\.go - linters: - - revive - text: "dot-imports:" - # If we have tests in shared test folders, these can be less strictly linted - - path: tests/.*_tests\.go - linters: - - revive - - bodyclose - - stylecheck + - staticcheck + - unconvert + - unused + exclusions: + generated: lax + presets: + - comments + - common-false-positives + - legacy + - std-error-handling + rules: + - linters: + - bodyclose + - goconst + - gocritic + - gosec + - revive + - scopelint + - unconvert + path: _test\.go + - linters: + - revive + path: _test\.go + text: 'dot-imports:' + # # If we have tests in shared test folders, these can be less strictly linted + - linters: + - bodyclose + - revive + - staticcheck + path: tests/.*_tests\.go + # See https://github.com/oauth2-proxy/oauth2-proxy/issues/3060 + # https://staticcheck.dev/docs/checks/#QF1008 + - linters: + - staticcheck + text: QF1008 + paths: + - third_party$ + - builtin$ + - examples$ +formatters: + enable: + - gofmt + - goimports + exclusions: + generated: lax + paths: + - third_party$ + - builtin$ + - examples$