CPL
From APIDesign
(→CPL is Great!) |
|||
Line 25: | Line 25: | ||
== [[CPL]] is Great! == | == [[CPL]] is Great! == | ||
- | [[ | + | While reading the reactions provoked by my query on the mailing list I've noticed an explanation of why [[CPL]] is so great. It is approved [[open source]] license ([[good]]), but it scares some companies (a bit similar story to [[GPL]]) so these companies rather pay ([[good]]) than redistribute [[JUnit]] under [[CPL]]. This is perfect! [[Open source]] projects need donations (read [[WhyGPL]] for details) and it seems that [[CPL]] can generate some revenue. [[Good]]! |
+ | |||
+ | The wording of the [[CPL]] states, that as soon as a company redistributes your software, it cannot sue you for violating its software patents. Excellent! [[Open source]] developers hate software patents in general and this is a perfect way to fight with them. Release your software under [[CPL]], wait until [[Oracle]] (or others) use your software and then just violate any of their patents without a risk. Or wait until [[IBM]] decides to buy your rights to your software to enjoy this patent free violation too. | ||
+ | |||
+ | The things [[CPL]] can achieve are so great! | ||
== [[CPL]] is Dead! == | == [[CPL]] is Dead! == | ||
[[TBD]] | [[TBD]] |
Revision as of 16:23, 17 January 2011
Common Public License is an open source software license originally used by Eclipse later superceeded by EPL.
Most of the software projects already migrated from CPL to EPL, but one important project has not done that yet (as of January 2011): JUnit. This essay describes my experience when trying to convince my company lawyers to like CPL, so NetBeans can redistribute JUnit without problems.
Contents |
CPL is Unacceptable
We have new lawyers. The old Sun lawyers are gone and as we are getting more and more integrated into Oracle, we need to align with its culture. One of such cultural checks is to re-approve all the open source licenses used by NetBeans.
Our new lawyers seem to be concerned about CPL, the JUnit license. True, JUnit's use of Common Public License is unique and sort of archaic. I don't know about any other (important) project using this license anymore. But the CPL was found OK by Sun lawyers and we've been shipping JUnit for ten years! What can be so horrible with it that now it is a problem?
Why we are are holding the NetBeans release and getting ready to remove JUnit from our standard installation? Is not that silly? JUnit is necessary part of any serious Java development. What can we do to allow JUnit and NetBeans to cooperate?
CPL is Not Modern
OK, let's try to ask on a JUnit mailing list. Maybe the group would not mind upgrading to more modern license. At the end EPL is almost identical to CPL. So let's ask:
Don't you want to relicense JUnit to some more commonly used license? EPL would be fine. At least I have not heard any complain about EPL from our new lawyers yet. Dual licensing to CPL & EPL probably too.
Asking on a mailing list of Open source project can result into two options. Either complete silence. Or enormous amount of opinions. The JUnit community is however different. I've received quick answers with a bunch of damn good reactions and points (including reactions from people I'd never expect to be on such mailing list).
From that I have understood that Kent does not want to relicense, but rather offers commercial alternative license for companies scared of CPL.
CPL is Great!
While reading the reactions provoked by my query on the mailing list I've noticed an explanation of why CPL is so great. It is approved open source license (good), but it scares some companies (a bit similar story to GPL) so these companies rather pay (good) than redistribute JUnit under CPL. This is perfect! Open source projects need donations (read WhyGPL for details) and it seems that CPL can generate some revenue. Good!
The wording of the CPL states, that as soon as a company redistributes your software, it cannot sue you for violating its software patents. Excellent! Open source developers hate software patents in general and this is a perfect way to fight with them. Release your software under CPL, wait until Oracle (or others) use your software and then just violate any of their patents without a risk. Or wait until IBM decides to buy your rights to your software to enjoy this patent free violation too.
The things CPL can achieve are so great!