d77176912b
* Migrate to go modules * make vendor * Update mvdan.cc/xurls * make vendor * Update code.gitea.io/git * make fmt-check * Update github.com/go-sql-driver/mysql * make vendor
11 KiB
11 KiB
Change Log
ATTN: This project uses semantic versioning.
Unreleased
Added
- Flag type code generation via
go generate
- Write to stderr and exit 1 if action returns non-nil error
- Added support for TOML to the
altsrc
loader
Changed
- Raise minimum tested/supported Go version to 1.2+
1.18.0 - 2016-06-27
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
1.17.0 - 2016-05-09
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 using
cli
since they can trust that a 0 exit code indicated a successful execution. - cleanups based on Go Report Card feedback
1.16.0 - 2016-05-02
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
1.15.0 - 2016-04-30
Added
- This 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 offunc(*cli.Context) error
, as defined bycli.ActionFunc
. If a non-nilerror
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 offunc(*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
1.14.0 - 2016-04-03 (backfilled 2016-04-25)
Added
- Codebeat badge
- Support for categorization via
CategorizedHelp
andCategories
on app.
Changed
- Use
filepath.Base
instead ofpath.Base
inName
andHelpName
.
Fixed
- Ensure version is not shown in help text when
HideVersion
set.
1.13.0 - 2016-03-06 (backfilled 2016-04-25)
Added
- YAML file input support.
NArg
method on context.
1.12.0 - 2016-02-17 (backfilled 2016-04-25)
Added
- Custom usage error handling.
- Custom text support in
USAGE
section of help output. - Improved help messages for empty strings.
- AppVeyor CI configuration.
Changed
- Removed
panic
from default help printer func. - De-duping and optimizations.
Fixed
- Correctly handle
Before
/After
at command level when no subcommands. - Case of literal
-
argument causing flag reordering. - Environment variable hints on Windows.
- Docs updates.
1.11.1 - 2015-12-21 (backfilled 2016-04-25)
Changed
- Use
path.Base
inName
andHelpName
- Export
GetName
on flag types.
Fixed
- Flag parsing when skipping is enabled.
- Test output cleanup.
- Move completion check to account for empty input case.
1.11.0 - 2015-11-15 (backfilled 2016-04-25)
Added
- Destination scan support for flags.
- Testing against
tip
in Travis CI config.
Changed
- Go version in Travis CI config.
Fixed
- Removed redundant tests.
- Use correct example naming in tests.
1.10.2 - 2015-10-29 (backfilled 2016-04-25)
Fixed
- Remove unused var in bash completion.
1.10.1 - 2015-10-21 (backfilled 2016-04-25)
Added
- Coverage and reference logos in README.
Fixed
- Use specified values in help and version parsing.
- Only display app version and help message once.
1.10.0 - 2015-10-06 (backfilled 2016-04-25)
Added
- More tests for existing functionality.
ArgsUsage
at app and command level for help text flexibility.
Fixed
- Honor
HideHelp
andHideVersion
inApp.Run
. - Remove juvenile word from README.
1.9.0 - 2015-09-08 (backfilled 2016-04-25)
Added
FullName
on command with accompanying help output update.- Set default
$PROG
in bash completion.
Changed
- Docs formatting.
Fixed
- Removed self-referential imports in tests.
1.8.0 - 2015-06-30 (backfilled 2016-04-25)
Added
- Support for
Copyright
at app level. Parent
func at context level to walk up context lineage.
Fixed
- Global flag processing at top level.
1.7.1 - 2015-06-11 (backfilled 2016-04-25)
Added
- Aggregate errors from
Before
/After
funcs. - Doc comments on flag structs.
- Include non-global flags when checking version and help.
- Travis CI config updates.
Fixed
- Ensure slice type flags have non-nil values.
- Collect global flags from the full command hierarchy.
- Docs prose.
1.7.0 - 2015-05-03 (backfilled 2016-04-25)
Changed
HelpPrinter
signature includes output writer.
Fixed
- Specify go 1.1+ in docs.
- Set
Writer
when running command as app.
1.6.0 - 2015-03-23 (backfilled 2016-04-25)
Added
- Multiple author support.
NumFlags
at context level.Aliases
at command level.
Deprecated
ShortName
at command level.
Fixed
- Subcommand help output.
- Backward compatible support for deprecated
Author
andEmail
fields. - Docs regarding
Names
/Aliases
.
1.5.0 - 2015-02-20 (backfilled 2016-04-25)
Added
After
hook func support at app and command level.
Fixed
- Use parsed context when running command as subcommand.
- Docs prose.
1.4.1 - 2015-01-09 (backfilled 2016-04-25)
Added
- Support for hiding
-h / --help
flags, but nothelp
subcommand. - Stop flag parsing after
--
.
Fixed
- Help text for generic flags to specify single value.
- Use double quotes in output for defaults.
- Use
ParseInt
instead ofParseUint
for int environment var values. - Use
0
as base when parsing int environment var values.
1.4.0 - 2014-12-12 (backfilled 2016-04-25)
Added
- Support for environment variable lookup "cascade".
- Support for
Stdout
on app for output redirection.
Fixed
- Print command help instead of app help in
ShowCommandHelp
.
1.3.1 - 2014-11-13 (backfilled 2016-04-25)
Added
- Docs and example code updates.
Changed
- Default
-v / --version
flag made optional.
1.3.0 - 2014-08-10 (backfilled 2016-04-25)
Added
FlagNames
at context level.- Exposed
VersionPrinter
var for more control over version output. - Zsh completion hook.
AUTHOR
section in default app help template.- Contribution guidelines.
DurationFlag
type.
1.2.0 - 2014-08-02
Added
- Support for environment variable defaults on flags plus tests.
1.1.0 - 2014-07-15
Added
- Bash completion.
- Optional hiding of built-in help command.
- Optional skipping of flag parsing at command level.
Author
,Email
, andCompiled
metadata on app.Before
hook func support at app and command level.CommandNotFound
func support at app level.- Command reference available on context.
GenericFlag
type.Float64Flag
type.BoolTFlag
type.IsSet
flag helper on context.- More flag lookup funcs at context level.
- More tests & docs.
Changed
- Help template updates to account for presence/absence of flags.
- Separated subcommand help template.
- Exposed
HelpPrinter
var for more control over help output.
1.0.0 - 2013-11-01
Added
help
flag in default app flag set and each command flag set.- Custom handling of argument parsing errors.
- Command lookup by name at app level.
StringSliceFlag
type and supportingStringSlice
type.IntSliceFlag
type and supportingIntSlice
type.- Slice type flag lookups by name at context level.
- Export of app and command help functions.
- More tests & docs.
0.1.0 - 2013-07-22
Added
- Initial implementation.