From 939e3e4d2193f0ce483169c98bd5deeb22eb526b Mon Sep 17 00:00:00 2001
From: Billy Keyes <commits@billykeyes.dev>
Date: Mon, 31 Mar 2025 18:36:50 -0700
Subject: [PATCH] Update golangci-lint to v2

---
 .github/workflows/go.yml |  4 +--
 .golangci.yml            | 75 ++++++++++++++++++++--------------------
 2 files changed, 40 insertions(+), 39 deletions(-)

diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml
index a59475a..c89fc7e 100644
--- a/.github/workflows/go.yml
+++ b/.github/workflows/go.yml
@@ -18,9 +18,9 @@ jobs:
         uses: actions/checkout@v4
 
       - name: Lint
-        uses: golangci/golangci-lint-action@v6
+        uses: golangci/golangci-lint-action@v7
         with:
-          version: v1.59
+          version: v2.0
 
       - name: Test
         run: go test -v ./...
diff --git a/.golangci.yml b/.golangci.yml
index 192c556..655cb5a 100644
--- a/.golangci.yml
+++ b/.golangci.yml
@@ -1,50 +1,51 @@
+version: "2"
+
 run:
   tests: false
 
 linters:
-  disable-all: true
+  default: none
   enable:
     - errcheck
-    - gofmt
-    - goimports
     - govet
     - ineffassign
     - misspell
     - revive
-    - typecheck
     - unconvert
     - unused
+  settings:
+    errcheck:
+      exclude-functions:
+        - (*github.com/bluekeyes/go-gitdiff/gitdiff.formatter).Write
+        - (*github.com/bluekeyes/go-gitdiff/gitdiff.formatter).WriteString
+        - (*github.com/bluekeyes/go-gitdiff/gitdiff.formatter).WriteByte
+        - fmt.Fprintf(*github.com/bluekeyes/go-gitdiff/gitdiff.formatter)
+    revive:
+      rules:
+        - name: context-keys-type
+        - name: time-naming
+        - name: var-declaration
+        - name: unexported-return
+        - name: errorf
+        - name: blank-imports
+        - name: context-as-argument
+        - name: dot-imports
+        - name: error-return
+        - name: error-strings
+        - name: error-naming
+        - name: exported
+        - name: increment-decrement
+        - name: var-naming
+        - name: package-comments
+        - name: range
+        - name: receiver-naming
+        - name: indent-error-flow
 
-issues:
-  exclude-use-default: false
-
-linters-settings:
-  errcheck:
-    exclude-functions:
-      - (*github.com/bluekeyes/go-gitdiff/gitdiff.formatter).Write
-      - (*github.com/bluekeyes/go-gitdiff/gitdiff.formatter).WriteString
-      - (*github.com/bluekeyes/go-gitdiff/gitdiff.formatter).WriteByte
-      - fmt.Fprintf(*github.com/bluekeyes/go-gitdiff/gitdiff.formatter)
-  goimports:
-    local-prefixes: github.com/bluekeyes/go-gitdiff
-  revive:
-    rules:
-      # enable all rules from golint
-      - name: context-keys-type
-      - name: time-naming
-      - name: var-declaration
-      - name: unexported-return
-      - name: errorf
-      - name: blank-imports
-      - name: context-as-argument
-      - name: dot-imports
-      - name: error-return
-      - name: error-strings
-      - name: error-naming
-      - name: exported
-      - name: increment-decrement
-      - name: var-naming
-      - name: package-comments
-      - name: range
-      - name: receiver-naming
-      - name: indent-error-flow
+formatters:
+  enable:
+    - gofmt
+    - goimports
+  settings:
+    goimports:
+      local-prefixes:
+        - github.com/bluekeyes/go-gitdiff