-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CommandDotNet v5 road map #318
Comments
Roadmap update. It's been a busy year and I find myself with less time so I'm refocusing priorities. I will not be extracting IConsole into it's own repo and developing a better ReadLine. This puts the REPL sessions on hold. Instead, I'll keep an eye out for other packages that do this better. For example, I'm currently working on a package to integrate Spectre's IAnsiConsole into CommandDotNet. It's turning out to be pretty simple. I'm looking into an option to use their prompter for missing arguments too. |
We're having some difficulties with our documentation. CommandDotNet5.0.1remove nuget package refs no longer required after move to net5.0 5.0.0HighlightsNRTCommandDotNet now supports Nullable reference types (NRT) when calculating Arity. Arityfor.Minimum will be 0 for NRTs. target net5.0CommandDotNet targets net5.0 instead of netstandard2.0. This will allow us to take advantage of new framework features. Windows and Powershell conventionsAdded support for Windows and Powershell conventions when using options
These are not enabled by default. Enable by setting Support negative numbers as argumentsPreviously, negative numbers were only support when proceeded by IConsoleOverhaul of IConsole, now covering most the System.Console members. Converted In, Out and Error to TextReader and TextWriter to match System.Console. Overhaul of IConsole, now covering most the System.Console members. Converted In, Out and Error to TextReader and TextWriter to match System.Console. Breaking Changes in behaviorNRT supportThe behavior for calculating Arity and prompting on missing arguments changes as these arguments were not previously considered nullable and so the Arity has changed to expect a minimum of 0 instead of 1 Using the UseArgumentPrompter will now work as expected when using NRTs. They will no longer prompt the user. ArgumentArity.AllowsNone() changeThis has been a confusing method. It currently evaluates as ArgumentArity.AllowsNone() has been changed to ArgumentArity.RequiresNone() has been added for Breaking Changes in APIFor application developersObsoleted cleanup
Localizable ResourcesSeveral updates to localizeable Resources. Changed a few member names for clarity and anded a several new members. AppSettings
For middleware developersIArgument updates
IConsole updates
DefaultSources.AppSetting.GetKeysFromConventionNow takes AppSettings to support TokenType.Option removedTo support negative numbers and prefixing options with
IInvocation updatesadded IsInterceptor property to distinguish between command and interceptor invocations Obsoleted cleanup
CommandDotNet.FluentValidations5.0.0remove nuget package refs no longer required after move to net5.0 Breaking ChangesUpgraded to latest FluentValidator 10.3.4 (from 8.0.0). The ValidatorAttribute was deprecated in v8 so we dropped support for it. Alternatively, you can provide a factory func via 4.0.0CommandDotNet.FluentValidation targets net5.0 instead of netstandard2.0. This will allow us to take advantage of new framework features. CommandDotNet.Testing4.0.1remove nuget package refs no longer required after move to net5.0 4.0.0target net5.0CommandDotNet.TestTools targets net5.0 instead of netstandard2.0. This will allow us to take advantage of new framework features. Breaking ChangesTrackingInvocation implements new IInvocation.IsInterceptor property TestConsole updated to support new IConsole members. In, Out, and Error now implement TextReader and TextWriter. Removed Obsoleted
All otherstargets net5.0 instead of netstandard2.0. This will allow us to take advantage of new framework features. remove nuget package refs no longer required after move to net5.0 |
We're working on some great additions to CommandDotNet.
Additions
CommandDotNet.Console #314 enriching IConsole and extracting it to an independent package used by CommandDotNetimplement ReadLine functionality #315 ReadLine functionality for a better navigation experience when entering promptsREPL sessions #316 REPL sessions will use the updated console and ReadLine functionality to provide a rich REPL experience/
as options prefix and-
for long names for powershell #317Breaking changes
With these updates, there will be a few breaking changes
[Obsolete]
/
as options prefix and-
for long names for powershell #317. We can no longer determine if a token is an option before parsing, so...The text was updated successfully, but these errors were encountered: