diff --git a/Gopkg.lock b/Gopkg.lock index 6f15ee60d2a87..f279cad61b4b0 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -375,12 +375,11 @@ revision = "c4048f792f70d207e6d8b9c1bf52319247f202b8" [[projects]] - branch = "master" - digest = "1:6104a01c77e5dbf8fa0385ad2e9a6b5338710fd640754b6afe18241f07ce3044" + digest = "1:f60d0b16dff12cd86152c8004638fca13231f51a45ccbafcb9f487a64a73db05" name = "github.com/gravitational/kingpin" packages = ["."] pruneopts = "NUT" - revision = "52bc17adf63c0807b5e5b5d91350703630f621c7" + revision = "742f2714c145075a68df26ccc25bc05545310f3a" [[projects]] digest = "1:637144c8995935a3a02d03ade2d1374abeac2a47fdafb798a05642d3e19ff86c" @@ -1099,6 +1098,7 @@ "github.com/coreos/etcd/clientv3", "github.com/coreos/etcd/etcdserver/api/v3rpc/rpctypes", "github.com/coreos/etcd/mvcc/mvccpb", + "github.com/coreos/go-oidc/http", "github.com/coreos/go-oidc/jose", "github.com/coreos/go-oidc/oauth2", "github.com/coreos/go-oidc/oidc", diff --git a/Gopkg.toml b/Gopkg.toml index baa2e1308840a..a7ab30d6165f9 100644 --- a/Gopkg.toml +++ b/Gopkg.toml @@ -94,7 +94,7 @@ ignored = ["github.com/Sirupsen/logrus"] [[constraint]] name = "github.com/gravitational/kingpin" - branch = "master" + revision = "742f2714c145075a68df26ccc25bc05545310f3a" [[constraint]] name = "github.com/gravitational/roundtrip" diff --git a/vendor/github.com/gravitational/kingpin/app.go b/vendor/github.com/gravitational/kingpin/app.go index 2e2c5a051bfff..6a45e361be685 100644 --- a/vendor/github.com/gravitational/kingpin/app.go +++ b/vendor/github.com/gravitational/kingpin/app.go @@ -305,6 +305,9 @@ func checkDuplicateFlags(current *CmdClause, flagGroups []*flagGroup) error { // Check for duplicates. for _, flags := range flagGroups { for _, flag := range current.flagOrder { + if flag.allowDuplicate { + continue + } if flag.shorthand != 0 { if _, ok := flags.short[string(flag.shorthand)]; ok { return fmt.Errorf("duplicate short flag -%c", flag.shorthand) diff --git a/vendor/github.com/gravitational/kingpin/flags.go b/vendor/github.com/gravitational/kingpin/flags.go index e936e6c9f2f49..f7cb7073dd399 100644 --- a/vendor/github.com/gravitational/kingpin/flags.go +++ b/vendor/github.com/gravitational/kingpin/flags.go @@ -64,6 +64,9 @@ func (f *flagGroup) checkDuplicates() error { seenShort := map[byte]bool{} seenLong := map[string]bool{} for _, flag := range f.flagOrder { + if flag.allowDuplicate { + continue + } if flag.shorthand != 0 { if _, ok := seenShort[flag.shorthand]; ok { return fmt.Errorf("duplicate short flag -%c", flag.shorthand) @@ -167,6 +170,9 @@ type FlagClause struct { defaultValues []string placeholder string hidden bool + + // allowDuplicate allows this flag to be repeated. + allowDuplicate bool } func newFlag(name, help string) *FlagClause { @@ -227,6 +233,12 @@ func (f *FlagClause) init() error { return nil } +// AllowDuplicate allows this flag to be repeated. +func (f *FlagClause) AllowDuplicate() *FlagClause { + f.allowDuplicate = true + return f +} + // Dispatch to the given function after the flag is parsed and validated. func (f *FlagClause) Action(action Action) *FlagClause { f.addAction(action)