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

5年ぶりにPHPを書いた話

 5年ぶりにPHPを書いた話

サボっていたStaticMockのメンテナンスを再開しました。

405ad7da1defc0f6f8804e026778038f?s=128

Toshiyuki Takahashi

March 24, 2021
Tweet

Transcript

  1. 5年ぶりにPHPを書いた話 @tototoshi / はじめてのIT勉強会 in 仙台 #10

  2. ⾃⼰紹介 https://github.com/tototoshi https://twitter.com/tototoshi ⾼橋です ⽯巻出⾝ 2017年に東京から仙台に引っ越しました

  3. 私の仕事 Web中⼼のバックエンドエンジニア 今はほとんどScala フリーランス&リモートで6年⽬

  4. OSS活動 tototoshi/scala-csv ⭐ 604 ScalaのCSVライブラリ flyway/flyway-play ⭐ 166 Flyway(Javaのデータベースマイグレーションツール)のPlay Frameworkプラグイン

    tototoshi/slick-joda-mapper ⭐ 250 SlickというORMでjoda-time(Javaの⽇時ライブラリ)を使うためのライ ブラリ
  5. 今⽇の話 PHPの話 GitHub、OSS楽しいよという話

  6. 昔々... tototoshi/staticmock ⭐ 37 PHP のスタティックメソッドをモック化する - pixiv inside [archive]

    単体テストのためにstaticメソッドの実装をすり替えたい 普通はできない できるようにした
  7. つまりこういうやつを 接続 情報 取得

  8. こんな感じにテスト

  9. 思ったより使われてそう 嬉しい https://packagist.org/packages/tototoshi/staticmock/stats

  10. StaticMockの弱点 作者がメンテナンスを放置している 私です! PHPもう忘れた ( ᐛ ) runkitというPHP拡張に依存している https://github.com/zenovich/runkit PHP7をきっかけに2015年以降メンテナンスされていない

    PHP7では別の⼈がforkしたバージョンが使えたのでそれを使っていた ⼤丈夫なのか?
  11. 朗報: ちゃんとメンテされてた https://github.com/runkit7/runkit7 runkit7という名前になって継続的にメンテされていた OSSっていいね

  12. 朗報: Pull Request StaticMockもrunkit7対応できた 👍

  13. 朗報: uopzっていうやつでも動くらしい エゴサしてたらforkした⼈がuopz対応させてるのを発⾒した

  14. 朗報: 詳しい解説付き https://qiita.com/kunit/items/43ca86a461d2e5e051cf

  15. 朗報: 取り込んだら普通に動いた https://github.com/tototoshi/staticmock/pull/24

  16. 結果 runkit7でもuopzでも動くようになった どちらかが開発⽌まったとしてもStaticMockを使い続けられる PHP8も⼤丈夫そう PHPの書き⽅を少し思い出した 👍 rtm-ctlz 👍 kunit

  17. GitHub楽しい ⼀番好きなSNSです ⾃分の作ったものが使われるのは嬉しい 改造してもらえるのはもっと嬉しい みんなでわいわいしましょう

  18. おわり これはおしり https://github.myshopify.com/collections/shirts/products/octocat- one-piece