[xorm] 初めてOSSにプルリク出してマスターマージされた話
先輩エンジニアからOSSに参加して活躍しているのをみていて、
自分も参加してみたいなーと思っていたので、
今回、初めてOSSに参加してみました。
そんな大掛かりなものではなく、ちょっとしたバグ修正ですが無事マスターマージされて嬉しかったのでブログに書きます。
手探りで始める
今回プルリクを出すのはこちら
XORM – eXtra ORM for Go
https://xorm.io/
Go製のORMです。
Go向けのORMとしてはGORMと共に人気のあるORMです。
GORMのが人気あるみたいですが、個人的にはgormよりxormの方が可読性がよくて気に入ってます。
リポジトリはこちら
・xorm/xorm
https://gitea.com/xorm/xorm
githubからgiteaに移行されてます
こちらが旧リポジトリ
https://github.com/go-xorm/xorm
フォークする
ますプルリクをだしたいリポジトリからフォークします。
先にgiteaのアカウントは作っておいた方がスムーズです。
フォークしたリポジトリがこちら
https://gitea.com/kusana/xorm
修正点
exist関数
xormには目的のレコードが存在するか否かチェックする「exist関数」という関数が実装されています。今回はこのexist関数で挙動で直したいところがあったので修正してプルリクを作成します。
この関数、単独テーブルに対して使用した場合は期待通りに動いていたのですが、
Joinした時に期待する動きができていなかったので修正しました。
プルリクしてみる
修正してテストを書き動作確認して・・
https://gitea.com/xorm/xorm/commit/c3f05d347b7f75a7d9491a1ee4e697ba4f35b6be
プルリクを出す!
https://gitea.com/xorm/xorm/pulls/1520
課題(issues)を立てる
プルリク を出して二日ぐらい音沙汰がなかったので課題(issues)をたててアピールしてみた。
https://gitea.com/xorm/xorm/issues/1522#issue-29230
あとCIが謎のこけかたをしていたので、そのことも質問してみる。
https://gitea.com/xorm/xorm/issues/1522#issuecomment-107315
するとすぐにオーナーから反応があり、CIサーバーに個別で問題があるよう
https://gitea.com/xorm/xorm/issues/1522#issuecomment-107316
しばらしたら直してくれるみたい。
気長に待ってましょうか^^っとおもっていたら。。
その日のうちにオーナーが個別でレビュー、ローカルテストしてくれた!うれしー!
Master Marge
issueたててその日のうちにマージしてくれました
やったぜ、ついにきましたマスターマージ
https://gitea.com/xorm/xorm/pulls/1520
感想
はじめなにもルールとかわからず
いきなりプルリクだけだしても反応なしだったので、先にissuesを立てないといけないっぽい?OSSによってルールとかもあるようなので
一応READMは読んだのですが見落としていたかも。。
ともかくいきなりの横から出したプルリクをレビュー、マージしてくれてテンション上がりました。感謝!
Go製のパッケージ等はGoで書かれているので、
Go言語できる人だとすぐ読めるのが楽しい!
PHPとかだとCで書かれたパッケージなどがあったりでこう簡単には行かないですよね
読める、すぐ動かせる、いじれるの3拍子揃ってます