Symfony Advent Calendar 2020 day4 です! 昨日は @ttskchさんのSymfonyFormについての記事 でした。
昨夜から SymfonyWorld Online 2020 に参加しています。英語漬け&夜ふかしのせいで今かなり眠いです…。 SymfonyWorld の一番最初、Fabienの基調講演前にSymfony Core TeamのNicolas Grekasさんから短いトークがありました。 Symfonyへのコントリビュートを呼びかけるものでした。
SymfonyにPullRequestを送るときにやってほしいこと
symfony/symfonyレポジトリに対して送る
Symfonyはsplitshを使って各コンポーネントやバンドルごとのレポジトリを持っていますが、PullRequestは必ずすべてを統合したsymfony/symfonyに対して送る必要があります。
差分を適用したい最も低いブランチに対してPullRequestを送る
たとえば、4.4以降masterまで適用したい場合は4.4ブランチに対してPullRequestを送ります。 (ただし、既にメンテナンスされていないバージョンに対しては送ってもマージされないと思いますが)
masterにPullRequestを送ってしまうとmaster 以降 にしか適用されなくなってしまうので気をつけてください。 PullRequestが4.4にマージされた後、同じ差分をmasterまでマージするのはCore Teamがやってくれるので、たくさんのバージョンブランチに対してPullRequestを送る必要はありません。
テストをつける
意外に思われるかもしれませんが、Symfonyに送られてくるPullRequestにもテストのないものが多いそうです。 小さなtypo修正ならともかく、バグフックスや機能追加の場合、テストのないものは受け入れられないので、テストは必ず書きましょうとのことでした。
コメントを歓迎する(受け入れる)
SymfonyにPullRequestを出すと、何か指摘コメントがつくことがほとんどです。私もPullRequestにつけたテストでmockを使っていたら、「mockを使うな」と言われてコメントで反論したら、思いがけず大激論になってしまった経験があります
Nicolasさんによると、自分の送ったPullRequestにつくコメントは成長のチャンスなので、拒絶せずに受け止めてほしいということでした。(もちろん指摘を丸呑みせよという意味ではないと思います)
バグフィックスや機能追加ができなくてもSymfonyに貢献できるお仕事
…と言われても「コントリビュートしてみたいけど、そんなすごい新機能とか思いつかないし、バグも見つけられないし直せないし…」と思う方がほとんどだと思います。 SymfonyにPullRequestを送るだけでなく、他の方法で貢献することもできます。
symfony/symfonyの新着のissuesを見て、
- バグの再現を手伝う
-
help wanted
ラベルのついたissueで手伝えそうなことがあればやってみる -
good first issue
ラベルのついたissueに挑戦してみる
symfony/symfonyの新着のPullRequestを見て、
- レビューする
のも立派なコントリビュートになります。 事実、いまSymfony Core Teamで活躍しているスーパーエンジニア達も最初はレビュアーとして活躍したところから、どんどん頭角を表してCore Teamに入った方もいると聞いたことがあります。
hackdayに参加してみよう
ここまで読んで、「よーし、自分もSymfonyにコントリビュートしてみよう!」という気分になった方に朗報です! 12/5(土)朝9時〜(日本時間だとたぶん17時〜)Symfony Hackdayがあります。 https://sfhackday.com/
Symfony devのSlackに登録(無料)して、 #hackday
チャンネルに入ればOK。
英語ですが、テキストコミュニケーションなのでGoogle翻訳で十分です。
私も家事の合間に参加する予定です!
#hackday
チャンネルでお会いしましょう!