上の記事にあるようにMEFのオープンソースとしてソースコードが公開された。しかしながらライセンスに問題があるという話になった。
Avoid the Managed Extensibility Framework. – Miguel de Icaza
As a .NET developer, you should avoid using the newly released Managed Extensibility Framework as its license prevents its use beyond the Windows platform. This will prevent your .NET software from running on Linux or MacOS in the future.
ライセンスだが問題なのはここ
(F) Platform Limitation- The licenses granted in sections 2(A) & 2(B) extend only to the software or derivative works that you create that run on a Microsoft Windows operating system product.
動作実行を特定のOS、プラットフォーム限定というものは多いし、そうであることも理解できるが、動作実行のみならずソースのビルドさえ特定のプラットフォーム上に縛り付けるものが果たしてオープンソースなんだろうかというのは当然の疑問だ。これではMS製品であるSliverlight2のMac版でもこのソースを使えないことになる。
おそらくクローズドソースでただで使えると言うだけならあまり問題にならないと思うが、オープンソースコードとしてはどうなんだろう。もしくはMS-LPLに関してはオープンソースコードライセンスだと考えない方が良いのかもしれない。
MEFに関してはMonoに代替するためのテクノロジーがあるようなので、そちらというのも一つの選択肢ではあるが。
コメント