Repository navigation
Releases: WireCatLabs/cli-base
Releases · WireCatLabs/cli-base
Release list
0.35.0
Added
- Bounded batches share parsing, correlation and sequential execution.
prepareBatch,readBatchInputand
runBatchaccept explicit registered handlers, cap input/count/read reservations and retained output, and keep
a result for every input on budget refusal. Failed reads never refund their reserved ceiling; it is not a byte
consumption measurement. Hosts retain account authorization, cancellation, final rendering and resource cleanup.
projectBatchAnswersselects nested answer fields while retaining ids, errors and completeness.
0.31.1
Fixed
- Nested field selection traverses arrays and retains report coverage. Item/list envelopes, continuation, missing data and operation identifiers are handled by one shared projector; consumers no longer need to unwrap item answers.
0.20.0
Changed — may break callers
resolvePathsgives the XDG layout on macOS too —~/.config/<app>,~/.local/share/<app>and
~/.cache/<app>, or theXDG_*variables when set — instead of~/Library/Preferences,
~/Library/Application Supportand~/Library/Caches. One layout on every Unix is one set of
documentation and one place to look. Linux and Windows paths do not change, and the*_DIRoverrides
still win. It now readsHOME, theXDG_*variables,USERPROFILE,APPDATAandLOCALAPPDATA
from theenvit is given, not from the globalprocess.env, and takes an optionalplatform.
On macOS, a CLI that adopts this release finds none of its existing files until it calls
migrateLegacyMacPathsat start. A keyring service name built from the config path changes with it.
Added
migrateLegacyMacPathsmoves an older release's~/Libraryfolders to the new ones, once.
On macOS, with no*_DIRoverride set, it moves each old folder whose new one is missing or empty,
all of them or none, and returns what moved. It never merges into a folder that has files, and
across file systems it copies, checks the copy and keeps the old folder. It throws a
configuration_errornaming the processes when lsof shows a file open in a pending folder — stop a
runningserveor MCP server and run again. lsof sees only files open at that moment, so a caller
that knows its own lock files should report their holders throughholders. Call it at program start, before anything resolves a
path; with nothing to move it costs onelstatper folder.legacyMacPathsgives the old folders.
Removed
- The
env-pathsdependency. The paths it gave on Windows are kept as they were.
0.19.4
Fixed
-
Package references, documentation and fixtures use the WireCat namespace throughout.
-
The owner-migration helper covers meetings, testing, Zoom and the shared organization repositories, so their links and package names migrate with the original CLIs.
0.19.3
Fixed
- Zero command deadlines abort synchronously before a body can execute, matching the documented
immediate deadline instead of scheduling a timer that could lose to a fast command. They create
no sleep or timer; an already aborted parent retains its cancellation reason.
0.19.2
Added
- Portable command control helpers expose
fieldsOf,projectFields,createOutputBuffer
andcreateDeadlinefrom the root export. Field projection retains list and operation metadata;
a bounded UTF-8 buffer delays data until hosts finish cleanup. Deadlines use injected sleep and
cancellation, waiting for the body to settle before callers close resources. Callers must propagate
the signal, dispose the deadline and discard buffered output on failure; no provider/store lifecycle
or automatic retries are imported.
Fixed
- Windows maintenance commands support portable relative PATH entries and custom or sanitized command-processor environments while preserving separate arguments.
Security
- Release checks include source and secret analysis; critical production advisories and critical source findings block publication. Workflow findings are reported for review. PR security remains the fast secret scan.
0.19.0
Fixed
- Windows updater and MCP setup commands resolve through absolute PATH entries and use an explicit command processor, avoiding accidental execution from the current folder. POSIX resolution is unchanged.
Added
/updateexportsexecutableOnPathandexecutableEnvironmentfor consumers using the same Windows command resolution.
0.18.2
0.18.1
0.18.0
Changed — may break callers
- The package is now
@wirecat/cli-core, and the repository isWireCatLabs/cli-core. Install
@wirecat/cli-coreand change imports from@wirecat/cli-core(and its subpaths) to@wirecat/cli-core;
the code is the same as 0.17.3.@wirecat/cli-coregets no new versions. Call the reusable workflows
asWireCatLabs/cli-core/.github/workflows/....