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
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
8
2.4k
Let's get started with Ruby && Rails Tips
sinsoku
0
360
LTの敷居を下げる / Lower the threshold for LT
sinsoku
1
320
CircleCIの高速化🚀 / CircleCI faster
sinsoku
3
1.2k
Railsアプリと型検査 / Rails app and type checking
sinsoku
5
1.4k
💎のつくりかた 2023 / How to make gems 2023
sinsoku
2
330
Make tests run faster
sinsoku
2
640
YARD with RBS Syntax
sinsoku
1
480
Other Decks in Technology
See All in Technology
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
590
元旅行会社の情シス部員が教えるおすすめなre:Inventへの行き方 / What is the most efficient way to re:Invent
naospon
2
340
The Rise of LLMOps
asei
6
1.3k
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
990
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
580
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
Featured
See All Featured
Teambox: Starting and Learning
jrom
133
8.8k
Done Done
chrislema
181
16k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Designing the Hi-DPI Web
ddemaree
280
34k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
BBQ
matthewcrist
85
9.3k
Agile that works and the tools we love
rasmusluckow
327
21k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Facilitating Awesome Meetings
lara
50
6.1k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
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