Repository navigation
Releases: secengcommons/cli
Releases · secengcommons/cli
Release list
CLI v1.1.1
CLI v1.1.1 preserves the existing parser API and performance contracts while refreshing release verification
Changed
- Updates the development toolchain to Go 1.27.2
- Updates GolangCI-Lint to v2.14.0 and Govulncheck to v1.9.0
- Adopts SecEng Commons CI v1.0.8
CLI v1.1.0
CLI v1.1.0 retains the existing parser API and performance contracts while updating the supported development baseline
Changed
- Raises the minimum Go version to 1.26
- Adopts shared SecEng Commons CI and Verify qualification
- Separates workflow analysis into its own tool module
- Updates Govulncheck and Wazero verification dependencies
CLI v1.0.0
The first stable release of Security Engineering Commons CLI. Provides bounded command parsing and deterministic Cobra-style help through a small dependency-free Go API
Included
- Explicit commands and optional root actions
- Standard short, long, single-dash, double-dash, equals and separate-value option forms
- String and Boolean options with validated defaults
- Persistent global options before or after commands
- Required command options and bounded positional arguments
- Named-command precedence over root actions
- Built-in root and contextual help actions
- Built-in version actions through
v,version,-v,--vand--version - Deterministic UTF-8 help and diagnostics
- Strict definition, name, summary, argument-count and input-byte bounds
- Rejection of duplicate options, ambiguous aliases, malformed input, invalid UTF-8 and control characters
- Immutable copied definitions and independently owned invocation state
- Allocation-free indexed argument and option access
- Concurrent parser use
- Inspectable
ErrDefinitionandErrInvocationerrors - No production-module dependencies
Performance
- Common parsing and simple actions perform zero allocations
- Root-only parser construction performs zero allocations
- Representative parser construction retains two backing allocations
- Help and diagnostics allocate only their caller-owned result
- Caller-buffer ownership is preserved without exposing internal state
Full Linux AMD64 measurements and the benchmark command are retained in the README
Coverage
- 100% atomic first-party statement coverage
- Windows and Linux race-detector execution
- Parser, definition, root-action and help-size fuzzing
- Go 1.24, 1.25 and 1.26 compatibility
- Production cross-builds across all 48 targets reported by the Go 1.24 toolchain
- Production and verification-tool vulnerability scans
Requirements
- Go 1.24 or newer
Install
go get github.com/secengcommons/cli@v1.0.0