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
リリースして 6 年経つ Gem にどう手を入れるか
Search
Kenta Okamoto
September 13, 2019
Programming
0
400
リリースして 6 年経つ Gem にどう手を入れるか
「第一回 Ruby で LT しちゃわナイト」で発表したスライドです。
Kenta Okamoto
September 13, 2019
Tweet
Share
More Decks by Kenta Okamoto
See All by Kenta Okamoto
Electron で Evernote クライアントを作ってみた
chocoby
5
2.3k
ErgoDox を買った話
chocoby
0
870
デザイナーのための tmux 超入門
chocoby
7
9.9k
おすすめ gem
chocoby
2
1.8k
Other Decks in Programming
See All in Programming
AWS Amplify Gen2 を活用して社内サービスを1ヶ月でリリースした話
machin19
1
100
楽しく向き合う例外対応
okutsu
0
680
kintone開発を効率化するためにチームで試した施策とその結果を大放出!
oguemon
0
160
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.5k
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
990
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
920
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
110
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
230
TCAを用いたAmebaのリアーキテクチャ
dazy
0
130
From the Wild into the Clouds - Laravel Meetup Talk
neverything
0
150
CI改善もDatadogとともに
taumu
0
200
GoとPHPのインターフェイスの違い
shimabox
2
210
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Docker and Python
trallard
44
3.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Pragmatic Product Professional
lauravandoore
32
6.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Designing for humans not robots
tammielis
250
25k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Typedesign – Prime Four
hannesfritz
40
2.5k
Transcript
ϦϦʔεͯ͠ 6 ܦͭ Gem ʹͲ͏खΛೖΕΔ͔ 2019/09/13 ୈҰճ Ruby Ͱ LT
ͪ͠ΌΘφΠτ chocoby
ࣗݾհ • @cho_co (Twitter) • @chocoby (GitHub) • chocoby.jp •
झຯ: ࣗసं
ࣗݾհ • όοΫΤϯυ͕ಘҙ • ϑϦʔϥϯε • ࠷ۙͷ͓ࣄ • LINE Bot,
Rails 6.0 ͷΞοϓάϨʔυ, Serverless Framework Ͱ API ࡞
jp_prefecture gem https://github.com/chocoby/jp_prefecture
jp_prefecture gem ͱ • ಓݝΛѻ͏ϥΠϒϥϦ • Ϛελʔσʔλ JIS X 0402
ࢢ۠ொଜίʔυͱ͍͏ن֨ Λجʹ͍ͯ͠Δ • 2013 2 ݄ʹ࠷ॳͷόʔδϣϯΛϦϦʔε • ࠷৽൛ v0.10.0 (2019 9 ݄ݱࡏ) • Rails 6.0 ରԠࡁΈ
ಓݝͷίʔυͰݕࡧ͢Δ
ಓݝͷ໊લͰݕࡧ͢Δ
ϞσϧʹΈࠐΜͰ͏
ಓݝͷϦετΛऔಘ
جຊతͳػೳ࣮ ΄ͱΜͲมΘ͍ͬͯͳ͍
खΛೖΕ͍ͨͱ͜Ζ͋Δ
Ͳ͜ʹखΛೖΕ͍ͨͷ͔ • ݕࡧϩδοΫΛվળ͍ͨ͠ • ͍ͬͯͳ͍ػೳΛഇࢭ͍ͨ͠ • αϙʔτ͢Δ Ruby ͱ Rails
ͷόʔδϣϯΛ ཧ͍ͨ͠
ݕࡧϩδοΫͷվળ
ݕࡧϩδοΫͷվળ • ݕࡧͱʁ • ಓݝΛʮ౦ژʯʮͱ͏͖ΐ͏ʯʮtokyoʯ ʮؔ౦ʯͳͲͷจࣈྻͰݕࡧͰ͖Δ • લํҰகͰݕࡧ͍ͯ͠Δ
ݕࡧϩδοΫͷվળ • όά͕͋Δ • ಓݝΛݕࡧ͢ΔϩδοΫɺͻΒ͕ͳ Ҭ໊ͳͲؚΊͯݕࡧ͍ͯ͠ΔͨΊɺҙਤ ͠ͳ͍ಓݝ͕औಘ͞ΕΔ • https://github.com/chocoby/jp_prefecture/ issues/24
ݕࡧϩδοΫͷվળ • ʮ౦ʯͰݕࡧͨ͠Βʮ੨ݝʯ͕औಘ͞ΕΔ
ݕࡧϩδοΫͷվળ • มߋ 1: ݕࡧ͢Δ߲(ͻΒ͕ͳɺҬͳͲ) ΛࢦఆͰ͖ΔΑ͏ʹ͢Δ • มߋ 2: શҰகʹ͢Δ
• มߋ 3: લํҰகͳͲͰݕࡧ͍ͨ͠έʔε ɺϢʔβʔ͕ϩδοΫΛॻ͚ΔΑ͏ʹ͢Δ
ݕࡧϩδοΫͷվળ
͍ͬͯͳ͍ػೳͷഇࢭ
͍ͬͯͳ͍ػೳͷഇࢭ: ༣ศ ൪߸ͷใ • ಓݝ͝ͱͷ༣ศ൪߸ͷൣғΛ͍࣋ͬͯΔ • KEN_ALL.csv ΛՃͯ͠ YAML Λ࡞͍ͬͯΔ
• https://github.com/chocoby/jp_prefecture/blob/ master/data/zip.yml • ༣ศ൪߸සൟʹมΘ͍ͬͯΔͷͰਖ਼͍͠ใͱݶΒͳ ͍ • ಉ͍ࠝͯ͠Δσʔλظؒߋ৽͍ͯ͠ͳ͍
͍ͬͯͳ͍ػೳͷഇࢭ: ༣ศ ൪߸ͷใ • มߋ: ༣ศ൪߸ͷσʔλΛಉࠝ͠ͳ͍ • ༣ศ൪߸ͷใ͕ඞཁͳ߹ɺϢʔβʔͷ ํͰσʔλΛ༻ҙͯ͠Β͏
αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷཧ
αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷཧ • ݱࡏαϙʔτ͍ͯ͠Δόʔδϣϯ • Ruby 1.9.3
- 2.6 • Rails 3.2 - 6.0 • ςετ͕ඞཁͳύλʔϯ͕૿͑ͯ CI ͷ࣮ߦ͕࣌ؒ ͘ͳΔ • ݹ͍όʔδϣϯΛαϙʔτ͠ଓ͚Δͷ͠ΜͲ͍
αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷཧ • Ruby ͷϝϯςφϯεϙϦγʔ • 2.4
(ηΩϡϦςΟʔ), 2.5 - 2.6 (όά/ηΩϡϦςΟʔ) • https://www.ruby-lang.org/en/downloads/branches/ • Rails ͷϝϯςφϯεϙϦγʔ • 5.2 (ηΩϡϦςΟʔ), 6.0 (όά/ηΩϡϦςΟʔ) • https://railsguides.jp/maintenance_policy.html • 2019 9 ݄ݱࡏ
αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷཧ • Ruby Rails ͷϝϯςφϯεϙϦγʔΛ౿·͑Δͱ…
• Ruby 2.4, 2.5, 2.6 • Rails 5.2, 6.0 • 4.2 ʹ͍ͭͯΜͰ͍Δ • 4.2 Λ͍ͬͯΔํͬͯͲΕ͙Β͍͍·͔͢ʁ
ετϨεͳ҆͘શʹΞοϓά Ϩʔυͯ͠Β͏ͨΊʹ • ΞοϓάϨʔυΨΠυΛ༻ҙ͢Δ • Rails ͷྫ: https://railsguides.jp/ upgrading_ruby_on_rails.html •
Sidekiq ͷྫ: https://github.com/mperham/ sidekiq/blob/master/6.0-Upgrade.md • CHANGELOG Λ͔ͬ͠Γॻ͍͓ͯ͘
ποίϛͳͲ͋Γ·ͨ͠Β ޙ΄Ͳฉ͔͍ͤͯͩ͘͞ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠