Giter Club home page Giter Club logo

Comments (4)

devlead avatar devlead commented on June 9, 2024 1

Spectre Console had a breaking change in with the examples, could be this that affects Frosting.
try changing

config.AddExample(new[] { string.Empty });

and
config.AddExample(new[] { string.Empty });

to

config.AddExample(Array.Empty<string>());

I've assigned the issue to you.

from cake.

FrankRay78 avatar FrankRay78 commented on June 9, 2024

Please assign this issue to me @augustoproiete. I came across it when upgrading the package references because I wanted to test some new features in spectre.console 0.46.0

from cake.

FrankRay78 avatar FrankRay78 commented on June 9, 2024

Your suggestion fixes the issue @devlead. Interestingly, it's the call to config.ValidateExamples(); that's causing the Frosting tests to fail. Once I turn on the following, config.PropagateExceptions(); the true nature of the issue becomes clear:

Message: 
Spectre.Console.Cli.CommandConfigurationException : Validation of examples failed.
---- Spectre.Console.Cli.CommandParseException : Unknown command ''.

  Stack Trace: 
CommandModelValidator.ValidateExamples(CommandModel model, CommandAppSettings settings) line 155
CommandModelValidator.Validate(CommandModel model, CommandAppSettings settings) line 42
CommandModelBuilder.Build(IConfiguration configuration) line 40

Basically, the following example config.AddExample(new[] { string.Empty }); passes spectre one argument, an empty string, which is then validated against the available commands, unsuccessfully.

The above applies to Frosting, I believe the DefaultCommand examples in the Cake project validate successfully because DefaultCommandSettings additionally includes a Script argument, which Frosting doesn't.

namespace Cake.Commands
{
    public sealed class DefaultCommandSettings : CommandSettings
    {
        [CommandArgument(0, "[SCRIPT]")]
        [Description("The Cake script. Defaults to [grey]build.cake[/]")]
        [TypeConverter(typeof(Cli.FilePathConverter))]
        [DefaultValue("build.cake")]
        public FilePath Script { get; set; }

from cake.

cake-build-bot avatar cake-build-bot commented on June 9, 2024

πŸŽ‰ This issue has been resolved in version v3.1.0 πŸŽ‰

The release is available on:

Your GitReleaseManager bot πŸ“¦πŸš€

from cake.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.