Eclipse Public License

The Eclipse Public License (EPL) is a free and open source software license most notably used for the Eclipse IDE and other projects by the Eclipse Foundation. It replaces the Common Public License (CPL) and removes certain terms relating to litigations related to patents.

The Eclipse Public License is designed to be a business-friendly free software license, and features weaker copyleft provisions than licenses such as the GNU General Public License (GPL). The receiver of EPL-licensed programs can use, modify, copy and distribute the work and modified versions, in some cases being obligated to release their own changes.

The EPL is listed as a free software license by the Free Software Foundation (FSF) and approved by the Open Source Initiative (OSI).

Discussion of a new version of the EPL began in May 2013. Version2.0 was announced on 24August 2017.

On 20 January 2021, the license steward for the license was changed from Eclipse.org Foundation, Inc. (Delaware, USA) to Eclipse Foundation AISBL (Brussels, Belgium).

Compatibility
The EPL 1.0 is not compatible with the GPL, and a work created by combining a work licensed under the GPL with a work licensed under the EPL cannot be lawfully distributed. The GPL requires that "[any distributed work] that ... contains or is derived from the [GPL-licensed] Program ... be licensed as a whole ... under the terms of [the GPL]", and that the distributor not "impose any further restrictions on the recipients' exercise of the rights granted". The EPL, however, requires that anyone distributing the work grant every recipient a license to any patents that they might hold that cover the modifications they have made. Because this is a "further restriction" on the recipients, distribution of such a combined work does not satisfy the GPL.

The EPL, in addition, does not contain a patent retaliation clause.

Derivative works
According to article 1(b) of the EPL, additions to the original work may be licensed independently, including under a proprietary license, provided such additions are "separate modules of software" and do not constitute a derivative work. Changes and additions which do constitute a derivative work must be licensed under the same terms and conditions of the EPL, which includes the requirement to make source code available.

Linking to code (for example to a library) licensed under EPL automatically does not mean that your program is a derivative work. Eclipse Foundation interprets the term "derivative work" in a way that is consistent with the definition in the U.S. Copyright Act, as applicable to computer software.

Later versions
If a new version of the EPL is published the user/contributor can choose to distribute the software under the version with which he or she received it or upgrade to the new version.

Comparison with the CPL
The EPL was based on the Common Public License (CPL), but there are some differences between the two licenses:


 * The Eclipse Foundation replaces IBM as the Agreement Steward in the EPL
 * The EPL patent clause is revised by deleting the sentence from section 7 of the CPL

The Eclipse Foundation sought permission from contributors to re-licence their CPL code under the EPL.

Version 2.0
Version2.0 of the Eclipse Public License (SPDX code EPL-2.0) was announced on 24August 2017. The Eclipse Foundation maintains an FAQ. The FSF has analyzed the license in relation to GPL license compatibility and added it to their official list. The bare license notice is available in several formats, including plain text.

In terms of GPL compatibility, the new license allows the initial contributor to a new project to opt in to a secondary license that provides explicit compatibility with the GNU General Public License version 2.0, or any later version. If this optional designation is absent, then the Eclipse license remains source incompatible with the GPL (any version).

Other changes include:


 * the license now applies to "files" not "modules"
 * the choice of law provision has been removed
 * the new license is suitable for scripting languages, including JavaScript

The Eclipse Foundation advises that version1.0 is deprecated and that projects should migrate to version2.0. Relicensing is a straightforward matter and does not require the consent of all contributors, past and present. Rather, the version1.0 license allows a project (preferably after forming a consensus) to adopt any new version by simply updating the relevant file headers and license notices.

Notable projects
In addition to the Eclipse Foundation, the EPL is used in some other projects, especially those running on the Java virtual machine.

Licensed solely under the EPL

 * AT&T KornShell
 * Clojure (and ClojureScript)
 * Graphviz
 * Jikes RVM
 * JUnit
 * Mondrian
 * OpenDaylight Project
 * UWIN

Multi-licensed under the EPL and one or more other licenses

 * Eclipse OMR
 * Eclipse OpenJ9
 * Jetty
 * JRuby