Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
バルサ CL 初戦大勝のその後
Search
Doarakko
November 12, 2020
Programming
0
1.3k
バルサ CL 初戦大勝のその後
Doarakko
November 12, 2020
Tweet
Share
More Decks by Doarakko
See All by Doarakko
Cloudflare Workers で X(Twitter)のボットを作ってみた
doarakko
0
300
Vercel Edge Functions を使って作る画像メーカー
doarakko
0
79
JOIN して1ヶ月のエンジニアに聞いた Liiga の良いところ 3 選
doarakko
0
83
わんわおーん
doarakko
0
69
職場を明るくする
doarakko
0
320
コードレビューの時間を削減しました
doarakko
0
99
仕事中に隠れてテレビ番組表を見るぞ
doarakko
0
200
GitHub Project の運用を自動化しました
doarakko
0
110
GitHub Actions に入門しました
doarakko
0
1.3k
Other Decks in Programming
See All in Programming
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
260
今から始めるClaude Code超入門
448jp
8
9.1k
CSC307 Lecture 01
javiergs
PRO
0
690
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
Oxlint JS plugins
kazupon
1
1k
Gemini for developers
meteatamel
0
100
React Native × React Router v7 API通信の共通化で考えるべきこと
suguruooki
0
100
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
740
AgentCoreとHuman in the Loop
har1101
5
250
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
800
CSC307 Lecture 05
javiergs
PRO
0
500
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
470
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Docker and Python
trallard
47
3.7k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Mind Mapping
helmedeiros
PRO
0
90
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
79
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
86
The agentic SEO stack - context over prompts
schlessera
0
650
Transcript
バルサ CL 初戦大勝のその後 @Doarakko
・2019年12月入社(2社目) ・エンジニア歴1.5年 - 仕事: Go, PHP(たまに) - 趣味: Python, C++
・AtCoder 緑 ・海外サッカーをよく見ます 自己紹介 2
CL 初戦前にヘタフェに完封負け 3
【朗報】バルセロナ大量5得点、圧倒的勝利! 4
Gin にコミットしたい >>>>> 眠気 5
コミットしました 6 パッケージのバージョン上げただけだよ
・Go の Web フレームワーク ・外資就活ドットコムのバックエンドで使用 ・OSS(Open Source Software) Gin とは
7
・ブログを書く ・勉強会を開催 ・issue を立てる ・ドキュメントの追加・修正・翻訳 ・機能追加 ・バグ修正 OSS に貢献するには 8
他にもあるかも
・ブログを書く ・勉強会を開催 ・issue を立てる ・ドキュメントの追加・修正・翻訳 ・機能追加 ・不具合・バグの修正 OSS にコミットするには 9
他にもあるかも
issue 探し 10 OSS によっては「good first issue」というラベルをつけてくれています!
Undefined validation function 'required_if' on field 'Field' 11 issue template
に合わせて書いてくれているのでローカルでの再現や対応がしやすかった
Gin の binding タグとは 12 Gin の内部では validator パッケージを使っているので挙動は同じ Gin
binding タグ validator の validate タグ
binding タグで「required_if」を指定すると定義されてませんよエラー 13
・ローカルで再現するか → 再現 ・「required_if」以外を指定するとどうなかるか → 同様のエラーになるものが一部あり ・validator パッケージの issue に報告が上がっていないか
→ 特になし ・(Gin のバージョンを最新にしても再現するか) 一つずつ確認していく 14
Gin は内部で validator パッケージを使用している 15
validator パッケージのバージョンを見てみると... 16 Gin が使っているバージョン 最新バージョン
17
required_if がリリースされたバージョンを調べてみる 18 ソースから PR を特定して Releases からバージョンを確認
Gin が使っているバージョンでは「required_if」が追加されていない 19 validator パッケージのバージョンあげるぞ
PR を上げるまでの手順 20
・README.md を読む ・CODE_OF_CONDUCT.md を読む ・CONTRIBUTING.md を読む ・コメントがついている issue や PR
を見る(雰囲気を知るため) OSS に PR を上げる前に⚠ 21 ルールが厳格な OSS もあるので必ず読む
① リポジトリを Fork してローカルに落とす 22 本家に直で Push する権限がないため
② go get -u github.com/go-playground/validator/v10 23 動作確認・テストコードの実行も忘れずに!
③ PR 作成 24 マージされた他の方の PR を見て雰囲気を掴む
05:53 25
12:26 26
マージされました 27
・OSS 活動怖くない ・小さな修正でも多くの人のためになる ・issue をよく見てみると意外とコミットチャンスあるかも まとめると... 28
バルサ CL 初戦大勝のその後 @Doarakko