2014年のPHP修正コードが2000万インストール、ついに非推奨へ

Judul asli: My temporary PHP fix from 2014 has nearly 20M installs. Today I'm deprecating it

Mengapa Ini Penting

一時しのぎのコードがエコシステム全体に深く根付く現実を示した典型例

Jake A. Smith氏が2014年にAOL向けに書いた174行のPHPコードが約2000万回インストールされた。2026年9月15日、同氏は正式に非推奨(deprecated)を宣言した。

Jake A. Smith氏は2014年、AOLのCMSをPHP 5.2から5.3へ移行する際、`pecl_http`拡張の`http_build_url()`関数が廃止されたことへの応急処置として174行のコードを書いた。「1〜2年で誰かがより良いものを作るだろう」と思いながらPackagistに公開したこのコードが、12年後に月40万回以上のインストールを記録するまでに拡大した。

WPML(WordPress向け多言語プラグイン、150万サイト以上に導入)が直接バンドルしているほか、`idna-convert`ライブラリ経由でフランスのCMS「SPIP」にも組み込まれ、DebianおよびUbuntuのパッケージにも収録されている。

コードにはバグも存在した。末尾にスラッシュが付くURLでパスを結合すると、パス内の文字「a」がすべて消えるという問題だ。回避策として「a」を末尾に付加して削除する処理が原因で、長年気づかれなかった。

Smith氏は後継メンテナへの引き渡しも検討したが、「xz Utilsバックドア事件のように、広く使われるパッケージの新メンテナは攻撃者が狙う標的になる」として断念。PHP Leagueの`URI`ライブラリやPHP 8.5に標準搭載されたURIネイティブAPIへの移行を推奨し、パッケージを非推奨とした。

Sumber

jakeasmith.com — Baca artikel asli →