Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gosec for openSUSE:Factory checked 
in at 2026-07-15 22:14:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gosec (Old)
 and      /work/SRC/openSUSE:Factory/.gosec.new.1991 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gosec"

Wed Jul 15 22:14:33 2026 rev:36 rq:1366000 version:2.28.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/gosec/gosec.changes      2026-06-09 
14:25:56.246541332 +0200
+++ /work/SRC/openSUSE:Factory/.gosec.new.1991/gosec.changes    2026-07-15 
22:15:29.259017717 +0200
@@ -1,0 +2,22 @@
+Wed Jul 15 06:32:23 UTC 2026 - Felix Niederwanger <[email protected]>
+
+- Update to version 2.28.0:
+  * feat(G101): detect AWS temporary access keys (#1702)
+  * Update to go version 1.26.5 and 1.25.12 (#1704)
+  * Update all dependencies (#1703)
+  * Update all dependencies (#1699)
+  * Update all dependencies (#1698)
+  * fix: min+max G115 false positives (#1697)
+  * Update all dependencies (#1696)
+  * fix(G404): flag missing math/rand weak-random functions (#1694)
+  * Update all dependencies (#1695)
+  * Update all dependencies (#1693)
+  * Update to go version 1.26.4 and 1.25.11 (#1690)
+  * Update the gosec in the Github action to v2.27.1 (#1688)
+
+-------------------------------------------------------------------
+Tue Jun 16 12:07:53 UTC 2026 - Felix Niederwanger <[email protected]>
+
+- Remove unnecessary files: _scmsync.obsinfo build.specials.obscpio
+
+-------------------------------------------------------------------

Old:
----
  _scmsync.obsinfo
  build.specials.obscpio
  gosec-2.27.1.obscpio

New:
----
  gosec-2.28.0.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gosec.spec ++++++
--- /var/tmp/diff_new_pack.JPLiev/_old  2026-07-15 22:15:30.459058434 +0200
+++ /var/tmp/diff_new_pack.JPLiev/_new  2026-07-15 22:15:30.463058569 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           gosec
-Version:        2.27.1
+Version:        2.28.0
 Release:        0
 Summary:        CLI tool to scan the Go AST and SSA code representations for 
security problems
 License:        Apache-2.0

++++++ _service ++++++
--- /var/tmp/diff_new_pack.JPLiev/_old  2026-07-15 22:15:30.491059520 +0200
+++ /var/tmp/diff_new_pack.JPLiev/_new  2026-07-15 22:15:30.495059655 +0200
@@ -4,7 +4,7 @@
     <param name="filename">gosec</param>
     <param name="url">https://github.com/securego/gosec.git</param>
     <param name="scm">git</param>
-       <param name="revision">v2.27.1</param>
+       <param name="revision">v2.28.0</param>
        <param name="match-tag">v*</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.JPLiev/_old  2026-07-15 22:15:30.511060198 +0200
+++ /var/tmp/diff_new_pack.JPLiev/_new  2026-07-15 22:15:30.515060334 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/securego/gosec.git</param>
-              <param 
name="changesrevision">9e6a9843d7a4a6e3e9a8539b02612c8a4aa3f889</param></service></servicedata>
+              <param 
name="changesrevision">9e75c0576c9878035d4221392108d458abe10fc3</param></service></servicedata>
 (No newline at EOF)
 

++++++ gosec-2.27.1.obscpio -> gosec-2.28.0.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gosec-2.27.1/.github/workflows/action-integration.yml 
new/gosec-2.28.0/.github/workflows/action-integration.yml
--- old/gosec-2.27.1/.github/workflows/action-integration.yml   2026-06-01 
19:11:18.000000000 +0200
+++ new/gosec-2.28.0/.github/workflows/action-integration.yml   2026-07-13 
10:40:30.000000000 +0200
@@ -20,7 +20,7 @@
       SARIF_CATEGORY: action-integration-action-yml
     steps:
       - name: Checkout Source
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
 
       - name: Run action against gosec source
         uses: ./
@@ -45,7 +45,7 @@
 
       - name: Upload SARIF to Code Scanning
         if: ${{ github.event_name != 'pull_request' || 
github.event.pull_request.head.repo.full_name == github.repository }}
-        uses: 
github/codeql-action/upload-sarif@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # v4
+        uses: 
github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
         with:
           sarif_file: ${{ env.SARIF_FILE }}
           category: ${{ env.SARIF_CATEGORY }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/.github/workflows/ci.yml 
new/gosec-2.28.0/.github/workflows/ci.yml
--- old/gosec-2.27.1/.github/workflows/ci.yml   2026-06-01 19:11:18.000000000 
+0200
+++ new/gosec-2.28.0/.github/workflows/ci.yml   2026-07-13 10:40:30.000000000 
+0200
@@ -19,9 +19,9 @@
     strategy:
       matrix:
         version:
-          - go-version: "1.25.10"
+          - go-version: "1.25.12"
             golangci: "latest"
-          - go-version: "1.26.3"
+          - go-version: "1.26.5"
             golangci: "latest"
     runs-on: ubuntu-latest
     permissions:
@@ -30,21 +30,21 @@
       GO111MODULE: on
     steps:
       - name: Setup go ${{ matrix.version.go-version }}
-        uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
+        uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
         with:
           go-version: ${{ matrix.version.go-version }}
       - name: Checkout Source
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
         with:
           persist-credentials: false
-      - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5
+      - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6
         with:
           path: ~/go/pkg/mod
           key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
           restore-keys: |
             ${{ runner.os }}-go-
       - name: lint
-        uses: 
golangci/golangci-lint-action@82606bf257cbaff209d206a39f5134f0cfbfd2ee # v9
+        uses: 
golangci/golangci-lint-action@ba0d7d2ec06a0ea1cb5fa41b2e4a3ab91d21278a # v9
         with:
           version: ${{ matrix.version.golangci }}
       - name: Run Gosec Security Scanner
@@ -65,14 +65,14 @@
       BENCH_COUNT: "5"
     steps:
       - name: Setup go
-        uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
+        uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
         with:
-          go-version: "1.26.3"
+          go-version: "1.26.5"
       - name: Checkout Source
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
         with:
           persist-credentials: false
-      - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5
+      - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6
         with:
           path: ~/go/pkg/mod
           key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@@ -90,7 +90,7 @@
       pull-requests: write
     steps:
       - name: Checkout Source
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
         with:
           ref: ${{ github.event.pull_request.head.sha }}
           persist-credentials: false
@@ -107,7 +107,7 @@
           autofix-model: gemini-3-flash-preview
           output-format: sarif
       - name: Upload SARIF to GitHub Security Center
-        uses: 
github/codeql-action/upload-sarif@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # v4
+        uses: 
github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
         if: steps.barry.outcome == 'success'
         with:
           sarif_file: ${{ github.workspace }}/barry-results.sarif
@@ -121,14 +121,14 @@
       GO111MODULE: on
     steps:
       - name: Setup go
-        uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
+        uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
         with:
-          go-version: "1.26.3"
+          go-version: "1.26.5"
       - name: Checkout Source
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
         with:
           persist-credentials: false
-      - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5
+      - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6
         with:
           path: ~/go/pkg/mod
           key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@@ -137,7 +137,7 @@
       - name: Create Test Coverage
         run: make test-coverage
       - name: Upload Test Coverage
-        uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 
# v6
+        uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f 
# v7
         with:
           token: ${{ secrets.CODECOV_TOKEN }}
           fail_ci_if_error: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/.github/workflows/release.yml 
new/gosec-2.28.0/.github/workflows/release.yml
--- old/gosec-2.27.1/.github/workflows/release.yml      2026-06-01 
19:11:18.000000000 +0200
+++ new/gosec-2.28.0/.github/workflows/release.yml      2026-07-13 
10:40:30.000000000 +0200
@@ -13,15 +13,15 @@
       GO111MODULE: on
     steps:
       - name: Checkout Source
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
         with:
           persist-credentials: false
       - name: Unshallow
         run: git fetch --prune --unshallow
       - name: Set up Go
-        uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
+        uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
         with:
-          go-version: "1.26.3"
+          go-version: "1.26.5"
           cache: false
       - name: Install Cosign
         uses: 
sigstore/cosign-installer@6f9f17788090df1f26f669e9d70d6ae9567deba6 # v4.1.2
@@ -33,11 +33,11 @@
         env:
           COSIGN_KEY: ${{secrets.COSIGN_KEY}}
       - name: Set up QEMU
-        uses: 
docker/setup-qemu-action@06116385d9baf250c9f4dcb4858b16962ea869c3 # v4
+        uses: 
docker/setup-qemu-action@96fe6ef7f33517b61c61be40b68a1882f3264fb8 # v4
       - name: Set up Docker Buildx
-        uses: 
docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
+        uses: 
docker/setup-buildx-action@bb05f3f5519dd87d3ba754cc423b652a5edd6d2c # v4
       - name: Login to GitHub Container Registry
-        uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4
+        uses: docker/login-action@af1e73f918a031802d376d3c8bbc3fe56130a9b0 # v4
         with:
           registry: ghcr.io
           username: ${{github.actor}}
@@ -48,7 +48,7 @@
           version: v1
           args: mod -licenses -json -output bom.json
       - name: Docker meta
-        uses: docker/metadata-action@80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9 
# v6
+        uses: docker/metadata-action@dc802804100637a589fabce1cb79ff13a1411302 
# v6
         id: meta
         with:
           images: |
@@ -59,7 +59,7 @@
             type=sha,format=long
             type=semver,pattern={{version}}
       - name: Release Binaries
-        uses: 
goreleaser/goreleaser-action@5daf1e915a5f0af01ddbcd89a43b8061ff4f1a89 # v7
+        uses: 
goreleaser/goreleaser-action@f06c13b6b1a9625abc9e6e439d9c05a8f2190e94 # v7
         with:
           version: latest
           args: release --clean
@@ -67,7 +67,7 @@
           GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
           COSIGN_PASSWORD: ${{secrets.COSIGN_PASSWORD}}
       - name: Release Docker Image
-        uses: 
docker/build-push-action@f9f3042f7e2789586610d6e8b85c8f03e5195baf # v7
+        uses: 
docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7
         id: relimage
         with:
           platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/ppc64le
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/.github/workflows/scan.yml 
new/gosec-2.28.0/.github/workflows/scan.yml
--- old/gosec-2.27.1/.github/workflows/scan.yml 2026-06-01 19:11:18.000000000 
+0200
+++ new/gosec-2.28.0/.github/workflows/scan.yml 2026-07-13 10:40:30.000000000 
+0200
@@ -19,16 +19,16 @@
       security-events: write
     steps:
     - name: Check out code into the Go module directory
-      uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
+      uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
       with:
         persist-credentials: false
     - name: Security Scan
-      uses: securego/gosec@4a3bd8af174872c778439083ded7adbf3747e770 # v2.26.1
+      uses: securego/gosec@9e6a9843d7a4a6e3e9a8539b02612c8a4aa3f889 # v2.27.1
       with:
         # we let the report trigger content trigger a failure using the GitHub 
Security features.
         args: '-no-fail -fmt sarif -out results.sarif -exclude-dir=testdata 
./...'
     - name: Upload SARIF file
-      uses: 
github/codeql-action/upload-sarif@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # v4
+      uses: 
github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
       with:
         # Path to SARIF file relative to the root of the repository
         sarif_file: results.sarif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/action.yml new/gosec-2.28.0/action.yml
--- old/gosec-2.27.1/action.yml 2026-06-01 19:11:18.000000000 +0200
+++ new/gosec-2.28.0/action.yml 2026-07-13 10:40:30.000000000 +0200
@@ -10,7 +10,7 @@
 
 runs:
   using: "docker"
-  image: 
"docker://ghcr.io/securego/gosec@sha256:fc67681613e14384a6cd35498f6df3e566ef099777246c53a4deb0178e98e1a2"
 # 2.26.1
+  image: 
"docker://ghcr.io/securego/gosec@sha256:d0859f242774504d57b17442b2dc77d4ffd2f4d30fbdf92c7eb612b2a394f477"
 # 2.27.1
   args:
     - ${{ inputs.args }}
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/analyzers/range_analyzer.go 
new/gosec-2.28.0/analyzers/range_analyzer.go
--- old/gosec-2.27.1/analyzers/range_analyzer.go        2026-06-01 
19:11:18.000000000 +0200
+++ new/gosec-2.28.0/analyzers/range_analyzer.go        2026-07-13 
10:40:30.000000000 +0200
@@ -1009,7 +1009,7 @@
                                                        res.minValue = 
minBounds(res.minValue, res.minValueSet, argRes.minValue, argRes.minValueSet, 
isSrcUnsigned)
                                                        res.minValueSet = 
res.minValueSet && argRes.minValueSet
                                                        res.maxValue = 
minBounds(res.maxValue, res.maxValueSet, argRes.maxValue, argRes.maxValueSet, 
isSrcUnsigned)
-                                                       res.maxValueSet = 
res.maxValueSet && argRes.maxValueSet
+                                                       res.maxValueSet = 
res.maxValueSet || argRes.maxValueSet
                                                }
                                                ra.releaseResult(argRes)
                                        }
@@ -1023,7 +1023,7 @@
                                                        res.CopyFrom(argRes)
                                                } else {
                                                        res.minValue = 
maxBounds(res.minValue, res.minValueSet, argRes.minValue, argRes.minValueSet, 
isSrcUnsigned)
-                                                       res.minValueSet = 
res.minValueSet && argRes.minValueSet
+                                                       res.minValueSet = 
res.minValueSet || argRes.minValueSet
                                                        res.maxValue = 
maxBounds(res.maxValue, res.maxValueSet, argRes.maxValue, argRes.maxValueSet, 
isSrcUnsigned)
                                                        res.maxValueSet = 
res.maxValueSet && argRes.maxValueSet
                                                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/go.mod new/gosec-2.28.0/go.mod
--- old/gosec-2.27.1/go.mod     2026-06-01 19:11:18.000000000 +0200
+++ new/gosec-2.28.0/go.mod     2026-07-13 10:40:30.000000000 +0200
@@ -2,68 +2,68 @@
 
 require (
        github.com/BurntSushi/toml v1.6.0
-       github.com/anthropics/anthropic-sdk-go v1.46.0
+       github.com/anthropics/anthropic-sdk-go v1.57.0
        github.com/ccojocar/zxcvbn-go v1.0.4
        github.com/google/uuid v1.6.0
        github.com/gookit/color v1.6.1
        github.com/lib/pq v1.12.3
        github.com/mozilla/tls-observatory v0.0.0-20250923143331-eef96233227e
-       github.com/onsi/ginkgo/v2 v2.29.0
-       github.com/onsi/gomega v1.41.0
-       github.com/openai/openai-go/v3 v3.37.0
+       github.com/onsi/ginkgo/v2 v2.32.0
+       github.com/onsi/gomega v1.42.1
+       github.com/openai/openai-go/v3 v3.42.0
        github.com/santhosh-tekuri/jsonschema/v6 v6.0.2
        github.com/stretchr/testify v1.11.1
        go.yaml.in/yaml/v3 v3.0.4
-       golang.org/x/crypto v0.52.0
-       golang.org/x/sync v0.20.0
-       golang.org/x/text v0.37.0
-       golang.org/x/tools v0.45.0
-       google.golang.org/genai v1.58.0
+       golang.org/x/crypto v0.54.0
+       golang.org/x/sync v0.22.0
+       golang.org/x/text v0.40.0
+       golang.org/x/tools v0.48.0
+       google.golang.org/genai v1.63.0
 )
 
 require (
        cloud.google.com/go v0.123.0 // indirect
-       cloud.google.com/go/auth v0.19.0 // indirect
+       cloud.google.com/go/auth v0.21.0 // indirect
        cloud.google.com/go/compute/metadata v0.9.0 // indirect
        github.com/Masterminds/semver/v3 v3.5.0 // indirect
        github.com/bahlo/generic-list-go v0.2.0 // indirect
        github.com/buger/jsonparser v1.2.0 // indirect
        github.com/cespare/xxhash/v2 v2.3.0 // indirect
-       github.com/davecgh/go-spew v1.1.1 // indirect
-       github.com/felixge/httpsnoop v1.0.4 // indirect
+       github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // 
indirect
+       github.com/felixge/httpsnoop v1.1.0 // indirect
        github.com/go-logr/logr v1.4.3 // indirect
        github.com/go-logr/stdr v1.2.2 // indirect
        github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
        github.com/google/go-cmp v0.7.0 // indirect
-       github.com/google/pprof v0.0.0-20260507013755-92041b743c96 // indirect
+       github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0 // indirect
        github.com/google/s2a-go v0.1.9 // indirect
-       github.com/googleapis/enterprise-certificate-proxy v0.3.14 // indirect
-       github.com/googleapis/gax-go/v2 v2.22.0 // indirect
+       github.com/googleapis/enterprise-certificate-proxy v0.3.18 // indirect
+       github.com/googleapis/gax-go/v2 v2.23.0 // indirect
        github.com/gorilla/websocket v1.5.3 // indirect
-       github.com/invopop/jsonschema v0.13.0 // indirect
-       github.com/mailru/easyjson v0.9.2 // indirect
-       github.com/pmezard/go-difflib v1.0.0 // indirect
+       github.com/invopop/jsonschema v0.14.0 // indirect
+       github.com/pb33f/ordered-map/v2 v2.3.1 // indirect
+       github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // 
indirect
        github.com/standard-webhooks/standard-webhooks/libraries v0.0.1 // 
indirect
        github.com/stretchr/objx v0.5.3 // indirect
        github.com/tidwall/gjson v1.19.0 // indirect
        github.com/tidwall/match v1.2.0 // indirect
        github.com/tidwall/pretty v1.2.1 // indirect
        github.com/tidwall/sjson v1.2.5 // indirect
-       github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
        github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
        go.opentelemetry.io/auto/sdk v1.2.1 // indirect
        go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0 
// indirect
        go.opentelemetry.io/otel v1.44.0 // indirect
        go.opentelemetry.io/otel/metric v1.44.0 // indirect
        go.opentelemetry.io/otel/trace v1.44.0 // indirect
-       golang.org/x/mod v0.36.0 // indirect
-       golang.org/x/net v0.55.0 // indirect
-       golang.org/x/sys v0.45.0 // indirect
-       google.golang.org/api v0.274.0 // indirect
-       google.golang.org/genproto/googleapis/rpc 
v0.0.0-20260526163538-3dc84a4a5aaa // indirect
-       google.golang.org/grpc v1.81.1 // indirect
+       go.yaml.in/yaml/v4 v4.0.0-rc.6 // indirect
+       golang.org/x/mod v0.38.0 // indirect
+       golang.org/x/net v0.57.0 // indirect
+       golang.org/x/sys v0.47.0 // indirect
+       google.golang.org/api v0.288.0 // indirect
+       google.golang.org/genproto/googleapis/rpc 
v0.0.0-20260706201446-f0a921348800 // indirect
+       google.golang.org/grpc v1.82.0 // indirect
        google.golang.org/protobuf v1.36.11 // indirect
        gopkg.in/yaml.v3 v3.0.1 // indirect
 )
 
-go 1.25.0
+go 1.25.8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/go.sum new/gosec-2.28.0/go.sum
--- old/gosec-2.27.1/go.sum     2026-06-01 19:11:18.000000000 +0200
+++ new/gosec-2.28.0/go.sum     2026-07-13 10:40:30.000000000 +0200
@@ -15,8 +15,8 @@
 cloud.google.com/go v0.60.0/go.mod 
h1:yw2G51M9IfRboUH61Us8GqCeF1PzPblB823Mn2q2eAU=
 cloud.google.com/go v0.123.0 h1:2NAUJwPR47q+E35uaJeYoNhuNEM9kM8SjgRgdeOJUSE=
 cloud.google.com/go v0.123.0/go.mod 
h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTAZU=
-cloud.google.com/go/auth v0.19.0 
h1:DGYwtbcsGsT1ywuxsIoWi1u/vlks0moIblQHgSDgQkQ=
-cloud.google.com/go/auth v0.19.0/go.mod 
h1:2Aph7BT2KnaSFOM0JDPyiYgNh6PL9vGMiP8CUIXZ+IY=
+cloud.google.com/go/auth v0.21.0 
h1:g/QwYfYb2Ai6HH8oomAOyBaIHLbscZ4+T/F/f5JZHkE=
+cloud.google.com/go/auth v0.21.0/go.mod 
h1:M9o2Oz+YI2jAfxewJgb1vyI3vceHF+eohmxyzmrl+9s=
 cloud.google.com/go/bigquery v1.0.1/go.mod 
h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=
 cloud.google.com/go/bigquery v1.3.0/go.mod 
h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=
 cloud.google.com/go/bigquery v1.4.0/go.mod 
h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=
@@ -54,8 +54,8 @@
 github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod 
h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
 github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod 
h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
 github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod 
h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
-github.com/anthropics/anthropic-sdk-go v1.46.0 
h1:yl3n+el5ZfNgiCtQ7zQ7s/NXxB11YbrKXdc3uLPNWlU=
-github.com/anthropics/anthropic-sdk-go v1.46.0/go.mod 
h1:bx5vWuHFuGPkELH8Z4KUiNSohFnUwScdpTyr+50myPo=
+github.com/anthropics/anthropic-sdk-go v1.57.0 
h1:iEAcPbUKfJ2Iqz9uN/jEndCNW2+x7OYLHDidXDhPjI0=
+github.com/anthropics/anthropic-sdk-go v1.57.0/go.mod 
h1:3EfIfmFqxH6rbiLcIP4tPFyXL/IHakx2wDG4OU+TIEI=
 github.com/antihax/optional v0.0.0-20180407024304-ca021399b1a6/go.mod 
h1:V8iCPQYkqmusNa815XgQio277wI47sdRh1dUOLdyC6Q=
 github.com/aokoli/goutils v1.0.1/go.mod 
h1:SijmP0QR8LtwsmDs8Yii5Z/S4trXFGFC2oO5g9DP+DQ=
 github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod 
h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
@@ -96,8 +96,9 @@
 github.com/creack/pty v1.1.7/go.mod 
h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY=
 github.com/davecgh/go-spew v0.0.0-20161028175848-04cdfd42973b/go.mod 
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.0/go.mod 
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/davecgh/go-spew v1.1.1 
h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
 github.com/davecgh/go-spew v1.1.1/go.mod 
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc 
h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
+github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod 
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod 
h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
 github.com/dlclark/regexp2 v1.11.0 
h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI=
 github.com/dlclark/regexp2 v1.11.0/go.mod 
h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
@@ -112,8 +113,8 @@
 github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod 
h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
 github.com/fatih/color v1.7.0/go.mod 
h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
 github.com/fatih/color v1.10.0/go.mod 
h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM=
-github.com/felixge/httpsnoop v1.0.4 
h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
-github.com/felixge/httpsnoop v1.0.4/go.mod 
h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
+github.com/felixge/httpsnoop v1.1.0 
h1:3YtUj32ZZkqZtt3sZZsClsymw/QDuVfpNhoA31zeORc=
+github.com/felixge/httpsnoop v1.1.0/go.mod 
h1:Zqxgdd+1Rkcz8euOqdr7lqgCRJztwr5hp9vDSi5UZCE=
 github.com/fsnotify/fsnotify v1.4.7/go.mod 
h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
 github.com/fullstorydev/grpcurl v1.6.0/go.mod 
h1:ZQ+ayqbKMJNhzLmbpCiurTVlaK2M/3nqZCxaQ2Ze/sM=
 github.com/ghodss/yaml v1.0.0/go.mod 
h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
@@ -195,8 +196,8 @@
 github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod 
h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=
 github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod 
h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=
 github.com/google/pprof v0.0.0-20200507031123-427632fa3b1c/go.mod 
h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM=
-github.com/google/pprof v0.0.0-20260507013755-92041b743c96 
h1:YDDnaZ9afWajDboPMt9Vikqca/yWAX7KAxVzb4lJU1M=
-github.com/google/pprof v0.0.0-20260507013755-92041b743c96/go.mod 
h1:MxpfABSjhmINe3F1It9d+8exIHFvUqtLIRCdOGNXqiI=
+github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0 
h1:du0WGc8xSKq/++e0cglxhS/mXVqsR7+c7jLEi5Vqduw=
+github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0/go.mod 
h1:MxpfABSjhmINe3F1It9d+8exIHFvUqtLIRCdOGNXqiI=
 github.com/google/renameio v0.1.0/go.mod 
h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
 github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0=
 github.com/google/s2a-go v0.1.9/go.mod 
h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM=
@@ -206,12 +207,12 @@
 github.com/google/uuid v1.1.1/go.mod 
h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
 github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
 github.com/google/uuid v1.6.0/go.mod 
h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
-github.com/googleapis/enterprise-certificate-proxy v0.3.14 
h1:yh8ncqsbUY4shRD5dA6RlzjJaT4hi3kII+zYw8wmLb8=
-github.com/googleapis/enterprise-certificate-proxy v0.3.14/go.mod 
h1:vqVt9yG9480NtzREnTlmGSBmFrA+bzb0yl0TxoBQXOg=
+github.com/googleapis/enterprise-certificate-proxy v0.3.18 
h1:hvVi34VucdrV1IIsiWuqYM8kutw/92MxNEFxCJZEh0k=
+github.com/googleapis/enterprise-certificate-proxy v0.3.18/go.mod 
h1:rSEsBUemEBZEexP2y6jPp16LUmUbjmSbcPMQizR0o4k=
 github.com/googleapis/gax-go/v2 v2.0.4/go.mod 
h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
 github.com/googleapis/gax-go/v2 v2.0.5/go.mod 
h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
-github.com/googleapis/gax-go/v2 v2.22.0 
h1:PjIWBpgGIVKGoCXuiCoP64altEJCj3/Ei+kSU5vlZD4=
-github.com/googleapis/gax-go/v2 v2.22.0/go.mod 
h1:irWBbALSr0Sk3qlqb9SyJ1h68WjgeFuiOzI4Rqw5+aY=
+github.com/googleapis/gax-go/v2 v2.23.0 
h1:Tchl7qkvE7Ip3y+ztvNufYFvkfqTe7NfLTYGIdJRLuE=
+github.com/googleapis/gax-go/v2 v2.23.0/go.mod 
h1:rBQKOVJCdb8IFEzg+FCwlt1LP/xMDGuqUXhUG+XMXEg=
 github.com/gookit/assert v0.1.1 h1:lh3GcawXe/p+cU7ESTZ5Ui3Sm/x8JWpIis4/1aF0mY0=
 github.com/gookit/assert v0.1.1/go.mod 
h1:jS5bmIVQZTIwk42uXl4lyj4iaaxx32tqH16CFj0VX2E=
 github.com/gookit/color v1.6.1 h1:KoTnDxJPRgrL0SoX0f8rCFg2zI0t4E3GZZBMo2nN8LU=
@@ -240,8 +241,8 @@
 github.com/imdario/mergo v0.3.4/go.mod 
h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
 github.com/imdario/mergo v0.3.8/go.mod 
h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
 github.com/inconshreveable/mousetrap v1.0.0/go.mod 
h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
-github.com/invopop/jsonschema v0.13.0 
h1:KvpoAJWEjR3uD9Kbm2HWJmqsEaHt8lBUpd0qHcIi21E=
-github.com/invopop/jsonschema v0.13.0/go.mod 
h1:ffZ5Km5SWWRAIN6wbDXItl95euhFz2uON45H2qjYt+0=
+github.com/invopop/jsonschema v0.14.0 
h1:MHQqLhvpNUZfw+hM3AZDYK7jxO8FZoQeQM77g8iyZjg=
+github.com/invopop/jsonschema v0.14.0/go.mod 
h1:ygm6C2EaVNMBDPpaPlnOA2pFAxBnxGjFlMZABxm9n2I=
 github.com/jhump/protoreflect v1.6.1/go.mod 
h1:RZQ/lnuN+zqeRVpQigTwO6o0AJUkxbnSnpuG7toUTG4=
 github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod 
h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
 github.com/jmespath/go-jmespath v0.4.0/go.mod 
h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
@@ -278,8 +279,6 @@
 github.com/lib/pq v1.12.3 h1:tTWxr2YLKwIvK90ZXEw8GP7UFHtcbTtty8zsI+YjrfQ=
 github.com/lib/pq v1.12.3/go.mod 
h1:/p+8NSbOcwzAEI7wiMXFlgydTwcgTr3OSKMsD2BitpA=
 github.com/magiconair/properties v1.8.0/go.mod 
h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
-github.com/mailru/easyjson v0.9.2 
h1:dX8U45hQsZpxd80nLvDGihsQ/OxlvTkVUXH2r/8cb2M=
-github.com/mailru/easyjson v0.9.2/go.mod 
h1:1+xMtQp2MRNVL/V1bOzuP3aP8VNwRW55fQUto+XFtTU=
 github.com/maruel/natural v1.1.1 
h1:Hja7XhhmvEFhcByqDoHz9QZbkWey+COd9xWfCfn1ioo=
 github.com/maruel/natural v1.1.1/go.mod 
h1:v+Rfd79xlw1AgVBjbO0BEQmptqb5HvL/k9GRHB7ZKEg=
 github.com/mattn/go-colorable v0.0.9/go.mod 
h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
@@ -320,22 +319,25 @@
 github.com/olekukonko/tablewriter v0.0.2/go.mod 
h1:rSAaSIOAGT9odnlyGlUfAJaoc5w2fSBUmeGDbRWPxyQ=
 github.com/onsi/ginkgo v1.6.0/go.mod 
h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
 github.com/onsi/ginkgo v1.10.3/go.mod 
h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
-github.com/onsi/ginkgo/v2 v2.29.0 
h1:rfh+ZFjgJhYWRoIqVf3Uwx/W20yLrcrE2h2GmYVRaag=
-github.com/onsi/ginkgo/v2 v2.29.0/go.mod 
h1:+aXOY+vzZ5mu2iI2HpTZUPmM//oQfsNFX6gU9kNcA44=
+github.com/onsi/ginkgo/v2 v2.32.0 
h1:Hw7s2pVrQo/8Yz5N77qdnpHaoc+c6cC9WIV1Jce+J6E=
+github.com/onsi/ginkgo/v2 v2.32.0/go.mod 
h1:+aXOY+vzZ5mu2iI2HpTZUPmM//oQfsNFX6gU9kNcA44=
 github.com/onsi/gomega v1.7.1/go.mod 
h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
-github.com/onsi/gomega v1.41.0 h1:OwKp4pXNgVxf6sCplzYo794OFNuoL2q2SBMU5NSWOjA=
-github.com/onsi/gomega v1.41.0/go.mod 
h1:M/Uqpu/8qTjtzCLUA2zJHX9Iilrau25x1PdoSRbWh5A=
-github.com/openai/openai-go/v3 v3.37.0 
h1:4OG68yZgnxZpwzebO+ZDUNkFJKKwKgzilMQq30nsouE=
-github.com/openai/openai-go/v3 v3.37.0/go.mod 
h1:cdufnVK14cWcT9qA1rRtrXx4FTRsgbDPW7Ia7SS5cZo=
+github.com/onsi/gomega v1.42.1 h1:iN1rCUX+44NZ1Dc97MPoeFYbFR0vh8zxoxMFwKdyZ6I=
+github.com/onsi/gomega v1.42.1/go.mod 
h1:REff/hsDsodHoKlWsP2mAPhu1+5/6hVYNf9rIEBpeSg=
+github.com/openai/openai-go/v3 v3.42.0 
h1:16Skv1hpEhSm3imZpPGSeEBDUgVJJA9cHryKGGsVYI8=
+github.com/openai/openai-go/v3 v3.42.0/go.mod 
h1:cdufnVK14cWcT9qA1rRtrXx4FTRsgbDPW7Ia7SS5cZo=
 github.com/opentracing/opentracing-go v1.1.0/go.mod 
h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
+github.com/pb33f/ordered-map/v2 v2.3.1 
h1:5319HDO0aw4DA4gzi+zv4FXU9UlSs3xGZ40wcP1nBjY=
+github.com/pb33f/ordered-map/v2 v2.3.1/go.mod 
h1:qxFQgd0PkVUtOMCkTapqotNgzRhMPL7VvaHKbd1HnmQ=
 github.com/pelletier/go-toml v1.2.0/go.mod 
h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
 github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod 
h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU=
 github.com/pkg/errors v0.8.0/go.mod 
h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
 github.com/pkg/errors v0.8.1/go.mod 
h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
 github.com/pkg/errors v0.9.1/go.mod 
h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
 github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod 
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
-github.com/pmezard/go-difflib v1.0.0 
h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod 
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 
h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
+github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod 
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/prometheus/client_golang v0.9.1/go.mod 
h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
 github.com/prometheus/client_golang v1.0.0/go.mod 
h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
 github.com/prometheus/client_golang v1.7.1/go.mod 
h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=
@@ -407,8 +409,6 @@
 github.com/urfave/cli v1.20.0/go.mod 
h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA=
 github.com/urfave/cli v1.22.1/go.mod 
h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
 github.com/viki-org/dnscache v0.0.0-20130720023526-c70c1f23c5d8/go.mod 
h1:dniwbG03GafCjFohMDmz6Zc6oCuiqgH6tGNyXTkHzXE=
-github.com/wk8/go-ordered-map/v2 v2.1.8 
h1:5h/BUHu93oj4gIdvHHHGsScSTMijfx5PeYkE/fJgbpc=
-github.com/wk8/go-ordered-map/v2 v2.1.8/go.mod 
h1:5nJHM5DyteebpVlHnWMV0rPz6Zp7+xBAnxjb1X5vnTw=
 github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod 
h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=
 github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e 
h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no=
 github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod 
h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM=
@@ -453,6 +453,8 @@
 go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM=
 go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
 go.yaml.in/yaml/v3 v3.0.4/go.mod 
h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
+go.yaml.in/yaml/v4 v4.0.0-rc.6 h1:1h7H1ohdUh93/FyE4YaDa1Zh64K6VVbjF4K6WUxMtH4=
+go.yaml.in/yaml/v4 v4.0.0-rc.6/go.mod 
h1:aZqd9kCMsGL7AuUv/m/PvWLdg5sjJsZ4oHDEnfPPfY0=
 golang.org/x/crypto v0.0.0-20180501155221-613d6eafa307/go.mod 
h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
 golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod 
h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
 golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod 
h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
@@ -462,8 +464,8 @@
 golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod 
h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
 golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod 
h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod 
h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
-golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988=
-golang.org/x/crypto v0.52.0/go.mod 
h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc=
+golang.org/x/crypto v0.54.0 h1:YLIA59K4fiNzHzjnZt2tUJQjQtUWfWbeHBqKtk3eScw=
+golang.org/x/crypto v0.54.0/go.mod 
h1:KWL8ny2AZdGR2cWmzeHrp2azQPGogOv+HeQaVEXC2dk=
 golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod 
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod 
h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod 
h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
@@ -497,8 +499,8 @@
 golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod 
h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
 golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
 golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
-golang.org/x/mod v0.36.0 h1:JJjpVx6myfUsUdAzZuOSTTmRE0PfZeNWzzvKrP7amb4=
-golang.org/x/mod v0.36.0/go.mod h1:moc6ELqsWcOw5Ef3xVprK5ul/MvtVvkIXLziUOICjUQ=
+golang.org/x/mod v0.38.0 h1:MECBjubtXD7yj4HrhIUcywNaGeNVUdfVnxmPajOk4yk=
+golang.org/x/mod v0.38.0/go.mod h1:V6Xz0pq8TQ3dGqVQ1FVHuelZpAL0uNhSkk9ogYP3c40=
 golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod 
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod 
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod 
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -531,8 +533,8 @@
 golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod 
h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
 golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod 
h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
 golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod 
h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
-golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8=
-golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww=
+golang.org/x/net v0.57.0 h1:K5+3DljvIuDG9/Jv9rvyMywYNFCQ9RSUY6OOTTkT+tE=
+golang.org/x/net v0.57.0/go.mod h1:KpXc8iv+r3XplLAG/f7Jsf9RPszJzdR0f58q9vGOuEU=
 golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod 
h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
 golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod 
h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
 golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod 
h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -547,8 +549,8 @@
 golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4=
-golang.org/x/sync v0.20.0/go.mod 
h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
+golang.org/x/sync v0.22.0 h1:SZjpbeLmrCk4xhRSZFNZW5gFUeCeFgjekvI/+gfScek=
+golang.org/x/sync v0.22.0/go.mod 
h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
 golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod 
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod 
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod 
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -589,18 +591,18 @@
 golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod 
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod 
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod 
h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY=
-golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
+golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs=
+golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
 golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod 
h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
-golang.org/x/term v0.43.0 h1:S4RLU2sB31O/NCl+zFN9Aru9A/Cq2aqKpTZJ6B+DwT4=
-golang.org/x/term v0.43.0/go.mod 
h1:lrhlHNdQJHO+1qVYiHfFKVuVioJIheAc3fBSMFYEIsk=
+golang.org/x/term v0.45.0 h1:NwWyBmoJCbfTHpxrWoZ9C6/VxOf7ic219I8xZZFdrf0=
+golang.org/x/term v0.45.0/go.mod 
h1:9aqxs0blBcrm/n0L9QW0aRVD+ktan8ssZromtqJC43w=
 golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod 
h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod 
h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
 golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.37.0 h1:Cqjiwd9eSg8e0QAkyCaQTNHFIIzWtidPahFWR83rTrc=
-golang.org/x/text v0.37.0/go.mod 
h1:a5sjxXGs9hsn/AJVwuElvCAo9v8QYLzvavO5z2PiM38=
+golang.org/x/text v0.40.0 h1:Ub2Z6/xjgF1WrYQz2nuITOEegKFtiIy+rieRJ5lHZKs=
+golang.org/x/text v0.40.0/go.mod 
h1:hpnzDAfGV753zIKo+wk3u1bVKCGPbrnF7+7LBF/UHVY=
 golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod 
h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
 golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod 
h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
 golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod 
h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -652,8 +654,8 @@
 golang.org/x/tools v0.0.0-20200626171337-aa94e735be7f/go.mod 
h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
 golang.org/x/tools v0.0.0-20200630154851-b2d8b0336632/go.mod 
h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
 golang.org/x/tools v0.0.0-20200706234117-b22de6825cf7/go.mod 
h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA=
-golang.org/x/tools v0.45.0 h1:18qN3FAooORvApf5XjCXgsuayZOEtXf6JK18I3+ONa8=
-golang.org/x/tools v0.45.0/go.mod 
h1:LuUGqqaXcXMEFEruIVJVm5mgDD8vww/z/SR1gQ4uE/0=
+golang.org/x/tools v0.48.0 h1:3+hClM1aLL5mjMKm5ovokw9epgRXPuu2tILgismM6RE=
+golang.org/x/tools v0.48.0/go.mod 
h1:08xX0orndb/F7jJxGDicx061tyd5pcMto75YMAXr6lk=
 golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod 
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod 
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod 
h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -675,8 +677,8 @@
 google.golang.org/api v0.24.0/go.mod 
h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE=
 google.golang.org/api v0.28.0/go.mod 
h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE=
 google.golang.org/api v0.29.0/go.mod 
h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM=
-google.golang.org/api v0.274.0 h1:aYhycS5QQCwxHLwfEHRRLf9yNsfvp1JadKKWBE54RFA=
-google.golang.org/api v0.274.0/go.mod 
h1:JbAt7mF+XVmWu6xNP8/+CTiGH30ofmCmk9nM8d8fHew=
+google.golang.org/api v0.288.0 h1:glhO/J88obKP5I269W3hB73dvBKrjU56ZfmNlNXpgTU=
+google.golang.org/api v0.288.0/go.mod 
h1:lM2kYRzYUCBY91P9h6VF1PYmvhxii3O5hji37qRvIcY=
 google.golang.org/appengine v1.1.0/go.mod 
h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
 google.golang.org/appengine v1.4.0/go.mod 
h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
 google.golang.org/appengine v1.5.0/go.mod 
h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
@@ -684,8 +686,8 @@
 google.golang.org/appengine v1.6.2/go.mod 
h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0=
 google.golang.org/appengine v1.6.5/go.mod 
h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
 google.golang.org/appengine v1.6.6/go.mod 
h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
-google.golang.org/genai v1.58.0 h1:MNA3ZkRyr7MnRwZ9RNZ60p4+UMKV3yYRw6pyHq4pp0U=
-google.golang.org/genai v1.58.0/go.mod 
h1:A3kkl0nyBjyFlNjgxIwKq70julKbIxpSxqKO5gw/gmk=
+google.golang.org/genai v1.63.0 h1:Iryg+4TBco5HaRbwVhAV/ROKVcWiZkuvQzKb4u1QggY=
+google.golang.org/genai v1.63.0/go.mod 
h1:mDdPDFXo1Ats7f1WXVyZgWb/CkMzFWTWJruIMy7hGIU=
 google.golang.org/genproto v0.0.0-20170818010345-ee236bd376b0/go.mod 
h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
 google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod 
h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
 google.golang.org/genproto v0.0.0-20181107211654-5fc9ac540362/go.mod 
h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
@@ -719,10 +721,10 @@
 google.golang.org/genproto v0.0.0-20200707001353-8e8330bf89df/go.mod 
h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
 google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 
h1:XzmzkmB14QhVhgnawEVsOn6OFsnpyxNPRY9QV01dNB0=
 google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7/go.mod 
h1:L43LFes82YgSonw6iTXTxXUX1OlULt4AQtkik4ULL/I=
-google.golang.org/genproto/googleapis/api v0.0.0-20260319201613-d00831a3d3e7 
h1:41r6JMbpzBMen0R/4TZeeAmGXSJC7DftGINUodzTkPI=
-google.golang.org/genproto/googleapis/api 
v0.0.0-20260319201613-d00831a3d3e7/go.mod 
h1:EIQZ5bFCfRQDV4MhRle7+OgjNtZ6P1PiZBgAKuxXu/Y=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa 
h1:mZHHdPZl0dbGHCflZgAq/Q468DWVFcU2whhB2KAo8fk=
-google.golang.org/genproto/googleapis/rpc 
v0.0.0-20260526163538-3dc84a4a5aaa/go.mod 
h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
+google.golang.org/genproto/googleapis/api v0.0.0-20260630182238-925bb5da69e7 
h1:jQ9p21COKWjP3VwuFrNRiiOTMh3mPpN45R7SLrH/HUU=
+google.golang.org/genproto/googleapis/api 
v0.0.0-20260630182238-925bb5da69e7/go.mod 
h1:KqHwBx2upmfa1XSi1WuRvC+2VGCLtooKkfmyvRbUmqA=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20260706201446-f0a921348800 
h1:qEHAMpSaUhtD0p3NbEEI83HwNGFxEwaSJ1G9PLnCBZE=
+google.golang.org/genproto/googleapis/rpc 
v0.0.0-20260706201446-f0a921348800/go.mod 
h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
 google.golang.org/grpc v1.8.0/go.mod 
h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
 google.golang.org/grpc v1.19.0/go.mod 
h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
 google.golang.org/grpc v1.20.1/go.mod 
h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
@@ -737,8 +739,8 @@
 google.golang.org/grpc v1.28.0/go.mod 
h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60=
 google.golang.org/grpc v1.29.0/go.mod 
h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk=
 google.golang.org/grpc v1.29.1/go.mod 
h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk=
-google.golang.org/grpc v1.81.1 h1:VnnIIZ88UzOOKLukQi+ImGz8O1Wdp8nAGGnvOfEIWQQ=
-google.golang.org/grpc v1.81.1/go.mod 
h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I=
+google.golang.org/grpc v1.82.0 h1:vguDnZUPjE26w09A63VoxZPnvPjB5Riyc0mkXPFmAIU=
+google.golang.org/grpc v1.82.0/go.mod 
h1:yzTZ1TB1Z3SG+LIYaI+WiE8D5+PZ3ArnrSp8zF3+/ZA=
 google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod 
h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
 google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod 
h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
 google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod 
h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/report/html/template.html 
new/gosec-2.28.0/report/html/template.html
--- old/gosec-2.27.1/report/html/template.html  2026-06-01 19:11:18.000000000 
+0200
+++ new/gosec-2.28.0/report/html/template.html  2026-07-13 10:40:30.000000000 
+0200
@@ -8,7 +8,7 @@
   <link rel="stylesheet" 
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/styles/default.min.css";
 
integrity="sha512-hasIneQUHlh06VNBe7f6ZcHmeRTLIaQWFd43YriJ0UND19bvYRauxthDg8E4eVNPm9bRUhr5JGeqH7FRFXQu5g=="
 crossorigin="anonymous"/>
   <script type="text/javascript" 
src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/highlight.min.js";
 
integrity="sha512-EBLzUL8XLl+va/zAsmXwS7Z2B1F9HUHkZwyS/VKwh3S7T/U0nF4BaU29EP/ZSf6zgiIxYAnKLu6bJ8dqpmX5uw=="
 crossorigin="anonymous"></script>
   <script type="text/javascript" 
src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.11.1/languages/go.min.js";
 
integrity="sha512-weC0VNVf2qQR6OY675qO0AEL92gt3h5f2VGjhMUvi/UqFHaWzIEL5S/8Dt763fWfKftchzb7GryvEj/2HC9Exw=="
 crossorigin="anonymous"></script>
-  <script type="text/javascript" 
src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/7.28.4/babel.min.js";
 
integrity="sha512-BCw4VuBF2HKIgxDP8K7DRHcHzazAAND+5+2E7GgX3CC1u1pteJ415mMJlQfUORjkFT64irzu1jIV93Vfvzkevw=="
 crossorigin="anonymous"></script>
+  <script type="text/javascript" 
src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/8.0.4/babel.min.js";
 
integrity="sha512-0kogYX+JRNNH6mtJ3d4ZGS50A5IbSQdyOQRX4suqvLbIKjUmJ4/oMFlqhVLSO/hUVUKXJ6TS7Tvqa1wdEj/wHg=="
 crossorigin="anonymous"></script>
   
   <script type="importmap">
   {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/rules/hardcoded_credentials.go 
new/gosec-2.28.0/rules/hardcoded_credentials.go
--- old/gosec-2.27.1/rules/hardcoded_credentials.go     2026-06-01 
19:11:18.000000000 +0200
+++ new/gosec-2.28.0/rules/hardcoded_credentials.go     2026-07-13 
10:40:30.000000000 +0200
@@ -64,6 +64,10 @@
                regexp: regexp.MustCompile(`AKIA[0-9A-Z]{16}`),
        },
        {
+               name:   "AWS Temporary Access Key",
+               regexp: regexp.MustCompile(`ASIA[0-9A-Z]{16}`),
+       },
+       {
                name:   "Amazon MWS Auth Token",
                regexp: 
regexp.MustCompile(`amzn\.mws\.[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}`),
        },
@@ -163,6 +167,19 @@
                name:   "Twitter OAuth",
                regexp: 
regexp.MustCompile(`[tT][wW][iI][tT][tT][eE][rR].*[''|"][0-9a-zA-Z]{35,44}[''|"]`),
        },
+
+       {
+               name:   "GitHub personal access token",
+               regexp: regexp.MustCompile(`ghp_[a-zA-Z0-9]{36}`),
+       },
+       {
+               name:   "GitHub fine-grained access token",
+               regexp: 
regexp.MustCompile(`github_pat_[a-zA-Z0-9]{22}_[a-zA-Z0-9]{59}`),
+       },
+       {
+               name:   "GitHub action temporary token",
+               regexp: regexp.MustCompile(`ghs_[a-zA-Z0-9]{36}`),
+       },
 }
 
 type credentials struct {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/rules/rand.go 
new/gosec-2.28.0/rules/rand.go
--- old/gosec-2.27.1/rules/rand.go      2026-06-01 19:11:18.000000000 +0200
+++ new/gosec-2.28.0/rules/rand.go      2026-07-13 10:40:30.000000000 +0200
@@ -30,10 +30,10 @@
        rule := &weakRand{newCallListRule(id,
                "Use of weak random number generator (math/rand or math/rand/v2 
instead of crypto/rand)",
                issue.High, issue.Medium)}
-       rule.AddAll("math/rand", "New", "Read", "Float32", "Float64", "Int", 
"Int31", "Int31n",
-               "Int63", "Int63n", "Intn", "NormFloat64", "Uint32", "Uint64")
-       rule.AddAll("math/rand/v2", "New", "Float32", "Float64", "Int", 
"Int32", "Int32N",
-               "Int64", "Int64N", "IntN", "N", "NormFloat64", "Uint32", 
"Uint32N", "Uint64", "Uint64N", "UintN")
+       rule.AddAll("math/rand", "New", "Read", "ExpFloat64", "Float32", 
"Float64", "Int", "Int31", "Int31n",
+               "Int63", "Int63n", "Intn", "NormFloat64", "Perm", "Shuffle", 
"Uint32", "Uint64")
+       rule.AddAll("math/rand/v2", "New", "ExpFloat64", "Float32", "Float64", 
"Int", "Int32", "Int32N",
+               "Int64", "Int64N", "IntN", "N", "NormFloat64", "Perm", 
"Shuffle", "Uint", "Uint32", "Uint32N", "Uint64", "Uint64N", "UintN")
 
        return rule, []ast.Node{(*ast.CallExpr)(nil)}
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/testutils/g101_samples.go 
new/gosec-2.28.0/testutils/g101_samples.go
--- old/gosec-2.27.1/testutils/g101_samples.go  2026-06-01 19:11:18.000000000 
+0200
+++ new/gosec-2.28.0/testutils/g101_samples.go  2026-07-13 10:40:30.000000000 
+0200
@@ -542,6 +542,35 @@
 import "fmt"
 
 func main() {
+       awsTemporaryAccessKeyID := "ASIAI44QH8DHBEXAMPLE"
+       fmt.Println(awsTemporaryAccessKeyID)
+}
+`}, 1, gosec.NewConfig()},
+               {[]string{`
+package main
+
+import "fmt"
+
+func main() {
+       awsTemporaryAccessKeyID := "ASIAI44QH8DHBEXAMPLE"
+       fmt.Println(awsTemporaryAccessKeyID)
+}
+`}, 1, gosec.NewConfig()},
+               {[]string{`
+package main
+
+func main() {
+       _ = map[string]string{
+               "aws_access_key": "ASIAI44QH8DHBEXAMPLE",
+       }
+}
+`}, 1, gosec.NewConfig()},
+               {[]string{`
+package main
+
+import "fmt"
+
+func main() {
        compareGoogleAPI := "test"
        if compareGoogleAPI == "AIzajtGS_aJGkoiAmSbXzu9I-1eytAi9Lrlh-vT" {
                fmt.Println(compareGoogleAPI)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/testutils/g115_samples.go 
new/gosec-2.28.0/testutils/g115_samples.go
--- old/gosec-2.27.1/testutils/g115_samples.go  2026-06-01 19:11:18.000000000 
+0200
+++ new/gosec-2.28.0/testutils/g115_samples.go  2026-07-13 10:40:30.000000000 
+0200
@@ -1940,6 +1940,36 @@
        {[]string{`
 package main
 
+import (
+       "math"
+)
+
+func minMaxChecked(data []int) uint8 {
+       var out uint8
+       for i := 0; i < len(data); i++ {
+               out = uint8(max(0, min(math.MaxUint8, data[i])))
+       }
+       return out
+}
+       `}, 0, gosec.NewConfig()},
+       {[]string{`
+package main
+
+import (
+       "math"
+)
+
+func maxMinChecked(data []int) uint8 {
+       var out uint8
+       for i := 0; i < len(data); i++ {
+               out = uint8(min(math.MaxUint8, max(0, data[i])))
+       }
+       return out
+}
+       `}, 0, gosec.NewConfig()},
+       {[]string{`
+package main
+
 func issue1577RangeChecked(v int64) byte {
        if v < -128 || v > 255 {
                return 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gosec-2.27.1/testutils/g404_samples.go 
new/gosec-2.28.0/testutils/g404_samples.go
--- old/gosec-2.27.1/testutils/g404_samples.go  2026-06-01 19:11:18.000000000 
+0200
+++ new/gosec-2.28.0/testutils/g404_samples.go  2026-07-13 10:40:30.000000000 
+0200
@@ -184,4 +184,40 @@
        _ = rand3.IntN(2)  // bad
 }
 `}, 3, gosec.NewConfig()},
+       {[]string{`
+package main
+
+import "math/rand"
+
+func main() {
+       p := rand.Perm(10) // bad
+       println(len(p))
+       f := rand.ExpFloat64() // bad
+       println(f)
+       nums := []int{1, 2, 3}
+       rand.Shuffle(len(nums), func(i, j int) { // bad
+               nums[i], nums[j] = nums[j], nums[i]
+       })
+       println(nums[0])
+}
+`}, 3, gosec.NewConfig()},
+       {[]string{`
+package main
+
+import "math/rand/v2"
+
+func main() {
+       u := rand.Uint() // bad
+       println(u)
+       p := rand.Perm(10) // bad
+       println(len(p))
+       f := rand.ExpFloat64() // bad
+       println(f)
+       nums := []int{1, 2, 3}
+       rand.Shuffle(len(nums), func(i, j int) { // bad
+               nums[i], nums[j] = nums[j], nums[i]
+       })
+       println(nums[0])
+}
+`}, 4, gosec.NewConfig()},
 }

++++++ gosec.obsinfo ++++++
--- /var/tmp/diff_new_pack.JPLiev/_old  2026-07-15 22:15:30.879072685 +0200
+++ /var/tmp/diff_new_pack.JPLiev/_new  2026-07-15 22:15:30.883072821 +0200
@@ -1,5 +1,5 @@
 name: gosec
-version: 2.27.1
-mtime: 1780333878
-commit: 9e6a9843d7a4a6e3e9a8539b02612c8a4aa3f889
+version: 2.28.0
+mtime: 1783932030
+commit: 9e75c0576c9878035d4221392108d458abe10fc3
 

++++++ vendor.tar.xz ++++++
++++ 106849 lines of diff (skipped)

Reply via email to