Update::Usecase
新しい版を探し、見つけたかどうかを覚える。
Constants
Constructors
Instance methods
今のチャンネルで見つけている新しい版。 別のチャンネルで確認した結果は、設定と食い違うため返さない。
新しい版を探す。
手元ビルドの版(0.1.0-dev)は運用しているタグの綴りから外れており、 何と比べても順序が決まらない。確認そのものを行わず Unknown を返す。
直近の確認に使ったチャンネル。まだ確認できていなければ nil。
結果と一緒に覚えておかないと、設定を test から stable へ変えたときに、 直前に見つけたプレリリースが次の確認まで表示に残る。 逆向きでは、プレリリースを一度も調べていないのに「最新である」と出る。
知らせた版として覚える。バルーンを出せた後に呼ぶ。
自動と手動のどちらの経路でも、覚えるのはここだけである。 確認の側で覚えると、出せなかった版まで覚えてしまい、 利用者が一度も見ないまま以後の確認で抑止される。
記録より古い版で上書きしない。チャンネルを往復したときに、 既に伝えてある版より古いものへ記録が下がると、その版をまた知らせることになる。
既に知らせた版なら UpToDate へ倒す。自動の確認だけがこれを通す。
手動で押したときの結末には使わない。抑止した結末をそのまま返すと、 情報タブに新しい版が出ているのにバルーンだけ「最新である」と言うことになる。 押した人へは抑止前の結末を返す。
等値で見るわけにはいかない。チャンネルを往復すると記録が入れ替わるためである。 stable の 2.0.0 を知らせた後に test の 2.1.0-test1 を知らせて stable へ戻すと、 記録は 2.1.0-test1 になっており、等値では 2.0.0 を未通知と判断して知らせ直す。 「これ以上に新しいものは既に伝えてある」と読めば、往復しても増えない。
ここでは覚えない。覚えるのは mark_notified であり、呼ぶのはバルーンを 出せた後である。ここで覚えると、出せなかった版まで以後の確認で抑止される。