Prism は主に WPFなどで利用できる、XAMLアプリケーションを構築するためのフレームワークです。
Prism は Microsoft MVVM Toolkit と似た役割を担うことができるライブラリで、特徴として MVVM +αのような機能を提供しています。
これまでは Prism 8 が最新でしたが 2024 年に Prism 9 に更新していることに気が付きました。(9.0 Preview自体は 2023 年に公開があったようです)
9 への更新は、これまでのアップデートとは違う点があります。期間も空いたし、色々と更新に際してトラブルもあったようです。ライセンスの変更など、扱いにはすこし注意が必要だと思ったので気になった点をメモ。
個人的な調べなので、内容に間違いがあったらすいません。(ご指摘は歓迎! お手柔らかにお願いします)
ライセンスについて
Prism is now an officially paid product with a dual license. There is a free community license and a paid commercial license. If your company makes more than $1M USD, they should head to our website and buy a license NOW https://t.co/coHIIMNIFE
— Prism Library (@prismlib) 2023年9月28日
まず、従来の Prism は MIT ライセンスでしたが 9.0 になってデュアルライセンスになりました。
無料のコミュニティライセンスと、有償の商用ライセンスがある、という状態です。
ただし、HP には以下のように説明があるため、大きな収入、または、大きな資本提供が無い場合なら、無料の Community ライセンスを引き続き利用することができますが、「登録」が必要になっています。
*Companies and individuals with less than 1 million USD in annual gross revenue, or have never received more than 3 million USD in capital from an outside source, such as private equity or venture capital, are eligible for the Community License.
この内容を補足をすると Prism の(主となる)スポンサーは以下の2名になります。
dansiegel のブログは現在もギリギリ更新されており、Prism 9.0 についても言及がありました。おそらく、この内容が一番状況を掴むうえで参考になるのではないか、と(私は)考えています。
dansiegel はライセンス変更の理由として ".NET Foundation issue" と挙げており、また、GitHub Sponsors を利用して Prism の開発を持続できるようにしたかったが、おそらく収益の面でうまくいかなかったようです。
同じような話だと、過去に、Unity Container も v5.11 以降のリリースは(サポートがなければ)無いということが HP に掲載がありました。(Internet Archiveなどで確認できます)実際のところ HPは綺麗になっていましたが、今もリリースはなさそうです。
Prism は今回のアップデートで、ライブラリを利用するための動画による学習用コンテンツも展開していますが、こちらも有料になっているので、収益化に苦労している状況が伺えます。
個人的な考え
Prism ライブラリは NuGet から 43M のダウンロードがあったということで、とても成熟したよいライブラリであることは私も疑いありません。
I just ran the numbers. @PrismLib has just surpassed 43 MILLION NuGet downloads in its lifetime across all packages. This isn't including the CodePlex days. I'm very grateful to the amazing community that has supported us all these years. pic.twitter.com/PucLUmuO0z
— Brian Lagunas (@brianlagunas) 2023年2月3日
ただ、今回のライセンス変更を見ると(Unity Container とおそらく似たような問題があり)経済的な理由から今後も継続可能な(or メンテナンスされ続ける)ライブラリであるかどうかの部分は以前より警戒が必要になっているのではないか、と私は思いました。
幸い、dansiegel は GitHubのタグを調べてみても v7 以前のころからメンテナンスされているので v9.0 から参入した人物ではありません。急にライブラリの方向性が変わったり、おかしくなるような恐れは低いと思います。
今回のライセンスまわりの動きは、Microsoft MVVM Toolkit とは雰囲気が違うかもしれません。