アルパカログ

カスタマーサポート (CS) とエンジニアリングを掛け算したい CRE (Customer Reliability Engineer) が気になる技術や思ったことなど。

OSSへのPull Requestを怖がっている君へ

誰だって初めは怖いものさ。けど、嬉しいことだってある。

僕は、こんな感じ。*1

リマインダー

Custom reconnect_attempts to Fixnum by otoyo · Pull Request #622 · redis/redis-rb · GitHub

レビューしてもらえませんか?

オーナー

7週間後にリマインドして 🌴 🌞

わかった。良いバケーションを 🏝

7週間経ったよ 🌞

オーナー

リマインドありがとう!週末だから、来週のTODOリストに入れておく!

--

これが文化の違いってやつか…!

最初はやっぱり怖かった

Mojolicious という Perl の Webアプリケーションフレームワークにて。

lookup X-Forwarded-Proto for SSL by otoyo · Pull Request #616 · kraih/mojo · GitHub

ELB のために X-Forwarded-Proto サポートして!

オーナー

で、 X-Forwarded-Proto は一般的なの?

一般的かどうかはわからない…

ELBのヘッダは変えられないから、Mojolicious が X-Forwarded-Proto を見てくれれば便利かなって。

けど、不要ならクローズしてください。ありがとう。

オーナー

1つ言えるのは「Mojolicious にあらゆる X-Forwarded-* ヘッダを詰め込みたくない(多すぎる!)」ってこと。

我々は最も一般的なものだけサポートすべきだから、その他はCPANプラグインでやって。

--

怒られつつも、結局このあと取り込んでもらえた。OSSって厳しいけど楽しい!

ほんの少しからはじめよう

fix dequeue for empty by otoyo · Pull Request #1217 · resque/resque · GitHub

dequeue はキューがないとき 0 を期待しているけど、今は nil を返している。

オーナー

ここはこう書いた方が良いね。

アドバイスありがとう!

オーナー

マージした。貢献ありがとう。

--

たった数行でも貢献は貢献。小さなPull Requestが少しずつOSSを良くしていくんだ。

時には断られることもある

Raise errors when raise_errors option set true by otoyo · Pull Request #1120 · sinatra/sinatra · GitHub

raise_errors オプションを有効にしてもエラーハンドラがエラーをキャッチしちゃってる。

思うに、この場合エラーハンドラを無視して raise すべきじゃないかな。

オーナー

それは正しいけど、すぐには変更できないんだ。

--

ポピュラーなプロダクトほど影響が大きいので、すぐには変更できないってこともある。

こればかりは仕方ない。

感謝されるとすごく嬉しい!

Support batch update resources by otoyo · Pull Request #344 · zendesk/zendesk_api_client_rb · GitHub

オーナー

(バージョン)1.15.0 🎉

レビューありがとう!

オーナー

いくつもグレートなPRありがとう!

--

感謝されるとすごく嬉しい!さあ、Pull Requestしよう!

こちらもあわせてどうぞ

alpacat.hatenablog.com

alpacat.hatenablog.com

*1:読みやすいように意訳してあるから原文はリンク先を見てほしい