Skip to content

CLI does not properly escape markup tags #11294

@davidfowl

Description

@davidfowl
Build succeeded in 3.3s
Enter the project name (aspire): [27;5;13~
Unhandled exception: System.InvalidOperationException: Encountered malformed markup tag at position 45.
   at Spectre.Console.MarkupTokenizer.ReadMarkup() in /_/src/Spectre.Console/Internal/Text/Markup/MarkupTokenizer.cs:line 183
   at Spectre.Console.MarkupTokenizer.MoveNext() in /_/src/Spectre.Console/Internal/Text/Markup/MarkupTokenizer.cs:line 27
   at Spectre.Console.MarkupParser.Parse(String text, Style style) in /_/src/Spectre.Console/Internal/Text/Markup/MarkupParser.cs:line 19
   at Spectre.Console.AnsiConsoleExtensions.Markup(IAnsiConsole console, String value) in /_/src/Spectre.Console/Extensions/AnsiConsoleExtensions.Markup.cs:line 77
   at Spectre.Console.TextPrompt`1.WritePrompt(IAnsiConsole console) in /_/src/Spectre.Console/Prompts/TextPrompt.cs:line 232
   at Spectre.Console.TextPrompt`1.<>c__DisplayClass63_0.<<ShowAsync>b__0>d.MoveNext() in /_/src/Spectre.Console/Prompts/TextPrompt.cs:line 129
--- End of stack trace from previous location ---
   at Spectre.Console.Internal.DefaultExclusivityMode.RunAsync[T](Func`1 func) in /_/src/Spectre.Console/Internal/DefaultExclusivityMode.cs:line 40
   at Spectre.Console.TextPrompt`1.ShowAsync(IAnsiConsole console, CancellationToken cancellationToken) in /_/src/Spectre.Console/Prompts/TextPrompt.cs:line 122
   at Aspire.Cli.Interaction.ConsoleInteractionService.PromptForStringAsync(String promptText, String defaultValue, Func`2 validator, Boolean isSecret, Boolean required, CancellationToken cancellationToken) in /Users/davidfowler/dev/git/aspire/src/Aspire.Cli/Interaction/ConsoleInteractionService.cs:line 80
   at Aspire.Cli.Commands.NewCommandPrompter.PromptForOutputPath(String path, CancellationToken cancellationToken) in /Users/davidfowler/dev/git/aspire/src/Aspire.Cli/Commands/NewCommand.cs:line 248
   at Aspire.Cli.Templating.DotNetTemplateFactory.GetOutputPathAsync(ParseResult parseResult, Func`2 pathDeriver, String projectName, CancellationToken cancellationToken) in /Users/davidfowler/dev/git/aspire/src/Aspire.Cli/Templating/DotNetTemplateFactory.cs:line 348
   at Aspire.Cli.Templating.DotNetTemplateFactory.ApplyTemplateAsync(CallbackTemplate template, ParseResult parseResult, Func`3 extraArgsCallback, CancellationToken cancellationToken) in /Users/davidfowler/dev/git/aspire/src/Aspire.Cli/Templating/DotNetTemplateFactory.cs:line 222
   at Aspire.Cli.Commands.NewCommand.ExecuteAsync(ParseResult parseResult, CancellationToken cancellationToken) in /Users/davidfowler/dev/git/aspire/src/Aspire.Cli/Commands/NewCommand.cs:line 135
   at Aspire.Cli.Commands.BaseCommand.<>c__DisplayClass6_0.<<-ctor>b__0>d.MoveNext() in /Users/davidfowler/dev/git/aspire/src/Aspire.Cli/Commands/BaseCommand.cs:line 32
--- End of stack trace from previous location ---
   at System.CommandLine.Invocation.InvocationPipeline.InvokeAsync(ParseResult parseResult, CancellationToken cancellationToken)

Metadata

Metadata

Labels

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions