mbstringのLGPLライセンス違反問題に関する見解

はじめに

ここでは、2003年6月末から一部のメーリングリストや掲示板において 話題となったPHPのマルチバイト拡張モジュールmbstringで使用されている 一部のコードの関するLGPL違反問題に関して日本PHPユーザ会の 見解を報告するものです。 なお、本見解は法律的な解釈に基づくものではなく、 本見解により生じる責任を日本PHPユーザ会および関係者が負うことは ありません。

メーリングリストにおける議論等の結論として、 現在のPHPの配布および使用について 問題はないと思われます。以下に問題の内容と対策について まとめます。以下の記述には、概要を最初に示し、 経緯の詳細を続いて示します。

問題の内容と対策(概要)

詳細

経緯

PHPは、Webアプリケーション構築用のスクリプト言語として 世界的に広く使用されており、日本国内においても多くのユーザー が存在します。

PHPは、シングルバイト文字圏の開発者により開発されたため、 日本語や中国語、韓国語といったマルチバイト文字を使うユーザ においては、マルチバイト文字を扱う機能が望まれていました。

このため、 「PHP3国際化プロジェクト」により、PHP3の頃に 文字コード変換を扱う機能が追加され、 国際化版PHP3として配布されていました。 この際、日本語文字コードの変換エンジンとして 株式会社ハッピーサイズがライセンスを保有するコード(ここではmbfilterと 呼びます)が使用されました。また、マルチバイト文字対応正規表現機能 に関しては、スクリプト言語Rubyのコードが使用されました。 PHP3はGPLライセンスのもとに配布されていたことと、開発者の意図に 合致した経緯もあり、当時の開発者はmbfilterを含む国際化機能の コードに関するライセンスとしてGPLを選択しました。 この課程で、UTF-8に関する拡張等多くの機能が追加されました。

PHP4の開発に伴い、塚田氏によりPHP4用マルチバイト文字 拡張モジュールjstringが開発され、独立した拡張モジュールとして GPLライセンスのもとに配布されました。

PHP4と共に配布されることの利便性や開発の効率化を考慮し、 2001年4月末にjstringはmbstringとしてPHP4のソースコードに マージされ、PHP 4.0.6としてリリースされました。 この際、GPLライセンスはPHP4で採用された PHPライセンス(BSDライセンスがベース)と互換性がないため、 著作権者の了解を得て、 PHPと依存するPHPとのインターフェイス部分はPHPライセンスに、 ライブラリとして 汎用性があるコード(mbfilter)はLGPLライセンスに変更されました。

その後、同じく塚田氏が作成/配布されていたマルチバイト 正規表現用拡張モジュールmbregexもPHP本体のソースコードに マージされました。 この際も、 PHPと依存するPHPとのインターフェイス部分はPHPライセンスに、 ライブラリとして汎用性があるコード(mbregex)はLGPLライセンスとしました。

PHP4のソースコードにマージ後、PHPの開発者により、 mbstringに対する機能拡張や不具合の修正が行われました。 このうち、一部の変更はmbfilterやmbregexの機能を 拡張したり、不具合を修正するものでした。 変更の例としては、mbfilterがサポートする文字コードに 中国語や韓国語、ロシア語のサポートを追加したり、 ZTSモード(PHPのマルチスレッドモード)に対応したりといったものがありました。

LGPLライセンスは、GPL/LGPLライセンス以外のライセンスのもとで 配布されるソフトウエアとともに配布することを認めています。 しかし、その配布に際していくつかの制約条件がついており、 現在のPHPにおける配布形態はその一部に違反するのではとの指摘が 2002年12月〜2003年6月に行われました。

この指摘を受け、主に国内のPHP開発用メーリングリスト(php-dev@php.gr.jp)に おいて、議論が行われました。

見解

上記の議論の結果、LGPLのライセンス条項を調査し、 以下のような見解をまとめました。

対策

上記議論の課程でmbfilterの現在の著作権者である アクセンス・テクノロジー社の意志が示されたことから、 この部分を反映することを最優先に、 また、PHPユーザの利便性、限定されたPHPの開発リソースの有効活用を 考慮して、以下の案を作成しました。 スケジュールについては、以下とします。

現在の形態でのバージョンの配布・使用に関して

まもなくリリースされるPHP 4.3.3を含み、現状の版の配布および使用について は、上記形態への移行期間における現状の形態での配布 について著作権者(アクセンス・テクノロジー社)の了解が得られているので 問題はありません。