Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Potential improvements related to System.CommandLine implementation #4999

Open
7 tasks
vlada-shubina opened this issue Jul 21, 2022 · 0 comments
Open
7 tasks
Labels
area: CLI Related to dotnet new CLI (usually dotnet/TemplateEngine.CLI source code) Priority:3 Work that is nice to have triaged The issue was evaluated by the triage team, placed on correct area, next action defined.
Milestone

Comments

@vlada-shubina
Copy link
Member

After implementing System.CommandLine, the following low priority improvements were suggested

  • use IConsole instead of Reporter - CLI wide
  • consider creating TemplatePackageManager.GetTemplates version which uses cache only for tab completion and help
  • implement [parse] and [suggest] directives
  • fix coloring for error messages for help
  • address CommandLineConfiguration.ThrowIfInvalid command-line-api#1582: add corresponding calls to unit tests / re-parsing calls
  • consider using middleware for debug options, building environment settings, etc.
  • review parsing of template options, some considerations
    • default if option without value should not be parsed / validated at parser level. Instead the parser should just pass null in this case and TemplateCreator should handle this case properly. However if default if option without value is not set for parameter, having no value for option should not be allowed.
    • consider not parsing hex values on parser level. It's a specific format of current generator. Either utilize generator to see if value can be parsed or try to convert any value to hex in format needed by generator and fail if it's not possible.
    • points above should allow to remove custom parse logic for most cases.
@vlada-shubina vlada-shubina added the triaged The issue was evaluated by the triage team, placed on correct area, next action defined. label Jul 26, 2022
@vlada-shubina vlada-shubina added this to the Backlog milestone Jul 26, 2022
@YuliiaKovalova YuliiaKovalova added Priority:3 Work that is nice to have area: CLI Related to dotnet new CLI (usually dotnet/TemplateEngine.CLI source code) labels May 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: CLI Related to dotnet new CLI (usually dotnet/TemplateEngine.CLI source code) Priority:3 Work that is nice to have triaged The issue was evaluated by the triage team, placed on correct area, next action defined.
Projects
None yet
Development

No branches or pull requests

3 participants
@vlada-shubina @YuliiaKovalova and others