McMaster.Extensions.CommandLineUtils 2.2.0-rc

Command-line parsing API. A community-maintained fork of Microsoft.Extensions.CommandLineUtils, plus extras. Commonly used types: McMaster.Extensions.CommandLineUtils.CommandLineApplication McMaster.Extensions.CommandLineUtils.CommandOption McMaster.Extensions.CommandLineUtils.IConsole McMaster.Extensions.CommandLineUtils.ArgumentEscaper

No packages depend on McMaster.Extensions.CommandLineUtils.

New features: - Added more validation attributes. - Add the `[FileExists]` attribute - Add the `[FileOrDirectoryExists]` attribute - Add the `[DirectoryExists]` attribute - Add the `[LegalFilePath]` attribute - Add the `[AllowedValues]` attribute - Added a new, fluent API for validation. - Added `Option().Accepts()` and `Argument().Accepts()` - Add `.ExistingFile()` - Add `.ExistingFileOrDirectory()` - Add `.ExistingDirectory()` - Add `.EmailAddress()` - Add `.LegalFilePath()` - Add `.MinLength(length)` - Add `.MaxLength(length)` - Add `.RegularExpression(pattern)` - Add `.Values(string[] allowedValues)` - Add `.Range(min, max)` - Add `CommandOptionType.SingleOrNoValue`. - Options of this type can be a switch, or have a value but only in the form `--param:value` or `--param=value`. - Support mapping `ValueTuple<bool,T>` to `CommandOptionType.SingleOrNoValue` - Generic commands, options, and arguments - Added `CommandLineApplication<TModel>`. This allows associating an application with a specific .NET type - Add support for `Option<T>` and `Argument<T>` - Convention API - Adds support for writing your own conventions to convert command line arguments into a .NET type - Add API to use a dozen of built-in conventions Other enhancements: - Support parsing enums - @rmcc13 - `HelpOption` can be set to be inherited by all subcommands - @atruskie - Support for parsing double and floats - @sebastienros - Support for case-insensitive options - @atruskie: Add support for user-defined value parsers using `IValueParser` and `CommandLineApplication.ValueParsers`. - Add support for constructor injection and dependency injection by providing a custom service provider - Parse these values to boolean: T, t, F, f, 0, 1 - Add `VersionOptionFromMember` to use a property or method as the source of version information See more details here: https://github.com/natemcmaster/CommandLineUtils/blob/master/CHANGELOG.md#v220

.NET Framework 4.5

.NET Standard 1.6

.NET Standard 2.0

Version Last updated
4.1.1 3/30/2025
4.1.0 4/21/2025
4.0.2 4/21/2025
4.0.1 3/30/2025
4.0.0 4/21/2025
4.0.0-beta.74 3/30/2025
4.0.0-beta.56 3/30/2025
3.1.0 4/21/2025
3.1.0-rc.371 4/9/2025
3.1.0-beta.356 3/30/2025
3.1.0-beta.336 4/2/2025
3.0.0 4/21/2025
3.0.0-rc.289 4/21/2025
3.0.0-alpha.268 4/6/2025
2.6.0 4/21/2025
2.5.1 3/30/2025
2.5.0 4/21/2025
2.4.4 3/30/2025
2.4.3 4/21/2025
2.4.2 3/23/2025
2.4.1 4/21/2025
2.4.0 4/21/2025
2.3.4 4/21/2025
2.3.3 4/7/2025
2.3.2 3/30/2025
2.3.1 4/21/2025
2.3.0 4/21/2025
2.2.5 6/12/2025
2.2.4 4/21/2025
2.2.3 5/25/2025
2.2.2 3/30/2025
2.2.1 4/21/2025
2.2.0 3/30/2025
2.2.0-rc 6/13/2025
2.2.0-beta 4/21/2025
2.2.0-alpha 3/30/2025
2.1.1 3/30/2025
2.1.0 4/21/2025
2.1.0-rc 4/21/2025
2.1.0-beta 4/5/2025
2.1.0-alpha 4/21/2025
2.0.1 4/21/2025
2.0.0 6/13/2025