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
410
リリースして 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
880
デザイナーのための tmux 超入門
chocoby
7
10k
おすすめ gem
chocoby
2
1.8k
Other Decks in Programming
See All in Programming
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
530
コードに語らせよう――自己ドキュメント化が内包する楽しさについて / Let the Code Speak
nrslib
5
800
ワンバイナリWebサービスのススメ
mackee
10
7.3k
rbs-traceを使ってWEARで型生成を試してみた After RubyKaigi 2025〜ZOZO、ファインディ、ピクシブ〜 / tried rbs-trace on WEAR
oyamakei
0
910
iOSアプリ開発もLLMで自動運転する
hiragram
6
2.1k
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
210
CQRS/ESのクラスとシステムフロー ~ RailsでフルスクラッチでCQRSESを組んで みたことから得た学び~
suzukimar
0
190
❄️ tmux-nixの実装を通して学ぶNixOSモジュール
momeemt
1
120
AI Coding Agent Enablement in TypeScript
yukukotani
17
6.7k
Blueskyのプラグインを作ってみた
hakkadaikon
1
240
當開發遇上包裝:AI 如何讓產品從想法變成商品
clonn
0
2.4k
Agent Rules as Domain Parser
yodakeisuke
1
270
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
336
57k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Scaling GitHub
holman
459
140k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.6k
Into the Great Unknown - MozCon
thekraken
38
1.8k
Producing Creativity
orderedlist
PRO
346
40k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
The World Runs on Bad Software
bkeepers
PRO
68
11k
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 Λ͔ͬ͠Γॻ͍͓ͯ͘
ποίϛͳͲ͋Γ·ͨ͠Β ޙ΄Ͳฉ͔͍ͤͯͩ͘͞ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠