Releases: urfave/cli
Releases · urfave/cli
v1.18.0
Added
./runtests
test runner with coverage tracking by default- testing on OS X
- testing on Windows
UintFlag
,Uint64Flag
, andInt64Flag
types and supporting code
Changed
- Use spaces for alignment in help/usage output instead of tabs, making the
output alignment consistent regardless of tab width
Fixed
- Printing of command aliases in help text
- Printing of visible flags for both struct and struct pointer flags
- Display the
help
subcommand when usingCommandCategories
- No longer swallows
panic
s that occur within theAction
s themselves when
detecting the signature of theAction
field
v1.17.0
Added
- Pluggable flag-level help text rendering via
cli.DefaultFlagStringFunc
context.GlobalBoolT
was added as an analogue tocontext.GlobalBool
- Support for hiding commands by setting
Hidden: true
-- this will hide the
commands in help output
Changed
Float64Flag
,IntFlag
, andDurationFlag
default values are no longer
quoted in help text output.- All flag types now include
(default: {value})
strings following usage when a
default value can be (reasonably) detected. IntSliceFlag
andStringSliceFlag
usage strings are now more consistent
with non-slice flag types- Apps now exit with a code of 3 if an unknown subcommand is specified
(previously they printed "No help topic for...", but still exited 0. This
makes it easier to script around apps built usingcli
since they can trust
that a 0 exit code indicated a successful execution. - cleanups based on Go Report Card
feedback
v1.16.0
Added
Hidden
field on all flag struct types to omit from generated help text
Changed
BashCompletionFlag
(--enable-bash-completion
) is now omitted from
generated help text via theHidden
field
Fixed
- handling of error values in
HandleAction
andHandleExitCoder
v1.15.0
Added
- A
CHANGELOG.md
file! - Support for placeholders in flag usage strings
App.Metadata
map for arbitrary data/state managementSet
andGlobalSet
methods on*cli.Context
for altering values after
parsing.- Support for nested lookup of dot-delimited keys in structures loaded from
YAML.
Changed
- The
App.Action
andCommand.Action
now prefer a return signature of
func(*cli.Context) error
, as defined bycli.ActionFunc
. If a non-nil
error
is returned, there may be two outcomes:- If the error fulfills
cli.ExitCoder
, thenos.Exit
will be called
automatically - Else the error is bubbled up and returned from
App.Run
- If the error fulfills
- Specifying an
Action
with the legacy return signature of
func(*cli.Context)
will produce a deprecation message to stderr - Specifying an
Action
that is not afunc
type will produce a non-zero exit
fromApp.Run
- Specifying an
Action
func that has an invalid (input) signature will
produce a non-zero exit fromApp.Run
Deprecated
cli.App.RunAndExitOnError
, which should now be done by returning an error
that fulfillscli.ExitCoder
tocli.App.Run
.- the legacy signature for
cli.App.Action
offunc(*cli.Context)
, which should now have a return
signature offunc(*cli.Context) error
, as defined bycli.ActionFunc
.
Fixed
- Added missing
*cli.Context.GlobalFloat64
method