小ネタもうひとつ.
Servo の開発をするとお世話になるのが highfive という bot です.新規コントリビュータの人が参加しやすいように作られた bot だそうです.アイコンかわいい.
お世話になる場面は下記の2つです.
- Issue を自身に割り当てる
- PR のラベル管理
Issue を自身に割り当てる
Servo はまだまだ新機能の開発ややり残したタスクなどが Issue としてたくさん上がっています.これはすべてのデベロッパーに開放されており,やろうと思えばいつでも Issue に取り組むことができます.その最初のタッチポイントとして highfive が登場します.
自身が担当したい Issue に次のようなコメントを残すと,自身にその Issue がアサインされます.
@highfive assign me
するとこんな感じで,Issue にラベルがつけられて自身に Issue がアサインされます.
PR のラベルの管理
Servo では,S-awaiting-review
(レビュー待ち) といったラベルで PR の状況を管理しています.ラベル管理はほぼすべて highfive が行っていますね.できる子…!
余談ですが,最初に PR を投げるとまず自動的に S-awaiting-review
というラベルが付与されます.その後,もしコードの修正が必要なようであれば,S-needs-code-changes
というラベルが付与されます.さらにテストが落ちていたりすると,highfive が S-test-failed
というラベルが付与されます.落ちたテストが修正コミットにより再び通ると highfive が S-awaiting-review
を付与し,S-test-failed
のラベルを取り除きます.
このあたり,人力でやると運用がカオスになってしまいがちなので,こういった bot に自動化させておくというのは非常に正しいなと思いました.
highfive 自身
ちなみに Highfive はソースコードが公開されています.
以上小ネタでした.