v0.5.3
New features
-
coop resizechanges memory and vCPUs in place (#397) —
coop resizenow accepts--mem <MiB>and--vcpus <N>alongside the
existing--size, so a stopped instance's RAM and vCPU count can be
changed without destroy-and-recreate. At least one of the three is
required;--startboots the instance after applying the change
instead of leaving it stopped. The backend config artifact is now the
source of truth for mem/vcpu (mirroring how disk already works): on
Firecracker the per-instance JSON is read back and only the infra
fields are regenerated on restart, so a change to the global[vm]
config no longer silently alters RAM for every existing instance; on
Lima thecpus/memorykeys inlima.yamlare rewritten atomically.
coop statusreads mem/vcpu from the artifact. A failed--start
boot rolls the values back so the instance stays bootable. -
--jsonoutput on read/query commands (#386) — An opt-in--json
flag on the highest-value read commands emits machine-readable output
for reliable parsing; the human-readable default is unchanged. Covered:
status,list/ls,images,devcontainer check,github status,
profiles list, andup/start --dry-run. Each command builds one
Serializeview model and--jsonswitches only the final render
step, so the human and JSON outputs cannot drift; absence is
null/[]rather than sentinel strings. Fordevcontainer checkand
up/start --dry-runthe JSON payload goes to stdout while the human
report stays on stderr, so… --json | jqstays clean. See
docs/json-output-design.md.
Fixes
- AppleDouble sidecars no longer copied on macOS hosts (#376) —
macOS creates._-prefixed AppleDouble sidecar files when archiving
through the systemtar. coop now setsCOPYFILE_DISABLE=1when
creating workspace archives on macOS so these sidecars are not written
into the guest transfer.
Internal
-
.editorconfig(#395) — declares the repo's indentation and
whitespace rules so editors match the project's formatting. -
License field in
Cargo.toml(#387). -
Release workflow sets the release title (#382).