mechmotum / cyipopt

Cython interface for the interior point optimzer IPOPT
Eclipse Public License 2.0
227 stars 54 forks source link

Add secondary licenses? #243

Closed cmichelenstrofer closed 9 months ago

cmichelenstrofer commented 9 months ago

Would you consider adding GPL v2.0 and higher as secondary licenses? It would require adding it to this section of the license:

"This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), version(s), and exceptions or additional permissions here}."

More info about the EPL secondary licenses clause here.

We want to use cyipopt in our GPL-3 licensed code.

Thanks!

moorepants commented 9 months ago

The copyright to the code contributed to the cyipopt repo belongs to each of the individual authors. When they contributed the code, they licensed it under EPL 1.0 (or more recently EPL 2.0). I changed the license of all the code to EPL 2.0 for the authors without their permission based on the the notice from Eclipse that this is allowed power the EPL 1.0 license, see https://github.com/mechmotum/cyipopt/issues/165. I don't think we can license the code under any other license, for example the GPL, without the consent of all authors of this software. I do not intend to pursue that consent. This wikipedia article https://en.wikipedia.org/wiki/Eclipse_Public_License seems to explain the incompatibility of GPL with EPL 1.0 and then a mechanism to opt into GPL compatibility in EPL 2.0 if authors consent.

cmichelenstrofer commented 9 months ago

a mechanism to opt into GPL compatibility in EPL 2.0 if authors consent.

The mechanism is simply adding "GPL-2.0+" or similar to the current license where the place holder is. But yes, I believe that would require consent from all authors and I understand why you wouldn't want to pursue that.