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
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
170
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
230
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
9
2.5k
Let's get started with Ruby && Rails Tips
sinsoku
0
380
LTの敷居を下げる / Lower the threshold for LT
sinsoku
1
340
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
350
Make tests run faster
sinsoku
2
670
Other Decks in Technology
See All in Technology
AWS Community Builderのススメ - みんなもCommunity Builderに応募しよう! -
smt7174
0
170
20250116_JAWS_Osaka
takuyay0ne
2
200
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
160
自社 200 記事を元に整理した読みやすいテックブログを書くための Tips 集
masakihirose
2
330
ドメイン駆動設計の実践により事業の成長スピードと保守性を両立するショッピングクーポン
lycorptech_jp
PRO
12
1.8k
JAWS-UG20250116_iOSアプリエンジニアがAWSreInventに行ってきた(真面目編)
totokit4
0
140
月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷
miyachin
1
140
三菱電機で社内コミュニティを立ち上げた話
kurebayashi
1
360
【JAWS-UG大阪 reInvent reCap LT大会 サンバが始まったら強制終了】“1分”で初めてのソロ参戦reInventを数字で振り返りながら反省する
ttelltte
0
140
Git scrapingで始める継続的なデータ追跡 / Git Scraping
ohbarye
5
490
embedパッケージを深掘りする / Deep Dive into embed Package in Go
task4233
1
210
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.4k
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Making the Leap to Tech Lead
cromwellryan
133
9k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
30
2.1k
A better future with KSS
kneath
238
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
For a Future-Friendly Web
brad_frost
176
9.5k
Gamification - CAS2011
davidbonilla
80
5.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
A Tale of Four Properties
chriscoyier
157
23k
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