Mozilla Public License
|Published||January 3, 2012|
|GPL compatible||Yes (by default since MPL 2.0, unless "marked as Incompatible With Secondary Licenses" by attaching "Exhibit B")|
|Linking from code with a different license||Yes|
The Mozilla Public License (MPL) is a free, open source, and detailed software license developed and maintained by the Mozilla Foundation. It is characterized as a hybridization of the modified BSD license and GNU General Public License (GPL) that seeks to balance the concerns of proprietary and open source developers.
The MPL is the license for the Mozilla Firefox, Mozilla Thunderbird, and most other Mozilla software, but it has been used by others, such as Adobe to license their Flex product line, and LibreOffice 4.0 (also on LGPL 3+). Version 1.1 was also notably adapted by companies to form derivative licenses like Sun Microsystems' own Common Development and Distribution License.
The MPL has been approved as both a free software license by the Free Software Foundation and an open-source software license by the Open Source Initiative. The MPL allows covered source code to be mixed with other files under a different, even proprietary license. However, code files licensed under the MPL must remain under the MPL and freely available in source form. This makes the MPL a compromise between the MIT or BSD licenses, which permit all derived works to be relicensed as proprietary, and the GPL, which requires the whole of a derived work, even new components, to remain under the GPL. By allowing proprietary modules in derived projects while requiring core files to remain open source, the MPL is designed to motivate both businesses and the open-source community to help develop core software.
The rights granted by the Mozilla Public License are primarily defined as passing from "contributors," who create or modify source code, to the licensee. In the absence of patents, MPL-licensed code can be freely used, altered, and redistributed. Versions with patented code can still be used, transferred, and even sold, but cannot be altered without special permission. In addition, the MPL does not grant the licensee any rights to a contributor's trademarks.
To fulfill the terms of the MPL, the licensee must meet certain "responsibilities," mostly concerning the distribution of licensed software. The licensee must ensure access to or provide all source code files covered by the MPL, even if the software is offered as an executable or combined with other code under a proprietary license. The one exception to covered files remaining under the MPL occurs when they are combined with code under the GPL, Lesser GPL (LGPL), or Affero GPL (AGPL). In this case, the creator of the combined software can choose to provide the entire work under the stricter GPL-based licenses.
Version 1.0 of the MPL was written by Mitchell Baker in 1998 while working as a lawyer at Netscape Communications Corporation. Netscape was hoping an open source strategy for developing their own Netscape web browser would allow them to compete better with Microsoft's browser, Internet Explorer. To cover the browser's code, the company drafted a license known as the Netscape Public License (NPL), which included a clause allowing even openly developed code to be theoretically relicensed as proprietary. The possibility of Netscape accepting code from others only to claim it exclusively with a new license received wide criticism from the open source community. However, at the same time, Baker developed a second license similar to the NPL, but with copyleft features to ensure contributions remained open source. It was called the Mozilla Public License after Netscape's project name for the new open source codebase, and although it was originally only intended for software that supplemented core modules covered by the NPL, it would become much more popular than the NPL and eventually earn approval from the Open Source Initiative.
Less than a year later, Baker and the Mozilla Organization would make some changes to the MPL, resulting in version 1.1, a minor update. This revision was done through an open process that considered comments from both institutional and individual contributors. The primary goals were to clarify terms regarding patents and allow for multiple licensing. This last feature was meant to encourage cooperation with developers that preferred stricter licenses like the GPL. Not only would many projects derive their own licenses from this version, but its structure, legal precision, and explicit terms for patent rights would strongly influence later revisions of popular licenses like the GPL (version 3).
In early 2010, after more than a decade without modification, an open process for creating version 2.0 of the MPL began. Over the next 21 months, the MPL was not only changed to make the license clearer and easier to apply, but also to achieve compatibility with the GPL and Apache licenses. The revision team was overseen by Baker and led by Luis Villa with key support from Gervase Markham and Harvey Anderson. They would publish three alpha drafts, two beta drafts, and two release candidates for comment before releasing the final draft of version 2.0 on January 3, 2012.
Compatibility with other licenses
Unlike strong copyleft licenses, code under the MPL may be combined with files under any license in a "larger work", so long as conditions for the MPL are still met for "covered" components (Section 3.3 of the license). The MPL treats the source code file as the boundary between MPL-licensed and proprietary parts, meaning that all or none of the code in a given source file falls under the MPL.
MPL version 2.0 is compatible with both the Apache License and by default "the GNU GPL version 2.0, the GNU LGPL version 2.1, the GNU AGPL version 3.0, and all later versions of those licenses". Version 1.1 had "some complex restrictions" that made it incompatible with the GPL by default (and thus preventing updating to the MPL 2.0). Although the MPL 1.1 did include a provision (Section 13) for providing a work under a secondary license (including the GPL or GPL-compatible ones), MPL 1.1 and GPL code could not "legally be linked," leading the Free Software Foundation to discourage using the MPL 1.1. For these reasons, earlier versions of the Firefox were released under multiple licenses: the MPL 1.1, GPL 2.0, and LGPL 2.1. Some old software such as the Mozilla Application Suite is still under the three licenses.
- AROS Public License
- Celtx Public License
- Common Development and Distribution License
- Common Public Attribution License
- Erlang Public License (based on MPL v1.0)
- gSOAP Public License
- OpenMRS Public License
- OpenELIS Public License
- SugarCRM Public License
- Sun Public License
- Yahoo! Public License
- "Announcements - Updating the MPL". Mozilla Foundation. Retrieved 1 March 2012.
- "Mozilla Public License (MPL)". The Big DFSG-compatible Licenses. Debian Project. Retrieved 2009-06-06.
- "Mozilla Public License (MPL) version 2.0". Various Licenses and Comments about Them. Free Software Foundation. Retrieved 2012-01-03.
- "Open Source Licenses". Open Source Initiative. Retrieved 2012-01-07. "Mozilla Public License 2.0 (MPL-2.0)"
- "Mozilla Public License, version 2.0". Mozilla Foundation. Retrieved 28 February 2012.
- St. Laurent, Andrew M. (2004)). "3". Understanding Open Source & Free Software Licensing. O'Reilly Media. pp. 62–63. ISBN 978-0-596-00581-8.
- "Historical Licensing Documents". Mozilla Foundation. Retrieved 29 February 2012.
- "About MPL 2.0: Revision Process and Changes FAQ". Mozilla Foundation. Retrieved 29 February 2012.
- "Mozilla Foundation License Policy". Mozilla Foundation. Retrieved 29 February 2012.
- "Adobe Flex FAQ: Licensing". Adobe Systems. Retrieved 29 February 2012.
- Fontana, Richard (9 January 2012). "The new MPL". Retrieved 1 March 2012.
- O'Hara, Keith J.; Kay, Jennifer S. (February 2003). "Open source software and computer science education" (PDF). Journal of Computing Sciences in Colleges (Consortium for Computing Sciences in Colleges) 18 (3): 3–4. ISSN 1937-4771. Retrieved 29 February 2012.
- Andreessen, Marc (18 April 2005). "The Time 100: Mitchell Baker: The "Lizard Wrangler"". Time Magazine (Time) 165 (16). ISSN 0040-781X. OCLC 1311479.
- Wilson, Rowan (15 November 2011). "The Mozilla Public License - An Overview". OSS-Watch. University of Oxford. Retrieved 29 February 2012.
- Hecker, Frank (2 April 1999). "Mozilla at One: A Look Back and Ahead". Archived from the original on 21 April 2008. Retrieved 1 March 2012.
- "NPL Version 1.0M FAQ". 24 September 1999. Archived from the original on 21 April 2008. Retrieved 1 March 2012.
- "Announcing the Mozilla Public License Revision Process". Mozilla Foundation. 10 March 2010. Retrieved 1 March 2012.
- "People - Updating the MPL". Mozilla Foundation. Retrieved 1 March 2012.
- "Mozilla Public License (MPL) version 1.1". Various Licenses and Comments about Them. Free Software Foundation. Retrieved 2009-06-06.
- "Mozilla Relicensing FAQ". Mozilla Foundation. 14 August 2007. Archived from the original on 21 April 2008. Retrieved 28 February 2012.
- CePL, version 1.3
- ERLANG PUBLIC LICENSE
- gSOAP Public License