Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package minio-client for openSUSE:Factory 
checked in at 2023-07-09 20:40:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/minio-client (Old)
 and      /work/SRC/openSUSE:Factory/.minio-client.new.23466 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "minio-client"

Sun Jul  9 20:40:54 2023 rev:38 rq:1097763 version:20230707T052551Z

Changes:
--------
--- /work/SRC/openSUSE:Factory/minio-client/minio-client.changes        
2023-06-29 17:29:35.262701943 +0200
+++ /work/SRC/openSUSE:Factory/.minio-client.new.23466/minio-client.changes     
2023-07-09 20:42:59.070084678 +0200
@@ -1,0 +2,9 @@
+Sat Jul 08 19:38:03 UTC 2023 - ka...@b1-systems.de
+
+- Update to version 20230707T052551Z:
+  * Enhance user info output with authentication info (#4613)
+  * admin replicate update: rename --sync flag to --mode (#4623)
+  * fix: miss count for 'mc support top drive' (#4624)
+  * support site perf replication (#4608)
+
+-------------------------------------------------------------------

Old:
----
  mc-20230628T215417Z.obscpio

New:
----
  mc-20230707T052551Z.obscpio

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

Other differences:
------------------
++++++ minio-client.spec ++++++
--- /var/tmp/diff_new_pack.SfHyoE/_old  2023-07-09 20:42:59.730088648 +0200
+++ /var/tmp/diff_new_pack.SfHyoE/_new  2023-07-09 20:42:59.734088672 +0200
@@ -22,7 +22,7 @@
 %define binary_name minio-client
 
 Name:           minio-client
-Version:        20230628T215417Z
+Version:        20230707T052551Z
 Release:        0
 Summary:        Client for MinIO
 License:        AGPL-3.0-only

++++++ _service ++++++
--- /var/tmp/diff_new_pack.SfHyoE/_old  2023-07-09 20:42:59.770088889 +0200
+++ /var/tmp/diff_new_pack.SfHyoE/_new  2023-07-09 20:42:59.774088913 +0200
@@ -5,7 +5,7 @@
     <param name="exclude">.git</param>
     <param name="changesgenerate">enable</param>
     <param name="versionformat">@PARENT_TAG@</param>
-    <param name="revision">RELEASE.2023-06-28T21-54-17Z</param>
+    <param name="revision">RELEASE.2023-07-07T05-25-51Z</param>
     <param name="match-tag">RELEASE.*</param>
     <param 
name="versionrewrite-pattern">RELEASE\.(.*)-(.*)-(.*)-(.*)-(.*)</param>
     <param name="versionrewrite-replacement">\1\2\3\4\5</param>
@@ -19,7 +19,7 @@
     <param name="compression">gz</param>
   </service>
   <service name="go_modules" mode="disabled">
-    <param name="archive">mc-20230628T215417Z.obscpio</param>
+    <param name="archive">mc-20230707T052551Z.obscpio</param>
   </service>
 </services>
 

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.SfHyoE/_old  2023-07-09 20:42:59.794089033 +0200
+++ /var/tmp/diff_new_pack.SfHyoE/_new  2023-07-09 20:42:59.798089057 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/minio/mc</param>
-              <param 
name="changesrevision">eebdcdf36501cec35c893d7e8ab7a7473ff6860a</param></service></servicedata>
+              <param 
name="changesrevision">1b992864ee0682b8be6a590ccbda080475dcadd3</param></service></servicedata>
 (No newline at EOF)
 

++++++ mc-20230628T215417Z.obscpio -> mc-20230707T052551Z.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/cmd/admin-replicate-update.go 
new/mc-20230707T052551Z/cmd/admin-replicate-update.go
--- old/mc-20230628T215417Z/cmd/admin-replicate-update.go       2023-06-28 
23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/cmd/admin-replicate-update.go       2023-07-07 
07:25:51.000000000 +0200
@@ -39,9 +39,16 @@
                Usage: "endpoint for the site",
        },
        cli.StringFlag{
-               Name:  "sync",
-               Usage: "enable synchronous replication for this target, valid 
values are ['enable', 'disable'].",
-               Value: "disable",
+               Name:  "mode",
+               Usage: "change mode of replication for this target, valid 
values are ['sync', 'async'].",
+               Value: "",
+       },
+       cli.StringFlag{
+               Name:   "sync",
+               Usage:  "enable synchronous replication for this target, valid 
values are ['enable', 'disable'].",
+               Value:  "disable",
+               Hidden: true, // deprecated Jul 2023
+
        },
 }
 
@@ -115,11 +122,15 @@
        if !ctx.IsSet("deployment-id") {
                fatalIf(errInvalidArgument(), "--deployment-id is a required 
flag")
        }
-       if !ctx.IsSet("endpoint") && !ctx.IsSet("sync") {
-               fatalIf(errInvalidArgument(), "--endpoint or --sync is a 
required flag")
+       if !ctx.IsSet("endpoint") && !ctx.IsSet("mode") && !ctx.IsSet("sync") {
+               fatalIf(errInvalidArgument(), "--endpoint or --mode is a 
required flag")
        }
+       if ctx.IsSet("mode") && ctx.IsSet("sync") {
+               fatalIf(errInvalidArgument(), "either --sync or --mode flag 
should be specified")
+       }
+
        var syncState string
-       if ctx.IsSet("sync") {
+       if ctx.IsSet("sync") { // for backward compatibility - deprecated Jul 
2023
                syncState = strings.ToLower(ctx.String("sync"))
                switch syncState {
                case "enable", "disable":
@@ -127,6 +138,18 @@
                        fatalIf(errInvalidArgument().Trace(args...), "--sync 
can be either [enable|disable]")
                }
        }
+
+       if ctx.IsSet("mode") {
+               mode := strings.ToLower(ctx.String("mode"))
+               switch mode {
+               case "sync":
+                       syncState = "enable"
+               case "async":
+                       syncState = "disable"
+               default:
+                       fatalIf(errInvalidArgument().Trace(args...), "--mode 
can be either [sync|async]")
+               }
+       }
        var ep string
        if ctx.IsSet("endpoint") {
                parsedURL := ctx.String("endpoint")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/cmd/admin-user-add.go 
new/mc-20230707T052551Z/cmd/admin-user-add.go
--- old/mc-20230628T215417Z/cmd/admin-user-add.go       2023-06-28 
23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/cmd/admin-user-add.go       2023-07-07 
07:25:51.000000000 +0200
@@ -91,13 +91,14 @@
 
 // userMessage container for content message structure
 type userMessage struct {
-       op         string
-       Status     string      `json:"status"` // TODO: remove this?
-       AccessKey  string      `json:"accessKey,omitempty"`
-       SecretKey  string      `json:"secretKey,omitempty"`
-       PolicyName string      `json:"policyName,omitempty"`
-       UserStatus string      `json:"userStatus,omitempty"`
-       MemberOf   []userGroup `json:"memberOf,omitempty"`
+       op             string
+       Status         string      `json:"status"` // TODO: remove this?
+       AccessKey      string      `json:"accessKey,omitempty"`
+       SecretKey      string      `json:"secretKey,omitempty"`
+       PolicyName     string      `json:"policyName,omitempty"`
+       UserStatus     string      `json:"userStatus,omitempty"`
+       MemberOf       []userGroup `json:"memberOf,omitempty"`
+       Authentication string      `json:"authentication,omitempty"`
 }
 
 func (u userMessage) String() string {
@@ -118,13 +119,16 @@
                for _, group := range u.MemberOf {
                        memberOf = append(memberOf, group.Name)
                }
-               return console.Colorize("UserMessage", strings.Join(
-                       []string{
-                               fmt.Sprintf("AccessKey: %s", u.AccessKey),
-                               fmt.Sprintf("Status: %s", u.UserStatus),
-                               fmt.Sprintf("PolicyName: %s", u.PolicyName),
-                               fmt.Sprintf("MemberOf: %s", memberOf),
-                       }, "\n"))
+               lines := []string{
+                       fmt.Sprintf("AccessKey: %s", u.AccessKey),
+                       fmt.Sprintf("Status: %s", u.UserStatus),
+                       fmt.Sprintf("PolicyName: %s", u.PolicyName),
+                       fmt.Sprintf("MemberOf: %s", memberOf),
+               }
+               if u.Authentication != "" {
+                       lines = append(lines, fmt.Sprintf("Authentication: %s", 
u.Authentication))
+               }
+               return console.Colorize("UserMessage", strings.Join(lines, 
"\n"))
        case "remove":
                return console.Colorize("UserMessage", "Removed user 
`"+u.AccessKey+"` successfully.")
        case "disable":
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/cmd/admin-user-info.go 
new/mc-20230707T052551Z/cmd/admin-user-info.go
--- old/mc-20230628T215417Z/cmd/admin-user-info.go      2023-06-28 
23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/cmd/admin-user-info.go      2023-07-07 
07:25:51.000000000 +0200
@@ -18,10 +18,12 @@
 package cmd
 
 import (
+       "fmt"
        "strings"
 
        "github.com/fatih/color"
        "github.com/minio/cli"
+       "github.com/minio/madmin-go/v3"
        "github.com/minio/mc/pkg/probe"
        "github.com/minio/pkg/console"
 )
@@ -87,12 +89,26 @@
        }
 
        printMsg(userMessage{
-               op:         ctx.Command.Name,
-               AccessKey:  args.Get(1),
-               PolicyName: user.PolicyName,
-               UserStatus: string(user.Status),
-               MemberOf:   memberOf,
+               op:             ctx.Command.Name,
+               AccessKey:      args.Get(1),
+               PolicyName:     user.PolicyName,
+               UserStatus:     string(user.Status),
+               MemberOf:       memberOf,
+               Authentication: authInfoToUserMessage(user.AuthInfo),
        })
 
        return nil
 }
+
+func authInfoToUserMessage(a *madmin.UserAuthInfo) string {
+       if a == nil {
+               return ""
+       }
+
+       authServer := ""
+       if a.Type != madmin.BuiltinUserAuthType {
+               authServer = "/" + a.AuthServer
+       }
+
+       return fmt.Sprintf("%s%s (%s)", a.Type, authServer, a.AuthServerUserID)
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/cmd/speedtest-spinner.go 
new/mc-20230707T052551Z/cmd/speedtest-spinner.go
--- old/mc-20230628T215417Z/cmd/speedtest-spinner.go    2023-06-28 
23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/cmd/speedtest-spinner.go    2023-07-07 
07:25:51.000000000 +0200
@@ -48,6 +48,7 @@
        NetPerfTest PerfTestType = 1 << iota
        DrivePerfTest
        ObjectPerfTest
+       SiteReplicationPerfTest
 )
 
 // Name - returns name of the performance test
@@ -59,18 +60,21 @@
                return "DrivePerf"
        case ObjectPerfTest:
                return "ObjectPerf"
+       case SiteReplicationPerfTest:
+               return "SiteReplication"
        }
        return "<unknown>"
 }
 
 // PerfTestResult - stores the result of a performance test
 type PerfTestResult struct {
-       Type         PerfTestType                  `json:"type"`
-       ObjectResult *madmin.SpeedTestResult       `json:"object,omitempty"`
-       NetResult    *madmin.NetperfResult         `json:"network,omitempty"`
-       DriveResult  []madmin.DriveSpeedTestResult `json:"drive,omitempty"`
-       Err          string                        `json:"err,omitempty"`
-       Final        bool                          `json:"final,omitempty"`
+       Type                  PerfTestType                  `json:"type"`
+       ObjectResult          *madmin.SpeedTestResult       
`json:"object,omitempty"`
+       NetResult             *madmin.NetperfResult         
`json:"network,omitempty"`
+       SiteReplicationResult *madmin.SiteNetPerfResult     
`json:"siteReplication,omitempty"`
+       DriveResult           []madmin.DriveSpeedTestResult 
`json:"drive,omitempty"`
+       Err                   string                        
`json:"err,omitempty"`
+       Final                 bool                          
`json:"final,omitempty"`
 }
 
 func initSpeedTestUI() *speedTestUI {
@@ -134,6 +138,7 @@
 
        ores := m.result.ObjectResult
        nres := m.result.NetResult
+       sres := m.result.SiteReplicationResult
        dres := m.result.DriveResult
 
        trailerIfGreaterThan := func(in string, max int) string {
@@ -218,6 +223,57 @@
                                }
                        }
                }
+
+               sort.Slice(data, func(i, j int) bool {
+                       return data[i][0] < data[j][0]
+               })
+
+               table.AppendBulk(data)
+               table.Render()
+       } else if sres != nil {
+               table.SetHeader([]string{"Endpoint", "RX", "TX", ""})
+               data := make([][]string, 0, len(sres.NodeResults))
+               if len(sres.NodeResults) == 0 {
+                       data = append(data, []string{
+                               "...",
+                               whiteStyle.Render("-- MiB"),
+                               whiteStyle.Render("-- MiB"),
+                               "",
+                       })
+               } else {
+                       for _, nodeResult := range sres.NodeResults {
+                               if nodeResult.Error != "" {
+                                       data = append(data, []string{
+                                               
trailerIfGreaterThan(nodeResult.Endpoint, 64),
+                                               crossTickCell,
+                                               crossTickCell,
+                                               "Err: " + nodeResult.Error,
+                                       })
+                               } else {
+                                       dataItem := []string{}
+                                       dataError := ""
+                                       // show endpoint
+                                       dataItem = append(dataItem, 
trailerIfGreaterThan(nodeResult.Endpoint, 64))
+                                       // show RX
+                                       if 
uint64(nodeResult.RXTotalDuration.Seconds()) == 0 {
+                                               dataError += "- RXTotalDuration 
are zero "
+                                               dataItem = append(dataItem, 
crossTickCell)
+                                       } else {
+                                               dataItem = append(dataItem, 
whiteStyle.Render(humanize.IBytes(nodeResult.RX/uint64(nodeResult.RXTotalDuration.Seconds())))+"/s")
+                                       }
+                                       // show TX
+                                       if 
uint64(nodeResult.TXTotalDuration.Seconds()) == 0 {
+                                               dataError += "- TXTotalDuration 
are zero"
+                                               dataItem = append(dataItem, 
crossTickCell)
+                                       } else {
+                                               dataItem = append(dataItem, 
whiteStyle.Render(humanize.IBytes(nodeResult.TX/uint64(nodeResult.TXTotalDuration.Seconds())))+"/s")
+                                       }
+                                       // show message
+                                       dataItem = append(dataItem, dataError)
+                                       data = append(data, dataItem)
+                               }
+                       }
+               }
 
                sort.Slice(data, func(i, j int) bool {
                        return data[i][0] < data[j][0]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/mc-20230628T215417Z/cmd/support-perf-site-replication.go 
new/mc-20230707T052551Z/cmd/support-perf-site-replication.go
--- old/mc-20230628T215417Z/cmd/support-perf-site-replication.go        
1970-01-01 01:00:00.000000000 +0100
+++ new/mc-20230707T052551Z/cmd/support-perf-site-replication.go        
2023-07-07 07:25:51.000000000 +0200
@@ -0,0 +1,130 @@
+// Copyright (c) 2023 MinIO, Inc.
+//
+// This file is part of MinIO Object Storage stack
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+package cmd
+
+import (
+       "context"
+       "os"
+       "time"
+
+       tea "github.com/charmbracelet/bubbletea"
+       "github.com/minio/cli"
+       "github.com/minio/madmin-go/v3"
+       "github.com/minio/mc/pkg/probe"
+)
+
+func mainAdminSpeedTestSiteReplication(ctx *cli.Context, aliasedURL string, 
outCh chan<- PerfTestResult) error {
+       client, perr := newAdminClient(aliasedURL)
+       if perr != nil {
+               fatalIf(perr.Trace(aliasedURL), "Unable to initialize admin 
client.")
+               return nil
+       }
+
+       ctxt, cancel := context.WithCancel(globalContext)
+       defer cancel()
+
+       duration, e := time.ParseDuration(ctx.String("duration"))
+       if e != nil {
+               fatalIf(probe.NewError(e), "Unable to parse duration")
+               return nil
+       }
+       if duration <= 0 {
+               fatalIf(errInvalidArgument(), "duration cannot be 0 or 
negative")
+               return nil
+       }
+
+       resultCh := make(chan madmin.SiteNetPerfResult)
+       errorCh := make(chan error)
+       go func() {
+               defer close(resultCh)
+               defer close(errorCh)
+
+               result, e := client.SiteReplicationPerf(ctxt, duration)
+               if e != nil {
+                       errorCh <- e
+               }
+               resultCh <- result
+       }()
+
+       if globalJSON {
+               select {
+               case e := <-errorCh:
+                       printMsg(convertPerfResult(PerfTestResult{
+                               Type:  SiteReplicationPerfTest,
+                               Err:   e.Error(),
+                               Final: true,
+                       }))
+               case result := <-resultCh:
+                       printMsg(convertPerfResult(PerfTestResult{
+                               Type:                  SiteReplicationPerfTest,
+                               SiteReplicationResult: &result,
+                               Final:                 true,
+                       }))
+               }
+               return nil
+       }
+
+       done := make(chan struct{})
+
+       p := tea.NewProgram(initSpeedTestUI())
+       go func() {
+               if _, e := p.Run(); e != nil {
+                       os.Exit(1)
+               }
+               close(done)
+       }()
+
+       go func() {
+               for {
+                       select {
+                       case e := <-errorCh:
+                               r := PerfTestResult{
+                                       Type:  SiteReplicationPerfTest,
+                                       Err:   e.Error(),
+                                       Final: true,
+                               }
+                               p.Send(r)
+                               if outCh != nil {
+                                       outCh <- r
+                               }
+                               return
+                       case result := <-resultCh:
+                               r := PerfTestResult{
+                                       Type:                  
SiteReplicationPerfTest,
+                                       SiteReplicationResult: &result,
+                                       Final:                 true,
+                               }
+                               p.Send(r)
+                               if outCh != nil {
+                                       outCh <- r
+                               }
+                               return
+                       default:
+                               p.Send(PerfTestResult{
+                                       Type:                  
SiteReplicationPerfTest,
+                                       SiteReplicationResult: 
&madmin.SiteNetPerfResult{},
+                               })
+                               time.Sleep(100 * time.Millisecond)
+                       }
+               }
+       }()
+
+       <-done
+
+       return nil
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/cmd/support-perf.go 
new/mc-20230707T052551Z/cmd/support-perf.go
--- old/mc-20230628T215417Z/cmd/support-perf.go 2023-06-28 23:54:17.000000000 
+0200
+++ new/mc-20230707T052551Z/cmd/support-perf.go 2023-07-07 07:25:51.000000000 
+0200
@@ -23,6 +23,7 @@
        "fmt"
        "os"
        "path/filepath"
+       "time"
 
        humanize "github.com/dustin/go-humanize"
        "github.com/minio/cli"
@@ -112,10 +113,11 @@
 
 // PerfTestOutput - stores the final output of performance test(s)
 type PerfTestOutput struct {
-       ObjectResults *ObjTestResults   `json:"object,omitempty"`
-       NetResults    *NetTestResults   `json:"network,omitempty"`
-       DriveResults  *DriveTestResults `json:"drive,omitempty"`
-       Error         string            `json:"error,omitempty"`
+       ObjectResults          *ObjTestResults             
`json:"object,omitempty"`
+       NetResults             *NetTestResults             
`json:"network,omitempty"`
+       SiteReplicationResults *SiteReplicationTestResults 
`json:"siteReplication,omitempty"`
+       DriveResults           *DriveTestResults           
`json:"drive,omitempty"`
+       Error                  string                      
`json:"error,omitempty"`
 }
 
 // DriveTestResult - result of the drive performance test on a given endpoint
@@ -194,6 +196,27 @@
        Results []NetTestResult `json:"servers"`
 }
 
+// SiteNetStats - status for siteNet
+type SiteNetStats struct {
+       TX              uint64        `json:"tx"` // transfer rate in bytes
+       TXTotalDuration time.Duration `json:"txTotalDuration"`
+       RX              uint64        `json:"rx"` // received rate in bytes
+       RXTotalDuration time.Duration `json:"rxTotalDuration"`
+       TotalConn       uint64        `json:"totalConn"`
+}
+
+// SiteReplicationTestNodeResult - result of the network performance test for 
site-replication
+type SiteReplicationTestNodeResult struct {
+       Endpoint string       `json:"endpoint"`
+       Perf     SiteNetStats `json:"perf"`
+       Error    string       `json:"error,omitempty"`
+}
+
+// SiteReplicationTestResults - result of the network performance test across 
all site-replication
+type SiteReplicationTestResults struct {
+       Results []SiteReplicationTestNodeResult `json:"servers"`
+}
+
 func objectTestVerboseResult(result *madmin.SpeedTestResult) (msg string) {
        msg += "PUT:\n"
        for _, node := range result.PUTStats.Servers {
@@ -247,7 +270,7 @@
        switch len(args) {
        case 1:
                // cannot use alias by the name 'drive' or 'net'
-               if args[0] == "drive" || args[0] == "net" || args[0] == 
"object" {
+               if args[0] == "drive" || args[0] == "net" || args[0] == 
"object" || args[0] == "site-replication" {
                        showCommandHelpAndExit(ctx, 1)
                }
                aliasedURL = args[0]
@@ -287,6 +310,30 @@
        return &r
 }
 
+func convertSiteReplicationTestResults(netResults *madmin.SiteNetPerfResult) 
*SiteReplicationTestResults {
+       if netResults == nil {
+               return nil
+       }
+       results := []SiteReplicationTestNodeResult{}
+       for _, nr := range netResults.NodeResults {
+               results = append(results, SiteReplicationTestNodeResult{
+                       Endpoint: nr.Endpoint,
+                       Error:    nr.Error,
+                       Perf: SiteNetStats{
+                               TX:              nr.TX,
+                               TXTotalDuration: nr.TXTotalDuration,
+                               RX:              nr.RX,
+                               RXTotalDuration: nr.RXTotalDuration,
+                               TotalConn:       nr.TotalConn,
+                       },
+               })
+       }
+       r := SiteReplicationTestResults{
+               Results: results,
+       }
+       return &r
+}
+
 func convertNetTestResults(netResults *madmin.NetperfResult) *NetTestResults {
        if netResults == nil {
                return nil
@@ -369,6 +416,8 @@
                out.ObjectResults = convertObjTestResults(r.ObjectResult)
        case NetPerfTest:
                out.NetResults = convertNetTestResults(r.NetResult)
+       case SiteReplicationPerfTest:
+               out.SiteReplicationResults = 
convertSiteReplicationTestResults(r.SiteReplicationResult)
        default:
                fatalIf(errDummy().Trace(), fmt.Sprintf("Invalid test type %d", 
r.Type))
        }
@@ -458,6 +507,8 @@
                        mainAdminSpeedTestObject(ctx, aliasedURL, resultCh)
                case "net":
                        mainAdminSpeedTestNetperf(ctx, aliasedURL, resultCh)
+               case "site-replication":
+                       mainAdminSpeedTestSiteReplication(ctx, aliasedURL, 
resultCh)
                default:
                        showCommandHelpAndExit(ctx, 1) // last argument is exit 
code
                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/cmd/support-top-drive.go 
new/mc-20230707T052551Z/cmd/support-top-drive.go
--- old/mc-20230628T215417Z/cmd/support-top-drive.go    2023-06-28 
23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/cmd/support-top-drive.go    2023-07-07 
07:25:51.000000000 +0200
@@ -97,6 +97,7 @@
                Type:     madmin.MetricsDisk,
                Interval: time.Second,
                ByDisk:   true,
+               N:        ctx.Int("count"),
        }
 
        p := tea.NewProgram(initTopDriveUI(disks, ctx.Int("count")))
@@ -114,6 +115,7 @@
                if e != nil {
                        fatalIf(probe.NewError(e), "Unable to fetch top drives 
events")
                }
+               p.Quit()
        }()
 
        if _, e := p.Run(); e != nil {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/go.mod 
new/mc-20230707T052551Z/go.mod
--- old/mc-20230628T215417Z/go.mod      2023-06-28 23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/go.mod      2023-07-07 07:25:51.000000000 +0200
@@ -47,7 +47,7 @@
        github.com/gdamore/tcell/v2 v2.6.0
        github.com/golang-jwt/jwt/v4 v4.5.0
        github.com/juju/ratelimit v1.0.2
-       github.com/minio/madmin-go/v3 v3.0.4
+       github.com/minio/madmin-go/v3 v3.0.5
        github.com/muesli/reflow v0.3.0
        github.com/navidys/tvxwidgets v0.3.0
        github.com/olekukonko/tablewriter v0.0.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/mc-20230628T215417Z/go.sum 
new/mc-20230707T052551Z/go.sum
--- old/mc-20230628T215417Z/go.sum      2023-06-28 23:54:17.000000000 +0200
+++ new/mc-20230707T052551Z/go.sum      2023-07-07 07:25:51.000000000 +0200
@@ -146,8 +146,8 @@
 github.com/minio/colorjson v1.0.5/go.mod 
h1:Oq6oB83q+sL08u9wx68+91ELf0nV5G4c6l9pQcH5ElI=
 github.com/minio/filepath v1.0.0 
h1:fvkJu1+6X+ECRA6G3+JJETj4QeAYO9sV43I79H8ubDY=
 github.com/minio/filepath v1.0.0/go.mod 
h1:/nRZA2ldl5z6jT9/KQuvZcQlxZIMQoFFQPvEXx9T/Bw=
-github.com/minio/madmin-go/v3 v3.0.4 
h1:nINToRlCFRKKINGIvn+RUkYgnQregTEi6xVO6XwSUtA=
-github.com/minio/madmin-go/v3 v3.0.4/go.mod 
h1:lPrMoc1aeiIWmmrxBthkDqzMPQwC/Lu9ByuyM2wenJk=
+github.com/minio/madmin-go/v3 v3.0.5 
h1:ynWTsnszHnQVJWRL2OE4ysCvCNG0uHgdTvJpdLazf9c=
+github.com/minio/madmin-go/v3 v3.0.5/go.mod 
h1:lPrMoc1aeiIWmmrxBthkDqzMPQwC/Lu9ByuyM2wenJk=
 github.com/minio/md5-simd v1.1.2 
h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=
 github.com/minio/md5-simd v1.1.2/go.mod 
h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM=
 github.com/minio/minio-go/v7 v7.0.57 
h1:xsFiOiWjpC1XAGbFEUOzj1/gMXGz7ljfxifwcb/5YXU=

++++++ mc.obsinfo ++++++
--- /var/tmp/diff_new_pack.SfHyoE/_old  2023-07-09 20:43:00.054090598 +0200
+++ /var/tmp/diff_new_pack.SfHyoE/_new  2023-07-09 20:43:00.054090598 +0200
@@ -1,5 +1,5 @@
 name: mc
-version: 20230628T215417Z
-mtime: 1687989257
-commit: eebdcdf36501cec35c893d7e8ab7a7473ff6860a
+version: 20230707T052551Z
+mtime: 1688707551
+commit: 1b992864ee0682b8be6a590ccbda080475dcadd3
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/minio-client/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.minio-client.new.23466/vendor.tar.gz differ: char 
5, line 1

Reply via email to