低い学習コストと圧倒的なスピードを売りにして、このところ人気急上昇だったPHPクレームワークのCodeIgniterが、ライセンス変更問題を巡って大きく揺れている。

事の発端は、今年10月20日にニューヨークで行われたExpressionEngineとCodeIgniterのプレゼンテーションの席で、EllisLabのCEOが、CodeIgniterのライセンスをOpen Software License 3.0に変更すると発表したことから始まる。
その後の詳しい経緯については、次のサイトなどを参照していただきたい。
そもそもCodeIgniterは、オープンソースソフトウエアではあったものの、CodeIgniterライセンスという独自ライセンスを採用していた。このライセンスについて、EllisLab側は、BSD/Apacheライクなライセンスだと説明していたが、CodeIgniterの商標保護や宣伝条項があるために、正式のBSDライセンスやApacheライセンスではなかった。
今回のOSL3.0へのライセンスへの変更を決定する前にも、BSDやMITライセンスの採用が検討されたようだが、結局、この商標保護と宣伝条項があるため、最後はOSL3.0に落ち着いたということらしい。
この辺りの事情は、下記のEllisLabのブログでも詳しく説明されている。
OSL3.0とはどんなライセンスなのか
EllisLab側の主張では、独自ライセンスからOSL3.0に変更になることにより、CodeIgniterのオープンソースとしてのスタンスが明確になり、コミュニティにとっても有益だということになっている。
OSL3.0は、Lawrence Rosenによって提唱されたオープンソースライセンスで、
Open Source Initiativeによる認証も取得しているのだが、今、コミュニティで懸念されている最大の問題は、GPLライセンスとの互換性だ。
次の表は、CodeIgniter License and Terms of Use FAQのなかで使われているもので、OSL3.0と他のオープンソースライセンスとの互換性を示している。
| ライセンス名 | 互換性は? |
|---|---|
| Artistic License | Yes |
| Apache-2.0 | Yes |
| BSD 3 Clause | Yes |
| BSD 2 Clause | Yes |
| GPL | No |
| MIT (Expat) | Yes |
| MIT (X-11) | Yes |
| Your custom license | Yes |
これを見ると一目瞭然だが、GPLとの互換性だけがNoとなっている。これは、GPLライセンスに基づいて作成されたソフトウエアのソースコードを含む製品には、GPLライセンスが適用が及ぶという条項と、OSL3.0のソフトウエア派生物についての考え方とぶつかりあってしまうためだ。
例えば、EllisLab側は、OSL3.0が採用されているMagentoコミュニティの例をあげて、CodeIgniterのライセンスがOSL3.0に変更されたとしても、CodeIgniterのapplicationフォルダ内に作成したソフトウエアにはOSL3.0の条項は及ばないとしている。これは、OSL3.0が、ソフトウエア本体を改変しない限り派生物とはみなさないという考え方に基づいており、ライブラリの単純なリンクも対象外となる。
これにより、ユーザーが作成したソフトウエアの著作権が守られ、CodeIgniterを使った商用アプリの開発が容易になるが、その反面、applicationフォルダ内に作成するソフトウエアではGPLのソースコードを利用できなくなる恐れが生じる。先ほどのGPLライセンスの条項とぶつかり合ってしまうのだ。
ポストCodeIgniterの動きはあるか
ここから先は、法律解釈の問題も出てくるので、専門家の意見などを参考にしなければならないかもしれない。
EllisLab側も、最初は懇切丁寧に説明していたが、最近は徐々に、乱暴(訴訟大国のアメリカと日本では温度差の違いはあると思うが…)な説明の仕方になり始めていて、現行のCodeIgniterライセンスも元々GPLライセンスとは互換性がなかったとまで主張し始めている。
これに対して、日本CodeIgniterユーザ会ではCodeIgniterのライセンスがOSLに変更されることに関する投票などが呼びかけられており、こうした動きが世界的に広がるかもしれない。ただ、EllisLab側は、法的に問題はないとして、顧問弁護士と二人三脚で強引に事を進めてしまう可能性は高い。
個人的には、CodeIgniterベースのIonizeという多言語対応CMSが、MITライセンスで配布されていることを確認して今はひと安心だが、まだ予断をゆさない。
できることなら、コミュニティとの良好な関係を維持した上で、ライセンス変更を行ってもらいたいと願っているが、現実的にライセンスの変更が行われれば、CodeInginterの使用を止めるかGPLライセンスで提供されるソフトウエアの使用を止めるかという二者択一を迫られる人が出て来る。
そんななか、ポストCodeIgniterの候補として、次のふたつのフレームワークが少し話題になり始めている。
上記のいずれもがCodeIgniterから派生したプロジェクトで、KohanaがBSDライセンス、FuelPHPがMITライセンスで配布されている。ただし、どちらも現時点では、発展途上という印象が強く、GPLライセンスとの問題でCodeIgniterを利用できなくなるユーザーがこちらに移行するかどうかは未知数。
【注 記】
この記事は、あくまでも個人の見解であって、明確な法的な根拠があるわけではありません。OSL3.0については、提唱者のLawrence Rosen自らが解説するサイトもありますので、各自で内容をじっくり検証してください。

