Changelog History
-
v1.3.0 Changes
July 22, 2019Thanks to @TheColonel2688 for #54 and #55
-
v1.2.3 Changes
December 23, 2017A 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, 2017Should 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 toCliArguments
- ๐ Improves error throwing when the user provides a value un-convertable to the destination type.
- โ General improvements to test coverage
- โ Adds
-
v1.1.0 Changes
February 12, 2017There 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. -
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 thestring[] args
itself - ๐ฒ A bug where --log could be interpreted as --log-level or similar
- Other minor improvements to the codebase
- ๐ Support for List as an OptionParameter / Operand type, parsing from
-
v0.9.6 Changes
January 01, 2017๐ This release is a pretty major change to EntryPoint so far.
All functionality is documented in depth hereAll 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 haveBaseApplicationOptions.HelpRequested
. Developers using EntryPoint should check this property after parsing and useEntryPointApi.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.