Skip to content

--help no longer displays the option argument if Option.HelpName is not set #2128

@KalleOlaviNiemitalo

Description

@KalleOlaviNiemitalo

In System.CommandLine 2.0.0-beta4.22272.1 (commit 209b724), if I set up an option like this

            this.jsonDirectoryOption = new Option<DirectoryInfo>(
                name: "--json-directory",
                description: "Writes API JSON responses to the specified directory.");
            this.jsonDirectoryOption.ExistingOnly();
            this.Add(this.jsonDirectoryOption);

then --help generated a default description for the argument of the option:

  --json-directory <json-directory>   Writes API JSON responses to the specified directory.

In System.CommandLine 2.0.0-beta4.23165.2 (commit 4d1e6ac), if I similarly set up an option

            this.jsonDirectoryOption = new Option<DirectoryInfo>("--json-directory")
            {
                Description = "Writes API JSON responses to the specified directory.",
            };
            this.jsonDirectoryOption.AcceptExistingOnly();
            this.Options.Add(this.jsonDirectoryOption);

then --help does not show that the option requires an argument:

  --json-directory                    Writes API JSON responses to the specified directory.

I can correct the --help output by setting Option.HelpName in my application, but this is quite a surprising change and should at least be documented in the upcoming release notes.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions