pflag
complete
Our great sponsors
pflag | complete | |
---|---|---|
13 | 1 | |
2,298 | 912 | |
- | - | |
0.0 | 0.0 | |
about 1 month ago | 9 months ago | |
Go | Go | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pflag
-
issue with pflag flagset
My understanding is that you can use pflag as a drop in replacement of the standard lib's flag (import flag "github.com/spf13/pflag"). So it can be used as a standalone lib I suppose.
-
Which packages do you recommend for building cli tools?
I realy enjoyed the patched version from spf13 with "--" support https://github.com/spf13/pflag
-
Define custom command-line flag types in Go 1.19
Nice, but Cobra (with pflag underneath) is so, so better.
-
-h --help -help help --? -? ????
Not by default on stdlib. There are libraries available though - https://github.com/spf13/pflag
-
Coral, a friendly Cobra fork with nearly all its features, but only 4 dependencies
Flag functionality is provided by the pflag library, a fork of the flag standard library which maintains the same interface while adding POSIX compliance.
-
xflags: An approach to command line flags with support for subcommands, positional args, environment variables, etc.
How does it compare to https://github.com/spf13/pflag ?
-
The flag package: strange but good?
spf13 has a drop in pflag that does the - short and -- long flags.
-
What are your favorite packages to use?
oklog/ulid to generate IDs. coreos/go-oidc for validating JWTs I get from auth. google/go-cmp for comparing structs in tests (unless the project is already using Testify). spf13/pflag because life's too short for Go's flag handling. getkin/kin-openapi for validating reqests/responses against my OpenAPI spec (in tests).
-
akamensky/argparse: Argparse for Golang. Just because "flag" sucks!
What are the benefits of this package over the widely used spf13/pflag?
-
Go’s highly modular nature makes it particularly good for situations where requirements are changing or evolving.
3
complete
-
New major release of bit – a modern git CLI (1.0.1) with vastly improved completions & suggestions + simplified UX
Thanks for your input! If you have time / would like to contribute I suggest submitting a PR to https://github.com/posener/complete. If not I can perhaps submit one in a week or so
What are some alternatives?
flag - Flag is a simple but powerful command line option parsing library for Go support infinite level subcommand
readline - Readline is a pure go(golang) implementation for GNU-Readline kind library
cobra - A Commander for modern Go CLI interactions
kingpin - CONTRIBUTIONS ONLY: A Go (golang) command line and flag parser
frep - Generate file using template from environment, arguments, json/yaml/toml config files
go-flags - go command line option parser
1build - Frictionless way of managing project-specific commands
argparse - Argparse for golang. Just because `flag` sucks
flaggy - Idiomatic Go input parsing with subcommands, positional values, and flags at any position. No required project or package layout and no external dependencies.
docopt.go - A command-line arguments parser that will make you smile.