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

PHPバージョンアップのための依存ライブラリとの付き合い方 / phpcon2022

blue_goheimochi
September 24, 2022

PHPバージョンアップのための依存ライブラリとの付き合い方 / phpcon2022

PHP Conference Japan 2022の登壇資料です。
https://phpcon.php.gr.jp/2022/

blue_goheimochi

September 24, 2022
Tweet

More Decks by blue_goheimochi

Other Decks in Technology

Transcript

  1. PHP
    PHP 2022
    2022.09.24
    Yuta Ohashi

    View Slide

  2. 1 ( )
    PHP

    View Slide

  3. PHP

    View Slide

  4. 4
    PHP
    https://www.php.net/supported-versions.php

    View Slide

  5. 5
    PHP
    https://www.php.net/supported-versions.php

    View Slide

  6. 6
    PHP
    https://www.php.net/supported-versions.php

    View Slide

  7. 7
    PHP
    https://www.php.net/supported-versions.php
    PHP 7.4 : 2022/11/28 End of life
    PHP 8.0 : 2022/11/26 Security fixes only
    PHP 8.1 : 2023/11/25 Active support Security fixes only
    PHP 8.2 : 2022/11/24 Active support

    View Slide

  8. 8
    PHP
    • 3
    • Active support: 2
    • Security fixes only: 1
    • 2 Active support 1 Security fixes only 3

    View Slide

  9. 3

    View Slide

  10. 10


    • End of Life

    • PHP

    View Slide

  11. PHP

    View Slide

  12. PHP

    View Slide

  13. 13
    • PHP
    • 1 PHP5.x PHP7.4

    • 2 PHP7.4 PHP8.0


    • Renovate

    View Slide

  14. 1 PHP5.x PHP7.4

    View Slide

  15. 3

    View Slide

  16. 16
    1 PHP5.x PHP7.4
    https://www.php.net/manual/ja/index.php

    View Slide

  17. 17
    1 PHP5.x PHP7.4

    • SVN 2010 7
    • PHP








    View Slide

  18. 18
    1 PHP5.x PHP7.4
    https://speakerdeck.com/blue_goheimochi/phpconsen2019
    1

    View Slide

  19. 19
    1 PHP5.x PHP7.4
    • PHP
    • PHP


    1
    • Composer


    View Slide

  20. 2 PHP7.4 PHP8.0

    View Slide

  21. 21
    2 PHP7.4 PHP8.0

    • 1
    • Laravel 6

    • Laravel6 PHP7 (6.19.0 PHP8 )

    • PHP7
    • PHP8

    View Slide

  22. 22
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    2. PHP
    3.

    View Slide

  23. 23
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    PHP8 composer install

    View Slide

  24. 24
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    PHP (8.0.23)
    PHP

    View Slide

  25. 25
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    composer update

    View Slide

  26. 26
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    composer.json PHP

    View Slide

  27. 27
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    • PHP7
    • 34 composer.lock PHP7
    • 1 1
    • Github Release composer.json
    • 8


    View Slide

  28. 28
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    socialiteproviders/facebook
    1.0.0 4.1.0
    • Github Release composer.json
    • 1.0.0 5.6 5 7.0 7
    • 4.1.0 7.2 7 8.0 8
    • 4.1.0 PHP8 composer install

    View Slide

  29. 29
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    socialiteproviders/facebook
    • 1.0.0 PHP8
    composer install

    View Slide

  30. 30
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    socialiteproviders/facebook
    • composer.json


    • ^1.0 ^4.0

    View Slide

  31. 31
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    socialiteproviders/facebook
    • -w
    • Renovate
    composer update -w socialiteproviders/facebook:4.1.0

    View Slide

  32. 32
    2 PHP7.4 PHP8.0
    1. PHP7.4 8.0
    • 1 1
    • Release Note





    View Slide

  33. 33
    2 PHP7.4 PHP8.0
    2. PHP
    • composer.json
    • PHP

    View Slide

  34. 34
    2 PHP7.4 PHP8.0
    2. PHP

    View Slide

  35. 35
    2 PHP7.4 PHP8.0
    2. PHP
    • Docker PHP
    • composer install




    • OK

    View Slide

  36. 36
    2 PHP7.4 PHP8.0
    2. PHP

    View Slide

  37. 37
    2 PHP7.4 PHP8.0
    3.
    • PHP7 PHP8

    • PHP7
    • PHP7
    • Laravel 9 PHP7

    View Slide

  38. View Slide

  39. - Renovate -

    View Slide

  40. 40
    composer.json
    {}
    composer.lock
    {}
    Repository
    Renovate
    Renovate

    View Slide

  41. 41
    composer.json
    {}
    composer.lock
    {}
    Repository
    Renovate
    composer.json composer.lock
    Renovate

    View Slide

  42. 42
    composer.json
    {}
    composer.lock
    {}
    Repository
    Renovate
    Renovate

    View Slide

  43. 43
    Renovate

    View Slide

  44. 44
    • Renovate composer.json composer.lock

    • 2


    • composer update (composer.lock

    View Slide

  45. 45
    Renovate
    • 2 1
    • Renovate
    • Renovate


    View Slide

  46. 46
    • Renovate



    • Wiki

    View Slide

  47. 47
    • Renovate



    • Dockerfile PHP
    • package.json

    View Slide

  48. 48
    https://speakerdeck.com/blue_goheimochi/phperkaigi2022

    View Slide

  49. まとめ

    View Slide

  50. 50
    • PHP
    • Active support 2 Security fixes only 1 3
    • PHP

    • Renovate

    View Slide

  51. PHP

    View Slide

  52. ⻘ごへいもち / @blue_goheimochi
    株式会社オウケイウェイヴ
    PHP(Laravel), JavaScript(Vue.js/Nuxt.js),
    ランニング, サッカー, フットサル,
    浜松まつり, PUBG Mobile,
    さわやかのげんこつハンバーグ

    View Slide