@@ -421,7 +421,7 @@ func writeFlags(cmd *Command, w io.Writer) error {
421
421
localNonPersistentFlags := cmd .LocalNonPersistentFlags ()
422
422
var visitErr error
423
423
cmd .NonInheritedFlags ().VisitAll (func (flag * pflag.Flag ) {
424
- if flag . Hidden {
424
+ if nonCompletableFlag ( flag ) {
425
425
return
426
426
}
427
427
if err := writeFlag (flag , w ); err != nil {
@@ -445,7 +445,7 @@ func writeFlags(cmd *Command, w io.Writer) error {
445
445
return visitErr
446
446
}
447
447
cmd .InheritedFlags ().VisitAll (func (flag * pflag.Flag ) {
448
- if flag . Hidden {
448
+ if nonCompletableFlag ( flag ) {
449
449
return
450
450
}
451
451
if err := writeFlag (flag , w ); err != nil {
@@ -474,7 +474,7 @@ func writeRequiredFlag(cmd *Command, w io.Writer) error {
474
474
flags := cmd .NonInheritedFlags ()
475
475
var visitErr error
476
476
flags .VisitAll (func (flag * pflag.Flag ) {
477
- if flag . Hidden {
477
+ if nonCompletableFlag ( flag ) {
478
478
return
479
479
}
480
480
for key := range flag .Annotations {
@@ -583,6 +583,10 @@ func (cmd *Command) GenBashCompletion(w io.Writer) error {
583
583
return postscript (w , cmd .Name ())
584
584
}
585
585
586
+ func nonCompletableFlag (flag * pflag.Flag ) bool {
587
+ return flag .Hidden || len (flag .Deprecated ) > 0
588
+ }
589
+
586
590
func (cmd * Command ) GenBashCompletionFile (filename string ) error {
587
591
outFile , err := os .Create (filename )
588
592
if err != nil {
0 commit comments