mirror of
https://github.com/Luzifer/expose.git
synced 2024-12-22 19:01:21 +00:00
Update dependencies
Signed-off-by: Knut Ahlers <knut@ahlers.me>
This commit is contained in:
parent
0b9ff9c731
commit
94777fdaa0
5 changed files with 319 additions and 7 deletions
8
Gopkg.lock
generated
8
Gopkg.lock
generated
|
@ -46,12 +46,12 @@
|
||||||
version = "v0.0.3"
|
version = "v0.0.3"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:e3707aeaccd2adc89eba6c062fec72116fe1fc1ba71097da85b4d8ae1668a675"
|
digest = "1:9d8420bbf131d1618bde6530af37c3799340d3762cc47210c1d9532a4c3a2779"
|
||||||
name = "github.com/spf13/pflag"
|
name = "github.com/spf13/pflag"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = "NUT"
|
pruneopts = "NUT"
|
||||||
revision = "9a97c102cda95a86cec2345a6f09f55a939babf5"
|
revision = "298182f68c66c05229eb03ac171abe6e309ee79a"
|
||||||
version = "v1.0.2"
|
version = "v1.0.3"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
|
@ -63,7 +63,7 @@
|
||||||
"webdav/internal/xml",
|
"webdav/internal/xml",
|
||||||
]
|
]
|
||||||
pruneopts = "NUT"
|
pruneopts = "NUT"
|
||||||
revision = "26e67e76b6c3f6ce91f7c52def5af501b4e0f3a2"
|
revision = "49bb7cea24b1df9410e1712aa6433dae904ff66a"
|
||||||
|
|
||||||
[solve-meta]
|
[solve-meta]
|
||||||
analyzer-name = "dep"
|
analyzer-name = "dep"
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
[[constraint]]
|
[[constraint]]
|
||||||
name = "github.com/Luzifer/go_helpers"
|
name = "github.com/Luzifer/go_helpers"
|
||||||
version = "2.8.0"
|
version = "^2.8.0"
|
||||||
|
|
||||||
[[constraint]]
|
[[constraint]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
|
|
7
vendor/github.com/spf13/pflag/flag.go
generated
vendored
7
vendor/github.com/spf13/pflag/flag.go
generated
vendored
|
@ -925,13 +925,16 @@ func stripUnknownFlagValue(args []string) []string {
|
||||||
}
|
}
|
||||||
|
|
||||||
first := args[0]
|
first := args[0]
|
||||||
if first[0] == '-' {
|
if len(first) > 0 && first[0] == '-' {
|
||||||
//--unknown --next-flag ...
|
//--unknown --next-flag ...
|
||||||
return args
|
return args
|
||||||
}
|
}
|
||||||
|
|
||||||
//--unknown arg ... (args will be arg ...)
|
//--unknown arg ... (args will be arg ...)
|
||||||
return args[1:]
|
if len(args) > 1 {
|
||||||
|
return args[1:]
|
||||||
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *FlagSet) parseLongArg(s string, args []string, fn parseFunc) (a []string, err error) {
|
func (f *FlagSet) parseLongArg(s string, args []string, fn parseFunc) (a []string, err error) {
|
||||||
|
|
149
vendor/github.com/spf13/pflag/string_to_int.go
generated
vendored
Normal file
149
vendor/github.com/spf13/pflag/string_to_int.go
generated
vendored
Normal file
|
@ -0,0 +1,149 @@
|
||||||
|
package pflag
|
||||||
|
|
||||||
|
import (
|
||||||
|
"bytes"
|
||||||
|
"fmt"
|
||||||
|
"strconv"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
// -- stringToInt Value
|
||||||
|
type stringToIntValue struct {
|
||||||
|
value *map[string]int
|
||||||
|
changed bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func newStringToIntValue(val map[string]int, p *map[string]int) *stringToIntValue {
|
||||||
|
ssv := new(stringToIntValue)
|
||||||
|
ssv.value = p
|
||||||
|
*ssv.value = val
|
||||||
|
return ssv
|
||||||
|
}
|
||||||
|
|
||||||
|
// Format: a=1,b=2
|
||||||
|
func (s *stringToIntValue) Set(val string) error {
|
||||||
|
ss := strings.Split(val, ",")
|
||||||
|
out := make(map[string]int, len(ss))
|
||||||
|
for _, pair := range ss {
|
||||||
|
kv := strings.SplitN(pair, "=", 2)
|
||||||
|
if len(kv) != 2 {
|
||||||
|
return fmt.Errorf("%s must be formatted as key=value", pair)
|
||||||
|
}
|
||||||
|
var err error
|
||||||
|
out[kv[0]], err = strconv.Atoi(kv[1])
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if !s.changed {
|
||||||
|
*s.value = out
|
||||||
|
} else {
|
||||||
|
for k, v := range out {
|
||||||
|
(*s.value)[k] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
s.changed = true
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *stringToIntValue) Type() string {
|
||||||
|
return "stringToInt"
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *stringToIntValue) String() string {
|
||||||
|
var buf bytes.Buffer
|
||||||
|
i := 0
|
||||||
|
for k, v := range *s.value {
|
||||||
|
if i > 0 {
|
||||||
|
buf.WriteRune(',')
|
||||||
|
}
|
||||||
|
buf.WriteString(k)
|
||||||
|
buf.WriteRune('=')
|
||||||
|
buf.WriteString(strconv.Itoa(v))
|
||||||
|
i++
|
||||||
|
}
|
||||||
|
return "[" + buf.String() + "]"
|
||||||
|
}
|
||||||
|
|
||||||
|
func stringToIntConv(val string) (interface{}, error) {
|
||||||
|
val = strings.Trim(val, "[]")
|
||||||
|
// An empty string would cause an empty map
|
||||||
|
if len(val) == 0 {
|
||||||
|
return map[string]int{}, nil
|
||||||
|
}
|
||||||
|
ss := strings.Split(val, ",")
|
||||||
|
out := make(map[string]int, len(ss))
|
||||||
|
for _, pair := range ss {
|
||||||
|
kv := strings.SplitN(pair, "=", 2)
|
||||||
|
if len(kv) != 2 {
|
||||||
|
return nil, fmt.Errorf("%s must be formatted as key=value", pair)
|
||||||
|
}
|
||||||
|
var err error
|
||||||
|
out[kv[0]], err = strconv.Atoi(kv[1])
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return out, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetStringToInt return the map[string]int value of a flag with the given name
|
||||||
|
func (f *FlagSet) GetStringToInt(name string) (map[string]int, error) {
|
||||||
|
val, err := f.getFlagType(name, "stringToInt", stringToIntConv)
|
||||||
|
if err != nil {
|
||||||
|
return map[string]int{}, err
|
||||||
|
}
|
||||||
|
return val.(map[string]int), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToIntVar defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The argument p points to a map[string]int variable in which to store the values of the multiple flags.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func (f *FlagSet) StringToIntVar(p *map[string]int, name string, value map[string]int, usage string) {
|
||||||
|
f.VarP(newStringToIntValue(value, p), name, "", usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToIntVarP is like StringToIntVar, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func (f *FlagSet) StringToIntVarP(p *map[string]int, name, shorthand string, value map[string]int, usage string) {
|
||||||
|
f.VarP(newStringToIntValue(value, p), name, shorthand, usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToIntVar defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The argument p points to a map[string]int variable in which to store the value of the flag.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func StringToIntVar(p *map[string]int, name string, value map[string]int, usage string) {
|
||||||
|
CommandLine.VarP(newStringToIntValue(value, p), name, "", usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToIntVarP is like StringToIntVar, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func StringToIntVarP(p *map[string]int, name, shorthand string, value map[string]int, usage string) {
|
||||||
|
CommandLine.VarP(newStringToIntValue(value, p), name, shorthand, usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToInt defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The return value is the address of a map[string]int variable that stores the value of the flag.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func (f *FlagSet) StringToInt(name string, value map[string]int, usage string) *map[string]int {
|
||||||
|
p := map[string]int{}
|
||||||
|
f.StringToIntVarP(&p, name, "", value, usage)
|
||||||
|
return &p
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToIntP is like StringToInt, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func (f *FlagSet) StringToIntP(name, shorthand string, value map[string]int, usage string) *map[string]int {
|
||||||
|
p := map[string]int{}
|
||||||
|
f.StringToIntVarP(&p, name, shorthand, value, usage)
|
||||||
|
return &p
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToInt defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The return value is the address of a map[string]int variable that stores the value of the flag.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func StringToInt(name string, value map[string]int, usage string) *map[string]int {
|
||||||
|
return CommandLine.StringToIntP(name, "", value, usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToIntP is like StringToInt, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func StringToIntP(name, shorthand string, value map[string]int, usage string) *map[string]int {
|
||||||
|
return CommandLine.StringToIntP(name, shorthand, value, usage)
|
||||||
|
}
|
160
vendor/github.com/spf13/pflag/string_to_string.go
generated
vendored
Normal file
160
vendor/github.com/spf13/pflag/string_to_string.go
generated
vendored
Normal file
|
@ -0,0 +1,160 @@
|
||||||
|
package pflag
|
||||||
|
|
||||||
|
import (
|
||||||
|
"bytes"
|
||||||
|
"encoding/csv"
|
||||||
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
// -- stringToString Value
|
||||||
|
type stringToStringValue struct {
|
||||||
|
value *map[string]string
|
||||||
|
changed bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func newStringToStringValue(val map[string]string, p *map[string]string) *stringToStringValue {
|
||||||
|
ssv := new(stringToStringValue)
|
||||||
|
ssv.value = p
|
||||||
|
*ssv.value = val
|
||||||
|
return ssv
|
||||||
|
}
|
||||||
|
|
||||||
|
// Format: a=1,b=2
|
||||||
|
func (s *stringToStringValue) Set(val string) error {
|
||||||
|
var ss []string
|
||||||
|
n := strings.Count(val, "=")
|
||||||
|
switch n {
|
||||||
|
case 0:
|
||||||
|
return fmt.Errorf("%s must be formatted as key=value", val)
|
||||||
|
case 1:
|
||||||
|
ss = append(ss, strings.Trim(val, `"`))
|
||||||
|
default:
|
||||||
|
r := csv.NewReader(strings.NewReader(val))
|
||||||
|
var err error
|
||||||
|
ss, err = r.Read()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
out := make(map[string]string, len(ss))
|
||||||
|
for _, pair := range ss {
|
||||||
|
kv := strings.SplitN(pair, "=", 2)
|
||||||
|
if len(kv) != 2 {
|
||||||
|
return fmt.Errorf("%s must be formatted as key=value", pair)
|
||||||
|
}
|
||||||
|
out[kv[0]] = kv[1]
|
||||||
|
}
|
||||||
|
if !s.changed {
|
||||||
|
*s.value = out
|
||||||
|
} else {
|
||||||
|
for k, v := range out {
|
||||||
|
(*s.value)[k] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
s.changed = true
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *stringToStringValue) Type() string {
|
||||||
|
return "stringToString"
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *stringToStringValue) String() string {
|
||||||
|
records := make([]string, 0, len(*s.value)>>1)
|
||||||
|
for k, v := range *s.value {
|
||||||
|
records = append(records, k+"="+v)
|
||||||
|
}
|
||||||
|
|
||||||
|
var buf bytes.Buffer
|
||||||
|
w := csv.NewWriter(&buf)
|
||||||
|
if err := w.Write(records); err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
w.Flush()
|
||||||
|
return "[" + strings.TrimSpace(buf.String()) + "]"
|
||||||
|
}
|
||||||
|
|
||||||
|
func stringToStringConv(val string) (interface{}, error) {
|
||||||
|
val = strings.Trim(val, "[]")
|
||||||
|
// An empty string would cause an empty map
|
||||||
|
if len(val) == 0 {
|
||||||
|
return map[string]string{}, nil
|
||||||
|
}
|
||||||
|
r := csv.NewReader(strings.NewReader(val))
|
||||||
|
ss, err := r.Read()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
out := make(map[string]string, len(ss))
|
||||||
|
for _, pair := range ss {
|
||||||
|
kv := strings.SplitN(pair, "=", 2)
|
||||||
|
if len(kv) != 2 {
|
||||||
|
return nil, fmt.Errorf("%s must be formatted as key=value", pair)
|
||||||
|
}
|
||||||
|
out[kv[0]] = kv[1]
|
||||||
|
}
|
||||||
|
return out, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetStringToString return the map[string]string value of a flag with the given name
|
||||||
|
func (f *FlagSet) GetStringToString(name string) (map[string]string, error) {
|
||||||
|
val, err := f.getFlagType(name, "stringToString", stringToStringConv)
|
||||||
|
if err != nil {
|
||||||
|
return map[string]string{}, err
|
||||||
|
}
|
||||||
|
return val.(map[string]string), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToStringVar defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The argument p points to a map[string]string variable in which to store the values of the multiple flags.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func (f *FlagSet) StringToStringVar(p *map[string]string, name string, value map[string]string, usage string) {
|
||||||
|
f.VarP(newStringToStringValue(value, p), name, "", usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToStringVarP is like StringToStringVar, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func (f *FlagSet) StringToStringVarP(p *map[string]string, name, shorthand string, value map[string]string, usage string) {
|
||||||
|
f.VarP(newStringToStringValue(value, p), name, shorthand, usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToStringVar defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The argument p points to a map[string]string variable in which to store the value of the flag.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func StringToStringVar(p *map[string]string, name string, value map[string]string, usage string) {
|
||||||
|
CommandLine.VarP(newStringToStringValue(value, p), name, "", usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToStringVarP is like StringToStringVar, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func StringToStringVarP(p *map[string]string, name, shorthand string, value map[string]string, usage string) {
|
||||||
|
CommandLine.VarP(newStringToStringValue(value, p), name, shorthand, usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToString defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The return value is the address of a map[string]string variable that stores the value of the flag.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func (f *FlagSet) StringToString(name string, value map[string]string, usage string) *map[string]string {
|
||||||
|
p := map[string]string{}
|
||||||
|
f.StringToStringVarP(&p, name, "", value, usage)
|
||||||
|
return &p
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToStringP is like StringToString, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func (f *FlagSet) StringToStringP(name, shorthand string, value map[string]string, usage string) *map[string]string {
|
||||||
|
p := map[string]string{}
|
||||||
|
f.StringToStringVarP(&p, name, shorthand, value, usage)
|
||||||
|
return &p
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToString defines a string flag with specified name, default value, and usage string.
|
||||||
|
// The return value is the address of a map[string]string variable that stores the value of the flag.
|
||||||
|
// The value of each argument will not try to be separated by comma
|
||||||
|
func StringToString(name string, value map[string]string, usage string) *map[string]string {
|
||||||
|
return CommandLine.StringToStringP(name, "", value, usage)
|
||||||
|
}
|
||||||
|
|
||||||
|
// StringToStringP is like StringToString, but accepts a shorthand letter that can be used after a single dash.
|
||||||
|
func StringToStringP(name, shorthand string, value map[string]string, usage string) *map[string]string {
|
||||||
|
return CommandLine.StringToStringP(name, shorthand, value, usage)
|
||||||
|
}
|
Loading…
Reference in a new issue