Skip to content

Releases: c4spar/deno-cliffy

v0.14.3

18 Oct 13:16
Compare
Choose a tag to compare

Bug Fixes

  • command: optional arguments are validated even if they are not specified on the command line (#101) (e3d61d7)
  • command: zsh completion values not separated by new line (#98) (a89ccc6)
  • flags,command: single dash not supported in arguments (#100) (5b30372)

v0.14.2

04 Oct 23:14
Compare
Choose a tag to compare

Features

Bug Fixes

  • command: spaces not supported in bash completions (#94) (95b29b2)
  • command: spaces not supported in zsh completions (#93) (e9805b6)
  • command: prompt method not exported from prompt/mod.ts (cd0d122)

Code Refactoring

  • use underscore in file names (#92) (357db7f)
  • command: indent zsh completions script with 2 spaces (310bc00)

Chore

v0.14.1

13 Sep 17:36
Compare
Choose a tag to compare

Bug Fixes

  • command: quotes and brackets in option description breaks shell-completion (#82) (7907413)
  • command: only generate argument completions for types that have completions (#81) (1998108, 8040abf)

Chore

v0.14.0

02 Sep 18:11
Compare
Choose a tag to compare

Features

  • command: add bash completions support (#78) (09c0fc2)
  • command: implement argument types validation (#70) (01acb53)

Bug Fixes

  • command: fix complete command error "No type registered with name: action" (#77) (f2c6bea)
  • command: fix shell completion bug which occurs when an option has only one flag (9fbef68)
  • command: fix shell completion bug which occurs when the conflicts option is defined without dashes (2dfa8b1)
  • command: default command 'help' not found error on completions command (580bacd)
  • command: fix typo in error message (2fa9d29)

Code Refactoring

  • use stripColor from deno/std (56bcc89)

Style

  • command: fix jsdoc formatting (230cac7)

Chore

  • fix test workflow name (0e683c1)
  • use deno fmt for code formatting (#71) (e7dd856)
  • ci: run shellcheck on bash/zsh completion scripts (#79) (40f2dc9)
  • ci: add deno lint step (e48f293)
  • ci: split workflows, add nightly test and lint workflow (#72) (d13af64)
  • ci: update deno version to v1.3.2 (a8d6a60)
  • lint: fix lint errors (25d8e24, 92c84ac)
  • upgrade: deno/std v0.67.0 (43204a5)

Documentation Updates

v0.13.0

25 Aug 21:38
Compare
Choose a tag to compare

Features

  • prompt: add support for prompt list and dynamic prompts (6968c1d)

Bug Fixes

  • flags: standalone parameter incompatible with dashed parameter which has a default value (1aa9b55)
  • prompt: cursor not visible after error (1de8a84)

Performance Improvements

  • command,flags: implement simple camel-case and remove param-case and snake-case methods to improve performance (20dc077, 4587284)

Code Refactoring

  • remove format utils method (2496431)
  • refactor project structure for url friendly imports (8b5fbdd)
  • ansi-escape: add return types (2bb165c)
  • command: re-export flag types in command module and some refactorings (05b3c9e)
  • command: refactor error message (6f6e750)
  • command: remove some helper methods: write, writeError, log, logError from command class (88bdc95)
  • command: refactor completions command description and disable unimplemented bash completions command (a181cbb)
  • command: add version option only if version is set (32e6687)
  • prompt: remove read-line module and move methods to generic prompt class (dd1de10)

Style

  • ansi-escape: add semicolons (7ed6424)

Chore

  • ci: update deno version to v1.3.1 (#62) (1cff32b)
  • deno: update deno/std to v0.66.0 (#63) (5c27a4b)

Documentation Updates

BREAKING CHANGES

  • command: refactor external sub-commands (#66) (6181747)

    Following line no longer registers an external command.

    new Command()
        .command( 'sub-command', 'description...' ) //
    
    // is same as
    new Command()
        .command( 'sub-command' )
        .description( 'description...' )

    To register an external command you have to use the .external() method for now.

    new Command()
        .command( 'sub-command', 'description...' )
        .external()
    
    // is same as
    new Command()
        .command( 'sub-command' )
        .description( 'description...' )
        .external()
  • command,flags: refactor type handler (bf12441)

    To make types compatible with environment variable and arguments the arguments of the type handler has changed from:

    const myType: ITypeHandler<number> = ( option: IFlagOptions, arg: IFlagArgument, value: string ): number => {};

    to:

    const myType: ITypeHandler<number> = ( { label, name, value, type }: ITypeInfo ): number => {};

    This makes it possible to write a single error messages for different contexts.

    throw new Error( `${ label } ${ name } must be of type ${ type } but got: ${ value }` );

    For options the error message will be: Option --my-option must be of type number but got: abc
    For environment variables the error message will be: Environment variable MY_ENV_VAR must be of type number but got: abc
    For arguments the error message will be: Argument my-argument must be of type number but got: abc

  • command,flags: rename some types (0645313)

    • ICompletionSettings -> ICompletion
    • IArgumentDetails -> IArgument
    • ITypeOption -> ITypeOptions
    • ITypeSettings -> ITypeInfo
    • IEnvVariable -> IEnvVar
    • IEnvVarOption -> IEnvVarOptions
  • table: rename min/maxCellWidth to min/maxColWidth (#65) (c75b94c)

v0.12.1

04 Aug 17:57
Compare
Choose a tag to compare

Bug Fixes

  • remove "v" prefix from deno std url (#57) (10c951a)

v0.12.0

01 Aug 17:21
Compare
Choose a tag to compare

Features

  • table: add support for rowSpan (9c05cc3)
  • table: add support for colSpan (bb6cae9)
  • table: add .fromJson() method (4be3edd)
  • table: add support for enabling and disabling border per row and cell (d62182d)
  • table: add .body() method to Table (2526ff2)
  • table: make border chars customizable (866b71e)

Bug Fixes

  • keycode: KeyCode.parse(data) captures only the first character (#54) (f153909)
  • prompt: pasting clipboard into prompt returns corrupted data (#54) (5de866c)
  • prompt: show option name instead of value as result with select and checkbox prompt (#53) (1d81235)
  • prompt: cursor not visible after exiting with ctrl + c (110a07e)
  • table: remove trailing line break from .toString() method (3af8850)

Code Refactoring

  • table: set default table padding to 1 (a6e6aa3)
  • table: reformat table (16ae13d)
  • table: add TableLayout class (699c0d1)
  • table: refactor .from() and .clone() method's (ddee9d7)

Chore

Unit/Integration Tests

  • table: add colspan and rowspan test's (d8df570)

Documentation Updates

v0.11.2

22 Jul 21:02
Compare
Choose a tag to compare

Features

  • prompt: add support for custom keys (5df1f95)

Code Refactoring

  • prompt: add fallback keys for unsupported keys on windows (#47) (71f54f5)
  • prompt: extend Toggle prompt from GenericPrompt (#50) (cfe2064)

v0.11.1

22 Jul 21:01
Compare
Choose a tag to compare

Bug Fixes

v0.11.0

14 Jul 23:19
Compare
Choose a tag to compare

Features

  • command: add .versionOption() and .helpOption() method's (85d66b9)

Code Refactoring

  • remove IGenericObject interface (e3c8660)
  • command: remove OptionType type from IArgumentDetails (c8dc229)
  • command: refactor ICommandOption interface (88263b5)

Chore

  • deno: update deno/std to v0.61.0 and deno ci version to v1.2.0 (#45) (f23da64)
  • nest: add egg.yaml config (f8447cc)

Unit/Integration Tests

  • command: fix depends test (9ec513c)

Documentation Updates

  • command: fix options type in action handler example's (#44) (d661cc4)