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.4k
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
Automatically generating types by running tests
sinsoku
3
11k
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
8
2.6k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
270
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
320
"型"のあるRailsアプリケーション開発 / Typed Rails application development
sinsoku
10
2.9k
Let's get started with Ruby && Rails Tips
sinsoku
0
460
LTの敷居を下げる / Lower the threshold for LT
sinsoku
1
400
CircleCIの高速化🚀 / CircleCI faster
sinsoku
3
1.5k
Railsアプリと型検査 / Rails app and type checking
sinsoku
5
1.6k
Other Decks in Technology
See All in Technology
生成AI時代に若手エンジニアが最初に覚えるべき内容と、その学習法
starfish719
1
160
「O(n log(n))のパフォーマンス」の意味がわかるようになろう
dhirabayashi
0
170
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
950
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
16
8.3k
Introducing RFC9111 / YAPC::Fukuoka 2025
k1low
1
250
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
9
3.5k
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
220
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
610
ググるより、AIに聞こう - Don’t Google it, ask AI
oikon48
0
920
⽣成 AI で進化する AWS オブザーバビリティ
o11yfes2023
0
130
re:Invent完全攻略ガイド
junjikoide
1
360
AIでテストプロセスを自動化しよう251113.pdf
sakatakazunori
0
150
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Why Our Code Smells
bkeepers
PRO
340
57k
Practical Orchestrator
shlominoach
190
11k
Making Projects Easy
brettharned
120
6.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
KATA
mclloyd
PRO
32
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Designing for humans not robots
tammielis
254
26k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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