All Versions
Latest Version
Avg Release Cycle
104 days
Latest Release
1788 days ago

Changelog History

  • v1.3.0 Changes

    July 22, 2019

    Thanks to @TheColonel2688 for #54 and #55

  • v1.2.3 Changes

    December 23, 2017

    A fix for the bug reported in #51

    Commands like myapp.exe mycommand --myparam "my\ value" were having the escape character stripped, although this is not in line with behavior in other CLIs.

    Commands like myapp.exe mycommand --myparam my\ value will continue to have the escape stripped by shells, as this is correct and protects the following space

  • v1.2.2 Changes

    May 30, 2017

    Should fix an issue where Mono 5 could not run EntryPoint due to an AmbiguousMatchException on the HelpAttribute

  • v1.2.1 Changes

    May 27, 2017

    ๐Ÿš€ Minor changes with this release, a number of small improvements to exception messages, which are displayed to users and developers.

  • v1.2.0 Changes

    March 25, 2017
    • โž• Adds EnvironmentVariable attribute to CliArguments
    • ๐Ÿ‘Œ Improves error throwing when the user provides a value un-convertable to the destination type.
    • โœ… General improvements to test coverage
  • v1.1.0 Changes

    February 12, 2017

    There is now a built in approach to handling derivatives of UserFacingException, which until now always bubbled up into your application.

    Much like the OnHelpInvoked handler there is now a virtual method and a boolean which help you handle user error.

    Full documentation on this new feature is available here

  • v0.9.8 Changes

    January 08, 2017

    โšก๏ธ Two main changes with this update:

    • ๐Ÿ”„ OnHelpInvoked now provides a default implementation, as feedbackwas that it's a bit confusing that --help does nothing without implementing the virtual method. Now we implement the virtual method to change the implementation
    • Enforce at least one name being provided by Option/OptionParameter attributes, whereas it was possible to provide neither, before.

    The Api is getting close to complete now, and no more significant changes to existing functionality are proposed.

  • v0.9.7 Changes

    January 05, 2017

    โšก๏ธ This update brings:

    • ๐Ÿ‘Œ Support for List as an OptionParameter / Operand type, parsing from item1,item2,item3
    • ๐Ÿ‘Œ Improve Exceptions thrown inside of Commands to maintain a useful StackTrace
    • ๐Ÿ“œ Executing Cli.Parse / Cli.Execute without providing a string[] args parameter will now correctly get the string[] args itself
    • ๐ŸŒฒ A bug where --log could be interpreted as --log-level or similar
    • Other minor improvements to the codebase
  • v0.9.6 Changes

    January 01, 2017

    ๐Ÿš€ This release is a pretty major change to EntryPoint so far.
    All functionality is documented in depth here

    All major APIs have changes, at least in name. This is based on feedback on the old interfaces.

    • EntryPointApi -> Cli
    • BaseApplicationOptions > BaseCliArguments

    ๐Ÿ“œ A Commands API has also been added, which provides the ability to route to a different logic branch based on the invoked Command, where arguments can be parsed in a domain specific manner.

    ๐Ÿ‘ Also the Help Generator has some incremental improvements, and is also supported by the Commands API.

    This should be the end of major changes to existing APIs, although there are a number of small features to add in the future.

  • v0.9.5 Changes

    December 28, 2016

    ๐Ÿ“š This update changes the help generator so -h and --help no longer take control of and then exit the program after printing documentation.
    ๐Ÿ“š From now on we have BaseApplicationOptions.HelpRequested. Developers using EntryPoint should check this property after parsing and use EntryPointApi.GenerateHelp<>() to get the documentation string. This puts control of the application flow entirely in your hands as a developer, which seems more appropriate. It does add a little boilerplate but was the lesser evil of other options.

    ๐Ÿ›  A number of bugs are fixed (Including Required options throwing even when --help was invoked).

    .Net Framework requirements have also been dropped to 4.5.0, although due to reflection features, it can't go any lower.