Files
commandkit/docs/releases/v0.3.0.md

2.5 KiB

CommandKit v0.3.0

Summary

CommandKit v0.3.0 adds application-owned command and flag aliases. This pre-1.0 minor release also updates the installation declaration type and Invocation struct shape; review the migration guidance before upgrading.

Changes

  • Declare command shortcuts and global or canonical-command-scoped flag spellings with Alias, FlagAlias, and FlagAliasFor. Install routing rules beside canonical commands through New or App.Register. Aliases route to existing handlers and preserve the target command's operand and binding behavior.
  • Read the entered and canonical command paths from Invocation with EnteredPath and CanonicalPath.
  • Interpret a canonical short value flag such as -c= as an explicitly supplied empty value, consistent with --color= and -c "".

Compatibility and migration

New and App.Register now accept ...Declaration instead of ...Command. Command, group, and integration command factories still return Command, so individual factory calls can be passed directly. A []Command cannot be expanded into ...Declaration; use a []Declaration for mixed reusable collections or convert each command element before expanding it. Function values whose parameter type is ...Command, including wrappers assigned from New or Register, must update their signature to ...Declaration.

Adding private route fields to Invocation means positional struct literals no longer compile. Use keyed fields, for example commandkit.Invocation{Context: ctx, Streams: streams}, when constructing an Invocation outside command execution. CommandKit populates the route fields for executed handlers.

The consumer minimum remains Go 1.26.0 and the maintainer release toolchain remains Go 1.26.8. Core v0.3.0 must be published before preparing dependent integration releases that adopt it and record downloaded dependency sums; this release does not change their v0.1.0 release records.

See the consumer guide, CLI reference, and maintainer release procedure.

COPYRIGHT | LICENSE | ATTRIBUTION