Upgrade to Pro — share decks privately, control downloads, hide ads and more …

継続的 npm update のために実践していること

継続的 npm update のために実践していること

We Are JavaScripters! @17th の発表資料です。
https://wajs.connpass.com/event/81022/

Tadashi Shigeoka

March 30, 2018
Tweet

Other Decks in Programming

Transcript

  1. ܧ ଓ త O Q N V Q E B U F ͷ ͨ Ί ʹ
    ࣮ ફ ͯ͠ ͍ Δ ͜ ͱ
    γ ή Φ Χ λ μ γ - Ta d a s h i S h i g e o k a
    E n g i n e e r i n g L e a d e r o f To k y o O t a k u M o d e I n c .
    M a rc h . 3 0 2 0 1 8

    View Slide

  2. " C P V U N F
    • full_name:
    • en: Tadashi Shigeoka
    • ja: γήΦΧ λμγ
    • job: Software Engineer
    • contact: http://codenote.net/profile

    View Slide

  3. 5P L Z P 0 U B L V . P E F ͱ ͍ ͏ ձ ࣾ Ͱ ಇ ͍ͯ · ͢

    View Slide

  4. શ ͯ + B W B 4 D S J Q U ͳ ؀ ڥ ఱ ࠃ

    View Slide

  5. ಥ વ Ͱ ͢ ͕ ɺ

    View Slide

  6. ຖ ೔ O Q N V Q E B U F ͯ͠ · ͢ ͔ ❓

    View Slide

  7. α ʔ Ϗ ε ։ ൃ ͕ ๩ ͠ ͘ ͯ ɺ
    ͦ Ε Ͳ ͜ Ζ ͡ Ό ͳ ͍ ʁ

    View Slide

  8. Ͱ ͢Α Ͷ ʔ

    View Slide

  9. α ʔ Ϗ ε ։ ൃ ͱ O Q N V Q E B U F ͷ ՝ ୊
    • Ͳ͏ͯ͠΋ࣄۀతͳαʔϏε։ൃ͕༏ઌ͞ΕΔ
    • ͢Δͱɺnpm module ͷόʔδϣϯ͕ݹ͍··…
    • ࠓ࢖͍ͬͯΔ npm module ͷ৽͍͠όʔδϣϯͰ௥Ճ
    ͞Εͨ৽ػೳΛ࢖͍͍ͨ
    • ͚Ͳɺnpm update ͢Δʹ΋Өڹൣғ͕ଟͯ͘Ξο
    ϓσʔτ͢Δ͕࣌ؒແ͍

    View Slide

  10. O Q N ϩ ʔ Χ ϧ Ϟ δϡ ʔ ϧ Λ ׆ ༻ ͢ Δ
    • ϩʔΧϧϞδϡʔϧΛ࢖͑͹৽چόʔδϣϯΛڞଘͭͭ͠ npm
    module Λར༻Ͱ͖Δ
    • چόʔδϣϯ͸ require(‘moment’); Ͱ࢖͏
    • ৽όʔδϣϯ͸ require(‘latest_modules/moment’); Ͱ࢖͏
    • ར༻ྫ: https://github.com/bakorer/npm-local-module-example
    • ৄ͘͠͸ azu ͞ΜͷهࣄΛޚཡ͍ͩ͘͞
    • http://efcl.info/2014/10/04/npm2-local-module/

    View Slide

  11. O Q N V Q E B U F Q V M M S F R V F T U ࡞ ੒ Λ
    ࣗ ಈ Ͱ ͯ͠ ͘ Ε Δ α ʔ Ϗ ε Λ ׆ ༻ ͢ Δ
    • ϥΠϒϥϦࣗಈΞοϓσʔταʔϏεͷྫ
    • Greenkeeper.io - https://greenkeeper.io/
    • Dependabot - https://dependabot.com/
    • ࣗಈͰ pull request ࡞੒·Ͱ΍ͬͯ͘ΕΔͷͰɺ͋ͱ
    ͸ Review ͯ͠ Merge ͢Δ͚ͩ

    View Slide

  12. % F Q F O E B C P U ར ༻ ྫ
    h t t p s : / / g i t h u b . c o m / b a k o re r / n p m - l o c a l - m o d u l e - e x a m p l e / p u l l / 1

    View Slide

  13. ݹ ͍ O Q N N P E V M F Λ
    M B U F T U @ N P E V M F T ΁ Ҡ ߦ ͢ Δ ख ॱ
    1. ݹ͍ npm module Λঃʑʹ latest_modules ΁ஔ׵
    2. require(‘moment’); → require(‘latest_modules/
    moment’);
    3. ࠷ऴతʹ require(‘latest_modules/moment’); Λഇࢭ͠
    ͯ require(‘moment’); ΁౷Ұ

    View Slide

  14. · ͱ Ί
    • npm ϩʔΧϧϞδϡʔϧΛ׆༻ͯ͠ɺ৽چόʔδϣϯͷ
    npm module Λซ༻ͭͭ͠ɺαʔϏε։ൃ͠Α͏
    • ͜ΕҎ্ɺރΒ͞ͳ͍Α͏ʹϥΠϒϥϦࣗಈΞοϓσʔ
    ταʔϏεΛ׆༻͠Α͏
    • Greenkeeper.io, Dependabot ͳͲ
    • ঃʑʹݹ͍ npm module Λ৽͍͠ npm module ΁ஔ͖
    ׵͑Α͏

    View Slide

  15. 5P L Z P 0 U B L V . P E F ͸ + B W B 4 D S J Q U ͕
    େ ޷ ͖ ͳ Τ ϯ δ χ Ξ Λ ื ू த Ͱ ͢
    I U U Q T D P S Q P S B U F P U B L V N P E F D P N D B S F F S

    View Slide