Skip to content

dnx --help suggests use of a package that is not a .NET SDK Tool #51008

@baronfel

Description

@baronfel

Describe the bug

dnx --help provides the following help output:

dnx --help Description: Executes a tool from source without permanently installing it. Usage: dotnet dnx <packageId> [<commandArguments>...] [options] Arguments: <packageId> Package reference in the form of a package identifier like 'Newtonsoft.Json' or package identifier and version separated by '@' like 'Newtonsoft.Json@13.0.3'. <commandArguments> Arguments forwarded to the tool Options: --version <VERSION> The version of the tool package to install. -y, --yes Accept all confirmation prompts using "yes." [default: False] --interactive Allows the command to stop and wait for user input or action (for example to complete authentication). [default: True] --allow-roll-forward Allow a .NET tool to roll forward to newer versions of the .NET runtime if the runtime it targets isn't installed. [default:  False]  --prerelease Include pre-release packages. [default: False]  --configfile <FILE> The NuGet configuration file to use.  --source <SOURCE> Replace all NuGet package sources to use during installation with these.  --add-source <ADDSOURCE> Add an additional NuGet package source to use during installation.  --disable-parallel Prevent restoring multiple projects in parallel. [default: False]  --ignore-failed-sources Treat package source failures as warnings. [default: False]  --no-http-cache Do not cache packages and http requests. [default: False]  -v, --verbosity <LEVEL> Set the MSBuild verbosity level. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]. [default:  normal]  -?, -h, --help Show command line help.

The packageId argument's help description calls out Newtonsoft.Json, but this package isn't a valid .NET Tool. We need to make the Description of the shared 'packageId argument structure accept different descriptions, and then provide a better description for the tool-related use cases (dnx, dotnet dnx, dotnet tool exec, dotnet tool install`, etc).

The tool-related examples should use dotnetsay@2.1.7.

This change should be done against the release/10.0.1xx branch.

To Reproduce

Install any 10 preview 7 and above. Run dnx --help.

Metadata

Metadata

Assignees

Labels

Area-CLIcli-uxIssues and PRs that deal with the UX of the CLI (exit codes, log output, verbs/options, and so on)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions