[Coin-discuss] license issues

Brady Hunsaker hunsaker at engr.pitt.edu
Mon Sep 18 13:07:04 EDT 2006


I'll try to help clarify some of the confusion about COIN-OR's license 
policy.  I'm a member of the Strategic Leadership Board, so I feel 
qualified for that.  As to the legal questions of license specifics, 
I'll make a personal statement at the end.

COIN-OR allows project contributors to choose any software license that 
is approved by the Open Source Initiative.  Dual-licensing is also 
allowed, and we currently have one case of a dual-license (user's choice 
of CPL or GPL).  Both the CPL and GPL are approved as open-source 
licenses by the Open Source Initiative.

Most of the current code is licensed under the CPL, so we encourage new 
project contributors to consider the CPL for compatibility.  This is not 
required, however.  It is up to the project contributor.

IPOPT was originally contributed by IBM.  IBM chose to use the CPL for 
all the open-source code it has contributed to COIN-OR.  I don't know 
all the reasons for this, but here are a few points:
- IBM wrote the CPL to be exactly the way they want it.
- The CPL has clauses relating to patents; the GPLv2 does not.
- In my personal understanding, the CPL is closer to the LGPL, allowing 
use as a library or separate module without the requirement that other 
code have the same license.

I hope that clears up some of the main COIN-OR questions.  If not, I'll 
be happy to try again.

----

As to the legal relationship of licenses, I can only speak for myself 
(not for COIN-OR).  My understanding is similar to what Bill has written 
below.  IBM wanted to engage both research and industry communities when 
it contributed IPOPT, and evidently believes that the CPL is the best 
way to do that, despite the relative frequencies of licenses in other 
projects.  The LGPL would be similar in some key ways, but I believe IBM 
probably evaluated it and explicitly deciding against it.

Unfortunately it's not possible to release binary code that combines 
code under the CPL and GPL or LGPL.  It is possible to release source 
code that interoperates, but the user would always be required to 
collect the two different codes and compile them locally.  For example, 
some COIN-OR projects allow the user to link to code under the GPL, such 
as gzip and bzip2 compression libraries.  This is not enabled by 
default, and we do not expect to be able to distribute binaries with 
this feature because of license incompatibilities.

Brady

Hart, William E wrote:
> John:
> 
> I didn't help develop CPL, but my understanding is that the principal
> motivation for CPL was that it enabled commercial entities to use the
> code without enforcing code-distribution requirements on them.  Thus,
> someone like IBM could integrate CPL code, modify it, and distribute it
> commercially without being required to redistribute those changes to the
> public.
> 
> This sort of policy goes against the grain of the GNU open source
> distribution policy, but in practice I have observed that commercial
> entities using CPL code remain interested in fostering improvements in
> the code.
> 
> It's clear to me that this sort of license is not what you're interested
> in for ASCEND.  I don't think you could argue that IPOPT _should_ be
> distributed with the LGPL license.  However, the IPOPT developers are
> free to license IPOPT under LGPL as well, for inclusion in a project
> like ASCEND.
> 
> --Bill
> 
>> -----Original Message-----
>> From: coin-discuss-bounces at list.coin-or.org 
>> [mailto:coin-discuss-bounces at list.coin-or.org] On Behalf Of John Pye
>> Sent: Monday, September 18, 2006 9:09 AM
>> To: Discussions about open source software for Operations Research
>> Subject: Re: [Coin-discuss] license issues
>>
>> Hi Bill,
>>
>> I'm not all that clear on it myself. I found these comments 
>> on Wikipedia:
>> http://en.wikipedia.org/wiki/Common_Public_License
>>
>> CPL would be one of the less common open source licenses. 
>> Given that it's said to be incompatible with the far-and-away 
>> most common open source license, namely the GPL, I'm curious 
>> why it was that CPL was chosen for COIN? I wonder if you 
>> could perhaps explain what the conditions were that you 
>> wanted to enforce?
>>
>> In the case of my project, ASCEND, for example, we wanted to 
>> make a completely free modelling tool that could not be 
>> swallowed up inside a larger commercial piece of software 
>> without our explicit agreement.
>> Perhaps it is important that use of IPOPT and other COIN 
>> software be allowed inside commercial stuff. In that case, 
>> perhaps the LGPL would be a better choice than the CPL?
>>
>> Cheers
>> JP
>>
>> Hart, William E wrote:
>>
>>> FYI, the discussion that JP refers to is available at:
>>>
>>>  http://www.gnu.org/licenses/license-list.html
>>>
>>> I can't say that I understand the gist of the incompatibility...
>>>
>>> --Bill
>>>
>>>  
>>>
>>>> -----Original Message-----
>>>> From: coin-discuss-bounces at list.coin-or.org
>>>> [mailto:coin-discuss-bounces at list.coin-or.org] On Behalf Of John Pye
>>>> Sent: Monday, September 18, 2006 7:59 AM
>>>> To: coin-discuss at list.coin-or.org
>>>> Subject: [Coin-discuss] license issues
>>>>
>>>> Hi all,
>>>>
>>>> I've just come across COIN and the IPOPT solver, and was thinking 
>>>> about looking at it as a possible open source alternative to the 
>>>> CONOPT solver that we currently rely on for some of the 
>> functionality 
>>>> in the ASCEND modelling environment (another CMU project).
>>>>
>>>> I was wondering why IPOPT has chosen the Common Public License.
>>>> According to the GNU website, this license is not 
>> compatible with the 
>>>> GPL, which means that although IPOPT is open source, we 
>> can't legally 
>>>> distribute it with our software. Perversely, it seems that it is 
>>>> easier to use IPOPT in commercial projects than in free projects!
>>>>
>>>> Is there a good reason why the CPL is applied to IPOPT -- perhaps 
>>>> another license could be used instead, such as the GPL or LGPL 
>>>> license?
>>>>
>>>> I note that this discussion also appears to have taken place on the 
>>>> CppAd list, and the Boost license was suggested there as an 
>>>> alternative.
>>>>
>>>> Cheers
>>>> JP
>>>> _______________________________________________
>>>> Coin-discuss mailing list
>>>> Coin-discuss at list.coin-or.org
>>>> http://list.coin-or.org/mailman/listinfo/coin-discuss
>>>>
>>>>
>>>>    
>>>>
>>>
>>> _______________________________________________
>>> Coin-discuss mailing list
>>> Coin-discuss at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/coin-discuss
>>>  
>>>
>>
> 
> 
> _______________________________________________
> Coin-discuss mailing list
> Coin-discuss at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/coin-discuss


-- 
Brady Hunsaker
Assistant Professor
Industrial Engineering
University of Pittsburgh
http://www.engr.pitt.edu/hunsaker/



More information about the Coin-discuss mailing list