wharfy 0.3.0 — tools with dependencies install and just work
0.2.x made every channel actually ship. 0.3.0 closes the next gap: a tool that needs another tool at runtime now pulls it in via the usual install. Reported as problem → before → after.
A tool with dependencies arrived “installed but broken”
- Problem: when a binary shells out to another command at runtime, the usual install should bring that dependency too — but no owned channel could carry one.
homebrew.dependencieseven existed in the schema yet never reached the artifact (a dead field). - Before: writing it in
wharfy.yamlchanged nothing in the formula / manifest / deb·rpm — the tool installed, the dependency didn’t. - After: declare it once and wharfy emits it in each channel’s native form.
| Channel | wharfy.yaml | Generated |
|---|---|---|
| homebrew | dependencies: [git] | depends_on "git" |
| scoop | dependencies: [git] | manifest "depends" |
| apt / rpm | depends / recommends / suggests | deb·rpm Depends / Recommends / Suggests |
apt/rpm keep required, recommended, and suggested separate, and you write
apt and rpm independently — package names differ across distros, so each set
is scoped to its own format. Output is deterministic (sorted); omit the key and
the artifact is unchanged (backward compatible).
Getting it
brew upgrade wharfy / scoop update wharfy / go install github.com/ShiroDoromoto/wharfy/cmd/wharfy@latest. On Linux, from the apt / yum repo.