From: Brendan Miller on
Python provides a GNU readline interface... since readline is a GPLv3
library, doesn't that make python subject to the GPL? I'm confused
because I thought python had a more BSD style license.

Also, I presume programs written with the readline interface would
still be subject to GPL... might want to put a warning about that in
the python library docs.
From: Robert Kern on
On 4/20/10 1:09 PM, Brendan Miller wrote:
> Python provides a GNU readline interface... since readline is a GPLv3
> library, doesn't that make python subject to the GPL? I'm confused
> because I thought python had a more BSD style license.

The PSF License is more BSD-styled, yes. The readline module can also be
built against the API-compatible, BSD-licensed libedit library. Python's
source distribution (even the readline module source) does not have to
be subject to the GPL, though it should be (and is) GPL-compatible.

> Also, I presume programs written with the readline interface would
> still be subject to GPL... might want to put a warning about that in
> the python library docs.

*When* someone builds a binary of the Python readline module against the
GNU readline library, then that binary module is subject to the terms of
the GPL. Any programs that distribute with and use that binary are also
subject to the terms of the GPL (though it can have a non-GPL,
GPL-compatible license like the PSF License). This only applies when
they are combined with the GNU readline library, not before. The program
must have a GPL-compatible license in order to be distributed that way.
It can also be distributed independently of GNU readline under any license.

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though
it had
an underlying truth."
-- Umberto Eco

From: Brendan Miller on
On Tue, Apr 20, 2010 at 11:38 AM, Robert Kern <robert.kern(a)gmail.com> wrote:
> On 4/20/10 1:09 PM, Brendan Miller wrote:
>>
>> Python provides a GNU readline interface... since readline is a GPLv3
>> library, doesn't that make python subject to the GPL? I'm confused
>> because I thought python had a more BSD style license.
>
> The PSF License is more BSD-styled, yes. The readline module can also be
> built against the API-compatible, BSD-licensed libedit library. Python's
> source distribution (even the readline module source) does not have to be
> subject to the GPL, though it should be (and is) GPL-compatible.
>
>> Also, I presume programs written with the readline interface would
>> still be subject to GPL... might want to put a warning about that in
>> the python library docs.
>
> *When* someone builds a binary of the Python readline module against the GNU
> readline library, then that binary module is subject to the terms of the
> GPL. Any programs that distribute with and use that binary are also subject
> to the terms of the GPL (though it can have a non-GPL, GPL-compatible
> license like the PSF License). This only applies when they are combined with
> the GNU readline library, not before. The program must have a GPL-compatible
> license in order to be distributed that way. It can also be distributed
> independently of GNU readline under any license.
>

Hmm... So if I ship python to a customer with proprietary software
that runs on top of it, then I need to be careful to disable
libreadline? Is there a configure flag for this or something?

Since libreadline is the default for Linux systems, and Python's
license advertises itself as not being copyleft, and being embeddable
and shippable... It would be nice if this were made clear. Maybe a
note here about libreadline: http://python.org/psf/license/

It seems to me that the whole of the python distribution would be GPL
after being built with libreadline, so this would be an easy trap to
fall into if you didn't realize that python used libreadline.
From: Robert Kern on
On 4/20/10 3:49 PM, Brendan Miller wrote:
> On Tue, Apr 20, 2010 at 11:38 AM, Robert Kern<robert.kern(a)gmail.com> wrote:
>> On 4/20/10 1:09 PM, Brendan Miller wrote:
>>>
>>> Python provides a GNU readline interface... since readline is a GPLv3
>>> library, doesn't that make python subject to the GPL? I'm confused
>>> because I thought python had a more BSD style license.
>>
>> The PSF License is more BSD-styled, yes. The readline module can also be
>> built against the API-compatible, BSD-licensed libedit library. Python's
>> source distribution (even the readline module source) does not have to be
>> subject to the GPL, though it should be (and is) GPL-compatible.
>>
>>> Also, I presume programs written with the readline interface would
>>> still be subject to GPL... might want to put a warning about that in
>>> the python library docs.
>>
>> *When* someone builds a binary of the Python readline module against the GNU
>> readline library, then that binary module is subject to the terms of the
>> GPL. Any programs that distribute with and use that binary are also subject
>> to the terms of the GPL (though it can have a non-GPL, GPL-compatible
>> license like the PSF License). This only applies when they are combined with
>> the GNU readline library, not before. The program must have a GPL-compatible
>> license in order to be distributed that way. It can also be distributed
>> independently of GNU readline under any license.
>>
>
> Hmm... So if I ship python to a customer with proprietary software
> that runs on top of it, then I need to be careful to disable
> libreadline? Is there a configure flag for this or something?

Just don't ship the readline.so module. That's the only thing that links to
libreadline.

> Since libreadline is the default for Linux systems, and Python's
> license advertises itself as not being copyleft, and being embeddable
> and shippable... It would be nice if this were made clear. Maybe a
> note here about libreadline: http://python.org/psf/license/

http://bugs.python.org

> It seems to me that the whole of the python distribution would be GPL
> after being built with libreadline, so this would be an easy trap to
> fall into if you didn't realize that python used libreadline.

No, the whole Python distribution does not magically become GPLed because one
optional module that you may or may not load is compiled against a GPLed library.

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco

From: Irmen de Jong on
On 20-4-2010 20:09, Brendan Miller wrote:
> Python provides a GNU readline interface... since readline is a GPLv3
> library, doesn't that make python subject to the GPL? I'm confused
> because I thought python had a more BSD style license.
>
> Also, I presume programs written with the readline interface would
> still be subject to GPL... might want to put a warning about that in
> the python library docs.

IANAL but I think because Python itself doesn't include the readline library as part of
the distribution (it is installed on your system by other means), you have nothing to
worry about. Only when you start to include it as part of your program, then you have to
worry about the license(s) involved. But I can be wrong here.

-irmen