Version 0.07
Executive Summary
This license (or more accurately, pair of licenses) is created for a particular purpose, which is not served by any existing OSI approved license, which is described below. Whilst the license has been created for two particular projects and their respective Initial Developers in mind, the license is intended to have general application for other developers in a similar situation.
The intent is to create a license aimed at software projects that have thus-far been developed in a traditional “closed-source” environment, but which the developer wants to release as an “open-source” project, whilst simultaneously wishing to continue with commercial (closed-source) versions derived from the same code-base.
The first significant requirement is that modifications contributed by the developer community are not only licensed to all under the general times of the license, but there is a specific additional grant of rights to the Initial Developer, allowing him to use that modifications in an unrestricted manner (including in the commercial closed-source version of his code), provided that he continues to make such modifications available in a future version of the open-source version as well. This is similar to Clause 3(b) of the QPL. The intent here is to ensure future compatibility between both closed-source, and open-source trees. Clearly, the Initial Developer is granted substantial additional rights beyond that of any other contributor, and is unlikely to be a viable option for wholly open-source projects; however, in the circumstances where this license is likely to be deployed, where the Initial Developer is considering contributing considerable amounts of code, it provides both a substantial incentive to release code for the benefit of the Open Source community, and a mechanism of doing so which protects the Initial Developer’s existing revenue base and code compatibility.
The second significant requirement is that in one version of the license (the Open Vendor Lesser Public License), which, like the LGPL, is focussed on libraries and toolkits, the code can be linked with other open source projects, without those projects being considered derived works and thus falling under the terms of the license itself.
Therefore, the challenge has been to create a modern reciprocal license, with a widely defined definition of “derived work” (but with exceptions in the case of the OVLPL), and with a clause giving an additional license grant to the Initial Developer. We have reviewed each of the existing OSI approved license, and have found none satisfies our requirements. The closest appears to be the Common Development and Distribution License (“CDDL”), which fortunately also contains an explicit term allowing reuse of the license, which meets several other criteria, such as requirement that source of modifications be made available, requirement that modifications be made available under the same license, option to distribute executables under a different license, an explicit patent license and ‘patent peace’ clause, neutrality as to jurisdiction, and an option for code to be distributed under a ‘static’ version of the license.
We also examined the MPL extensively. However, based on Sun’s own commentary on the differences between the MPL and the CDDL (which we shall not repeat here at length), we found the CDDL to a simpler license more closely aligned with our needs, and hence a better base.
Specific Changes
Sections that have not changed (except for numbering) are not listed.
Name: changed the name to a different name, which is equally generic. Alsomade clear that the document describes two licenses (in final form, it may be easier to submit two separate licenses for approval, but this way we make change control easier).
1.5. Future Versions: Defined ‘Future Versions’ to mean future versions of the Original Software that are distributed by the Initial Developer under any license, by virtue of the additional license granted to the Initial Developer by Clause 3.3.
1.7. Larger Work: Defined ‘Larger Work’ more narrowly, such that it only includes ‘mere aggregation’ of separate pieces of software, and (in the case of the OVLPL) separate pieces of Open Source software (Qualifying Software) linked to the Software.
1.10. Licensed Modifications: Defined ‘Licensed Modifications’ to mean Modifications which You contribute, distribute, or otherwise make available (i.e. excepting Modifications which are retained privately); this is for the purposes of Clause 3.3, and it is these modifications which are subject to the additional license grant.
1.11. Modifications: Defined ‘Modifications’ more broadly, to include (i) code (normally executable code) which required the Original Software to compile, and (ii) code otherwise derived from the Original Software, but (in the case of the OVLPL) in each case excluding separate pieces of Open Source software (Qualifying Software) linked to the Software. Also replaced ‘previous Modification’ by ‘prior Modification’ for consistence with 1.2.
1.12. Other Software: Defined to mean any software that is not released under this License.
1.13. Qualifying Software: (OVLPL only) Defined to mean all Software issued under a Qualifying License, that either is not a derived work, or is only a derived work due its use of header files etc. during compilation.
2.1. Initial Developer Grant: Clarified that the Initial Developer Grant is subject to the grantee complying not only with Clause 3.1, but all the mandatory clauses of Clause 3, including 3.2 and 3.3.
2.2. Contributor Grant: Clarified that the Contributor Grant is subject to the grantee complying not only with Clause 3.1, but all the mandatory clauses of Clause 3, including 3.2 and 3.3.
3.3. Additional License of Modifications to Initial Developer: Added a new Clause that gives the Initial Developer a license to any Licensed Modifications (i.e. Modifications which the author distributes etc.), which the distributor may also license under any other license, provided that the Initial Developer makes generally available under this license (i) any Licensed Modifications he uses, and (ii) a Future Version incorporating the same set of Licensed Modifications as any he uses.
4.1. New Versions: Changed the license steward. We will put in the actual license steward after approval.
4.3. Modified Versions: Stated that modified versions must remove references to the license itself, as well as the license steward; this is necessary as unlike the CDDL, the license now refers to itself internally.
5. Disclaimer of Warranty: Only disclaimed warranty “to the fullest extent permitted by the laws of the applicable jurisdiction”. This is to prevent the warranty clause being struck in its entirety in jurisdictions that restrict the disclaimer of warranty. Added a further limitation on warranty in such jurisdiction as the former limitation might, in certain jurisdictions, not be treated as permissible at all under certain circumstances (e.g. when dealing with consumers).
7. Limitation of Liability: Only limited liability “to the fullest extent permitted by law”. This is to prevent the liability limitation clause being struck in its entirety in jurisdictions that restrict such liability limitation.