Skip to content

v1.15.0

Compare
Choose a tag to compare
@meatballhat meatballhat released this 30 Apr 17:58
· 2617 commits to main since this release

Added

  • A CHANGELOG.md file!
  • Support for placeholders in flag usage strings
  • App.Metadata map for arbitrary data/state management
  • Set and GlobalSet 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 and Command.Action now prefer a return signature of
    func(*cli.Context) error, as defined by cli.ActionFunc. If a non-nil
    error is returned, there may be two outcomes:
    • If the error fulfills cli.ExitCoder, then os.Exit will be called
      automatically
    • Else the error is bubbled up and returned from App.Run
  • 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 a func type will produce a non-zero exit
    from App.Run
  • Specifying an Action func that has an invalid (input) signature will
    produce a non-zero exit from App.Run

Deprecated


  • cli.App.RunAndExitOnError, which should now be done by returning an error
    that fulfills cli.ExitCoder to cli.App.Run.
  • the legacy signature for
    cli.App.Action of func(*cli.Context), which should now have a return
    signature of func(*cli.Context) error, as defined by cli.ActionFunc.

Fixed

  • Added missing *cli.Context.GlobalFloat64 method