mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-31 15:52:25 -05:00 
			
		
		
		
	[chore]: Bump github.com/spf13/cobra from 1.8.0 to 1.8.1 (#3016)
This commit is contained in:
		
					parent
					
						
							
								cc64de4dcc
							
						
					
				
			
			
				commit
				
					
						7ab404d643
					
				
			
		
					 12 changed files with 128 additions and 96 deletions
				
			
		
							
								
								
									
										2
									
								
								go.mod
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
										
									
									
									
								
							|  | @ -47,7 +47,7 @@ require ( | ||||||
| 	github.com/ncruces/go-sqlite3 v0.16.2 | 	github.com/ncruces/go-sqlite3 v0.16.2 | ||||||
| 	github.com/oklog/ulid v1.3.1 | 	github.com/oklog/ulid v1.3.1 | ||||||
| 	github.com/prometheus/client_golang v1.19.1 | 	github.com/prometheus/client_golang v1.19.1 | ||||||
| 	github.com/spf13/cobra v1.8.0 | 	github.com/spf13/cobra v1.8.1 | ||||||
| 	github.com/spf13/viper v1.19.0 | 	github.com/spf13/viper v1.19.0 | ||||||
| 	github.com/stretchr/testify v1.9.0 | 	github.com/stretchr/testify v1.9.0 | ||||||
| 	github.com/superseriousbusiness/activity v1.6.0-gts.0.20240408131430-247f7f7110f0 | 	github.com/superseriousbusiness/activity v1.6.0-gts.0.20240408131430-247f7f7110f0 | ||||||
|  |  | ||||||
							
								
								
									
										6
									
								
								go.sum
									
										
									
									
									
								
							
							
						
						
									
										6
									
								
								go.sum
									
										
									
									
									
								
							|  | @ -137,7 +137,7 @@ github.com/coreos/go-oidc/v3 v3.10.0 h1:tDnXHnLyiTVyT/2zLDGj09pFPkhND8Gl8lnTRhoE | ||||||
| github.com/coreos/go-oidc/v3 v3.10.0/go.mod h1:5j11xcw0D3+SGxn6Z/WFADsgcWVMyNAlSQupk0KK3ac= | github.com/coreos/go-oidc/v3 v3.10.0/go.mod h1:5j11xcw0D3+SGxn6Z/WFADsgcWVMyNAlSQupk0KK3ac= | ||||||
| github.com/coreos/go-systemd/v22 v22.3.2 h1:D9/bQk5vlXQFZ6Kwuu6zaiXJ9oTPe68++AzAJc1DzSI= | github.com/coreos/go-systemd/v22 v22.3.2 h1:D9/bQk5vlXQFZ6Kwuu6zaiXJ9oTPe68++AzAJc1DzSI= | ||||||
| github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= | github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= | ||||||
| github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= | github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= | ||||||
| github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= | github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= | ||||||
| github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= | github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= | ||||||
| github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= | ||||||
|  | @ -518,8 +518,8 @@ github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNo | ||||||
| github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= | github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= | ||||||
| github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= | github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= | ||||||
| github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= | github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= | ||||||
| github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0= | github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= | ||||||
| github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho= | github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= | ||||||
| github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= | github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= | ||||||
| github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= | github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= | ||||||
| github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI= | github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI= | ||||||
|  |  | ||||||
							
								
								
									
										21
									
								
								vendor/github.com/spf13/cobra/.golangci.yml
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								vendor/github.com/spf13/cobra/.golangci.yml
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -26,33 +26,28 @@ linters: | ||||||
|     - errcheck |     - errcheck | ||||||
|     #- exhaustive |     #- exhaustive | ||||||
|     #- funlen |     #- funlen | ||||||
|     - gas |  | ||||||
|     #- gochecknoinits |     #- gochecknoinits | ||||||
|     - goconst |     - goconst | ||||||
|     #- gocritic |     - gocritic | ||||||
|     #- gocyclo |     #- gocyclo | ||||||
|     #- gofmt |     - gofmt | ||||||
|     - goimports |     - goimports | ||||||
|     - golint |  | ||||||
|     #- gomnd |     #- gomnd | ||||||
|     #- goprintffuncname |     #- goprintffuncname | ||||||
|     #- gosec |     - gosec | ||||||
|     #- gosimple |     - gosimple | ||||||
|     - govet |     - govet | ||||||
|     - ineffassign |     - ineffassign | ||||||
|     - interfacer |  | ||||||
|     #- lll |     #- lll | ||||||
|     - maligned |     - misspell | ||||||
|     - megacheck |  | ||||||
|     #- misspell |  | ||||||
|     #- nakedret |     #- nakedret | ||||||
|     #- noctx |     #- noctx | ||||||
|     #- nolintlint |     - nolintlint | ||||||
|     #- rowserrcheck |     #- rowserrcheck | ||||||
|     #- scopelint |     #- scopelint | ||||||
|     #- staticcheck |     - staticcheck | ||||||
|     #- structcheck ! deprecated since v1.49.0; replaced by 'unused' |     #- structcheck ! deprecated since v1.49.0; replaced by 'unused' | ||||||
|     #- stylecheck |     - stylecheck | ||||||
|     #- typecheck |     #- typecheck | ||||||
|     - unconvert |     - unconvert | ||||||
|     #- unparam |     #- unparam | ||||||
|  |  | ||||||
							
								
								
									
										13
									
								
								vendor/github.com/spf13/cobra/active_help.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								vendor/github.com/spf13/cobra/active_help.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -17,21 +17,17 @@ package cobra | ||||||
| import ( | import ( | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"os" | 	"os" | ||||||
| 	"regexp" |  | ||||||
| 	"strings" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
| 	activeHelpMarker = "_activeHelp_ " | 	activeHelpMarker = "_activeHelp_ " | ||||||
| 	// The below values should not be changed: programs will be using them explicitly | 	// The below values should not be changed: programs will be using them explicitly | ||||||
| 	// in their user documentation, and users will be using them explicitly. | 	// in their user documentation, and users will be using them explicitly. | ||||||
| 	activeHelpEnvVarSuffix  = "_ACTIVE_HELP" | 	activeHelpEnvVarSuffix  = "ACTIVE_HELP" | ||||||
| 	activeHelpGlobalEnvVar  = "COBRA_ACTIVE_HELP" | 	activeHelpGlobalEnvVar  = configEnvVarGlobalPrefix + "_" + activeHelpEnvVarSuffix | ||||||
| 	activeHelpGlobalDisable = "0" | 	activeHelpGlobalDisable = "0" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| var activeHelpEnvVarPrefixSubstRegexp = regexp.MustCompile(`[^A-Z0-9_]`) |  | ||||||
| 
 |  | ||||||
| // AppendActiveHelp adds the specified string to the specified array to be used as ActiveHelp. | // AppendActiveHelp adds the specified string to the specified array to be used as ActiveHelp. | ||||||
| // Such strings will be processed by the completion script and will be shown as ActiveHelp | // Such strings will be processed by the completion script and will be shown as ActiveHelp | ||||||
| // to the user. | // to the user. | ||||||
|  | @ -60,8 +56,5 @@ func GetActiveHelpConfig(cmd *Command) string { | ||||||
| // variable.  It has the format <PROGRAM>_ACTIVE_HELP where <PROGRAM> is the name of the | // variable.  It has the format <PROGRAM>_ACTIVE_HELP where <PROGRAM> is the name of the | ||||||
| // root command in upper case, with all non-ASCII-alphanumeric characters replaced by `_`. | // root command in upper case, with all non-ASCII-alphanumeric characters replaced by `_`. | ||||||
| func activeHelpEnvVar(name string) string { | func activeHelpEnvVar(name string) string { | ||||||
| 	// This format should not be changed: users will be using it explicitly. | 	return configEnvVar(name, activeHelpEnvVarSuffix) | ||||||
| 	activeHelpEnvVar := strings.ToUpper(fmt.Sprintf("%s%s", name, activeHelpEnvVarSuffix)) |  | ||||||
| 	activeHelpEnvVar = activeHelpEnvVarPrefixSubstRegexp.ReplaceAllString(activeHelpEnvVar, "_") |  | ||||||
| 	return activeHelpEnvVar |  | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										4
									
								
								vendor/github.com/spf13/cobra/args.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								vendor/github.com/spf13/cobra/args.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -52,9 +52,9 @@ func OnlyValidArgs(cmd *Command, args []string) error { | ||||||
| 	if len(cmd.ValidArgs) > 0 { | 	if len(cmd.ValidArgs) > 0 { | ||||||
| 		// Remove any description that may be included in ValidArgs. | 		// Remove any description that may be included in ValidArgs. | ||||||
| 		// A description is following a tab character. | 		// A description is following a tab character. | ||||||
| 		var validArgs []string | 		validArgs := make([]string, 0, len(cmd.ValidArgs)) | ||||||
| 		for _, v := range cmd.ValidArgs { | 		for _, v := range cmd.ValidArgs { | ||||||
| 			validArgs = append(validArgs, strings.Split(v, "\t")[0]) | 			validArgs = append(validArgs, strings.SplitN(v, "\t", 2)[0]) | ||||||
| 		} | 		} | ||||||
| 		for _, v := range args { | 		for _, v := range args { | ||||||
| 			if !stringInSlice(v, validArgs) { | 			if !stringInSlice(v, validArgs) { | ||||||
|  |  | ||||||
							
								
								
									
										23
									
								
								vendor/github.com/spf13/cobra/bash_completions.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										23
									
								
								vendor/github.com/spf13/cobra/bash_completions.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -597,19 +597,16 @@ func writeRequiredFlag(buf io.StringWriter, cmd *Command) { | ||||||
| 		if nonCompletableFlag(flag) { | 		if nonCompletableFlag(flag) { | ||||||
| 			return | 			return | ||||||
| 		} | 		} | ||||||
| 		for key := range flag.Annotations { | 		if _, ok := flag.Annotations[BashCompOneRequiredFlag]; ok { | ||||||
| 			switch key { | 			format := "    must_have_one_flag+=(\"--%s" | ||||||
| 			case BashCompOneRequiredFlag: | 			if flag.Value.Type() != "bool" { | ||||||
| 				format := "    must_have_one_flag+=(\"--%s" | 				format += "=" | ||||||
| 				if flag.Value.Type() != "bool" { | 			} | ||||||
| 					format += "=" | 			format += cbn | ||||||
| 				} | 			WriteStringAndCheck(buf, fmt.Sprintf(format, flag.Name)) | ||||||
| 				format += cbn |  | ||||||
| 				WriteStringAndCheck(buf, fmt.Sprintf(format, flag.Name)) |  | ||||||
| 
 | 
 | ||||||
| 				if len(flag.Shorthand) > 0 { | 			if len(flag.Shorthand) > 0 { | ||||||
| 					WriteStringAndCheck(buf, fmt.Sprintf("    must_have_one_flag+=(\"-%s"+cbn, flag.Shorthand)) | 				WriteStringAndCheck(buf, fmt.Sprintf("    must_have_one_flag+=(\"-%s"+cbn, flag.Shorthand)) | ||||||
| 				} |  | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 	}) | 	}) | ||||||
|  | @ -621,7 +618,7 @@ func writeRequiredNouns(buf io.StringWriter, cmd *Command) { | ||||||
| 	for _, value := range cmd.ValidArgs { | 	for _, value := range cmd.ValidArgs { | ||||||
| 		// Remove any description that may be included following a tab character. | 		// Remove any description that may be included following a tab character. | ||||||
| 		// Descriptions are not supported by bash completion. | 		// Descriptions are not supported by bash completion. | ||||||
| 		value = strings.Split(value, "\t")[0] | 		value = strings.SplitN(value, "\t", 2)[0] | ||||||
| 		WriteStringAndCheck(buf, fmt.Sprintf("    must_have_one_noun+=(%q)\n", value)) | 		WriteStringAndCheck(buf, fmt.Sprintf("    must_have_one_noun+=(%q)\n", value)) | ||||||
| 	} | 	} | ||||||
| 	if cmd.ValidArgsFunction != nil { | 	if cmd.ValidArgsFunction != nil { | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/github.com/spf13/cobra/cobra.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/github.com/spf13/cobra/cobra.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -193,8 +193,6 @@ func ld(s, t string, ignoreCase bool) int { | ||||||
| 	d := make([][]int, len(s)+1) | 	d := make([][]int, len(s)+1) | ||||||
| 	for i := range d { | 	for i := range d { | ||||||
| 		d[i] = make([]int, len(t)+1) | 		d[i] = make([]int, len(t)+1) | ||||||
| 	} |  | ||||||
| 	for i := range d { |  | ||||||
| 		d[i][0] = i | 		d[i][0] = i | ||||||
| 	} | 	} | ||||||
| 	for j := range d[0] { | 	for j := range d[0] { | ||||||
|  |  | ||||||
							
								
								
									
										51
									
								
								vendor/github.com/spf13/cobra/command.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										51
									
								
								vendor/github.com/spf13/cobra/command.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -154,8 +154,10 @@ type Command struct { | ||||||
| 	// pflags contains persistent flags. | 	// pflags contains persistent flags. | ||||||
| 	pflags *flag.FlagSet | 	pflags *flag.FlagSet | ||||||
| 	// lflags contains local flags. | 	// lflags contains local flags. | ||||||
|  | 	// This field does not represent internal state, it's used as a cache to optimise LocalFlags function call | ||||||
| 	lflags *flag.FlagSet | 	lflags *flag.FlagSet | ||||||
| 	// iflags contains inherited flags. | 	// iflags contains inherited flags. | ||||||
|  | 	// This field does not represent internal state, it's used as a cache to optimise InheritedFlags function call | ||||||
| 	iflags *flag.FlagSet | 	iflags *flag.FlagSet | ||||||
| 	// parentsPflags is all persistent flags of cmd's parents. | 	// parentsPflags is all persistent flags of cmd's parents. | ||||||
| 	parentsPflags *flag.FlagSet | 	parentsPflags *flag.FlagSet | ||||||
|  | @ -706,7 +708,7 @@ Loop: | ||||||
| 			// This is not a flag or a flag value. Check to see if it matches what we're looking for, and if so, | 			// This is not a flag or a flag value. Check to see if it matches what we're looking for, and if so, | ||||||
| 			// return the args, excluding the one at this position. | 			// return the args, excluding the one at this position. | ||||||
| 			if s == x { | 			if s == x { | ||||||
| 				ret := []string{} | 				ret := make([]string, 0, len(args)-1) | ||||||
| 				ret = append(ret, args[:pos]...) | 				ret = append(ret, args[:pos]...) | ||||||
| 				ret = append(ret, args[pos+1:]...) | 				ret = append(ret, args[pos+1:]...) | ||||||
| 				return ret | 				return ret | ||||||
|  | @ -754,14 +756,14 @@ func (c *Command) findSuggestions(arg string) string { | ||||||
| 	if c.SuggestionsMinimumDistance <= 0 { | 	if c.SuggestionsMinimumDistance <= 0 { | ||||||
| 		c.SuggestionsMinimumDistance = 2 | 		c.SuggestionsMinimumDistance = 2 | ||||||
| 	} | 	} | ||||||
| 	suggestionsString := "" | 	var sb strings.Builder | ||||||
| 	if suggestions := c.SuggestionsFor(arg); len(suggestions) > 0 { | 	if suggestions := c.SuggestionsFor(arg); len(suggestions) > 0 { | ||||||
| 		suggestionsString += "\n\nDid you mean this?\n" | 		sb.WriteString("\n\nDid you mean this?\n") | ||||||
| 		for _, s := range suggestions { | 		for _, s := range suggestions { | ||||||
| 			suggestionsString += fmt.Sprintf("\t%v\n", s) | 			_, _ = fmt.Fprintf(&sb, "\t%v\n", s) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 	return suggestionsString | 	return sb.String() | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func (c *Command) findNext(next string) *Command { | func (c *Command) findNext(next string) *Command { | ||||||
|  | @ -873,7 +875,7 @@ func (c *Command) ArgsLenAtDash() int { | ||||||
| 
 | 
 | ||||||
| func (c *Command) execute(a []string) (err error) { | func (c *Command) execute(a []string) (err error) { | ||||||
| 	if c == nil { | 	if c == nil { | ||||||
| 		return fmt.Errorf("Called Execute() on a nil Command") | 		return fmt.Errorf("called Execute() on a nil Command") | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if len(c.Deprecated) > 0 { | 	if len(c.Deprecated) > 0 { | ||||||
|  | @ -1187,10 +1189,11 @@ func (c *Command) InitDefaultHelpFlag() { | ||||||
| 	c.mergePersistentFlags() | 	c.mergePersistentFlags() | ||||||
| 	if c.Flags().Lookup("help") == nil { | 	if c.Flags().Lookup("help") == nil { | ||||||
| 		usage := "help for " | 		usage := "help for " | ||||||
| 		if c.Name() == "" { | 		name := c.displayName() | ||||||
|  | 		if name == "" { | ||||||
| 			usage += "this command" | 			usage += "this command" | ||||||
| 		} else { | 		} else { | ||||||
| 			usage += c.Name() | 			usage += name | ||||||
| 		} | 		} | ||||||
| 		c.Flags().BoolP("help", "h", false, usage) | 		c.Flags().BoolP("help", "h", false, usage) | ||||||
| 		_ = c.Flags().SetAnnotation("help", FlagSetByCobraAnnotation, []string{"true"}) | 		_ = c.Flags().SetAnnotation("help", FlagSetByCobraAnnotation, []string{"true"}) | ||||||
|  | @ -1236,7 +1239,7 @@ func (c *Command) InitDefaultHelpCmd() { | ||||||
| 			Use:   "help [command]", | 			Use:   "help [command]", | ||||||
| 			Short: "Help about any command", | 			Short: "Help about any command", | ||||||
| 			Long: `Help provides help for any command in the application. | 			Long: `Help provides help for any command in the application. | ||||||
| Simply type ` + c.Name() + ` help [path to command] for full details.`, | Simply type ` + c.displayName() + ` help [path to command] for full details.`, | ||||||
| 			ValidArgsFunction: func(c *Command, args []string, toComplete string) ([]string, ShellCompDirective) { | 			ValidArgsFunction: func(c *Command, args []string, toComplete string) ([]string, ShellCompDirective) { | ||||||
| 				var completions []string | 				var completions []string | ||||||
| 				cmd, _, e := c.Root().Find(args) | 				cmd, _, e := c.Root().Find(args) | ||||||
|  | @ -1427,6 +1430,10 @@ func (c *Command) CommandPath() string { | ||||||
| 	if c.HasParent() { | 	if c.HasParent() { | ||||||
| 		return c.Parent().CommandPath() + " " + c.Name() | 		return c.Parent().CommandPath() + " " + c.Name() | ||||||
| 	} | 	} | ||||||
|  | 	return c.displayName() | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func (c *Command) displayName() string { | ||||||
| 	if displayName, ok := c.Annotations[CommandDisplayNameAnnotation]; ok { | 	if displayName, ok := c.Annotations[CommandDisplayNameAnnotation]; ok { | ||||||
| 		return displayName | 		return displayName | ||||||
| 	} | 	} | ||||||
|  | @ -1436,10 +1443,11 @@ func (c *Command) CommandPath() string { | ||||||
| // UseLine puts out the full usage for a given command (including parents). | // UseLine puts out the full usage for a given command (including parents). | ||||||
| func (c *Command) UseLine() string { | func (c *Command) UseLine() string { | ||||||
| 	var useline string | 	var useline string | ||||||
|  | 	use := strings.Replace(c.Use, c.Name(), c.displayName(), 1) | ||||||
| 	if c.HasParent() { | 	if c.HasParent() { | ||||||
| 		useline = c.parent.CommandPath() + " " + c.Use | 		useline = c.parent.CommandPath() + " " + use | ||||||
| 	} else { | 	} else { | ||||||
| 		useline = c.Use | 		useline = use | ||||||
| 	} | 	} | ||||||
| 	if c.DisableFlagsInUseLine { | 	if c.DisableFlagsInUseLine { | ||||||
| 		return useline | 		return useline | ||||||
|  | @ -1452,7 +1460,6 @@ func (c *Command) UseLine() string { | ||||||
| 
 | 
 | ||||||
| // DebugFlags used to determine which flags have been assigned to which commands | // DebugFlags used to determine which flags have been assigned to which commands | ||||||
| // and which persist. | // and which persist. | ||||||
| // nolint:goconst |  | ||||||
| func (c *Command) DebugFlags() { | func (c *Command) DebugFlags() { | ||||||
| 	c.Println("DebugFlags called on", c.Name()) | 	c.Println("DebugFlags called on", c.Name()) | ||||||
| 	var debugflags func(*Command) | 	var debugflags func(*Command) | ||||||
|  | @ -1642,7 +1649,7 @@ func (c *Command) GlobalNormalizationFunc() func(f *flag.FlagSet, name string) f | ||||||
| // to this command (local and persistent declared here and by all parents). | // to this command (local and persistent declared here and by all parents). | ||||||
| func (c *Command) Flags() *flag.FlagSet { | func (c *Command) Flags() *flag.FlagSet { | ||||||
| 	if c.flags == nil { | 	if c.flags == nil { | ||||||
| 		c.flags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 		c.flags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 		if c.flagErrorBuf == nil { | 		if c.flagErrorBuf == nil { | ||||||
| 			c.flagErrorBuf = new(bytes.Buffer) | 			c.flagErrorBuf = new(bytes.Buffer) | ||||||
| 		} | 		} | ||||||
|  | @ -1653,10 +1660,11 @@ func (c *Command) Flags() *flag.FlagSet { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // LocalNonPersistentFlags are flags specific to this command which will NOT persist to subcommands. | // LocalNonPersistentFlags are flags specific to this command which will NOT persist to subcommands. | ||||||
|  | // This function does not modify the flags of the current command, it's purpose is to return the current state. | ||||||
| func (c *Command) LocalNonPersistentFlags() *flag.FlagSet { | func (c *Command) LocalNonPersistentFlags() *flag.FlagSet { | ||||||
| 	persistentFlags := c.PersistentFlags() | 	persistentFlags := c.PersistentFlags() | ||||||
| 
 | 
 | ||||||
| 	out := flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 	out := flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 	c.LocalFlags().VisitAll(func(f *flag.Flag) { | 	c.LocalFlags().VisitAll(func(f *flag.Flag) { | ||||||
| 		if persistentFlags.Lookup(f.Name) == nil { | 		if persistentFlags.Lookup(f.Name) == nil { | ||||||
| 			out.AddFlag(f) | 			out.AddFlag(f) | ||||||
|  | @ -1666,11 +1674,12 @@ func (c *Command) LocalNonPersistentFlags() *flag.FlagSet { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // LocalFlags returns the local FlagSet specifically set in the current command. | // LocalFlags returns the local FlagSet specifically set in the current command. | ||||||
|  | // This function does not modify the flags of the current command, it's purpose is to return the current state. | ||||||
| func (c *Command) LocalFlags() *flag.FlagSet { | func (c *Command) LocalFlags() *flag.FlagSet { | ||||||
| 	c.mergePersistentFlags() | 	c.mergePersistentFlags() | ||||||
| 
 | 
 | ||||||
| 	if c.lflags == nil { | 	if c.lflags == nil { | ||||||
| 		c.lflags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 		c.lflags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 		if c.flagErrorBuf == nil { | 		if c.flagErrorBuf == nil { | ||||||
| 			c.flagErrorBuf = new(bytes.Buffer) | 			c.flagErrorBuf = new(bytes.Buffer) | ||||||
| 		} | 		} | ||||||
|  | @ -1693,11 +1702,12 @@ func (c *Command) LocalFlags() *flag.FlagSet { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // InheritedFlags returns all flags which were inherited from parent commands. | // InheritedFlags returns all flags which were inherited from parent commands. | ||||||
|  | // This function does not modify the flags of the current command, it's purpose is to return the current state. | ||||||
| func (c *Command) InheritedFlags() *flag.FlagSet { | func (c *Command) InheritedFlags() *flag.FlagSet { | ||||||
| 	c.mergePersistentFlags() | 	c.mergePersistentFlags() | ||||||
| 
 | 
 | ||||||
| 	if c.iflags == nil { | 	if c.iflags == nil { | ||||||
| 		c.iflags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 		c.iflags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 		if c.flagErrorBuf == nil { | 		if c.flagErrorBuf == nil { | ||||||
| 			c.flagErrorBuf = new(bytes.Buffer) | 			c.flagErrorBuf = new(bytes.Buffer) | ||||||
| 		} | 		} | ||||||
|  | @ -1718,6 +1728,7 @@ func (c *Command) InheritedFlags() *flag.FlagSet { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // NonInheritedFlags returns all flags which were not inherited from parent commands. | // NonInheritedFlags returns all flags which were not inherited from parent commands. | ||||||
|  | // This function does not modify the flags of the current command, it's purpose is to return the current state. | ||||||
| func (c *Command) NonInheritedFlags() *flag.FlagSet { | func (c *Command) NonInheritedFlags() *flag.FlagSet { | ||||||
| 	return c.LocalFlags() | 	return c.LocalFlags() | ||||||
| } | } | ||||||
|  | @ -1725,7 +1736,7 @@ func (c *Command) NonInheritedFlags() *flag.FlagSet { | ||||||
| // PersistentFlags returns the persistent FlagSet specifically set in the current command. | // PersistentFlags returns the persistent FlagSet specifically set in the current command. | ||||||
| func (c *Command) PersistentFlags() *flag.FlagSet { | func (c *Command) PersistentFlags() *flag.FlagSet { | ||||||
| 	if c.pflags == nil { | 	if c.pflags == nil { | ||||||
| 		c.pflags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 		c.pflags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 		if c.flagErrorBuf == nil { | 		if c.flagErrorBuf == nil { | ||||||
| 			c.flagErrorBuf = new(bytes.Buffer) | 			c.flagErrorBuf = new(bytes.Buffer) | ||||||
| 		} | 		} | ||||||
|  | @ -1738,9 +1749,9 @@ func (c *Command) PersistentFlags() *flag.FlagSet { | ||||||
| func (c *Command) ResetFlags() { | func (c *Command) ResetFlags() { | ||||||
| 	c.flagErrorBuf = new(bytes.Buffer) | 	c.flagErrorBuf = new(bytes.Buffer) | ||||||
| 	c.flagErrorBuf.Reset() | 	c.flagErrorBuf.Reset() | ||||||
| 	c.flags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 	c.flags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 	c.flags.SetOutput(c.flagErrorBuf) | 	c.flags.SetOutput(c.flagErrorBuf) | ||||||
| 	c.pflags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 	c.pflags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 	c.pflags.SetOutput(c.flagErrorBuf) | 	c.pflags.SetOutput(c.flagErrorBuf) | ||||||
| 
 | 
 | ||||||
| 	c.lflags = nil | 	c.lflags = nil | ||||||
|  | @ -1857,7 +1868,7 @@ func (c *Command) mergePersistentFlags() { | ||||||
| // If c.parentsPflags == nil, it makes new. | // If c.parentsPflags == nil, it makes new. | ||||||
| func (c *Command) updateParentsPflags() { | func (c *Command) updateParentsPflags() { | ||||||
| 	if c.parentsPflags == nil { | 	if c.parentsPflags == nil { | ||||||
| 		c.parentsPflags = flag.NewFlagSet(c.Name(), flag.ContinueOnError) | 		c.parentsPflags = flag.NewFlagSet(c.displayName(), flag.ContinueOnError) | ||||||
| 		c.parentsPflags.SetOutput(c.flagErrorBuf) | 		c.parentsPflags.SetOutput(c.flagErrorBuf) | ||||||
| 		c.parentsPflags.SortFlags = false | 		c.parentsPflags.SortFlags = false | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
							
								
								
									
										62
									
								
								vendor/github.com/spf13/cobra/completions.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										62
									
								
								vendor/github.com/spf13/cobra/completions.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -17,6 +17,8 @@ package cobra | ||||||
| import ( | import ( | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"os" | 	"os" | ||||||
|  | 	"regexp" | ||||||
|  | 	"strconv" | ||||||
| 	"strings" | 	"strings" | ||||||
| 	"sync" | 	"sync" | ||||||
| 
 | 
 | ||||||
|  | @ -211,24 +213,29 @@ func (c *Command) initCompleteCmd(args []string) { | ||||||
| 				// 2- Even without completions, we need to print the directive | 				// 2- Even without completions, we need to print the directive | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
| 			noDescriptions := (cmd.CalledAs() == ShellCompNoDescRequestCmd) | 			noDescriptions := cmd.CalledAs() == ShellCompNoDescRequestCmd | ||||||
|  | 			if !noDescriptions { | ||||||
|  | 				if doDescriptions, err := strconv.ParseBool(getEnvConfig(cmd, configEnvVarSuffixDescriptions)); err == nil { | ||||||
|  | 					noDescriptions = !doDescriptions | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
|  | 			noActiveHelp := GetActiveHelpConfig(finalCmd) == activeHelpGlobalDisable | ||||||
|  | 			out := finalCmd.OutOrStdout() | ||||||
| 			for _, comp := range completions { | 			for _, comp := range completions { | ||||||
| 				if GetActiveHelpConfig(finalCmd) == activeHelpGlobalDisable { | 				if noActiveHelp && strings.HasPrefix(comp, activeHelpMarker) { | ||||||
| 					// Remove all activeHelp entries in this case | 					// Remove all activeHelp entries if it's disabled. | ||||||
| 					if strings.HasPrefix(comp, activeHelpMarker) { | 					continue | ||||||
| 						continue |  | ||||||
| 					} |  | ||||||
| 				} | 				} | ||||||
| 				if noDescriptions { | 				if noDescriptions { | ||||||
| 					// Remove any description that may be included following a tab character. | 					// Remove any description that may be included following a tab character. | ||||||
| 					comp = strings.Split(comp, "\t")[0] | 					comp = strings.SplitN(comp, "\t", 2)[0] | ||||||
| 				} | 				} | ||||||
| 
 | 
 | ||||||
| 				// Make sure we only write the first line to the output. | 				// Make sure we only write the first line to the output. | ||||||
| 				// This is needed if a description contains a linebreak. | 				// This is needed if a description contains a linebreak. | ||||||
| 				// Otherwise the shell scripts will interpret the other lines as new flags | 				// Otherwise the shell scripts will interpret the other lines as new flags | ||||||
| 				// and could therefore provide a wrong completion. | 				// and could therefore provide a wrong completion. | ||||||
| 				comp = strings.Split(comp, "\n")[0] | 				comp = strings.SplitN(comp, "\n", 2)[0] | ||||||
| 
 | 
 | ||||||
| 				// Finally trim the completion.  This is especially important to get rid | 				// Finally trim the completion.  This is especially important to get rid | ||||||
| 				// of a trailing tab when there are no description following it. | 				// of a trailing tab when there are no description following it. | ||||||
|  | @ -237,14 +244,14 @@ func (c *Command) initCompleteCmd(args []string) { | ||||||
| 				// although there is no description). | 				// although there is no description). | ||||||
| 				comp = strings.TrimSpace(comp) | 				comp = strings.TrimSpace(comp) | ||||||
| 
 | 
 | ||||||
| 				// Print each possible completion to stdout for the completion script to consume. | 				// Print each possible completion to the output for the completion script to consume. | ||||||
| 				fmt.Fprintln(finalCmd.OutOrStdout(), comp) | 				fmt.Fprintln(out, comp) | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
| 			// As the last printout, print the completion directive for the completion script to parse. | 			// As the last printout, print the completion directive for the completion script to parse. | ||||||
| 			// The directive integer must be that last character following a single colon (:). | 			// The directive integer must be that last character following a single colon (:). | ||||||
| 			// The completion script expects :<directive> | 			// The completion script expects :<directive> | ||||||
| 			fmt.Fprintf(finalCmd.OutOrStdout(), ":%d\n", directive) | 			fmt.Fprintf(out, ":%d\n", directive) | ||||||
| 
 | 
 | ||||||
| 			// Print some helpful info to stderr for the user to understand. | 			// Print some helpful info to stderr for the user to understand. | ||||||
| 			// Output from stderr must be ignored by the completion script. | 			// Output from stderr must be ignored by the completion script. | ||||||
|  | @ -291,7 +298,7 @@ func (c *Command) getCompletions(args []string) (*Command, []string, ShellCompDi | ||||||
| 	} | 	} | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		// Unable to find the real command. E.g., <program> someInvalidCmd <TAB> | 		// Unable to find the real command. E.g., <program> someInvalidCmd <TAB> | ||||||
| 		return c, []string{}, ShellCompDirectiveDefault, fmt.Errorf("Unable to find a command for arguments: %v", trimmedArgs) | 		return c, []string{}, ShellCompDirectiveDefault, fmt.Errorf("unable to find a command for arguments: %v", trimmedArgs) | ||||||
| 	} | 	} | ||||||
| 	finalCmd.ctx = c.ctx | 	finalCmd.ctx = c.ctx | ||||||
| 
 | 
 | ||||||
|  | @ -899,3 +906,34 @@ func CompError(msg string) { | ||||||
| func CompErrorln(msg string) { | func CompErrorln(msg string) { | ||||||
| 	CompError(fmt.Sprintf("%s\n", msg)) | 	CompError(fmt.Sprintf("%s\n", msg)) | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | // These values should not be changed: users will be using them explicitly. | ||||||
|  | const ( | ||||||
|  | 	configEnvVarGlobalPrefix       = "COBRA" | ||||||
|  | 	configEnvVarSuffixDescriptions = "COMPLETION_DESCRIPTIONS" | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | var configEnvVarPrefixSubstRegexp = regexp.MustCompile(`[^A-Z0-9_]`) | ||||||
|  | 
 | ||||||
|  | // configEnvVar returns the name of the program-specific configuration environment | ||||||
|  | // variable.  It has the format <PROGRAM>_<SUFFIX> where <PROGRAM> is the name of the | ||||||
|  | // root command in upper case, with all non-ASCII-alphanumeric characters replaced by `_`. | ||||||
|  | func configEnvVar(name, suffix string) string { | ||||||
|  | 	// This format should not be changed: users will be using it explicitly. | ||||||
|  | 	v := strings.ToUpper(fmt.Sprintf("%s_%s", name, suffix)) | ||||||
|  | 	v = configEnvVarPrefixSubstRegexp.ReplaceAllString(v, "_") | ||||||
|  | 	return v | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // getEnvConfig returns the value of the configuration environment variable | ||||||
|  | // <PROGRAM>_<SUFFIX> where <PROGRAM> is the name of the root command in upper | ||||||
|  | // case, with all non-ASCII-alphanumeric characters replaced by `_`. | ||||||
|  | // If the value is empty or not set, the value of the environment variable | ||||||
|  | // COBRA_<SUFFIX> is returned instead. | ||||||
|  | func getEnvConfig(cmd *Command, suffix string) string { | ||||||
|  | 	v := os.Getenv(configEnvVar(cmd.Root().Name(), suffix)) | ||||||
|  | 	if v == "" { | ||||||
|  | 		v = os.Getenv(configEnvVar(configEnvVarGlobalPrefix, suffix)) | ||||||
|  | 	} | ||||||
|  | 	return v | ||||||
|  | } | ||||||
|  |  | ||||||
							
								
								
									
										34
									
								
								vendor/github.com/spf13/cobra/flag_groups.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										34
									
								
								vendor/github.com/spf13/cobra/flag_groups.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -23,9 +23,9 @@ import ( | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
| 	requiredAsGroup   = "cobra_annotation_required_if_others_set" | 	requiredAsGroupAnnotation   = "cobra_annotation_required_if_others_set" | ||||||
| 	oneRequired       = "cobra_annotation_one_required" | 	oneRequiredAnnotation       = "cobra_annotation_one_required" | ||||||
| 	mutuallyExclusive = "cobra_annotation_mutually_exclusive" | 	mutuallyExclusiveAnnotation = "cobra_annotation_mutually_exclusive" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| // MarkFlagsRequiredTogether marks the given flags with annotations so that Cobra errors | // MarkFlagsRequiredTogether marks the given flags with annotations so that Cobra errors | ||||||
|  | @ -37,7 +37,7 @@ func (c *Command) MarkFlagsRequiredTogether(flagNames ...string) { | ||||||
| 		if f == nil { | 		if f == nil { | ||||||
| 			panic(fmt.Sprintf("Failed to find flag %q and mark it as being required in a flag group", v)) | 			panic(fmt.Sprintf("Failed to find flag %q and mark it as being required in a flag group", v)) | ||||||
| 		} | 		} | ||||||
| 		if err := c.Flags().SetAnnotation(v, requiredAsGroup, append(f.Annotations[requiredAsGroup], strings.Join(flagNames, " "))); err != nil { | 		if err := c.Flags().SetAnnotation(v, requiredAsGroupAnnotation, append(f.Annotations[requiredAsGroupAnnotation], strings.Join(flagNames, " "))); err != nil { | ||||||
| 			// Only errs if the flag isn't found. | 			// Only errs if the flag isn't found. | ||||||
| 			panic(err) | 			panic(err) | ||||||
| 		} | 		} | ||||||
|  | @ -53,7 +53,7 @@ func (c *Command) MarkFlagsOneRequired(flagNames ...string) { | ||||||
| 		if f == nil { | 		if f == nil { | ||||||
| 			panic(fmt.Sprintf("Failed to find flag %q and mark it as being in a one-required flag group", v)) | 			panic(fmt.Sprintf("Failed to find flag %q and mark it as being in a one-required flag group", v)) | ||||||
| 		} | 		} | ||||||
| 		if err := c.Flags().SetAnnotation(v, oneRequired, append(f.Annotations[oneRequired], strings.Join(flagNames, " "))); err != nil { | 		if err := c.Flags().SetAnnotation(v, oneRequiredAnnotation, append(f.Annotations[oneRequiredAnnotation], strings.Join(flagNames, " "))); err != nil { | ||||||
| 			// Only errs if the flag isn't found. | 			// Only errs if the flag isn't found. | ||||||
| 			panic(err) | 			panic(err) | ||||||
| 		} | 		} | ||||||
|  | @ -70,7 +70,7 @@ func (c *Command) MarkFlagsMutuallyExclusive(flagNames ...string) { | ||||||
| 			panic(fmt.Sprintf("Failed to find flag %q and mark it as being in a mutually exclusive flag group", v)) | 			panic(fmt.Sprintf("Failed to find flag %q and mark it as being in a mutually exclusive flag group", v)) | ||||||
| 		} | 		} | ||||||
| 		// Each time this is called is a single new entry; this allows it to be a member of multiple groups if needed. | 		// Each time this is called is a single new entry; this allows it to be a member of multiple groups if needed. | ||||||
| 		if err := c.Flags().SetAnnotation(v, mutuallyExclusive, append(f.Annotations[mutuallyExclusive], strings.Join(flagNames, " "))); err != nil { | 		if err := c.Flags().SetAnnotation(v, mutuallyExclusiveAnnotation, append(f.Annotations[mutuallyExclusiveAnnotation], strings.Join(flagNames, " "))); err != nil { | ||||||
| 			panic(err) | 			panic(err) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  | @ -91,9 +91,9 @@ func (c *Command) ValidateFlagGroups() error { | ||||||
| 	oneRequiredGroupStatus := map[string]map[string]bool{} | 	oneRequiredGroupStatus := map[string]map[string]bool{} | ||||||
| 	mutuallyExclusiveGroupStatus := map[string]map[string]bool{} | 	mutuallyExclusiveGroupStatus := map[string]map[string]bool{} | ||||||
| 	flags.VisitAll(func(pflag *flag.Flag) { | 	flags.VisitAll(func(pflag *flag.Flag) { | ||||||
| 		processFlagForGroupAnnotation(flags, pflag, requiredAsGroup, groupStatus) | 		processFlagForGroupAnnotation(flags, pflag, requiredAsGroupAnnotation, groupStatus) | ||||||
| 		processFlagForGroupAnnotation(flags, pflag, oneRequired, oneRequiredGroupStatus) | 		processFlagForGroupAnnotation(flags, pflag, oneRequiredAnnotation, oneRequiredGroupStatus) | ||||||
| 		processFlagForGroupAnnotation(flags, pflag, mutuallyExclusive, mutuallyExclusiveGroupStatus) | 		processFlagForGroupAnnotation(flags, pflag, mutuallyExclusiveAnnotation, mutuallyExclusiveGroupStatus) | ||||||
| 	}) | 	}) | ||||||
| 
 | 
 | ||||||
| 	if err := validateRequiredFlagGroups(groupStatus); err != nil { | 	if err := validateRequiredFlagGroups(groupStatus); err != nil { | ||||||
|  | @ -130,7 +130,7 @@ func processFlagForGroupAnnotation(flags *flag.FlagSet, pflag *flag.Flag, annota | ||||||
| 					continue | 					continue | ||||||
| 				} | 				} | ||||||
| 
 | 
 | ||||||
| 				groupStatus[group] = map[string]bool{} | 				groupStatus[group] = make(map[string]bool, len(flagnames)) | ||||||
| 				for _, name := range flagnames { | 				for _, name := range flagnames { | ||||||
| 					groupStatus[group][name] = false | 					groupStatus[group][name] = false | ||||||
| 				} | 				} | ||||||
|  | @ -232,9 +232,9 @@ func (c *Command) enforceFlagGroupsForCompletion() { | ||||||
| 	oneRequiredGroupStatus := map[string]map[string]bool{} | 	oneRequiredGroupStatus := map[string]map[string]bool{} | ||||||
| 	mutuallyExclusiveGroupStatus := map[string]map[string]bool{} | 	mutuallyExclusiveGroupStatus := map[string]map[string]bool{} | ||||||
| 	c.Flags().VisitAll(func(pflag *flag.Flag) { | 	c.Flags().VisitAll(func(pflag *flag.Flag) { | ||||||
| 		processFlagForGroupAnnotation(flags, pflag, requiredAsGroup, groupStatus) | 		processFlagForGroupAnnotation(flags, pflag, requiredAsGroupAnnotation, groupStatus) | ||||||
| 		processFlagForGroupAnnotation(flags, pflag, oneRequired, oneRequiredGroupStatus) | 		processFlagForGroupAnnotation(flags, pflag, oneRequiredAnnotation, oneRequiredGroupStatus) | ||||||
| 		processFlagForGroupAnnotation(flags, pflag, mutuallyExclusive, mutuallyExclusiveGroupStatus) | 		processFlagForGroupAnnotation(flags, pflag, mutuallyExclusiveAnnotation, mutuallyExclusiveGroupStatus) | ||||||
| 	}) | 	}) | ||||||
| 
 | 
 | ||||||
| 	// If a flag that is part of a group is present, we make all the other flags | 	// If a flag that is part of a group is present, we make all the other flags | ||||||
|  | @ -253,17 +253,17 @@ func (c *Command) enforceFlagGroupsForCompletion() { | ||||||
| 	// If none of the flags of a one-required group are present, we make all the flags | 	// If none of the flags of a one-required group are present, we make all the flags | ||||||
| 	// of that group required so that the shell completion suggests them automatically | 	// of that group required so that the shell completion suggests them automatically | ||||||
| 	for flagList, flagnameAndStatus := range oneRequiredGroupStatus { | 	for flagList, flagnameAndStatus := range oneRequiredGroupStatus { | ||||||
| 		set := 0 | 		isSet := false | ||||||
| 
 | 
 | ||||||
| 		for _, isSet := range flagnameAndStatus { | 		for _, isSet = range flagnameAndStatus { | ||||||
| 			if isSet { | 			if isSet { | ||||||
| 				set++ | 				break | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		// None of the flags of the group are set, mark all flags in the group | 		// None of the flags of the group are set, mark all flags in the group | ||||||
| 		// as required | 		// as required | ||||||
| 		if set == 0 { | 		if !isSet { | ||||||
| 			for _, fName := range strings.Split(flagList, " ") { | 			for _, fName := range strings.Split(flagList, " ") { | ||||||
| 				_ = c.MarkFlagRequired(fName) | 				_ = c.MarkFlagRequired(fName) | ||||||
| 			} | 			} | ||||||
|  |  | ||||||
							
								
								
									
										4
									
								
								vendor/github.com/spf13/cobra/powershell_completions.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								vendor/github.com/spf13/cobra/powershell_completions.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -28,8 +28,8 @@ import ( | ||||||
| func genPowerShellComp(buf io.StringWriter, name string, includeDesc bool) { | func genPowerShellComp(buf io.StringWriter, name string, includeDesc bool) { | ||||||
| 	// Variables should not contain a '-' or ':' character | 	// Variables should not contain a '-' or ':' character | ||||||
| 	nameForVar := name | 	nameForVar := name | ||||||
| 	nameForVar = strings.Replace(nameForVar, "-", "_", -1) | 	nameForVar = strings.ReplaceAll(nameForVar, "-", "_") | ||||||
| 	nameForVar = strings.Replace(nameForVar, ":", "_", -1) | 	nameForVar = strings.ReplaceAll(nameForVar, ":", "_") | ||||||
| 
 | 
 | ||||||
| 	compCmd := ShellCompRequestCmd | 	compCmd := ShellCompRequestCmd | ||||||
| 	if !includeDesc { | 	if !includeDesc { | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/modules.txt
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/modules.txt
									
										
									
									
										vendored
									
									
								
							|  | @ -610,7 +610,7 @@ github.com/spf13/afero/mem | ||||||
| # github.com/spf13/cast v1.6.0 | # github.com/spf13/cast v1.6.0 | ||||||
| ## explicit; go 1.19 | ## explicit; go 1.19 | ||||||
| github.com/spf13/cast | github.com/spf13/cast | ||||||
| # github.com/spf13/cobra v1.8.0 | # github.com/spf13/cobra v1.8.1 | ||||||
| ## explicit; go 1.15 | ## explicit; go 1.15 | ||||||
| github.com/spf13/cobra | github.com/spf13/cobra | ||||||
| # github.com/spf13/pflag v1.0.5 | # github.com/spf13/pflag v1.0.5 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue