Confusing error message when omitting a required parameter in nuget.exe


A user who omits the version number from the ‘nuget delete’ command gets a very generic “invalid arguments” error message. This is slightly misleading for new users and might make folks believe one of the existing parameters is mistyped or unrecognized, not that they’re missing a required parameter.

To Repro:
  1. Call NuGet delete packageId -APIKey <your API key>. Note that this command omits a required parameter, the package version to delist.
Result: you'll receive an error message "invalid arguments", along with command line help. As I argued above, this is confusing for users who are unlikely to interpret this as a missing required argument.
Expected: We should have specific error messages for required parameters. Here, I'd want to see an error stating "package version is required" or something similar.