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
420
リリースして 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.4k
ErgoDox を買った話
chocoby
0
880
デザイナーのための tmux 超入門
chocoby
7
10k
おすすめ gem
chocoby
2
1.8k
Other Decks in Programming
See All in Programming
関数型まつりレポート for JuliaTokai #22
antimon2
0
150
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
110
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
310
C++20 射影変換
faithandbrave
0
530
GraphRAGの仕組みまるわかり
tosuri13
8
480
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
480
技術同人誌をMCP Serverにしてみた
74th
1
360
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
340
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
1k
VS Code Update for GitHub Copilot
74th
1
390
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
230
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Building Applications with DynamoDB
mza
95
6.5k
GraphQLとの向き合い方2022年版
quramy
48
14k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
Documentation Writing (for coders)
carmenintech
72
4.9k
Building an army of robots
kneath
306
45k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
A better future with KSS
kneath
239
17k
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 Λ͔ͬ͠Γॻ͍͓ͯ͘
ποίϛͳͲ͋Γ·ͨ͠Β ޙ΄Ͳฉ͔͍ͤͯͩ͘͞ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠