FuelPHPの2023年3月現在の現況

アプリケーション

概要

2023年3月現在のFuelPHPの現況についてざっくり調べたことをまとめる。 独自に調べた情報なので正確性には欠けるかもしれない。

PHPのフレームワークはLaravelが圧倒的に人気があるように感じるが、FuelPHPもまだ現役で使っている人がいるかもしれないので、何か一助になれば嬉しい。

FuelPHPバージョン情報

独自に調べたFuelPHPの情報をまとめる。

Version Supported PHP Version Changelog 補足
1.8.0 >=5.3.3 Changelog v1.8 Changelog v1.8.0 hotfix1 多分PHPは7.0までをサポートしていそう
1.8.1 >=5.3.3 Changelog v1.8.1 多分PHPは7.3までをサポート
1.8.2 >=5.4 Changelog v1.8.2 リリース情報によると7.3までをサポート
1.9/develop >=5.4 N/A Forumcommitを見る限り、PHP8.0をサポートしていそう。
2.0(非公開) N/A N/A Forumによると設計が刷新されたバージョンで、PHPは7.4以上8.0未満をサポートするらしい

FuelPHPのそれぞれのバージョンにおいて、いつまでセキュリティのサポートをするか、EOL予定等は明記されていない模様(1系に関してはEOLかもしれない)。

現行の最新バージョンはFuelPHP1.8.2となるが、サポートしているPHPのバージョンは既にEOLを迎えている。

FuelPHP1.9/developと2.0について

上の表では8.0まで対応しているらしいと書いたが、実は8.1対応もある程度なされているらしい。

Forum

これに関して、中の人(Harro)にいくつか伺ってみたことがあるので、サマリを以下に記載する。(質問した時期は2022年4月頃) なお原文は英文であるため、ニュアンスを上手く汲み取れていない可能性がある(英語力高くないので・・)がご了承いただきたい。

Q. FuelPHP 1.9について何かアップデート情報はあるか?
A. 我々のアプリケーション(Harroが業務で扱っているアプリケーションと思われる)ではPHP8.1で動いているので、1.9-devを利用することは可能だと思う

Q. 1.9-devはPHP8.1で動作するのか?
A. 8.1での動作確認を十分に行えていない、8系でしかテスト実行できていない。

Q. 1.9-devのリリースのために何か手伝えることがあるか?
A. PRのテストができていないので手伝ってほしい。 (このPRだけ対応すればリリースできるわけではなさそうに見えるので、手伝えそうな作業を教えて頂いたのだと思う)

Q. 金銭的なサポートが必要か?寄付が何かFuelPHPの開発を助けることができるか?(1.9/developのリリースを早める手段になり得るか気になったので聞いてみた)
A. 現時点で必要ではない。私(Harro)の会社ですべて必要なインフラを賄えているし、全てのアプリをFuelで開発しているため、バグフィックスも暗黙的にサポートされている。リソースが足りないわけではない。

1.9/developはあくまで正式リリース版ではないが、PHP8.1ではある程度動作担保されているように思える。

実際に個人的な調査(FuelPHPで動いているアプリケーションのPHP・FuelPHPバージョンを上げて動作確認)をしてみたが、結構動いた。

1.9/developのテストカバレッジはかなり低いのが怖いところではあるが、1.8.2以下のバージョンを使っていてPHPのバージョンを8.0〜8.1にどうしても上げたい場合には1.9/developを使うという選択肢もあるのではないかと思った。(個人の感想です。自己責任で・・)

会話のやりとりで知ったことだが、FuelPHP1系は既にEOLを過ぎているらしい。それ故か1系にはもはや注力していかない方針だということも聞いた。

ちょうどそんなやりとりをしている後日、ForumやTwitterに投稿があり、どうやら1系に力を入れずに2.0に力を注いでいくという方針であることが分かった。

以前は、「2.0は大きな変更になるので、かなり時間がかかっている、PHPのEOLが来てしまったので先に1.9/developの方をリリースする」、といった方向性だったように思っていたのだが、どうやらその認識は間違っていたようだ。

1.9/developが正式にリリースされるかどうかは見えないが、2.0のalphaリリースは期待しても良いのかもしれない。

2.0はまだprivateでソースコードがpublicになっていないので全貌はわからないが、静的インターフェスがなくなってDIコンテナが使われるようになるのでテストが書きやすくなるらしいので、テストのカバレッジについても期待を持っても良いのかもしれない。

所感

FuelPHPにロックインしているアプリケーションをどのように刷新していくかということに課題を持っているサービスはきっと世の中まだ一杯あると思うが、各所どういう戦略を取っているだろうか・・気になる。 特に別のアプリケーション、アーキテクチャにリプレイスすることが現実的ではない、かなりの痛みを伴うといった場合において、取るべき選択は結構限られるはず・・・。


関連書籍