リリースして 6 年経つ Gem にどう手を入れるか

37d7ffd14a3d1af0627fcb48e09f0c9a?s=47 Kenta Okamoto
September 13, 2019

リリースして 6 年経つ Gem にどう手を入れるか

「第一回 Ruby で LT しちゃわナイト」で発表したスライドです。

37d7ffd14a3d1af0627fcb48e09f0c9a?s=128

Kenta Okamoto

September 13, 2019
Tweet

Transcript

  1. ϦϦʔεͯ͠ 6 ೥ܦͭ Gem ʹͲ͏खΛೖΕΔ͔ 2019/09/13 ୈҰճ Ruby Ͱ LT

    ͪ͠ΌΘφΠτ chocoby
  2. ࣗݾ঺հ • @cho_co (Twitter) • @chocoby (GitHub) • chocoby.jp •

    झຯ: ࣗసं
  3. ࣗݾ঺հ • όοΫΤϯυ͕ಘҙ • ϑϦʔϥϯε • ࠷ۙͷ͓࢓ࣄ • LINE Bot,

    Rails 6.0 ΁ͷΞοϓάϨʔυ,
 Serverless Framework Ͱ API ࡞੒
  4. jp_prefecture gem https://github.com/chocoby/jp_prefecture

  5. jp_prefecture gem ͱ͸ • ౎ಓ෎ݝΛѻ͏ϥΠϒϥϦ • Ϛελʔσʔλ͸ JIS X 0402

    ࢢ۠ொଜίʔυͱ͍͏ن֨ Λجʹ͍ͯ͠Δ • 2013 ೥ 2 ݄ʹ࠷ॳͷόʔδϣϯΛϦϦʔε • ࠷৽൛͸ v0.10.0 (2019 ೥ 9 ݄ݱࡏ) • Rails 6.0 ରԠࡁΈ
  6. ౎ಓ෎ݝͷίʔυͰݕࡧ͢Δ

  7. ౎ಓ෎ݝͷ໊લͰݕࡧ͢Δ

  8. Ϟσϧʹ૊ΈࠐΜͰ࢖͏

  9. ౎ಓ෎ݝͷϦετΛऔಘ

  10. جຊతͳػೳ΍࣮૷͸ ΄ͱΜͲมΘ͍ͬͯͳ͍

  11. खΛೖΕ͍ͨͱ͜Ζ͸͋Δ

  12. Ͳ͜ʹखΛೖΕ͍ͨͷ͔ • ݕࡧϩδοΫΛվળ͍ͨ͠ • ࢖͍ͬͯͳ͍ػೳΛഇࢭ͍ͨ͠ • αϙʔτ͢Δ Ruby ͱ Rails

    ͷόʔδϣϯΛ੔ ཧ͍ͨ͠
  13. ݕࡧϩδοΫͷվળ

  14. ݕࡧϩδοΫͷվળ • ݕࡧͱ͸ʁ • ౎ಓ෎ݝΛʮ౦ژʯʮͱ͏͖ΐ͏ʯʮtokyoʯ ʮؔ౦ʯͳͲͷจࣈྻͰݕࡧͰ͖Δ • લํҰகͰݕࡧ͍ͯ͠Δ

  15. ݕࡧϩδοΫͷվળ • όά͕͋Δ • ౎ಓ෎ݝΛݕࡧ͢ΔϩδοΫ͸ɺͻΒ͕ͳ΍ ஍Ҭ໊ͳͲ΋ؚΊͯݕࡧ͍ͯ͠ΔͨΊɺҙਤ ͠ͳ͍౎ಓ෎ݝ͕औಘ͞ΕΔ • https://github.com/chocoby/jp_prefecture/ issues/24

  16. ݕࡧϩδοΫͷվળ • ʮ౦ʯͰݕࡧͨ͠Βʮ੨৿ݝʯ͕औಘ͞ΕΔ

  17. ݕࡧϩδοΫͷվળ • มߋ఺ 1: ݕࡧ͢Δ߲໨(ͻΒ͕ͳɺ஍ҬͳͲ) ΛࢦఆͰ͖ΔΑ͏ʹ͢Δ • มߋ఺ 2: ׬શҰகʹ͢Δ

    • มߋ఺ 3: લํҰகͳͲͰݕࡧ͍ͨ͠έʔε ͸ɺϢʔβʔ͕ϩδοΫΛॻ͚ΔΑ͏ʹ͢Δ
  18. ݕࡧϩδοΫͷվળ

  19. ࢖͍ͬͯͳ͍ػೳͷഇࢭ

  20. ࢖͍ͬͯͳ͍ػೳͷഇࢭ: ༣ศ ൪߸ͷ৘ใ • ౎ಓ෎ݝ͝ͱͷ༣ศ൪߸ͷൣғΛ͍࣋ͬͯΔ • KEN_ALL.csv ΛՃ޻ͯ͠ YAML Λ࡞͍ͬͯΔ

    • https://github.com/chocoby/jp_prefecture/blob/ master/data/zip.yml • ༣ศ൪߸͸සൟʹมΘ͍ͬͯΔͷͰਖ਼͍͠৘ใͱ͸ݶΒͳ ͍ • ಉ͍ࠝͯ͠Δσʔλ͸௕ظؒߋ৽͍ͯ͠ͳ͍
  21. ࢖͍ͬͯͳ͍ػೳͷഇࢭ: ༣ศ ൪߸ͷ৘ใ • มߋ఺: ༣ศ൪߸ͷσʔλΛಉࠝ͠ͳ͍ • ༣ศ൪߸ͷ৘ใ͕ඞཁͳ৔߹͸ɺϢʔβʔͷ ํͰσʔλΛ༻ҙͯ͠΋Β͏

  22. αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷ੔ཧ

  23. αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷ੔ཧ • ݱࡏαϙʔτ͍ͯ͠Δόʔδϣϯ • Ruby 1.9.3

    - 2.6 • Rails 3.2 - 6.0 • ςετ͕ඞཁͳύλʔϯ͕૿͑ͯ CI ͷ࣮ߦ͕࣌ؒ௕ ͘ͳΔ • ݹ͍όʔδϣϯΛαϙʔτ͠ଓ͚Δͷ΋͠ΜͲ͍
  24. αϙʔτ͢Δ 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 ݄ݱࡏ
  25. αϙʔτ͢Δ Ruby ͱ Rails όʔδϣϯͷ੔ཧ • Ruby ΍ Rails ͷϝϯςφϯεϙϦγʔΛ౿·͑Δͱ…

    • Ruby 2.4, 2.5, 2.6 • Rails 5.2, 6.0 • 4.2 ʹ͍ͭͯ͸೰ΜͰ͍Δ • 4.2 Λ࢖͍ͬͯΔํͬͯͲΕ͙Β͍͍·͔͢ʁ
  26. ετϨεͳ҆͘શʹΞοϓά Ϩʔυͯ͠΋Β͏ͨΊʹ • ΞοϓάϨʔυΨΠυΛ༻ҙ͢Δ • Rails ͷྫ: https://railsguides.jp/ upgrading_ruby_on_rails.html •

    Sidekiq ͷྫ: https://github.com/mperham/ sidekiq/blob/master/6.0-Upgrade.md • CHANGELOG Λ͔ͬ͠Γॻ͍͓ͯ͘
  27. ποίϛͳͲ͋Γ·ͨ͠Β ޙ΄Ͳฉ͔͍ͤͯͩ͘͞ʂ

  28. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠