You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Having two dependencies to parse command line arguments is not good.
I think that we should switch to System.CommandLine if possible (project)
System.CommandLine is the future of parsing command line arguments in .NET. It's not a MS-only project, it has been built together by the community and MS based on experiences from many existing command line parsing projects.
I have seen a 1h internal demo at MS and to tell the long story short it has everything that CommandLineParser and McMaster.Extensions.CommandLineUtils have and a lot of more cool features. You can read more about the motivations for it here
What this task requires:
Make sure that System.CommandLine supports everything that CommandLineParser gives us as of today:
parsing simple arguments (1 value)
parsing more complex arguments (IEnumerable<string>)
parsing arguments with aliases (example: -i --inprocess)
help with samples
Making sure that System.CommandLine supports everything that McMaster.Extensions.CommandLineUtils gives us as of today for the global tool
If System.CommandLine meets all our needs, then I can talk with @KathleenDollard about publishing a signed package to Nuget.org and we can switch (dotnet/command-line-api#356)
@wojtpl2 perhaps you would be interested in this issue?
As of today, we are using:
Having two dependencies to parse command line arguments is not good.
I think that we should switch to
System.CommandLineif possible (project)System.CommandLine is the future of parsing command line arguments in .NET. It's not a MS-only project, it has been built together by the community and MS based on experiences from many existing command line parsing projects.
I have seen a 1h internal demo at MS and to tell the long story short it has everything that
CommandLineParserandMcMaster.Extensions.CommandLineUtilshave and a lot of more cool features. You can read more about the motivations for it hereWhat this task requires:
System.CommandLinesupports everything thatCommandLineParsergives us as of today:IEnumerable<string>)-i --inprocess)System.CommandLinesupports everything thatMcMaster.Extensions.CommandLineUtilsgives us as of today for the global toolThe global tool was merged to https://github.com/dotnet/BenchmarkDotNet/tree/tools branch. So a person working on this task would have to create branch out of
toolsbranch.If
System.CommandLinemeets all our needs, then I can talk with @KathleenDollard about publishing a signed package to Nuget.org and we can switch (dotnet/command-line-api#356)@wojtpl2 perhaps you would be interested in this issue?