Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package jfrog-cli for openSUSE:Factory 
checked in at 2025-09-26 22:24:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jfrog-cli (Old)
 and      /work/SRC/openSUSE:Factory/.jfrog-cli.new.11973 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "jfrog-cli"

Fri Sep 26 22:24:50 2025 rev:14 rq:1307259 version:2.79.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/jfrog-cli/jfrog-cli.changes      2025-09-19 
15:34:38.910480771 +0200
+++ /work/SRC/openSUSE:Factory/.jfrog-cli.new.11973/jfrog-cli.changes   
2025-09-26 22:26:19.250559832 +0200
@@ -1,0 +2,20 @@
+Fri Sep 26 05:31:28 UTC 2025 - Johannes Kastl 
<[email protected]>
+
+- Update to version 2.79.1:
+  * Exciting New Features
+    - JA-17729 - Add support for disable-token-refresh flag by
+      @arshjotk in #3132
+  * Improvements
+    - Fix npm native workspace by @fluxxBot in #3115
+  * Bug Fixes
+    - Fixed build info recording npm workspaces by @fluxxBot in
+      #3124
+  * Other Changes
+    - Fine tune tests trigger by @ehl-jf in #3120
+    - JGC-414 - Remove line breaks in Authorization header for
+      Gitlab by @cyrilc-pro in #3110
+    - JGC-405 - Add survey link by @RemiBou in #3122 use env var
+      JFROG_CLI_HIDE_SURVEY=true to hide it
+    - Fix darwin binary build by @RemiBou in #3138
+
+-------------------------------------------------------------------

Old:
----
  jfrog-cli-2.79.0.obscpio

New:
----
  jfrog-cli-2.79.1.obscpio

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

Other differences:
------------------
++++++ jfrog-cli.spec ++++++
--- /var/tmp/diff_new_pack.SjV02o/_old  2025-09-26 22:26:20.102595766 +0200
+++ /var/tmp/diff_new_pack.SjV02o/_new  2025-09-26 22:26:20.102595766 +0200
@@ -19,7 +19,7 @@
 %define executable_name jf
 
 Name:           jfrog-cli
-Version:        2.79.0
+Version:        2.79.1
 Release:        0
 Summary:        A client that automates access to the JFrog products
 License:        Apache-2.0

++++++ _service ++++++
--- /var/tmp/diff_new_pack.SjV02o/_old  2025-09-26 22:26:20.170598634 +0200
+++ /var/tmp/diff_new_pack.SjV02o/_new  2025-09-26 22:26:20.190599477 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/jfrog/jfrog-cli.git</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
-    <param name="revision">v2.79.0</param>
+    <param name="revision">v2.79.1</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="changesgenerate">enable</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.SjV02o/_old  2025-09-26 22:26:20.226600996 +0200
+++ /var/tmp/diff_new_pack.SjV02o/_new  2025-09-26 22:26:20.238601502 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/jfrog/jfrog-cli.git</param>
-              <param 
name="changesrevision">a6c05c503d41ad0341c3714ac32ef83775a27945</param></service></servicedata>
+              <param 
name="changesrevision">c3dd21c52df755b062597747b4b7d3e06c91fadd</param></service></servicedata>
 (No newline at EOF)
 

++++++ jfrog-cli-2.79.0.obscpio -> jfrog-cli-2.79.1.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/Makefile 
new/jfrog-cli-2.79.1/Makefile
--- old/jfrog-cli-2.79.0/Makefile       1970-01-01 01:00:00.000000000 +0100
+++ new/jfrog-cli-2.79.1/Makefile       2025-09-25 15:18:30.000000000 +0200
@@ -0,0 +1,83 @@
+# Makefile for jfrog-client-go
+
+.PHONY: $(MAKECMDGOALS)
+
+# Default target
+help:
+       @echo "Available targets:"
+       @echo "  update-all           - Update all JFrog dependencies to latest 
versions"
+       @echo "  update-build-info-go - Update build-info-go to latest main 
branch"
+       @echo "  update-client-go     - Update client-go to latest main branch"
+       @echo "  update-gofrog        - Update gofrog to latest main branch"
+       @echo "  update-core          - Update jfrog-cli-core to latest main 
branch"
+       @echo "  update-artifactory   - Update jfrog-cli-artifactory to latest 
main branch"
+       @echo "  update-platform-services - Update jfrog-cli-platform-services 
to latest main branch"
+       @echo "  update-security      - Update jfrog-cli-security to latest 
main branch"
+       @echo "  clean                - Clean build artifacts"
+       @echo "  test                 - Run tests"
+       @echo "  build                - Build the project"
+
+# Update all JFrog dependencies
+update-all: update-build-info-go update-client-go update-gofrog update-core 
update-artifactory update-platform-services update-security
+       @echo "All JFrog dependencies updated successfully!"
+       @GOPROXY=direct go mod tidy
+
+# Update build-info-go to latest main branch (using direct proxy to bypass 
Artifactory)
+update-build-info-go:
+       @echo "Updating build-info-go to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/build-info-go@main
+       @echo "build-info-go updated successfully!"
+
+# Update gofrog to latest main branch
+update-client-go:
+       @echo "Updating client-go to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/jfrog-client-go@master
+       @echo "client-go updated successfully!"
+
+# Update gofrog to latest main branch
+update-gofrog:
+       @echo "Updating gofrog to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/gofrog@master
+       @echo "gofrog updated successfully!"
+
+# Update jfrog-cli-core to latest main branch
+update-core:
+       @echo "Updating jfrog-cli-core to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/jfrog-cli-core/v2@master
+       @echo "jfrog-cli-core updated successfully!"
+
+# Update jfrog-cli-artifactory to latest main branch
+update-artifactory:
+       @echo "Updating jfrog-cli-artifactory to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/jfrog-cli-artifactory@main
+       @echo "jfrog-cli-artifactory updated successfully!"
+
+# Update jfrog-cli-platform-services to latest main branch
+update-platform-services:
+       @echo "Updating jfrog-cli-platform-services to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/jfrog-cli-platform-services@main
+       @echo "jfrog-cli-platform-services updated successfully!"
+
+# Update jfrog-cli-security to latest main branch
+update-security:
+       @echo "Updating jfrog-cli-security to latest main branch..."
+       @GOPROXY=direct go get github.com/jfrog/jfrog-cli-security@main
+       @echo "jfrog-cli-security updated successfully!"
+
+
+# Clean build artifacts
+clean:
+       @echo "Cleaning build artifacts..."
+       @go clean
+       @go clean -cache
+       @go clean -modcache
+
+# Run tests
+test:
+       @echo "Running tests..."
+       @go test ./...
+
+# Build the project
+build:
+       @echo "Building project..."
+       @go build ./...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/artifactory_test.go 
new/jfrog-cli-2.79.1/artifactory_test.go
--- old/jfrog-cli-2.79.0/artifactory_test.go    2025-09-18 13:32:45.000000000 
+0200
+++ new/jfrog-cli-2.79.1/artifactory_test.go    2025-09-25 15:18:30.000000000 
+0200
@@ -5173,6 +5173,24 @@
        details, err := config.GetSpecificConfig(tests.ServerId, false, false)
        assert.NoError(t, err)
        assert.Equal(t, "accesstoken", details.AccessToken)
+       assert.Equal(t, false, details.DisableTokenRefresh)
+}
+
+func TestConfigAddWithDisableRefreshToken(t *testing.T) {
+       initArtifactoryTest(t, "")
+
+       err := configCli.WithoutCredentials().Exec("add", tests.ServerId, 
"--artifactory-url="+*tests.JfrogUrl+tests.
+               ArtifactoryEndpoint, "--access-token=password", 
"--disable-token-refresh=true")
+       assert.NoError(t, err)
+
+       defer func() {
+               assert.NoError(t, configCli.WithoutCredentials().Exec("rm", 
tests.ServerId, "--quiet"))
+       }()
+
+       details, err := config.GetSpecificConfig(tests.ServerId, false, false)
+       assert.NoError(t, err)
+       assert.Equal(t, "password", details.AccessToken)
+       assert.Equal(t, true, details.DisableTokenRefresh)
 }
 
 func pipeStdinSecret(t *testing.T, secret string) func() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/bump-version.sh 
new/jfrog-cli-2.79.1/build/bump-version.sh
--- old/jfrog-cli-2.79.0/build/bump-version.sh  2025-09-18 13:32:45.000000000 
+0200
+++ new/jfrog-cli-2.79.1/build/bump-version.sh  2025-09-25 15:18:30.000000000 
+0200
@@ -81,7 +81,9 @@
         exit 1
     fi
 
-    git add "$filePath"
+    if [ "${BUMP_VERSION_SKIP_GIT:-}" != "true" ]; then
+        git add "$filePath"
+    fi
 }
 
 ## Validate the argument was received.
@@ -97,7 +99,9 @@
 validateVersions "$fromVersion" "$toVersion"
 
 ## Create a new branch
-createBranch
+if [ "${BUMP_VERSION_SKIP_GIT:-}" != "true" ]; then
+    createBranch
+fi
 
 ## Add calls to the function to replace version in file with specified 
filePath values
 replaceVersion "utils/cliutils/cli_consts.go" "CliVersion  = \"$fromVersion\"" 
"$fromVersion" "$toVersion"
@@ -109,6 +113,8 @@
 ## Print success message if validation and replacement pass
 echo "Version bumped successfully."
 
-## Push the new branch, with the version bump
-git commit -m "Bump version from $fromVersion to $toVersion"
-git push --set-upstream origin "$branchName"
+if [ "${BUMP_VERSION_SKIP_GIT:-}" != "true" ]; then
+    ## Push the new branch, with the version bump
+    git commit -m "Bump version from $fromVersion to $toVersion"
+    git push --set-upstream origin "$branchName"
+fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/compute_next_minor.sh 
new/jfrog-cli-2.79.1/build/compute_next_minor.sh
--- old/jfrog-cli-2.79.0/build/compute_next_minor.sh    1970-01-01 
01:00:00.000000000 +0100
+++ new/jfrog-cli-2.79.1/build/compute_next_minor.sh    2025-09-25 
15:18:30.000000000 +0200
@@ -0,0 +1,43 @@
+#!/usr/bin/env bash
+set -euo pipefail
+
+# Compute next minor version based on the latest GitHub release tag of 
jfrog/jfrog-cli.
+# - Uses: gh release view --repo jfrog/jfrog-cli --json tagName
+# - Output does NOT include a leading 'v' prefix
+
+if ! command -v gh >/dev/null 2>&1; then
+  echo "Error: 'gh' (GitHub CLI) is not installed or not in PATH." >&2
+  exit 1
+fi
+
+# Get latest release tag from the known repository
+tag=$(gh release view --repo jfrog/jfrog-cli --json tagName -q .tagName)
+
+if [ -z "${tag}" ]; then
+  echo "Error: Could not determine latest release tag from jfrog/jfrog-cli." 
>&2
+  exit 1
+fi
+
+version_core="${tag#v}"
+
+# Extract major, minor, patch from semantic version
+IFS='.' read -r major minor patch_raw <<EOF
+${version_core}
+EOF
+
+if [ -z "${major:-}" ] || [ -z "${minor:-}" ]; then
+  echo "Error: Tag '${tag}' is not a valid semver (expected 
MAJOR.MINOR.PATCH)." >&2
+  exit 1
+fi
+
+# Strip any suffix from patch (e.g. 1-rc.1 -> 1)
+patch=${patch_raw%%[^0-9]*}
+patch=${patch:-0}
+
+# Increment minor, reset patch
+next_minor=$((minor + 1))
+next_version="${major}.${next_minor}.0"
+
+echo "${next_version}"
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/compute_next_patch.sh 
new/jfrog-cli-2.79.1/build/compute_next_patch.sh
--- old/jfrog-cli-2.79.0/build/compute_next_patch.sh    1970-01-01 
01:00:00.000000000 +0100
+++ new/jfrog-cli-2.79.1/build/compute_next_patch.sh    2025-09-25 
15:18:30.000000000 +0200
@@ -0,0 +1,43 @@
+#!/usr/bin/env bash
+set -euo pipefail
+
+# Compute next patch version based on the latest GitHub release tag of 
jfrog/jfrog-cli.
+# - Uses: gh release view --repo jfrog/jfrog-cli --json tagName
+# - Output does NOT include a leading 'v' prefix
+
+if ! command -v gh >/dev/null 2>&1; then
+  echo "Error: 'gh' (GitHub CLI) is not installed or not in PATH." >&2
+  exit 1
+fi
+
+# Get latest release tag from the known repository
+tag=$(gh release view --repo jfrog/jfrog-cli --json tagName -q .tagName)
+
+if [ -z "${tag}" ]; then
+  echo "Error: Could not determine latest release tag from jfrog/jfrog-cli." 
>&2
+  exit 1
+fi
+
+version_core="${tag#v}"
+
+# Extract major, minor, patch from semantic version
+IFS='.' read -r major minor patch_raw <<EOF
+${version_core}
+EOF
+
+if [ -z "${major:-}" ] || [ -z "${minor:-}" ]; then
+  echo "Error: Tag '${tag}' is not a valid semver (expected 
MAJOR.MINOR.PATCH)." >&2
+  exit 1
+fi
+
+# Strip any suffix from patch (e.g. 1-rc.1 -> 1)
+patch=${patch_raw%%[^0-9]*}
+patch=${patch:-0}
+
+# Increment patch
+next_patch=$((patch + 1))
+next_version="${major}.${minor}.${next_patch}"
+
+echo "${next_version}"
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/jfrog-cli-2.79.0/build/gitlab/v2/.setup-jfrog-unix.yml 
new/jfrog-cli-2.79.1/build/gitlab/v2/.setup-jfrog-unix.yml
--- old/jfrog-cli-2.79.0/build/gitlab/v2/.setup-jfrog-unix.yml  2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/build/gitlab/v2/.setup-jfrog-unix.yml  2025-09-25 
15:18:30.000000000 +0200
@@ -31,7 +31,7 @@
         if [ -n "${JF_ACCESS_TOKEN}" ]; then
             AUTH_HEADER="Authorization: Bearer ${JF_ACCESS_TOKEN}"
         else
-            AUTH_HEADER="Authorization: Basic $(printf 
${JF_USER}:${JF_PASSWORD} | base64)"
+            AUTH_HEADER="Authorization: Basic $(printf 
${JF_USER}:${JF_PASSWORD} | base64 --wrap=0)"
         fi
         echo "Downloading from remote repository '${JF_RELEASES_REPO}'..."
     fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/npm/v2/package-lock.json 
new/jfrog-cli-2.79.1/build/npm/v2/package-lock.json
--- old/jfrog-cli-2.79.0/build/npm/v2/package-lock.json 2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/build/npm/v2/package-lock.json 2025-09-25 
15:18:30.000000000 +0200
@@ -1,5 +1,5 @@
 {
   "name": "jfrog-cli-v2",
-  "version": "2.79.0",
+  "version": "2.79.1",
   "lockfileVersion": 2
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/npm/v2/package.json 
new/jfrog-cli-2.79.1/build/npm/v2/package.json
--- old/jfrog-cli-2.79.0/build/npm/v2/package.json      2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/build/npm/v2/package.json      2025-09-25 
15:18:30.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "jfrog-cli-v2",
-  "version": "2.79.0",
+  "version": "2.79.1",
   "description": "🐸 Command-line interface for JFrog Artifactory, Xray, 
Distribution, Pipelines and Mission Control 🐸",
   "homepage": "https://github.com/jfrog/jfrog-cli";,
   "preferGlobal": true,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/npm/v2-jf/package-lock.json 
new/jfrog-cli-2.79.1/build/npm/v2-jf/package-lock.json
--- old/jfrog-cli-2.79.0/build/npm/v2-jf/package-lock.json      2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/build/npm/v2-jf/package-lock.json      2025-09-25 
15:18:30.000000000 +0200
@@ -1,5 +1,5 @@
 {
   "name": "jfrog-cli-v2-jf",
-  "version": "2.79.0",
+  "version": "2.79.1",
   "lockfileVersion": 1
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/build/npm/v2-jf/package.json 
new/jfrog-cli-2.79.1/build/npm/v2-jf/package.json
--- old/jfrog-cli-2.79.0/build/npm/v2-jf/package.json   2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/build/npm/v2-jf/package.json   2025-09-25 
15:18:30.000000000 +0200
@@ -1,6 +1,6 @@
 {
   "name": "jfrog-cli-v2-jf",
-  "version": "2.79.0",
+  "version": "2.79.1",
   "description": "🐸 Command-line interface for JFrog Artifactory, Xray, 
Distribution, Pipelines and Mission Control 🐸",
   "homepage": "https://github.com/jfrog/jfrog-cli";,
   "preferGlobal": true,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/buildtools/cli.go 
new/jfrog-cli-2.79.1/buildtools/cli.go
--- old/jfrog-cli-2.79.0/buildtools/cli.go      2025-09-18 13:32:45.000000000 
+0200
+++ new/jfrog-cli-2.79.1/buildtools/cli.go      2025-09-25 15:18:30.000000000 
+0200
@@ -1100,7 +1100,8 @@
        if npmCmd.GetXrayScan() {
                commandsUtils.ConditionalUploadScanFunc = 
scan.ConditionalUploadDefaultScanFunc
        }
-       printDeploymentView, detailedSummary := log.IsStdErrTerminal(), 
npmCmd.IsDetailedSummary()
+       // deployment view are not available for native npm commands
+       printDeploymentView, detailedSummary := log.IsStdErrTerminal() && 
!npmCmd.UseNative(), npmCmd.IsDetailedSummary()
        if !detailedSummary {
                npmCmd.SetDetailedSummary(printDeploymentView)
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/docs/common/env.go 
new/jfrog-cli-2.79.1/docs/common/env.go
--- old/jfrog-cli-2.79.0/docs/common/env.go     2025-09-18 13:32:45.000000000 
+0200
+++ new/jfrog-cli-2.79.1/docs/common/env.go     2025-09-25 15:18:30.000000000 
+0200
@@ -107,6 +107,10 @@
        JfrogCliGithubToken = `    JFROG_CLI_GITHUB_TOKEN
                [Default: None]
                Specifies the GitHub token to be used for cli version check on 
Github repository.`
+
+       JfrogCliHideSurvey = `    JFROG_CLI_HIDE_SURVEY
+               [Default: false]
+               Set to true to hide the survey link that appears after 
successful command execution.`
 )
 
 var (
@@ -148,7 +152,8 @@
                JfrogCliAvoidNewVersionWarning,
                JfrogCliCommandSummaryOutputDirectory,
                JfrogSecurityCliAnalyzerManagerVersion,
-               JfrogCliGithubToken)
+               JfrogCliGithubToken,
+               JfrogCliHideSurvey)
 }
 
 func CreateEnvVars(envVars ...string) string {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/go.mod new/jfrog-cli-2.79.1/go.mod
--- old/jfrog-cli-2.79.0/go.mod 2025-09-18 13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/go.mod 2025-09-25 15:18:30.000000000 +0200
@@ -18,18 +18,18 @@
        github.com/jfrog/archiver/v3 v3.6.1
        github.com/jfrog/build-info-go v1.11.0
        github.com/jfrog/gofrog v1.7.6
-       github.com/jfrog/jfrog-cli-artifactory 
v0.7.3-0.20250917120635-6e83963acb2f
-       github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20250916125111-76d9929c5d07
+       github.com/jfrog/jfrog-cli-artifactory 
v0.7.3-0.20250924123948-4fce9d68fabe
+       github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20250924075232-db72a3ec8f50
        github.com/jfrog/jfrog-cli-platform-services v1.10.0
-       github.com/jfrog/jfrog-cli-security v1.21.7
-       github.com/jfrog/jfrog-client-go v1.55.0
+       github.com/jfrog/jfrog-cli-security v1.21.8
+       github.com/jfrog/jfrog-client-go v1.55.1-0.20250925090554-63938590da62
        github.com/jszwec/csvutil v1.10.0
        github.com/manifoldco/promptui v0.9.0
        github.com/stretchr/testify v1.11.1
        github.com/testcontainers/testcontainers-go v0.35.0
        github.com/urfave/cli v1.22.17
        github.com/xeipuuv/gojsonschema v1.2.0
-       golang.org/x/exp v0.0.0-20250305212735-054e65f0b394
+       golang.org/x/exp v0.0.0-20250911091902-df9299821621
        gopkg.in/yaml.v2 v2.4.0
 )
 
@@ -40,11 +40,11 @@
        github.com/BurntSushi/toml v1.5.0 // indirect
        github.com/CycloneDX/cyclonedx-go v0.9.2 // indirect
        github.com/Microsoft/go-winio v0.6.2 // indirect
-       github.com/ProtonMail/go-crypto v1.1.6 // indirect
+       github.com/ProtonMail/go-crypto v1.3.0 // indirect
        github.com/VividCortex/ewma v1.2.0 // indirect
        github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // 
indirect
-       github.com/andybalholm/brotli v1.1.1 // indirect
-       github.com/apache/camel-k/v2 v2.7.0 // indirect
+       github.com/andybalholm/brotli v1.2.0 // indirect
+       github.com/apache/camel-k/v2 v2.8.0 // indirect
        github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // 
indirect
        github.com/beevik/etree v1.4.0 // indirect
        github.com/blang/semver v3.5.1+incompatible // indirect
@@ -84,7 +84,7 @@
        github.com/go-ole/go-ole v1.2.6 // indirect
        github.com/go-openapi/analysis v0.23.0 // indirect
        github.com/go-openapi/errors v0.22.1 // indirect
-       github.com/go-openapi/jsonpointer v0.21.0 // indirect
+       github.com/go-openapi/jsonpointer v0.21.1 // indirect
        github.com/go-openapi/jsonreference v0.21.0 // indirect
        github.com/go-openapi/loads v0.22.0 // indirect
        github.com/go-openapi/runtime v0.28.0 // indirect
@@ -103,7 +103,6 @@
        github.com/google/go-github/v56 v56.0.0 // indirect
        github.com/google/go-github/v74 v74.0.0 // indirect
        github.com/google/go-querystring v1.1.0 // indirect
-       github.com/google/gofuzz v1.2.0 // indirect
        github.com/google/uuid v1.6.0 // indirect
        github.com/gookit/color v1.6.0 // indirect
        github.com/grokify/mogo v0.64.12 // indirect
@@ -125,7 +124,7 @@
        github.com/json-iterator/go v1.1.12 // indirect
        github.com/kevinburke/ssh_config v1.2.0 // indirect
        github.com/klauspost/compress v1.18.0 // indirect
-       github.com/klauspost/cpuid/v2 v2.2.9 // indirect
+       github.com/klauspost/cpuid/v2 v2.3.0 // indirect
        github.com/klauspost/pgzip v1.2.6 // indirect
        github.com/ktrysmt/go-bitbucket v0.9.80 // indirect
        github.com/letsencrypt/boulder v0.0.0-20240620165639-de9c06129bec // 
indirect
@@ -184,7 +183,7 @@
        github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 // 
indirect
        github.com/spf13/afero v1.15.0 // indirect
        github.com/spf13/cast v1.10.0 // indirect
-       github.com/spf13/cobra v1.9.1 // indirect
+       github.com/spf13/cobra v1.10.1 // indirect
        github.com/spf13/pflag v1.0.10 // indirect
        github.com/spf13/viper v1.21.0 // indirect
        github.com/stoewer/go-strcase v1.3.1 // indirect
@@ -209,44 +208,46 @@
        github.com/yusufpapurcu/wmi v1.2.3 // indirect
        go.mongodb.org/mongo-driver v1.14.0 // indirect
        go.opentelemetry.io/auto/sdk v1.1.0 // indirect
-       go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 
// indirect
-       go.opentelemetry.io/otel v1.35.0 // indirect
+       go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0 
// indirect
+       go.opentelemetry.io/otel v1.37.0 // indirect
        go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.34.0 
// indirect
-       go.opentelemetry.io/otel/metric v1.35.0 // indirect
-       go.opentelemetry.io/otel/trace v1.35.0 // indirect
+       go.opentelemetry.io/otel/metric v1.37.0 // indirect
+       go.opentelemetry.io/otel/trace v1.37.0 // indirect
        go.uber.org/multierr v1.11.0 // indirect
        go.uber.org/zap v1.27.0 // indirect
+       go.yaml.in/yaml/v2 v2.4.2 // indirect
        go.yaml.in/yaml/v3 v3.0.4 // indirect
-       golang.org/x/crypto v0.38.0 // indirect
-       golang.org/x/mod v0.26.0 // indirect
-       golang.org/x/net v0.40.0 // indirect
-       golang.org/x/oauth2 v0.30.0 // indirect
-       golang.org/x/sync v0.16.0 // indirect
+       golang.org/x/crypto v0.42.0 // indirect
+       golang.org/x/mod v0.28.0 // indirect
+       golang.org/x/net v0.43.0 // indirect
+       golang.org/x/oauth2 v0.31.0 // indirect
+       golang.org/x/sync v0.17.0 // indirect
        golang.org/x/sys v0.36.0 // indirect
        golang.org/x/term v0.35.0 // indirect
-       golang.org/x/text v0.28.0 // indirect
+       golang.org/x/text v0.29.0 // indirect
        golang.org/x/time v0.12.0 // indirect
        google.golang.org/genproto/googleapis/api 
v0.0.0-20250414145226-207652e42e2e // indirect
        google.golang.org/genproto/googleapis/rpc 
v0.0.0-20250414145226-207652e42e2e // indirect
        google.golang.org/grpc v1.72.2 // indirect
-       google.golang.org/protobuf v1.36.6 // indirect
+       google.golang.org/protobuf v1.36.8 // indirect
        gopkg.in/inf.v0 v0.9.1 // indirect
        gopkg.in/ini.v1 v1.67.0 // indirect
        gopkg.in/warnings.v0 v0.1.2 // indirect
        gopkg.in/yaml.v3 v3.0.1 // indirect
-       k8s.io/api v0.32.3 // indirect
-       k8s.io/apimachinery v0.32.3 // indirect
+       k8s.io/api v0.33.4 // indirect
+       k8s.io/apimachinery v0.33.4 // indirect
        k8s.io/klog/v2 v2.130.1 // indirect
-       k8s.io/utils v0.0.0-20250321185631-1f6e0b77f77e // indirect
-       sigs.k8s.io/controller-runtime v0.20.4 // indirect
+       k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 // indirect
+       sigs.k8s.io/controller-runtime v0.21.0 // indirect
        sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
+       sigs.k8s.io/randfill v1.0.0 // indirect
        sigs.k8s.io/structured-merge-diff/v4 v4.7.0 // indirect
-       sigs.k8s.io/yaml v1.4.0 // indirect
+       sigs.k8s.io/yaml v1.6.0 // indirect
 )
 
 // replace github.com/jfrog/build-info-go => github.com/jfrog/build-info-go 
v1.8.9-0.20250907205057-2bfe50c014b7
 
-// replace github.com/jfrog/jfrog-cli-core/v2 => 
github.com/jfrog/jfrog-cli-core/v2 v2.59.2-0.20250804083101-9cf424ecc926
+// replace github.com/jfrog/jfrog-cli-core/v2 => 
github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20250918084044-2eb3f15d08c1
 
 // replace github.com/jfrog/jfrog-client-go => 
github.com/jfrog/jfrog-client-go v1.28.1-0.20250812100044-b52afcc698c1
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/go.sum new/jfrog-cli-2.79.1/go.sum
--- old/jfrog-cli-2.79.0/go.sum 2025-09-18 13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/go.sum 2025-09-25 15:18:30.000000000 +0200
@@ -43,8 +43,8 @@
 github.com/Microsoft/go-winio v0.5.2/go.mod 
h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY=
 github.com/Microsoft/go-winio v0.6.2 
h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY=
 github.com/Microsoft/go-winio v0.6.2/go.mod 
h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU=
-github.com/ProtonMail/go-crypto v1.1.6 
h1:ZcV+Ropw6Qn0AX9brlQLAUXfqLBc7Bl+f/DmNxpLfdw=
-github.com/ProtonMail/go-crypto v1.1.6/go.mod 
h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE=
+github.com/ProtonMail/go-crypto v1.3.0 
h1:ILq8+Sf5If5DCpHQp4PbZdS1J7HDFRXz/+xKBiRGFrw=
+github.com/ProtonMail/go-crypto v1.3.0/go.mod 
h1:9whxjD8Rbs29b4XWbB8irEcE8KHMqaR2e7GWU1R+/PE=
 github.com/VividCortex/ewma v1.2.0 
h1:f58SaIzcDXrSy3kWaHNvuJgJ3Nmz59Zji6XoJR/q1ow=
 github.com/VividCortex/ewma v1.2.0/go.mod 
h1:nz4BbCtbLyFDeC9SUHbtcT5644juEuWfUAUnGx7j5l4=
 github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d 
h1:licZJFw2RwpHMqeKTCYkitsPqHNxTmd4SNR5r94FGM8=
@@ -53,12 +53,12 @@
 github.com/agnivade/levenshtein v1.2.1/go.mod 
h1:QVVI16kDrtSuwcpd0p1+xMC6Z/VfhtCyDIjcwga4/DU=
 github.com/alessio/shellescape v1.4.1 
h1:V7yhSDDn8LP4lc4jS8pFkt0zCnzVJlG5JXy9BVKJUX0=
 github.com/alessio/shellescape v1.4.1/go.mod 
h1:PZAiSCk0LJaZkiCSkPv8qIobYglO3FPpyFjDCtHLS30=
-github.com/andybalholm/brotli v1.1.1 
h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA=
-github.com/andybalholm/brotli v1.1.1/go.mod 
h1:05ib4cKhjx3OQYUY22hTVd34Bc8upXjOLL2rKwwZBoA=
+github.com/andybalholm/brotli v1.2.0 
h1:ukwgCxwYrmACq68yiUqwIWnGY0cTPox/M94sVwToPjQ=
+github.com/andybalholm/brotli v1.2.0/go.mod 
h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY=
 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be 
h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8=
 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod 
h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4=
-github.com/apache/camel-k/v2 v2.7.0 
h1:QXg5tbUbnv8CYdAJi+RbNAyxZhylkEZF5oHh6nghS/w=
-github.com/apache/camel-k/v2 v2.7.0/go.mod 
h1:2q7XQaYLF0WNqCmghe03P9jc/RlFLGwqgrf19EUpnsc=
+github.com/apache/camel-k/v2 v2.8.0 
h1:zhbAzRFHjZ1n6IcaQDMbt3IidNWYheF34Xse33KrqGY=
+github.com/apache/camel-k/v2 v2.8.0/go.mod 
h1:Dp+0oWh2okNB5cdhpnFjwd/40HwlOLpzzBLX7AT8Slk=
 github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0 
h1:jfIu9sQUG6Ig+0+Ap1h4unLjW6YQJpKZVmUzxsD4E/Q=
 github.com/arbovm/levenshtein v0.0.0-20160628152529-48b4e1c0c4d0/go.mod 
h1:t2tdKJDJF9BV14lnkjHmOQgcvEKgtqs5a1N3LNdJhGE=
 github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 
h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
@@ -214,8 +214,8 @@
 github.com/go-openapi/analysis v0.23.0/go.mod 
h1:9mz9ZWaSlV8TvjQHLl2mUW2PbZtemkE8yA5v22ohupo=
 github.com/go-openapi/errors v0.22.1 
h1:kslMRRnK7NCb/CvR1q1VWuEQCEIsBGn5GgKD9e+HYhU=
 github.com/go-openapi/errors v0.22.1/go.mod 
h1:+n/5UdIqdVnLIJ6Q9Se8HNGUXYaY6CN8ImWzfi/Gzp0=
-github.com/go-openapi/jsonpointer v0.21.0 
h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ=
-github.com/go-openapi/jsonpointer v0.21.0/go.mod 
h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY=
+github.com/go-openapi/jsonpointer v0.21.1 
h1:whnzv/pNXtK2FbX/W9yJfRmE2gsmkfahjMKB0fZvcic=
+github.com/go-openapi/jsonpointer v0.21.1/go.mod 
h1:50I1STOfbY1ycR8jGz8DaMeLCdXiI6aDteEdRNNzpdk=
 github.com/go-openapi/jsonreference v0.21.0 
h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ=
 github.com/go-openapi/jsonreference v0.21.0/go.mod 
h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4=
 github.com/go-openapi/loads v0.22.0 
h1:ECPGd4jX1U6NApCGG1We+uEozOAvXvJSF4nnwHZ8Aco=
@@ -361,16 +361,16 @@
 github.com/jfrog/gofrog v1.7.6/go.mod 
h1:ntr1txqNOZtHplmaNd7rS4f8jpA5Apx8em70oYEe7+4=
 github.com/jfrog/jfrog-apps-config v1.0.1 
h1:mtv6k7g8A8BVhlHGlSveapqf4mJfonwvXYLipdsOFMY=
 github.com/jfrog/jfrog-apps-config v1.0.1/go.mod 
h1:8AIIr1oY9JuH5dylz2S6f8Ym2MaadPLR6noCBO4C22w=
-github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20250917120635-6e83963acb2f 
h1:Hy51qJy126naz1lUfvA412jIE+1luhW+v6/0Le1Romc=
-github.com/jfrog/jfrog-cli-artifactory 
v0.7.3-0.20250917120635-6e83963acb2f/go.mod 
h1:X1SJFBGJm0oh2jlsMztoXr+xC6kQsP9tHQwAG9gIibw=
-github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20250916125111-76d9929c5d07 
h1:AeCP8wybfuTwiQEsIvXnvbVB2jo/YhszrCZynqetwpU=
-github.com/jfrog/jfrog-cli-core/v2 
v2.60.1-0.20250916125111-76d9929c5d07/go.mod 
h1:h52WS70v79WLNUAMIsDGURPvAdLRrrUCLyjsj32GORo=
+github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20250924123948-4fce9d68fabe 
h1:RTOKkKrAjAn/bV5phpCUgOJY+4LHLpjK1YdwpBSTwGs=
+github.com/jfrog/jfrog-cli-artifactory 
v0.7.3-0.20250924123948-4fce9d68fabe/go.mod 
h1:N1nn6tNbyAjtdhLp89tO1CstT+iWcQSzAJGvAml7Deg=
+github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20250924075232-db72a3ec8f50 
h1:LGho+LPFqLy+VD/utgWDLmpL6FgxcBco3buvnMl+hJU=
+github.com/jfrog/jfrog-cli-core/v2 
v2.60.1-0.20250924075232-db72a3ec8f50/go.mod 
h1:W7rfoQaNKGuJWtsw7/yUNmSdiPoJgcV5U04TzXZa7Ak=
 github.com/jfrog/jfrog-cli-platform-services v1.10.0 
h1:O+N/VAF+QjFvq9xkHpmzKLcdl9aJu3IP204Su0L14rw=
 github.com/jfrog/jfrog-cli-platform-services v1.10.0/go.mod 
h1:qbu4iqBST9x8LgD8HhzUm91iOB3vHqtoGmaxOnmw0ok=
-github.com/jfrog/jfrog-cli-security v1.21.7 
h1:WE3sSTpCTc051sIted08Moz5yY+0DK8tuJG/fbe+iaQ=
-github.com/jfrog/jfrog-cli-security v1.21.7/go.mod 
h1:AYckVBA3qNmCku1MrBLpQwbr9eAZ91U/3zMa88gckD8=
-github.com/jfrog/jfrog-client-go v1.55.0 
h1:dZq7sLjUJMps8X1I5coVUChprtR7xklp7oSfmZnI48w=
-github.com/jfrog/jfrog-client-go v1.55.0/go.mod 
h1:/e2kaF1oZTmSRgMIk7wYna5xMtNY7Xk8ahpSNZQ2d3s=
+github.com/jfrog/jfrog-cli-security v1.21.8 
h1:yRVOW4FqETd0tVeHxdC7l19aLi5gS3hai9XwkMQuVr8=
+github.com/jfrog/jfrog-cli-security v1.21.8/go.mod 
h1:AYckVBA3qNmCku1MrBLpQwbr9eAZ91U/3zMa88gckD8=
+github.com/jfrog/jfrog-client-go v1.55.1-0.20250925090554-63938590da62 
h1:Zuu/tRXKmta4WFkCMAAUKgzs9Je0VXqg90/qJIBsbrk=
+github.com/jfrog/jfrog-client-go v1.55.1-0.20250925090554-63938590da62/go.mod 
h1:UYhn61e3VNb7Oo4dWpzI9TaObxTbdFosagEfcPlkvmg=
 github.com/jhump/protoreflect v1.17.0 
h1:qOEr613fac2lOuTgWN4tPAtLL7fUSbuJL5X5XumQh94=
 github.com/jhump/protoreflect v1.17.0/go.mod 
h1:h9+vUUL38jiBzck8ck+6G/aeMX8Z4QUY/NiJPwPNi+8=
 github.com/jmespath/go-jmespath v0.4.1-0.20220621161143-b0104c826a24 
h1:liMMTbpW34dhU4az1GN0pTPADwNmvoRSeoZ6PItiqnY=
@@ -393,8 +393,8 @@
 github.com/klauspost/compress v1.18.0 
h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
 github.com/klauspost/compress v1.18.0/go.mod 
h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
 github.com/klauspost/cpuid v1.2.0/go.mod 
h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek=
-github.com/klauspost/cpuid/v2 v2.2.9 
h1:66ze0taIn2H33fBvCkXuv9BmCwDfafmiIVpKV9kKGuY=
-github.com/klauspost/cpuid/v2 v2.2.9/go.mod 
h1:rqkxqrZ1EhYM9G+hXH7YdowN5R5RGN6NK4QwQ3WMXF8=
+github.com/klauspost/cpuid/v2 v2.3.0 
h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y=
+github.com/klauspost/cpuid/v2 v2.3.0/go.mod 
h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
 github.com/klauspost/pgzip v1.2.6 
h1:8RXeL5crjEUFnR2/Sn6GJNWtSQ3Dk8pq4CL3jvdDyjU=
 github.com/klauspost/pgzip v1.2.6/go.mod 
h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
 github.com/kr/pretty v0.1.0/go.mod 
h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
@@ -480,8 +480,8 @@
 github.com/oklog/ulid v1.3.1/go.mod 
h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
 github.com/onsi/ginkgo/v2 v2.22.0 
h1:Yed107/8DjTr0lKCNt7Dn8yQ6ybuDRQoMGrNFKzMfHg=
 github.com/onsi/ginkgo/v2 v2.22.0/go.mod 
h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo=
-github.com/onsi/gomega v1.37.0 h1:CdEG8g0S133B4OswTDC/5XPSzE1OeP29QOioj2PID2Y=
-github.com/onsi/gomega v1.37.0/go.mod 
h1:8D9+Txp43QWKhM24yyOBEdpkzN8FvJyAwecBgsU4KU0=
+github.com/onsi/gomega v1.38.2 h1:eZCjf2xjZAqe+LeWvKb5weQ+NcPwX84kqJ0cZNxok2A=
+github.com/onsi/gomega v1.38.2/go.mod 
h1:W2MJcYxRGV63b418Ai34Ud0hEdTVXq9NW9+Sx6uXf3k=
 github.com/opencontainers/go-digest v1.0.0 
h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
 github.com/opencontainers/go-digest v1.0.0/go.mod 
h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
 github.com/opencontainers/image-spec v1.1.0 
h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug=
@@ -510,14 +510,14 @@
 github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod 
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c 
h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw=
 github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod 
h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE=
-github.com/prometheus/client_golang v1.22.0 
h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q=
-github.com/prometheus/client_golang v1.22.0/go.mod 
h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0=
+github.com/prometheus/client_golang v1.23.0 
h1:ust4zpdl9r4trLY/gSjlm07PuiBq2ynaXXlptpfy8Uc=
+github.com/prometheus/client_golang v1.23.0/go.mod 
h1:i/o0R9ByOnHX0McrTMTyhYvKE4haaf2mW08I+jGAjEE=
 github.com/prometheus/client_model v0.6.2 
h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk=
 github.com/prometheus/client_model v0.6.2/go.mod 
h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
-github.com/prometheus/common v0.64.0 
h1:pdZeA+g617P7oGv1CzdTzyeShxAGrTBsolKNOLQPGO4=
-github.com/prometheus/common v0.64.0/go.mod 
h1:0gZns+BLRQ3V6NdaerOhMbwwRbNh9hkGINtQAsP5GS8=
-github.com/prometheus/procfs v0.15.1 
h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc=
-github.com/prometheus/procfs v0.15.1/go.mod 
h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
+github.com/prometheus/common v0.65.0 
h1:QDwzd+G1twt//Kwj/Ww6E9FQq1iVMmODnILtW1t2VzE=
+github.com/prometheus/common v0.65.0/go.mod 
h1:0gZns+BLRQ3V6NdaerOhMbwwRbNh9hkGINtQAsP5GS8=
+github.com/prometheus/procfs v0.17.0 
h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
+github.com/prometheus/procfs v0.17.0/go.mod 
h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
 github.com/rivo/uniseg v0.2.0/go.mod 
h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
 github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
 github.com/rivo/uniseg v0.4.7/go.mod 
h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
@@ -578,9 +578,9 @@
 github.com/spf13/afero v1.15.0/go.mod 
h1:NC2ByUVxtQs4b3sIUphxK0NioZnmxgyCrfzeuq8lxMg=
 github.com/spf13/cast v1.10.0 h1:h2x0u2shc1QuLHfxi+cTJvs30+ZAHOGRic8uyGTDWxY=
 github.com/spf13/cast v1.10.0/go.mod 
h1:jNfB8QC9IA6ZuY2ZjDp0KtFO2LZZlg4S/7bzP6qqeHo=
-github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
-github.com/spf13/cobra v1.9.1/go.mod 
h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
-github.com/spf13/pflag v1.0.6/go.mod 
h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
+github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
+github.com/spf13/cobra v1.10.1/go.mod 
h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
+github.com/spf13/pflag v1.0.9/go.mod 
h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
 github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
 github.com/spf13/pflag v1.0.10/go.mod 
h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
 github.com/spf13/viper v1.21.0 h1:x5S+0EU27Lbphp4UKm1C+1oQO+rKx36vfCoaVebLFSU=
@@ -672,22 +672,22 @@
 go.opentelemetry.io/auto/sdk v1.1.0/go.mod 
h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc 
v0.60.0 h1:x7wzEgXfnzJcHDwStJT+mxOz4etr2EcexjqhBvmoakw=
 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc 
v0.60.0/go.mod h1:rg+RlpR5dKwaS95IyyZqj5Wd4E13lk/msnTS0Xl9lJM=
-go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 
h1:sbiXRNDSWJOTobXh5HyQKjq6wUC5tNybqjIqDpAY4CU=
-go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0/go.mod 
h1:69uWxva0WgAA/4bu2Yy70SLDBwZXuQ6PbBpbsa5iZrQ=
-go.opentelemetry.io/otel v1.35.0 
h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ=
-go.opentelemetry.io/otel v1.35.0/go.mod 
h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y=
+go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0 
h1:Hf9xI/XLML9ElpiHVDNwvqI0hIFlzV8dgIr35kV1kRU=
+go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.62.0/go.mod 
h1:NfchwuyNoMcZ5MLHwPrODwUF1HWCXWrL31s8gSAdIKY=
+go.opentelemetry.io/otel v1.37.0 
h1:9zhNfelUvx0KBfu/gb+ZgeAfAgtWrfHJZcAqFC228wQ=
+go.opentelemetry.io/otel v1.37.0/go.mod 
h1:ehE/umFRLnuLa/vSccNq9oS1ErUlkkK71gMcN34UG8I=
 go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.34.0 
h1:OeNbIYk/2C15ckl7glBlOBp5+WlYsOElzTNmiPW/x60=
 go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.34.0/go.mod 
h1:7Bept48yIeqxP2OZ9/AqIpYS94h2or0aB4FypJTc8ZM=
 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.34.0 
h1:BEj3SPM81McUZHYjRS5pEgNgnmzGJ5tRpU5krWnV8Bs=
 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.34.0/go.mod 
h1:9cKLGBDzI/F3NoHLQGm4ZrYdIHsvGt6ej6hUowxY0J4=
-go.opentelemetry.io/otel/metric v1.35.0 
h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M=
-go.opentelemetry.io/otel/metric v1.35.0/go.mod 
h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE=
-go.opentelemetry.io/otel/sdk v1.35.0 
h1:iPctf8iprVySXSKJffSS79eOjl9pvxV9ZqOWT0QejKY=
-go.opentelemetry.io/otel/sdk v1.35.0/go.mod 
h1:+ga1bZliga3DxJ3CQGg3updiaAJoNECOgJREo9KHGQg=
-go.opentelemetry.io/otel/sdk/metric v1.35.0 
h1:1RriWBmCKgkeHEhM7a2uMjMUfP7MsOF5JpUCaEqEI9o=
-go.opentelemetry.io/otel/sdk/metric v1.35.0/go.mod 
h1:is6XYCUMpcKi+ZsOvfluY5YstFnhW0BidkR+gL+qN+w=
-go.opentelemetry.io/otel/trace v1.35.0 
h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs=
-go.opentelemetry.io/otel/trace v1.35.0/go.mod 
h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc=
+go.opentelemetry.io/otel/metric v1.37.0 
h1:mvwbQS5m0tbmqML4NqK+e3aDiO02vsf/WgbsdpcPoZE=
+go.opentelemetry.io/otel/metric v1.37.0/go.mod 
h1:04wGrZurHYKOc+RKeye86GwKiTb9FKm1WHtO+4EVr2E=
+go.opentelemetry.io/otel/sdk v1.37.0 
h1:ItB0QUqnjesGRvNcmAcU0LyvkVyGJ2xftD29bWdDvKI=
+go.opentelemetry.io/otel/sdk v1.37.0/go.mod 
h1:VredYzxUvuo2q3WRcDnKDjbdvmO0sCzOvVAiY+yUkAg=
+go.opentelemetry.io/otel/sdk/metric v1.37.0 
h1:90lI228XrB9jCMuSdA0673aubgRobVZFhbjxHHspCPc=
+go.opentelemetry.io/otel/sdk/metric v1.37.0/go.mod 
h1:cNen4ZWfiD37l5NhS+Keb5RXVWZWpRE+9WyVCpbo5ps=
+go.opentelemetry.io/otel/trace v1.37.0 
h1:HLdcFNbRQBE2imdSEgm/kwqmQj1Or1l/7bW6mxVK7z4=
+go.opentelemetry.io/otel/trace v1.37.0/go.mod 
h1:TlgrlQ+PtQO5XFerSPUYG0JSgGyryXewPGyayAWSBS0=
 go.opentelemetry.io/proto/otlp v1.5.0 
h1:xJvq7gMzB31/d406fB8U5CBdyQGw4P399D1aQWU/3i4=
 go.opentelemetry.io/proto/otlp v1.5.0/go.mod 
h1:keN8WnHxOy8PG0rQZjJJ5A2ebUoafqWp0eVQ4yIXvJ4=
 go.step.sm/crypto v0.63.0 h1:U1QGELQqJ85oDfeNFE2V52cow1rvy0m3MekG3wFmyXY=
@@ -700,6 +700,8 @@
 go.uber.org/multierr v1.11.0/go.mod 
h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
 go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
 go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
+go.yaml.in/yaml/v2 v2.4.2 h1:DzmwEr2rDGHl7lsFgAHxmNz/1NlQ7xLIrlN2h5d1eGI=
+go.yaml.in/yaml/v2 v2.4.2/go.mod 
h1:081UH+NErpNdqlCXm3TtEran0rJZGxAYx9hb/ELlsPU=
 go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
 go.yaml.in/yaml/v3 v3.0.4/go.mod 
h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod 
h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
@@ -709,16 +711,16 @@
 golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod 
h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
 golang.org/x/crypto v0.19.0/go.mod 
h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
 golang.org/x/crypto v0.22.0/go.mod 
h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M=
-golang.org/x/crypto v0.38.0 h1:jt+WWG8IZlBnVbomuhg2Mdq0+BBQaHbtqHEFEigjUV8=
-golang.org/x/crypto v0.38.0/go.mod 
h1:MvrbAqul58NNYPKnOra203SB9vpuZW0e+RRZV+Ggqjw=
-golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 
h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw=
-golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod 
h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM=
+golang.org/x/crypto v0.42.0 h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI=
+golang.org/x/crypto v0.42.0/go.mod 
h1:4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8=
+golang.org/x/exp v0.0.0-20250911091902-df9299821621 
h1:2id6c1/gto0kaHYyrixvknJ8tUK/Qs5IsmBtrc+FtgU=
+golang.org/x/exp v0.0.0-20250911091902-df9299821621/go.mod 
h1:TwQYMMnGpvZyc+JpB/UAuTNIsVJifOlSkrZkhcvpVUk=
 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.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod 
h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
 golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/mod v0.26.0 h1:EGMPT//Ezu+ylkCijjPc+f4Aih7sZvaAr+O3EHBxvZg=
-golang.org/x/mod v0.26.0/go.mod h1:/j6NAhSk8iQ723BGAUyoAcn7SlD7s15Dp9Nd/SfeaFQ=
+golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U=
+golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI=
 golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod 
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod 
h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod 
h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
@@ -733,20 +735,20 @@
 golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
 golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
 golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8=
-golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
-golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
+golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE=
+golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg=
 golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod 
h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
 golang.org/x/oauth2 v0.20.0/go.mod 
h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI=
-golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
-golang.org/x/oauth2 v0.30.0/go.mod 
h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
+golang.org/x/oauth2 v0.31.0 h1:8Fq0yVZLh4j4YA47vHKFTa9Ew5XIrCP8LC6UeNZnLxo=
+golang.org/x/oauth2 v0.31.0/go.mod 
h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
 golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod 
h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.16.0 h1:ycBJEhp9p4vXvUZNszeOq0kGTPghopOL8q0fq3vstxw=
-golang.org/x/sync v0.16.0/go.mod 
h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
+golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
+golang.org/x/sync v0.17.0/go.mod 
h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
 golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod 
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod 
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod 
h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -799,8 +801,8 @@
 golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
 golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
 golang.org/x/text v0.14.0/go.mod 
h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
-golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng=
-golang.org/x/text v0.28.0/go.mod 
h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU=
+golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
+golang.org/x/text v0.29.0/go.mod 
h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
 golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE=
 golang.org/x/time v0.12.0/go.mod 
h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod 
h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -809,8 +811,8 @@
 golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod 
h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
 golang.org/x/tools v0.1.12/go.mod 
h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
 golang.org/x/tools v0.6.0/go.mod 
h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
-golang.org/x/tools v0.35.0 h1:mBffYraMEf7aa0sB+NuKnuCy8qI/9Bughn8dC2Gu5r0=
-golang.org/x/tools v0.35.0/go.mod 
h1:NKdj5HkL/73byiZSJjqJgKn3ep7KjFkBOkR/Hps3VPw=
+golang.org/x/tools v0.37.0 h1:DVSRzp7FwePZW356yEAChSdNcQo6Nsp+fex1SUW09lE=
+golang.org/x/tools v0.37.0/go.mod 
h1:MBN5QPQtLMHVdvsbtarmTNukZDdgwdwlO5qGacAzF0w=
 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=
@@ -826,8 +828,8 @@
 google.golang.org/genproto/googleapis/rpc 
v0.0.0-20250414145226-207652e42e2e/go.mod 
h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
 google.golang.org/grpc v1.72.2 h1:TdbGzwb82ty4OusHWepvFWGLgIbNo1/SUynEN0ssqv8=
 google.golang.org/grpc v1.72.2/go.mod 
h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM=
-google.golang.org/protobuf v1.36.6 
h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
-google.golang.org/protobuf v1.36.6/go.mod 
h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
+google.golang.org/protobuf v1.36.8 
h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc=
+google.golang.org/protobuf v1.36.8/go.mod 
h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod 
h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod 
h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod 
h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@@ -848,22 +850,25 @@
 gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
 gotest.tools/v3 v3.5.1 h1:EENdUnS3pdur5nybKYIh2Vfgc8IUNBjxDPSjtiJcOzU=
 gotest.tools/v3 v3.5.1/go.mod h1:isy3WKz7GK6uNw/sbHzfKBLvlvXwUyV06n6brMxxopU=
-k8s.io/api v0.32.3 h1:Hw7KqxRusq+6QSplE3NYG4MBxZw1BZnq4aP4cJVINls=
-k8s.io/api v0.32.3/go.mod h1:2wEDTXADtm/HA7CCMD8D8bK4yuBUptzaRhYcYEEYA3k=
-k8s.io/apimachinery v0.32.3 h1:JmDuDarhDmA/Li7j3aPrwhpNBA94Nvk5zLeOge9HH1U=
-k8s.io/apimachinery v0.32.3/go.mod 
h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE=
+k8s.io/api v0.33.4 h1:oTzrFVNPXBjMu0IlpA2eDDIU49jsuEorGHB4cvKupkk=
+k8s.io/api v0.33.4/go.mod h1:VHQZ4cuxQ9sCUMESJV5+Fe8bGnqAARZ08tSTdHWfeAc=
+k8s.io/apimachinery v0.33.4 h1:SOf/JW33TP0eppJMkIgQ+L6atlDiP/090oaX0y9pd9s=
+k8s.io/apimachinery v0.33.4/go.mod 
h1:BHW0YOu7n22fFv/JkYOEfkUYNRN0fj0BlvMFWA7b+SM=
 k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
 k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
-k8s.io/utils v0.0.0-20250321185631-1f6e0b77f77e 
h1:KqK5c/ghOm8xkHYhlodbp6i6+r+ChV2vuAuVRdFbLro=
-k8s.io/utils v0.0.0-20250321185631-1f6e0b77f77e/go.mod 
h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
-sigs.k8s.io/controller-runtime v0.20.4 
h1:X3c+Odnxz+iPTRobG4tp092+CvBU9UK0t/bRf+n0DGU=
-sigs.k8s.io/controller-runtime v0.20.4/go.mod 
h1:xg2XB0K5ShQzAgsoujxuKN4LNXR2LfwwHsPj7Iaw+XY=
+k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 
h1:hwvWFiBzdWw1FhfY1FooPn3kzWuJ8tmbZBHi4zVsl1Y=
+k8s.io/utils v0.0.0-20250604170112-4c0f3b243397/go.mod 
h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
+sigs.k8s.io/controller-runtime v0.21.0 
h1:CYfjpEuicjUecRk+KAeyYh+ouUBn4llGyDYytIGcJS8=
+sigs.k8s.io/controller-runtime v0.21.0/go.mod 
h1:OSg14+F65eWqIu4DceX7k/+QRAbTTvxeQSNSOQpukWM=
 sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 
h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE=
 sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod 
h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
 sigs.k8s.io/randfill v0.0.0-20250304075658-069ef1bbf016/go.mod 
h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
+sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
+sigs.k8s.io/randfill v1.0.0/go.mod 
h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
 sigs.k8s.io/structured-merge-diff/v4 v4.7.0 
h1:qPeWmscJcXP0snki5IYF79Z8xrl8ETFxgMd7wez1XkI=
 sigs.k8s.io/structured-merge-diff/v4 v4.7.0/go.mod 
h1:dDy58f92j70zLsuZVuUX5Wp9vtxXpaZnkPGWeqDfCps=
-sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E=
 sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY=
+sigs.k8s.io/yaml v1.6.0 h1:G8fkbMSAFqgEFgh4b1wmtzDnioxFCUgTZhlbj5P9QYs=
+sigs.k8s.io/yaml v1.6.0/go.mod h1:796bPqUfzR/0jLAl6XjHl3Ck7MiyVv8dbTdyT3/pMf4=
 software.sslmate.com/src/go-pkcs12 v0.4.0 
h1:H2g08FrTvSFKUj+D309j1DPfk5APnIdAQAB8aEykJ5k=
 software.sslmate.com/src/go-pkcs12 v0.4.0/go.mod 
h1:Qiz0EyvDRJjjxGyUQa2cCNZn/wMyzrRJ/qcDXOQazLI=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/main.go new/jfrog-cli-2.79.1/main.go
--- old/jfrog-cli-2.79.0/main.go        2025-09-18 13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/main.go        2025-09-25 15:18:30.000000000 +0200
@@ -187,9 +187,22 @@
 
        err = app.Run(args)
        logTraceIdOnFailure(err)
+
+       if err == nil {
+               displaySurveyLinkIfNeeded()
+       }
+
        return err
 }
 
+// displaySurveyLinkIfNeeded checks if the survey should be hidden based on 
the JFROG_CLI_HIDE_SURVEY environment variable
+func displaySurveyLinkIfNeeded() {
+       if cliutils.ShouldHideSurveyLink() {
+               return
+       }
+       fmt.Fprintln(os.Stderr, "\n💬 Help us improve JFrog CLI! 
\033]8;;https://www.surveymonkey.com/r/JFCLICLI\033\\https://www.surveymonkey.com/r/JFCLICLI\033]8;;\033\\";)
+}
+
 func runNativeImplementation(ctx *cli.Context) error {
        clientlog.Debug("Starting native implementation...")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/npm_test.go 
new/jfrog-cli-2.79.1/npm_test.go
--- old/jfrog-cli-2.79.0/npm_test.go    2025-09-18 13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/npm_test.go    2025-09-25 15:18:30.000000000 +0200
@@ -2,12 +2,6 @@
 
 import (
        "fmt"
-       "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/generic"
-       utils2 "github.com/jfrog/jfrog-cli-core/v2/artifactory/commands/utils"
-       "github.com/jfrog/jfrog-cli-core/v2/artifactory/utils"
-       "github.com/jfrog/jfrog-client-go/http/httpclient"
-       "github.com/stretchr/testify/require"
-       "gopkg.in/yaml.v2"
        "net/http"
        "os"
        "os/exec"
@@ -16,6 +10,13 @@
        "strings"
        "testing"
 
+       "github.com/jfrog/jfrog-cli-artifactory/artifactory/commands/generic"
+       utils2 "github.com/jfrog/jfrog-cli-core/v2/artifactory/commands/utils"
+       "github.com/jfrog/jfrog-cli-core/v2/artifactory/utils"
+       "github.com/jfrog/jfrog-client-go/http/httpclient"
+       "github.com/stretchr/testify/require"
+       "gopkg.in/yaml.v2"
+
        "github.com/jfrog/jfrog-cli-core/v2/artifactory/utils/yarn"
 
        buildutils "github.com/jfrog/build-info-go/build/utils"
@@ -754,7 +755,13 @@
        // Init npm project & npmp command for testing
        npmProjectPath := initNpmWorkspacesProjectTest(t)
        configFilePath := filepath.Join(npmProjectPath, ".jfrog", "projects", 
"npm.yaml")
-       args := []string{"--detailed-summary=true", "--workspaces", "--verbose"}
+
+       // Add build info parameters
+       buildName := tests.NpmBuildName + "-workspaces"
+       buildNumber := "789"
+       args := []string{"--detailed-summary=true", "--workspaces", "--verbose",
+               "--build-name=" + buildName, "--build-number=" + buildNumber}
+
        npmpCmd := npm.NewNpmPublishCommand()
        npmpCmd.SetConfigFilePath(configFilePath).SetArgs(args)
        npmpCmd.SetNpmArgs(args)
@@ -775,6 +782,119 @@
                assert.Equal(t, len(expectedTars), len(files), "Summary 
validation failed - two archive should be deployed.")
                assert.Len(t, files[index].Sha256, 64)
        }
+
+       // Validate build info was created
+       buildInfoService := build.CreateBuildInfoService()
+       npmBuild, err := buildInfoService.GetOrCreateBuild(buildName, 
buildNumber)
+       assert.NoError(t, err)
+       defer func() {
+               assert.NoError(t, npmBuild.Clean())
+       }()
+
+       npmBuildInfo, err := npmBuild.ToBuildInfo()
+       assert.NoError(t, err)
+       assert.NotNil(t, npmBuildInfo)
+       assert.NotEmpty(t, npmBuildInfo.Started)
+
+       // Should have multiple modules for workspaces (one per workspace 
package)
+       assert.GreaterOrEqual(t, len(npmBuildInfo.Modules), 1, "There should be 
a single module created as part of workspaces publish")
+
+       module := npmBuildInfo.Modules[0]
+       assert.NotEmpty(t, module.Id, "Module %d should have an ID")
+       assert.Equal(t, buildinfo.Npm, module.Type, "Module %d should be npm 
type")
+       assert.Equal(t, len(module.Artifacts), 2, "Module %d should have 
artifacts")
+
+       // Validate artifact properties
+       for j, artifact := range module.Artifacts {
+               assert.NotEmpty(t, artifact.Name, "Artifact %d in module %d 
should have a name", j)
+               assert.NotEmpty(t, artifact.Path, "Artifact %d in module %d 
should have a path", j)
+               assert.NotEmpty(t, artifact.Sha1, "Artifact %d in module %d 
should have SHA1", j)
+               assert.NotEmpty(t, artifact.Sha256, "Artifact %d in module %d 
should have SHA256", j)
+               assert.NotEmpty(t, artifact.Md5, "Artifact %d in module %d 
should have MD5", j)
+               assert.Contains(t, artifact.Name, "nested"+strconv.Itoa(j+1))
+       }
+
+       // Publish build info to Artifactory
+       assert.NoError(t, artifactoryCli.Exec("bp", buildName, buildNumber))
+
+       // Clean up
+       inttestutils.DeleteBuild(serverDetails.ArtifactoryUrl, buildName, 
artHttpDetails)
+}
+
+func TestNpmPublishWithWorkspacesRunNative(t *testing.T) {
+       // Check npm version
+       npmVersion, _, err := buildutils.GetNpmVersionAndExecPath(log.Logger)
+       if err != nil {
+               assert.NoError(t, err)
+               return
+       }
+       // In npm under v7 skip test
+       if npmVersion.Compare(minimumWorkspacesNpmVersion) > 0 {
+               log.Info("Test skipped as this function in not supported in npm 
version " + npmVersion.GetVersion())
+               return
+       }
+
+       initNpmTest(t)
+       defer cleanNpmTest(t)
+       wd, err := os.Getwd()
+       assert.NoError(t, err, "Failed to get current dir")
+       defer clientTestUtils.ChangeDirAndAssert(t, wd)
+
+       // Init npm project & npmp command for testing
+       npmProjectPath := initNpmWorkspacesProjectTest(t)
+       configFilePath := filepath.Join(npmProjectPath, ".jfrog", "projects", 
"npm.yaml")
+
+       // Create npmrc for run-native functionality
+       err = createNpmrcForTesting(t, configFilePath)
+       assert.NoError(t, err)
+
+       // Add build info parameters with run-native flag
+       buildName := tests.NpmBuildName + "-workspaces-native"
+       buildNumber := "890"
+       args := []string{"--workspaces", "--build-name=" + buildName, 
"--build-number=" + buildNumber, "--run-native"}
+
+       npmpCmd := npm.NewNpmPublishCommand()
+       npmpCmd.SetConfigFilePath(configFilePath).SetArgs(args)
+       assert.NoError(t, npmpCmd.Init())
+       err = commands.Exec(npmpCmd)
+       assert.NoError(t, err)
+
+       // Validate build info was created
+       buildInfoService := build.CreateBuildInfoService()
+       npmBuild, err := buildInfoService.GetOrCreateBuild(buildName, 
buildNumber)
+       assert.NoError(t, err)
+       defer func() {
+               assert.NoError(t, npmBuild.Clean())
+       }()
+
+       npmBuildInfo, err := npmBuild.ToBuildInfo()
+       assert.NoError(t, err)
+       assert.NotNil(t, npmBuildInfo)
+       assert.NotEmpty(t, npmBuildInfo.Started)
+
+       // Should have single module with multiple artifacts for workspaces 
with run-native
+       assert.GreaterOrEqual(t, len(npmBuildInfo.Modules), 1, "There should be 
a single module created as part of workspaces publish with run-native")
+
+       module := npmBuildInfo.Modules[0]
+       assert.NotEmpty(t, module.Id, "Module should have an ID")
+       assert.Equal(t, buildinfo.Npm, module.Type, "Module should be npm type")
+       assert.Equal(t, len(module.Artifacts), 2, "Module should have exactly 2 
artifacts for workspaces")
+
+       // Validate artifact properties
+       for j, artifact := range module.Artifacts {
+               assert.NotEmpty(t, artifact.Name, "Artifact %d should have a 
name", j)
+               assert.NotEmpty(t, artifact.Path, "Artifact %d should have a 
path", j)
+               assert.NotEmpty(t, artifact.Sha1, "Artifact %d should have 
SHA1", j)
+               assert.NotEmpty(t, artifact.Sha256, "Artifact %d should have 
SHA256", j)
+               assert.NotEmpty(t, artifact.Md5, "Artifact %d should have MD5", 
j)
+               assert.Contains(t, artifact.Name, "nested"+strconv.Itoa(j+1), 
"Artifact %d should be named nested%d", j, j+1)
+       }
+
+       // Publish build info to Artifactory
+       assert.NoError(t, artifactoryCli.Exec("bp", buildName, buildNumber))
+
+       // Clean up
+       inttestutils.DeleteBuild(serverDetails.ArtifactoryUrl, buildName, 
artHttpDetails)
 }
 
 // Test npm publish command with provided tarball
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/utils/cliutils/cli_consts.go 
new/jfrog-cli-2.79.1/utils/cliutils/cli_consts.go
--- old/jfrog-cli-2.79.0/utils/cliutils/cli_consts.go   2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/utils/cliutils/cli_consts.go   2025-09-25 
15:18:30.000000000 +0200
@@ -4,7 +4,7 @@
 
 const (
        // General CLI constants
-       CliVersion  = "2.79.0"
+       CliVersion  = "2.79.1"
        ClientAgent = "jfrog-cli-go"
 
        // CLI base commands constants:
@@ -27,4 +27,5 @@
        JfrogCliAvoidNewVersionWarning = "JFROG_CLI_AVOID_NEW_VERSION_WARNING"
        //#nosec G101
        JfrogCliGithubToken = "JFROG_CLI_GITHUB_TOKEN"
+       JfrogCliHideSurvey  = "JFROG_CLI_HIDE_SURVEY"
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/utils/cliutils/commandsflags.go 
new/jfrog-cli-2.79.1/utils/cliutils/commandsflags.go
--- old/jfrog-cli-2.79.0/utils/cliutils/commandsflags.go        2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/utils/cliutils/commandsflags.go        2025-09-25 
15:18:30.000000000 +0200
@@ -123,12 +123,13 @@
 
        // *** Artifactory Commands' flags ***
        // Base flags
-       url         = "url"
-       platformUrl = "platform-url"
-       user        = "user"
-       password    = "password"
-       accessToken = "access-token"
-       serverId    = "server-id"
+       url                 = "url"
+       platformUrl         = "platform-url"
+       user                = "user"
+       password            = "password"
+       accessToken         = "access-token"
+       serverId            = "server-id"
+       disableTokenRefresh = "disable-token-refresh"
 
        passwordStdin    = "password-stdin"
        accessTokenStdin = "access-token-stdin"
@@ -371,6 +372,7 @@
        npmPrefix          = "npm-"
        npmDetailedSummary = npmPrefix + detailedSummary
        runNative          = "run-native"
+       npmWorkspaces      = "workspaces"
 
        // Unique nuget/dotnet config flags
        nugetV2                  = "nuget-v2"
@@ -520,17 +522,18 @@
        licenseCount = "license-count"
 
        // *** Config Commands' flags ***
-       configPrefix      = "config-"
-       configPlatformUrl = configPrefix + url
-       configRtUrl       = "artifactory-url"
-       configDistUrl     = "distribution-url"
-       configXrUrl       = "xray-url"
-       configMcUrl       = "mission-control-url"
-       configPlUrl       = "pipelines-url"
-       configAccessToken = configPrefix + accessToken
-       configUser        = configPrefix + user
-       configPassword    = configPrefix + password
-       configInsecureTls = configPrefix + InsecureTls
+       configPrefix                    = "config-"
+       configPlatformUrl               = configPrefix + url
+       configRtUrl                     = "artifactory-url"
+       configDistUrl                   = "distribution-url"
+       configXrUrl                     = "xray-url"
+       configMcUrl                     = "mission-control-url"
+       configPlUrl                     = "pipelines-url"
+       configAccessToken               = configPrefix + accessToken
+       configUser                      = configPrefix + user
+       configPassword                  = configPrefix + password
+       configInsecureTls               = configPrefix + InsecureTls
+       configDisableRefreshAccessToken = configPrefix + disableTokenRefresh
 
        // *** Project Commands' flags ***
        projectPath = "path"
@@ -1560,6 +1563,10 @@
                Name:  InsecureTls,
                Usage: "[Default: false] Set to true to skip TLS certificates 
verification, while encrypting the Artifactory password during the config 
process.` `",
        },
+       configDisableRefreshAccessToken: cli.BoolFlag{
+               Name:  disableTokenRefresh,
+               Usage: "[Default: false] Set to true to disable automatic 
refresh of access tokens.` `",
+       },
        projectPath: cli.StringFlag{
                Name:  projectPath,
                Usage: "[Default: ./] Full path to the code project.` `",
@@ -1720,6 +1727,10 @@
                Name:  runNative,
                Usage: "[Default: false] Set to true if you'd like to use the 
native client configurations. Note: This flag would invoke native client behind 
the scenes, has performance implications and does not support deployment view 
and detailed summary` `",
        },
+       npmWorkspaces: cli.BoolFlag{
+               Name:  npmWorkspaces,
+               Usage: "[Default: false] Set to true if you'd like to use npm 
workspaces.` `",
+       },
        validateSha: cli.BoolFlag{
                Name:  validateSha,
                Usage: "[Default: false] Set to true to enable SHA validation 
during Docker push.` `",
@@ -1729,11 +1740,12 @@
 var commandFlags = map[string][]string{
        AddConfig: {
                interactive, EncPassword, configPlatformUrl, configRtUrl, 
configDistUrl, configXrUrl, configMcUrl, configPlUrl, configUser, 
configPassword, configAccessToken, sshKeyPath, sshPassphrase, ClientCertPath,
-               ClientCertKeyPath, BasicAuthOnly, configInsecureTls, Overwrite, 
passwordStdin, accessTokenStdin, OidcTokenID, OidcProviderName, OidcAudience, 
OidcProviderType, ApplicationKey,
+               ClientCertKeyPath, BasicAuthOnly, configInsecureTls, Overwrite, 
passwordStdin, accessTokenStdin, OidcTokenID,
+               OidcProviderName, OidcAudience, OidcProviderType, 
ApplicationKey, configDisableRefreshAccessToken,
        },
        EditConfig: {
                interactive, EncPassword, configPlatformUrl, configRtUrl, 
configDistUrl, configXrUrl, configMcUrl, configPlUrl, configUser, 
configPassword, configAccessToken, sshKeyPath, sshPassphrase, ClientCertPath,
-               ClientCertKeyPath, BasicAuthOnly, configInsecureTls, 
passwordStdin, accessTokenStdin,
+               ClientCertKeyPath, BasicAuthOnly, configInsecureTls, 
passwordStdin, accessTokenStdin, configDisableRefreshAccessToken,
        },
        DeleteConfig: {
                deleteQuiet,
@@ -1876,7 +1888,7 @@
                BuildName, BuildNumber, module, Project, runNative,
        },
        NpmPublish: {
-               BuildName, BuildNumber, module, Project, npmDetailedSummary, 
xrayScan, xrOutput, runNative,
+               BuildName, BuildNumber, module, Project, npmDetailedSummary, 
xrayScan, xrOutput, runNative, npmWorkspaces,
        },
        PnpmConfig: {
                global, serverIdResolve, repoResolve,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/utils/cliutils/utils.go 
new/jfrog-cli-2.79.1/utils/cliutils/utils.go
--- old/jfrog-cli-2.79.0/utils/cliutils/utils.go        2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/utils/cliutils/utils.go        2025-09-25 
15:18:30.000000000 +0200
@@ -341,6 +341,7 @@
                details.ServerId = os.Getenv(coreutils.ServerID)
        }
        details.InsecureTls = c.Bool(InsecureTls)
+       details.DisableTokenRefresh = c.Bool(disableTokenRefresh)
        return
 }
 
@@ -748,3 +749,9 @@
        }
        return applicationKey
 }
+
+// ShouldHideSurveyLink checks if the survey should be hidden based on the 
JFROG_CLI_HIDE_SURVEY environment variable
+// Returns true if the survey should be hidden (env var is "true"), false 
otherwise
+func ShouldHideSurveyLink() bool {
+       return os.Getenv(JfrogCliHideSurvey) == "true"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jfrog-cli-2.79.0/utils/cliutils/utils_test.go 
new/jfrog-cli-2.79.1/utils/cliutils/utils_test.go
--- old/jfrog-cli-2.79.0/utils/cliutils/utils_test.go   2025-09-18 
13:32:45.000000000 +0200
+++ new/jfrog-cli-2.79.1/utils/cliutils/utils_test.go   2025-09-25 
15:18:30.000000000 +0200
@@ -379,3 +379,42 @@
        // For all other requests, use the base transport
        return t.baseTransport.RoundTrip(req)
 }
+
+// TestGetHasDisplayedSurveyLink tests the survey link environment variable 
check with parametrized test cases
+func TestGetHasDisplayedSurveyLink(t *testing.T) {
+       testCases := []struct {
+               name       string
+               envValue   string
+               shouldHide bool
+       }{
+               {
+                       name:       "env_var_not_set",
+                       envValue:   "", // This will be handled by unsetting 
the env var
+                       shouldHide: false,
+               },
+               {
+                       name:       "env_var_true",
+                       envValue:   "true",
+                       shouldHide: true,
+               },
+               {
+                       name:       "env_var_bad_input",
+                       envValue:   "garbage",
+                       shouldHide: false,
+               },
+       }
+
+       for _, tc := range testCases {
+               t.Run(tc.name, func(t *testing.T) {
+                       t.Setenv(JfrogCliHideSurvey, tc.envValue)
+
+                       shouldHide := ShouldHideSurveyLink()
+
+                       if tc.shouldHide {
+                               assert.True(t, shouldHide, "Expected survey to 
be hidden for test case: %s", tc.name)
+                       } else {
+                               assert.False(t, shouldHide, "Expected survey to 
not be hidden for test case: %s", tc.name)
+                       }
+               })
+       }
+}

++++++ jfrog-cli.obsinfo ++++++
--- /var/tmp/diff_new_pack.SjV02o/_old  2025-09-26 22:26:22.066678600 +0200
+++ /var/tmp/diff_new_pack.SjV02o/_new  2025-09-26 22:26:22.074678937 +0200
@@ -1,5 +1,5 @@
 name: jfrog-cli
-version: 2.79.0
-mtime: 1758195165
-commit: a6c05c503d41ad0341c3714ac32ef83775a27945
+version: 2.79.1
+mtime: 1758806310
+commit: c3dd21c52df755b062597747b4b7d3e06c91fadd
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/jfrog-cli/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.jfrog-cli.new.11973/vendor.tar.gz differ: char 149, 
line 1

Reply via email to