wharfy 0.2.4 — 全チャネルが実際に届くようになった
0.1.0 以降の磨き込み(0.2.0–0.2.4 を折り込み)。Scoop を加え、apt/rpm を実際に配布でき るようにし、winget へ申請しました。要点を「問題点 → 変更前 → 変更後」で。
apt/rpm を fury.io へ配布できなかった
- 問題点: fury は push 先(
push.fury.io)と配信先(apt.fury.io/yum.fury.io)が別ホストなのに、wharfy は 1 つの URL しか持てず発行できなかった。 - 変更前:
apt.repo1 つを push と確認の両方に使う → fury で破綻。 - 変更後:
apt: {provider: fury, user: <名前>}だけで push / 配信 URL を自動導出(生 URL 2 本立ても可)。
status が fury 上のバージョンを検出できなかった
- 問題点: バージョン確認が
dists/stable/...決め打ちで、fury の flat repo(/Packages)に 404。公開済みでも「未公開」と誤報した。 - 変更前: 正式レイアウトのみ・最初に見つけた(=最古)バージョンを返す。
- 変更後: flat → 正式レイアウトの両対応+複数バージョンから最新を選択。
新しいバージョンが出ても気づけなかった
- 問題点:
wharfy versionは現在のバージョンを出すだけだった。 - 変更前: 更新通知なし。
- 変更後: 最新リリースと照合し(best-effort)、新しいバージョンがあれば
next:に upgrade を案内。
トークンを毎回 env で渡す必要があった
- 問題点: fury トークンは環境変数でしか渡せず、別端末の
exportは届かず、値がシェル履歴に残りがちだった。 - 変更前:
PACKAGE_REPO_TOKEN(env)のみ。 - 変更後:
wharfy auth furyで OS keychain に隠し入力で保存。publish は env → keychain の順で解決(CI は env のまま)。
入れ方
brew upgrade wharfy / scoop update wharfy / go install github.com/ShiroDoromoto/wharfy/cmd/wharfy@latest。Linux は apt / yum リポジトリから。winget は申請中です。