• v0.5.0 49f2d09ccd

    eric released this 2026-11-07 23:58:39 +00:00 | 3 commits to main since this release

    CommandKit v0.5.0

    CommandKit v0.5.0 fixes lost deferred messages and preserves YAML value types
    more accurately. It also reduces repeated work when installing commands and
    showing alias help, and refreshes documentation and help text.

    Changes

    • Deferred messages accepted before finalization are retained for final reporting;
      they can no longer be silently lost when a handler finishes. Later submissions return
      ErrReporterClosed.
    • Finished invocations release their direct references to output and diagnostic
      writers while keeping delivery results available. Applications still own the
      writers.
    • DecodeYAMLReport preserves numeric-looking strings as strings. YAML report
      output also preserves explicitly tagged numbers beyond the YAML resolver's
      ordinary numeric range.
    • Command installation, alias help, and typed input handling avoid repeated
      work. Parsing and completion share flag handling while retaining their
      different treatment of errors and unfinished input.
    • The reporting example now works when its optional scenario is omitted, and
      the interactive completion fixture no longer conflicts with --format.
      FlagMeta documents existing naming and reserved-spelling rules.
    • READMEs, CLI instructions, examples, and generated help use clearer language
      and explain common tasks before implementation details.

    Compatibility and upgrade

    The public core Go API, CLI grammar, and Go 1.26.0 consumer minimum are unchanged.
    The maintainer release toolchain remains Go 1.27.0.

    Applications using background producers should coordinate deferred submissions
    before the handler returns and handle ErrReporterClosed once finalization
    begins. See the invocation reporting guide.

    Callers supplying YAML with numbers beyond the resolver's ordinary range should
    use explicit !!int or !!float tags when numeric meaning is intended. Untagged
    values resolved as strings now retain that type. See
    DecodeYAMLReport for the conversion contract.

    COPYRIGHT |
    LICENSE |
    ATTRIBUTION

    Downloads