Rhino licensed as MPL, finally!

Posted on Wed 15 November 2006
Licensing is one of the pains points when developing or using open source software, and it absolutely cannot be ignored.

Rhino, the JavaScript interpreter in Java developped by Mozilla, was for some obscure historical reasons licensed as NPL, the Netscape Public Licence. The NPL license is basically the MPL (Mozilla Public License) with some additional rights for Netscape. These Netscape-specific clauses actually prevents the NPL to be considered as open source, since it violates the 5th criteria of the Open Source Definition: " No Discrimination Against Persons or Groups".

Rhino is a very convenient scripting engine, and is used at Apache by Batik and Cocoon. For a long time, Rhino being NPL was "tolerated", until the legal and licensing team at Apache worked on the licensing policy of 3rd-party code. And the NPL, being non open source, was excluded from the allowed licenses.

Switching Rhino from NPL to MPL was considered many times since several years, but did not happened. It represented a huge job as it required the consent of all people that contributed to the code base since the origin of the project. At least it seemed this was needed, until the Mozilla legal team decided they had the right to relicense NPL software, probably because of their Netscape history.

So, from now on, Rhino is licensed as MPL, meaning it can be included as a binary distribution in any Apache software. That's very nice, otherwise that would have meant no interactive features for Batik, and no flowscript for Cocoon!

Oh, actually Rhino has a dual MPL/GPL license. Of course, you only want to consider MPL rather than GPL when embedding Rhino in your Apache or commercial software :-)

Super-Secret no more: The Venice Project

Easy SubethaEdit over the Internet