Skip to content

v3.10.0

Choose a tag to compare

@BrianPugh BrianPugh released this 16 Mar 21:20
f3ca09c

Features

  • By default, registering a subapp will set it's help and version "show" attribute to False, making --help and --version not show up in the subapp's help page. This is done because the previous behavior (showing these flags) mostly cluttered the help-page and wasn't particularly useful. By @BrianPugh in #363
  • Always apply Parameter.validator to command-signature default-values. Consider the following code:
    import cyclopts
    from pathlib import Path
    
    def command(file: cyclopts.types.ExistingFile = Path("foo.bin")):
        pass
    
    cyclopts.run(command)
    
    Previously, if no file was specified, file would be Path("foo.bin"), but the validator that checks if the file exists would have not ran. This is unintuitive/unexpected to the developer. Now Cyclopts always runs validators, even on default values.
  • Render default/choices/required styling (colors!) in the help page. by @BrianPugh in #365
  • More types: uint64/int64/Email/URL/Port by @BrianPugh in #366

Bug Fixes

  • Fix some situations where InvalidCommandError didn't result in printing command suggestions. by @BrianPugh in #358

Full Changelog: v3.9.3...v3.10.0