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
Get started with OSS contributions
Search
Takumi Shotoku
May 25, 2023
Technology
2
1.2k
Get started with OSS contributions
OSSへのコントリビュート - Techmee vol.7
https://timeedev.connpass.com/event/279568/
Takumi Shotoku
May 25, 2023
Tweet
Share
More Decks by Takumi Shotoku
See All by Takumi Shotoku
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
6
1.6k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
200
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
250
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
9
2.6k
Let's get started with Ruby && Rails Tips
sinsoku
0
390
LTの敷居を下げる / Lower the threshold for LT
sinsoku
1
350
CircleCIの高速化🚀 / CircleCI faster
sinsoku
3
1.3k
Railsアプリと型検査 / Rails app and type checking
sinsoku
5
1.4k
💎のつくりかた 2023 / How to make gems 2023
sinsoku
2
360
Other Decks in Technology
See All in Technology
プロセス改善による品質向上事例
tomasagi
2
2.6k
速くて安いWebサイトを作る
nishiharatsubasa
10
13k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
610
The Future of SEO: The Impact of AI on Search
badams
0
200
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
710
アジャイル開発とスクラム
araihara
0
170
分解して理解する Aspire
nenonaninu
1
200
バックエンドエンジニアのためのフロントエンド入門 #devsumiC
panda_program
18
7.5k
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5.2k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Gamification - CAS2011
davidbonilla
80
5.1k
What's in a price? How to price your products and services
michaelherold
244
12k
The Language of Interfaces
destraynor
156
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Why Our Code Smells
bkeepers
PRO
336
57k
Transcript
Get started with OSS contributions Techmee vol.7 2023/05/25 1
ࣗݾհ • ໊લ: ਖ਼ಙ (aka: ਆ) • ձࣾ: גࣜձࣾλΠϛʔ •
GitHub: @sinsoku (ը૾ӈ্) • Twitter: @sinsoku_listy (ը૾ӈԼ) • ͖ͳݴޠ: Rust ͪΖΜRubyʂ ! • ࣄ: YAMLͱHCLʢTerraformʣ৬ਓ 2
RubyKaigi 2023 5/11-13 3
দຊ 4
ͦɺদຊϒϧϫϦʔ 5
#kaigieffect 6
! ʮOSSͷߩݙͦ͠͏ʯ ! ʮOSS͘͠φΠϤʯ 7
ΞδΣϯμ 1. OSSʹߩݙ͢Δಈػ 2. OSSʹߩݙ͢Δํ๏ͱࣄྫհ 3. RailsͰૂ͍ͷߩݙϙΠϯτ 8
1. OSSʹߩݙ͢Δಈػ 9
ۀͰOSSͷΛݟ͚ͭΔ • ! ػೳෆ: ͋ͱগ͠ػೳ͕Γͳ͍ • " όά: υΩϡϝϯτͱڍಈ͕͍͋ͬͯͳ͍ •
# આ໌ෆ: ॲཧͷڍಈ͕͔ΓͮΒ͍1 1 υΩϡϝϯτΤϥʔจݴΛͤΔՄೳੑ 10
! खݩͰ͢͜ͱͰ͖Δ 11
! ϞϯΩʔύον2 # config/application.rb require 'webpacker/version' raise 'Consider removing this
patch' unless Webpacker::VERSION == '5.4.4' module WebpackerPatch module FasterCompilation # https://github.com/rails/webpacker/pull/2855 def fresh? last_compilation_digest&.== watched_files_digest end end Webpacker::Compiler.prepend(FasterCompilation) end 2 https://docs.ruby-lang.org/ja/latest/method/Module/i/prepend.html 12
! GitHubͰϑΥʔΫ gemΛϑΥʔΫ͠ɺίʔυΛͨ͠gemΛGemfileͰࢀর͢Δɻ # Gemfile source 'https://rubygems.org' git_source(:github) { |repo|
"https://github.com/#{repo}.git" } gem "foo", github: "sinsoku/foo" 13
OSSʹύονΛૹΔཧ༝ • ! ύονΛϝϯς͠ͳͯ͘ࡁΉ • " ίϛολͷϨϏϡʔΛड͚ΒΕΔ • ♻ OSSͷԸฦ͠
! OSSʹײँͯ͠ΔͷͰɺͰ͖ΔൣғͰڠྗ͍ͨ͠ 14
ͦͷଞͷϝϦοτ • ! ٕज़ྗͷ্ • " ӳޠྗͷ্ • # ΧδϡΞϧ໘ஊͷձωλ
• $ ษڧձͷొஃґཔʹܨ͕Δʢnowʣ 15
2. OSSʹߩݙ͢Δํ๏ͱࣄྫհ 16
! OSSʹߩݙ͢Δ४උ ߩݙ͢Δਓ͚ͷυΩϡϝϯτΛಡΈ·͠ΐ͏ɻ • rails/rails: Contributing to Ruby on Rails3
• rubocop/rubocop: CONTRIBUTING.md4 • fluent/fluent-bit: CONTRIBUTING.md5 5 https://github.com/fluent/fluent-bit/blob/v2.1.3/CONTRIBUTING.md 4 https://github.com/rubocop/rubocop/blob/v1.51.0/CONTRIBUTING.md 3 https://guides.rubyonrails.org/contributingtorubyonrails.html 17
rails/rails IssueͰػೳཁΛग़͞ͳ͍ɻ 1.4 What about Feature Requests? Please don't put
"feature request" items into GitHub Issues. cosmetic changesͷϓϧϦΫΛग़͞ͳ͍ɻ Changes that are cosmetic and do not add anything substantial to the stability, functionality, or testability of Rails will generally not be accepted 18
19
rubocop/rubocop 20
fluent/fluent-bit 21
! OSSʹؔΘͬͯΈΔ 22
! ؆୯ͳߩݙ • TwitterϒϩάΛॻ͘ • GitHubͰϦΞΫγϣϯ͢Δ • ΦϑϥΠϯͰ࡞ऀʹײँΛ͑Δ • !
࠙ձͰձͷ͖͔͚ͬʹྑ͍ 23
24
~/.config/rails/railsrc ʹରԠ͢ΔϓϧϦΫɻ 25
! OSSͷ։ൃʹؔΘͬͯΈΔ 26
! গ͍͠͠ߩݙ • IssueͷτϦΞʔδʹڠྗ͢Δ • ϓϧϦΫͷϨϏϡʔʹࢀՃ͢Δ • υΩϡϝϯτΛ͢ 27
28
29
https://github.com/rails/rails/issues/37446 30
https://sinsoku.hatenablog.com/entry/2019/08/08/020954 31
https://github.com/rails/rails/pull/39411#discussion_r432927246 32
https://github.com/rails/rails/pull/37054 33
34
rurema - ! Ͱ࢝Ί͍͔͢ 35
! ͞ΒʹOSSͷ։ൃʹؔΘͬͯΈΔ 36
! ͍͠ߩݙ • IssueΛใࠂ͢Δ • όάΛमਖ਼͢Δ • ৽ػೳΛՃ͢Δ 37
ؾΛ͚ͭͯΔ͜ͱ • Issueʹ࠷খͷ࠶ݱखॱΛॻ͘ • աڈͷIssueͱϓϧϦΫΛࢀߟʹ͢Δ • ίϛοτϝοηʔδΛஸೡʹॻ͘6 6 Railsͩͱgit log
--author=kamipo --no-merges Λࢀߟʹ͍ͯ͠Δ 38
https://github.com/rails/rails/issues/39205 39
https://github.com/github/branch-deploy/pull/103 40
3. RailsͰૂ͍ͷߩݙϙΠϯτ 41
RailsͰૂ͍ͷߩݙϙΠϯτ 1. IssueͱϓϧϦΫͷτϦΞʔδ 2. Rails v7.1.0.rc1 ͷಈ࡞ใࠂ 3. Docker, mrsked/mrsk
42
IssueͱϓϧϦΫͷτϦΞʔδ • ίʔυͷมߋΑΓෑډ͕͍ • Railsίϛολͷख͕Γͯͳ͍ • Issues 385 / Pull
requests 4557 • ࣗͷษڧʹͳΔ • େࣄͳͷӳޠྗͱؾ߹͍ 7 2023-05-24ݱࡏ 43
Rails v7.1.0.rc1 ͷಈ࡞ใࠂ • ۀͷCIͰ2όʔδϣϯΛಈ͔ͯ͠ΈΔ • σάϨ͕͋ΕɺRailsʹIssueͰใࠂ͢Δ • gem͕ະରԠͳΒɺv7.1ʹରԠ͢ΔϓϧϦΫΛૹΔ •
v7.1ͷϦϦʔεલͳΒRailsίϛολͷॿྗΛظͰ͖Δ • ϦϦʔεޙ͍͠... 44
https://github.com/rails/rails/issues/361038 8 kamipo͞Μ͕1Ͱमਖ਼͍ͯ͠Δ ! 45
Docker, mrsked/mrsk • Dockerfile • v7.1ͰDockerfile͕ੜ͞ΕΔ • https://github.com/rails/rails/pull/46762 • mrsked/mrsk
• DHHͷσϓϩΠπʔϧ • https://github.com/rails/rails/pull/47926 46
ͥͻOSSʹߩݙͯ͠Έ·͠ΐ͏ 47