Re: use of Python bindings to GPL library from within non-GPL Python toolkit

2008-09-27 Thread Anthony W. Youngman
In message [EMAIL PROTECTED], Yaroslav 
Halchenko [EMAIL PROTECTED] writes

Thank you Anthony for a detailed explanation, but I am still lacking a
clear view here since you are talking about mixing-in GPL code within
non-GPLed project, and in our case it is not quite the case:

ATM all code in our project is non-GPLed, including some code which
makes use of external GPL library through python bindings. So,
technically speaking we are not mixing the code, and we do not
redistribute GPL code within our project (that dependency on GPLed
library is optional). But if I get it right -- it doesn't really matter,
since GPL doesn't allow external non-GPLed software to use GPLed library
(for such scenarios there is LGPL), am I right?

If it's external non-GPL, you can't change its licence. So *YOU* *CAN* 
mix it with both GPL and your own software.


But you CAN'T then DISTRIBUTE the result. The GPL says you must 
distribute the non-GPL code as if it were GPL, but you don't own that 
code and can't change the licence. So you can't comply with both 
licences at the same time, so you can't distribute.


Cheers,
Wol
--
Anthony W. Youngman - [EMAIL PROTECTED]


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: use of Python bindings to GPL library from within non-GPL Python toolkit

2008-09-27 Thread Ben Finney
Anthony W. Youngman [EMAIL PROTECTED] writes:

 If it's external non-GPL, you can't change its licence. So *YOU* *CAN*
 mix it with both GPL and your own software.
 
 But you CAN'T then DISTRIBUTE the result. The GPL says you must
 distribute the non-GPL code as if it were GPL

Not quite: the GPL says only that you may not impose *additional*
restrictions beyond those in the GPL. There are a number of non-GPL
licenses that, because their restrictions are a subset of those in the
GPL, are thus compatible with the GPL.

I believe the original poster spoke of an MIT-style license; this
term could refer to any of a number of different licenses, so I'll
assume they mean instead terms equivalent to the Expat license.

The terms of the Expat license is one example of a license that is not
GPL but is GPL-compatible. A work derived both from works licensed GPL
and Expat can be redistributed under the GPL.

 but you don't own that code and can't change the licence. So you
 can't comply with both licences at the same time, so you can't
 distribute.

If that were true, then it would indeed make the work
non-redistributable. If both licenses *can* be satisfied (as in the
case of GPL and Expat, by redistributing under the terms of the GPL),
then that would be okay.

-- 
 \   “About four years ago, I was — no, it was yesterday.” —Steven |
  `\Wright |
_o__)  |
Ben Finney


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: use of Python bindings to GPL library from within non-GPL Python toolkit

2008-09-24 Thread Yaroslav Halchenko
Thank you Anthony for a detailed explanation, but I am still lacking a
clear view here since you are talking about mixing-in GPL code within
non-GPLed project, and in our case it is not quite the case:

ATM all code in our project is non-GPLed, including some code which
makes use of external GPL library through python bindings. So,
technically speaking we are not mixing the code, and we do not
redistribute GPL code within our project (that dependency on GPLed
library is optional). But if I get it right -- it doesn't really matter,
since GPL doesn't allow external non-GPLed software to use GPLed library
(for such scenarios there is LGPL), am I right?



-- 
  .-.
=--   /v\  =
Keep in touch// \\ (yoh@|www.)onerussian.com
Yaroslav Halchenko  /(   )\   ICQ#: 60653192
   Linux User^^-^^[17]



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: use of Python bindings to GPL library from within non-GPL Python toolkit

2008-09-20 Thread Anthony W. Youngman
In message [EMAIL PROTECTED], Yaroslav 
Halchenko [EMAIL PROTECTED] writes

Hi Guys,

I am sorry that I am following up on this dead thread I started long
ago [1], and which Francesco was kind to follow up to.

Now I've got another project to package and got the same issue, and I am
not clear if I have the right understanding of GPL-compatibility.

AFAIK it means that you can use GPL-compatible licensed project
within GPL-ed project, and not vise-versa! Am I correct?


Yes.


And actually if I am reading it right, wikipedia says the same:
Many of the most common free software licenses, such as the original
MIT/X license, the BSD license (in its current 3-clause form), and the
LGPL, are GPL-compatible. That is, their code can be combined with a
program under the GPL without conflict (the new combination would have
the GPL applied to the whole).

so -- combination has to be GPLed!


Sort of yes ...


If I am not right -- then Francesco is right and I can easily use GPLed
project (and don't even ask for LGPL) from anything which is
'GPL-compatible'.

That's not impossible ... but if I understand you aright, then the GPL 
is intended to hinder/prevent that. The GPL does not allow you to mix 
GPL'd code in non-gpl'd projects.


The proper way to look at it is:

If you distribute someone else's code you have to abide by their licence 
that they put on it. If that licence allows you to relicence the code 
then you can, otherwise you can't.


Let's say you mix three code bases into one project, one is GPL, one is 
GPL-compatible, and one is your own code.


Your own code, you can do what you like with - apply ANY licence to it. 
The GPL code, you cannot relicence it, so you have to distribute it 
under the GPL only. The GPL-compatible code can also be distributed 
under the GPL.


But because you're distributing your code mixed with GPL code, the GPL 
demands that either you dual-licence your code as GPL, or you let the 
recipients of the code relicence. Otherwise you can't distribute the GPL 
code.


Your recipients now can treat the entire project as if was GPL (that's 
the point of GPL-compatible). They can strip out your code and use it 
under whatever other licence you put it. And they can strip out the 
GPL-compatible code and use it under the GPL-compatible licence.


The thing is, you CAN NOT (without the copyright holder's permission) 
relicence any third-party code. The GPL says you must pass on ALL the 
rights that the GPL grants to ALL the code to ALL the recipients. If you 
can't do that you can't distribute the GPL code. And if the 3rd-party 
licence didn't give you those rights to pass on, you can't mix that code 
with GPL code and pass it on because the two licences conflict - the GPL 
says you MUST pass on the rights, the 3rd-party licence says you CAN'T 
pass on the rights, and the only option left open to you is to NOT 
DISTRIBUTE.


Cheers,
Wol
--
Anthony W. Youngman - [EMAIL PROTECTED]


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: use of Python bindings to GPL library from within non-GPL Python toolkit

2008-09-17 Thread Yaroslav Halchenko
Hi Guys,

I am sorry that I am following up on this dead thread I started long
ago [1], and which Francesco was kind to follow up to.

Now I've got another project to package and got the same issue, and I am
not clear if I have the right understanding of GPL-compatibility.

AFAIK it means that you can use GPL-compatible licensed project
within GPL-ed project, and not vise-versa! Am I correct?

And actually if I am reading it right, wikipedia says the same: 
Many of the most common free software licenses, such as the original
MIT/X license, the BSD license (in its current 3-clause form), and the
LGPL, are GPL-compatible. That is, their code can be combined with a
program under the GPL without conflict (the new combination would have
the GPL applied to the whole).

so -- combination has to be GPLed!

If I am not right -- then Francesco is right and I can easily use GPLed
project (and don't even ask for LGPL) from anything which is
'GPL-compatible'.

If I am right -- then I guess we might have quite a few packages in
debian already which would need a closer look. And what could be a
possible work-around? double-licensing? search for exceptions from GPLed
project authors (release it under LGPL for use in a specific project
etc)

Thanks in advance!

[1] http://lists.debian.org/debian-legal/2008/04/msg5.html

On Wed, 02 Apr 2008, Yaroslav Halchenko wrote:

 Dear Legal People,

 I am one of the developers of PyMVPA toolbox [1], which we currently
 distribute under MIT License. It is written in Python and is actually a
 framework either to create scripts for the analysis or just perform
 analysis interactively within python (ipython) shell environment.


 Recently we decided to make use of shogun library inside of
 PyMVPA, which has python bindings available. Shogun is distributed
 under GPL (not LGPL).

 IIRC Python itself, since it is simply a programming language, is
 not limited in licensing terms to what libraries are allowed to be used
 (not shipped) within Python, thus it is ok to use shogun within Python.

 But do we have to double-license PyMVPA for people to be legally able to
 use shogun functionality within PyMVPA? or since we don't explicitly
 link to shogun, neither bundle it together we are ok? We don't want to
 switch to GPL completely since we don't want to limit MIT-compatible
 licensed software to absorb/use our (non-GPLed) code.

 If we do have to release it under GPL as well, would it be ok to
 distribute entire PyMVPA in a single package and just mention that some
 parts of PyMVPA (which make use of GPL) cannot be distributed/used under
 MIT license and are distributed solely under GPL?

 Thank you in advance for clarifications

 [1] http://pkg-exppsy.alioth.debian.org/pymvpa/
-- 
  .-.
=--   /v\  =
Keep in touch// \\ (yoh@|www.)onerussian.com
Yaroslav Halchenko  /(   )\   ICQ#: 60653192
   Linux User^^-^^[17]




signature.asc
Description: Digital signature


use of Python bindings to GPL library from within non-GPL Python toolkit

2008-04-02 Thread Yaroslav Halchenko
Dear Legal People,

I am one of the developers of PyMVPA toolbox [1], which we currently
distribute under MIT License. It is written in Python and is actually a
framework either to create scripts for the analysis or just perform
analysis interactively within python (ipython) shell environment.


Recently we decided to make use of shogun library inside of
PyMVPA, which has python bindings available. Shogun is distributed
under GPL (not LGPL).

IIRC Python itself, since it is simply a programming language, is
not limited in licensing terms to what libraries are allowed to be used
(not shipped) within Python, thus it is ok to use shogun within Python.

But do we have to double-license PyMVPA for people to be legally able to
use shogun functionality within PyMVPA? or since we don't explicitly
link to shogun, neither bundle it together we are ok? We don't want to
switch to GPL completely since we don't want to limit MIT-compatible
licensed software to absorb/use our (non-GPLed) code.

If we do have to release it under GPL as well, would it be ok to
distribute entire PyMVPA in a single package and just mention that some
parts of PyMVPA (which make use of GPL) cannot be distributed/used under
MIT license and are distributed solely under GPL?

Thank you in advance for clarifications

[1] http://pkg-exppsy.alioth.debian.org/pymvpa/

-- 
Yaroslav Halchenko
Research Assistant, Psychology Department, Rutgers-Newark
Student  Ph.D. @ CS Dept. NJIT
Office: (973) 353-5440x263 | FWD: 82823 | Fax: (973) 353-1171
101 Warren Str, Smith Hall, Rm 4-105, Newark NJ 07102
WWW: http://www.linkedin.com/in/yarik


signature.asc
Description: Digital signature


Re: use of Python bindings to GPL library from within non-GPL Python toolkit

2008-04-02 Thread Francesco Poli
On Wed, 2 Apr 2008 14:20:23 -0400 Yaroslav Halchenko wrote:

 Dear Legal People,
 
 I am one of the developers of PyMVPA toolbox [1],

Interesting project.
Thanks for developing it as free software!  :)

 which we currently
 distribute under MIT License.

Which is better named the Expat license, in order to avoid
ambiguities with other licenses that are called MIT License as well...

 It is written in Python and is actually a
 framework either to create scripts for the analysis or just perform
 analysis interactively within python (ipython) shell environment.
 
 
 Recently we decided to make use of shogun library inside of
 PyMVPA, which has python bindings available. Shogun is distributed
 under GPL (not LGPL).

No problems so far, since the Expat license is GPL-compatible.

 
 IIRC Python itself, since it is simply a programming language, is
 not limited in licensing terms to what libraries are allowed to be used
 (not shipped) within Python, thus it is ok to use shogun within Python.

Without even entering the linking-vs.-licensing technicalities, it is
OK either way, since the Expat license is compatible with the GNU GPL.

More knowledgeable people will explain whether using a GPLed library
through Python bindings creates any licensing compatibility
requirements (I tend to think it doesn't, since you do not distribute
any bit coming or derived from the library).  However the point is
moot, since the two licenses are compatible anyway! 

 
 But do we have to double-license PyMVPA for people to be legally able to
 use shogun functionality within PyMVPA?

You don't have to dual-license anything, since, even in the case you
have to comply with GPL requirements for works based on the Program,
you only need to make sure your license is GPL-compatible, but the
Expat license is already GPL-compatible!

 or since we don't explicitly
 link to shogun, neither bundle it together we are ok?

You're probably OK for this reason too.
If this is the case, you're OK for two reasons!

[...]
 Thank you in advance for clarifications
 
 [1] http://pkg-exppsy.alioth.debian.org/pymvpa/

You're welcome, but please note my usual disclaimers:
IANAL, TINLA, IANADD, TINASOTODP.

-- 
 http://frx.netsons.org/progs/scripts/refresh-pubring.html
 New! Version 0.6 available! What? See for yourself!
. Francesco Poli .
 GnuPG key fpr == C979 F34B 27CE 5CD8 DC12  31B5 78F4 279B DD6D FCF4


pgptc1i8KLPYF.pgp
Description: PGP signature