Files

2.6 KiB

CommandKit ckconfig v0.1.0

Summary

The initial independently versioned ConfigKit integration provides configuration inspection and native comparison through CommandKit command declarations. It uses CommandKit v0.2.0 and ConfigKit v0.8.0 and is distributed as a source-only Go module.

Features

  • ckconfig.AppCommand, ckconfig.Command, and ckconfig.FromConfigKit adapt application loaders and named scopes into explicitly installed declarations.
  • The config family exposes scopes, validation, effective YAML, sources, and path explanation according to each scope's declared capabilities.
  • config diff compares two selections through ConfigKit's native API and emits YAML additions, right-side changes, and deletion paths. Comparison can be provided independently of ordinary configuration acquisition; differences alone do not make the command fail.
  • Source reports expose native destination, placement, unresolved destination, and version-check evidence alongside the source inventory.
  • Typed selectors, per-side comparison inputs, and invocation state support application-specific acquisition without transferring configuration semantics to CommandKit.

Requirements and adoption

Go 1.26.0 or newer is required. Add gitea.maximumdirect.net/eric/CommandKit/integrations/ckconfig@v0.1.0, then pass the returned declaration to commandkit.New or App.Register. Importing the module does not install commands.

Applications migrating from the ConfigKit helpers in CommandKit v0.1.0 must move to the separate module and update scope, loader, binding, and installation wiring for the core v0.2.0 API. Update report consumers for the added source evidence and any newly installed comparison commands. ConfigKit remains the authority on configuration loading, inspection, and comparison semantics.

See the module README, consumer guide, and CLI reference.

COPYRIGHT | LICENSE | ATTRIBUTION