Move to EPL from CPL #526

Closed
caniszczyk opened this Issue Feb 4, 2013 · 16 comments

Projects

None yet

7 participants

@caniszczyk

As we chatted at FOSDEM, we should have JRuby move to the EPL from the CPL, since the CPL is deprecated: http://opensource.org/licenses/cpl1.0

It's possible to move to the EPL since the CPL allows to move to a future revision of the license: http://www.eclipse.org/legal/cpl2epl/

@enebo
Member
enebo commented Feb 4, 2013

Wow if this is true we would have happily made this change years ago. Thanks for researching this.

@qmx
Member
qmx commented Feb 4, 2013

@caniszczyk that's awesome to hear!

@ghost
ghost commented Feb 4, 2013

If I read it correctly, the ability to upgrade from CPL to EPL is contained in the second last paragraph of the CPL. - it allows upgrading to a later version of the licence. Basically, since IBM has assigned the stewardship of the CPL to the eclipse foundation, and the eclipse foundation released an updated version of the licence (the EPL), then a contributor has the right under the CPL to to elect to release the software under the new version of the licence (i.e. the EPL).

"Contributor" means any person or entity that distributes the Program. So, that seems to mean that we don't need explicit permission from anyone who contributed code under the CPL to upgrade to EPL.

It also seems to mean, we could do nothing, and people could "upgrade" JRuby to the EPL anyway when they distribute it themselves.

Since the eclipse foundation has been through this anyway, it might be pertinent to contact someone there to confirm this (and/or a competent lawyer).

@caniszczyk

I believe @waynebeaton from the Eclipse Foundation can help us out.

But you're essentially correct, you can make the license change yourself because you have a right under the CPL to release it under a new revision of the license (i.e., EPL 1.0)

@headius
Member
headius commented Feb 5, 2013

The assertion that we could seamlessly update from CPL to EPL came to me directly from @mmilinkov at FOSDEM. I believe the phrasing used was something like "you can definitely upgrade". Again, not a lawyer, but Mike has obviously survived the same process for Eclipse, a much larger entity.

We will want to examine the differences between the EPL and CPL to ensure they don't cause any new issues or conflicts, but otherwise it sounds (from many different people) like this is a straightforward move.

@headius
Member
headius commented Feb 5, 2013

We will also need to decide if this is something we want to do in a minor release of JRuby (1.7.3 would be next, some time this month) or coarsen it to a major release like Eclipse did. I'm inclined to do it as soon as possible, but JRuby is part of a number of shipping commercial products. We may need some community adjustment time too.

@headius
Member
headius commented Feb 5, 2013

@waynebeaton I read through the FAQ and the attached migration plan pdf, but neither really contained a good treatment of the actual changes to the license. I'll keep poking around, but if you know of such a document it would help us decide how to proceed.

@mmilinkov

Sorry everyone, I was traveling all day yesterday home from FOSDEM, so I wasn't able to join in the conversation until now.

The ability to transfer from CPL to EPL is well documented in my blog post from 2009. I suggest that everyone read that first.
http://mmilinkov.wordpress.com/2009/04/16/one-small-step-towards-reducing-license-proliferation/

Mondrian is an example of a project community that made the switch several years ago.
http://lists.pentaho.org/pipermail/mondrian/2009-May/001858.html

Note that the CPL to EPL process that is documented on eclipse.org is not applicable to this scenario. When the Eclipse Foundation was first created in 2004, we had to do the conversion the hard way. In 2009 IBM agreed to transfer the CPL license stewardship to Eclipse, and Eclipse, IBM and the OSI all agreed that the EPL was the designated new version of the CPL. So my assertion that you can easily switch became true in 2009.
http://www.eclipse.org/legal/cpl2epl/

I hope that clears up any confusion.

@mmilinkov

Regarding the differences between the CPL and EPL, I will paraphrase what was said in the Mondrian discussion. As you will see the difference is pretty minor. The short version is that what happens in the event of a patent lawsuit is more constrained in the EPL than in the CPL

The Common Public License (CPL) has "...a clause regarding what happens in the event of patent litigation, and this this flaw made some organizations nervous about adopting CPL code.

The Eclipse Public License (EPL) is based on CPL, and in fact differs only in the name of the sponsoring organization (Eclipse versus IBM) and the removal of that clause."

@mmilinkov

If anyone really cares, here is the text of the second paragraph of Section 7 that changed between the CPL and the EPL. Under the CPL, a company could lose their rights to the patents that read on Eclipse if they sued a contributor over a software patent even if that patent had nothing to do with Eclipse. As you can imagine, some corporations thought that was a little too broad :)

EPL

If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.

CPL

If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.

@headius
Member
headius commented Feb 5, 2013

This is all great, @mmilinkov, thank you. I'm feeling confident we can make this change, and I'm hopeful we can make it in the near term (as opposed to waiting for JRuby 9k, which is probably more than a year out).

@enebo
Member
enebo commented Feb 5, 2013

Someone has opened an issue on this in our GH issues. Barring someone
mentioning some horrible problem with this move, it seems likely we will do
this. We get asked about EPL v. CPL over and over and I cannot believe
this is the first time this section has been mentioned :)

-Tom

On Mon, Feb 4, 2013 at 3:54 PM, Wayne Beaton notifications@github.comwrote:

IANAL. Here's what I do have:

http://eclipse.org/legal/cpl2epl/cpl2eplfaq.php


Reply to this email directly or view it on GitHubhttps://github.com/jruby/jruby/issues/526#issuecomment-13101797.

blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com

@enebo
Member
enebo commented Feb 5, 2013

Doh...This is the issue (github boilerplate always becomes ... in
gmail)...I should add that as Charles mentioned on the email thread going
on in parallel that we will try and engage Red Hat Lawyers to look this
over so we can get expert advice.

-Tom

On Tue, Feb 5, 2013 at 9:59 AM, Thomas E Enebo tom.enebo@gmail.com wrote:

Someone has opened an issue on this in our GH issues. Barring someone
mentioning some horrible problem with this move, it seems likely we will do
this. We get asked about EPL v. CPL over and over and I cannot believe
this is the first time this section has been mentioned :)

-Tom

On Mon, Feb 4, 2013 at 3:54 PM, Wayne Beaton notifications@github.comwrote:

IANAL. Here's what I do have:

http://eclipse.org/legal/cpl2epl/cpl2eplfaq.php


Reply to this email directly or view it on GitHubhttps://github.com/jruby/jruby/issues/526#issuecomment-13101797.

blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com

blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com

@BanzaiMan
Member

This is done. 330fef3

@BanzaiMan BanzaiMan closed this Feb 13, 2013
@caniszczyk

Thank you! :shipit:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment