[Coin-discuss] license issues

John Pye john.pye at anu.edu.au
Thu Sep 21 00:18:08 EDT 2006


Hi all

I came across this as another example of CPL-GPL incompatibility 
stymying the progress of open source projects.
http://djvulibre.djvuzone.org/gsdjvu.html

I wonder if the best thing is to just ignore the incompatibility? I 
wonder what the consequence of that would be? Can anyone hazard a guess?

Cheers
JP

Matthew Saltzman wrote:
> On Wed, 20 Sep 2006, Robert Fourer wrote:
>
>>
>> Someone (Matt?) pointed out to me once that the license text in the 
>> AMPL-Solver Library source files is a Historical Permission Notice 
>> and Disclaimer, for which a template is listed at 
>> www.opensource.org/licenses/historical.php.  I notice that this 
>> listing now also includes the line:  "This License has been 
>> voluntarily deprecated by its author."  Could it be that this license 
>> form is older than the Open Source Initiative?
>
> Probably was me.  This is essentially the old form of the BSD license. 
> Berkeley has rescinded the advertising clause, which accounts for the 
> deprecation notice.  The "New BSD License" is its replacement.  The 
> old license was an approved OSS license.  According to the FSF, the 
> advertising clause made the old BSD license incompatible with the GPL, 
> but the New BSD License is GPL-compatible.
>
> Many of the licenses are older than the OSI.  The original BSD license 
> goes back to Berkeley Unix, e.g..  Some projects were re-released 
> under slightly modified licenses to comply with the OSI's definition.  
> I think the Berkeley update was in 1999, and I conjecture it was done 
> for GPL compatibility.
>
>         Matt
>
>
>>
>> -- Bob
>>
>>
>>> -----Original Message-----
>>> From: Andreas Waechter [mailto:andreasw at watson.ibm.com]
>>> Sent: Tuesday, September 19, 2006 11:29 AM
>>> To: 4er at iems.northwestern.edu; Discussions about open source 
>>> software for
>>> Operations Research
>>> Subject: RE: [Coin-discuss] license issues
>>>
>>> Technically speaking, I don't think it is correct that the ASL is 
>>> released
>>> as open source, since it does not come with a license approved by 
>>> the open
>>> source committee.  It is release under the license below (taken from a
>>> source file), which I think is called a BSD-style license:
>>>
>>> ---------- 8< ------------------------
>>>
>>> Copyright (C) 1997-2001 Lucent Technologies
>>> All Rights Reserved
>>>
>>> Permission to use, copy, modify, and distribute this software and
>>> its documentation for any purpose and without fee is hereby
>>> granted, provided that the above copyright notice appear in all
>>> copies and that both that the copyright notice and this
>>> permission notice and warranty disclaimer appear in supporting
>>> documentation, and that the name of Lucent or any of its entities
>>> not be used in advertising or publicity pertaining to
>>> distribution of the software without specific, written prior
>>> permission.
>>>
>>> LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
>>> INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
>>> IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY
>>> SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
>>> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
>>> IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
>>> ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
>>> THIS SOFTWARE.
>>>
>>> ---------- 8< ------------------------
>>>
>>> On Tue, 19 Sep 2006, Robert Fourer wrote:
>>>
>>>> Since AMPL came up in the discussion, I thought I'd also mention a few
>>> related
>>>> issues ...
>>>>
>>>> It's true that the AMPL-Solver Library is only needed for building the
>>>> AMPL-interfaced version of IPOPT.  But to further complicate 
>>>> matters, the
>>>> AMPL-Solver Library has been released as open source, but under a 
>>>> license
>>>> different from either GPL or CPL (indeed COIN-OR was not yet on the 
>>>> scene
>>> when
>>>> the AMPL library was first made available).  I'm not sure whether 
>>>> this adds
>>>> further difficulties to the distribution of binaries for 
>>>> AMPL/IPOPT, which
>>>> would be convenient to have.
>>>>
>>>> AMPL only interacts with a solver by writing a file and setting some
>>>> environment variables, spawning the solver as a process, and at the 
>>>> end
>>>> retrieving a file written by the solver.  As a result I believe 
>>>> that the
>>>> licening issues surrounding an AMPL-interfaced solver are completely
>>>> independent from the issues regarding the core AMPL program (which 
>>>> is not
>>>> open-source).  It would be interesting to hear other opinions on this,
>>> though.
>>>>
>>>> Bob Fourer
>>>> 4er at iems.northwestern.edu
>>>>
>>>>
>>>>> -----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: Tuesday, September 19, 2006 6:57 AM
>>>>> To: Discussions about open source software for Operations Research
>>>>> Subject: Re: [Coin-discuss] license issues
>>>>>
>>>>> Hi all,
>>>>>
>>>>> Further to my earlier mail, I am wondering about IPOPT again. As I
>>>>> understand it you can't usefully emply IPOPT without one of Harwell,
>>>>> Pardiso or WSMP (just from my reading of the documentation, haven't
>>>>> drilled down any further than that at this stage). And apparently you
>>>>> also need AMPL Solver Library, although I'm not sure if that is 
>>>>> required
>>>>> for compilation of the C++ interface, or only for building the AMPL
>>>>> plugin solver.
>>>>>
>>>>> If that is the case then it would seem that it's impossible to
>>>>> distribute binary versions of IPOPT anyway, right?
>>>>>
>>>>> If one were to attempt to use the IPOPT solver as part of a larger
>>>>> software system such as ASCEND (think of ASCEND as a GPL-licensed
>>>>> equivalent of AMPL), then it seems that a binary ASCEND distribution
>>>>> incorporating IPOPT is out of the question even without the issues of
>>>>> the CPL vs GPL.
>>>>>
>>>>> Does this sound right to you?
>>>>>
>>>>> Cheers
>>>>> JP
>>>>>
>>>>> Ted Ralphs wrote:
>>>>>
>>>>>> As the chair of Foundation's legal affairs committee, I suppose I 
>>>>>> would
>>>>>> be remiss if I didn't weigh in. Sorry for any "information 
>>>>>> overload."
>>>>>> (Big Disclaimer: I am not a lawyer, but I play one on TV).
>>>>>>
>>>>>> First, I want to emphasize that in the arena of intellectual 
>>>>>> property
>>>>>> and software, there is very little case law to back up the 
>>>>>> various legal
>>>>>> opinions being espoused on the Web and elsewhere, so don't expect to
>>>>>> find "the right answer" to any of these sticky questions. About 
>>>>>> all you
>>>>>> can do is to form your own opinion either by reading the licenses 
>>>>>> and
>>>>>> trying to learn how IP law works yourself or by trying to 
>>>>>> ascertain what
>>>>>> the majority of people believe. For every legal opinion about open
>>>>>> source licenses, you can always find someone who will defend the 
>>>>>> exact
>>>>>> opposite opinion. For that reason, one needs to take into account 
>>>>>> the
>>>>>> possible political biases of various "authorities" on this subject.
>>>>>>
>>>>>> That said, there is always confusion about the "compatibility" of 
>>>>>> the
>>>>>> various licenses in common use. In the case of the GPL, I believe 
>>>>>> that
>>>>>> the Free Software Foundation's assessment of compatibility of the 
>>>>>> GPL
>>>>>> with other licenses has to do with the distribution of binaries, not
>>>>>> source. As Brady already pointed out, it is OK to distribute source
>>>>>> consisting of a combination of CPL and GPL code. However, you cannot
>>>>>> (according to the legal interpretation of the Free Software 
>>>>>> Foundation)
>>>>>> distribute a pre-compiled binary consisting of both CPL and GPL 
>>>>>> code.
>>>>>> (Note, however, that some would argue that the clauses in the GPL 
>>>>>> that
>>>>>> prevent such combination are not legally enforceable---this has 
>>>>>> yet to
>>>>>> be tested in court).
>>>>>>
>>>>>> As for why we chose the CPL and not the GPL, the answer to that 
>>>>>> question
>>>>>> is not very straightforward, but, as previously pointed out, a big
>>>>>> reason is that it is more friendly to commercial use. A lot of 
>>>>>> companies
>>>>>> will not touch GPL'd code with a ten-foot pole because it is not
>>>>>> possible to include GPL'd code in a proprietary product, whereas 
>>>>>> the CPL
>>>>>> makes this fairly easy. Since we generally want to encourage 
>>>>>> commercial
>>>>>> use of COIN software and since IBM, who contributed much of the 
>>>>>> initial
>>>>>> code in COIN, was already comfortable with it, we chose the CPL 
>>>>>> as our
>>>>>> recommended license. (Disclaimer: This is just my own 
>>>>>> interpretation of
>>>>>> Foundation policy).
>>>>>>
>>>>>> To clarify whether the CPL requires changes to the code to be 
>>>>>> released
>>>>>> open source, the CPL does require that "improvements" to CPL'd 
>>>>>> code be
>>>>>> contributed back to the owner of that code under the CPL if such
>>>>>> improvements are redistributed. However, the CPL allows for users 
>>>>>> to add
>>>>>> separate "modules" to CPL'd code that are under a different 
>>>>>> (possibly
>>>>>> proprietary) license. In other words, if one wanted to build a GUI
>>>>>> interface for CLP or even to add a new algorithm for solving LPs 
>>>>>> to it,
>>>>>> it would be OK to sell the resulting product commercially, even 
>>>>>> if the
>>>>>> additional module was not released under the CPL (or even not open
>>>>>> source). This is not allowed under the GPL. (Disclaimer: These 
>>>>>> opinions
>>>>>> are just my own interpretation).
>>>>>>
>>>>>> For a more in-depth analysis of several open source licenses 
>>>>>> (including
>>>>>> the CPL and GPL), Lawrence Rosen's book, "Open Source Licensing:
>>>>>> Software Freedom and Intellectual Property Law," is recommended and
>>>>>> available on-line (in open source fashion):
>>>>>>
>>>>>> http://www.rosenlaw.com/oslbook.htm
>>>>>>
>>>>>> For IBMs interpretation of the CPL, see their FAQ here:
>>>>>>
>>>>>> http://www-128.ibm.com/developerworks/library/os-cplfaq.html
>>>>>>
>>>>>> I hope this helps clarify some things.
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Ted
>>>>>>
>>>>>>
>>>>>> Andreas Waechter wrote:
>>>>>>
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> Just a minor insignificant correction:  Ipopt was originally 
>>>>>>> contributed
>>>>>>> by CMU, since it was written there.  However, since I then went 
>>>>>>> to IBM,
>>>>>>> we decided to release it under a license that IBM would be happy 
>>>>>>> with
>>>>>>> (and would allow me to keep working on it), and that was the CPL.
>>>>>>>
>>>>>>> Andreas
>>>>>>>
>>>>>>>
>>>>>>> On Mon, 18 Sep 2006, Brady Hunsaker wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> 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
>>
>




More information about the Coin-discuss mailing list