PyCom choose GPL3

Discussion and questions about boards that can run MicroPython but don't have a dedicated forum.
Target audience: Everyone interested in running MicroPython on other hardware.
User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: PyCom choose GPL3

Post by dhylands » Sat Nov 12, 2016 8:51 am

I've never heard of running python code as being "linked" to the interpreter.

GhostScript is a GPLv3 postscript interpreter and I don't think that makes the files which are rendered by it GPL3 as well. I've run proprietary PostScript files using GhostScript. Similarly there are GPLv3 web browsers and that has no impact on the HTML files which are interpreted and displayed.

Lysenko
Posts: 62
Joined: Wed Aug 17, 2016 1:21 pm

Re: PyCom choose GPL3

Post by Lysenko » Sat Nov 12, 2016 9:26 am

dhylands wrote:I've never heard of running python code as being "linked" to the interpreter.

GhostScript is a GPLv3 postscript interpreter and I don't think that makes the files which are rendered by it GPL3 as well. I've run proprietary PostScript files using GhostScript. Similarly there are GPLv3 web browsers and that has no impact on the HTML files which are interpreted and displayed.
Those are applications or rendering engines processing data, not creating "works" or "derivative works" within the meaning of GPL3. The HTML or PS exists independently of the rendering engine, can be used with any compatible rendering engine and is not being conveyed as a single work.

Bundle up GhostScript with some PS code you author yourself and convey them in such a way that the PS is dependent upon GhostScript to function and GPL3 would apply.

As for Python being linked to the interpreter, the issue doesn't arise because Python isn't GPL licensed. The relevant definintion of "linking" is the "linking exception" clauses of GPL and LGPL3. As far as FSF are concerned even subclassing is "linking" within this definition whether done statically or dynamically.

In any case, as I said before, many of the distinctions and corner cases await authoritative case law and that spells "unlimited liability risk" to a contract lawyer. It doesn't matter who is right or wrong, it is the uncertainty and risk that is lethal so GPL3 is often explicitly prohibited on general principle.

User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: PyCom choose GPL3

Post by pythoncoder » Sat Nov 12, 2016 4:48 pm

@Lysenko Thanks for the clarification. I wonder if Pycom realise that potential commercial buyers are likely to run screaming for the hills?
Peter Hinch
Index to my micropython libraries.

User avatar
bmarkus
Posts: 111
Joined: Tue Oct 21, 2014 5:58 am

Re: PyCom choose GPL3

Post by bmarkus » Sat Nov 12, 2016 6:50 pm

pythoncoder wrote:@Lysenko Thanks for the clarification. I wonder if Pycom realise that potential commercial buyers are likely to run screaming for the hills?
Probably not, as WiPy2/LoPy are unusable products and as the situation managed it will be for a long time.
Tiny Core Linux (piCore) developer
HAM radio call: HA5DI (Béla)

User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: PyCom choose GPL3

Post by dhylands » Sun Nov 13, 2016 7:08 am

Lysenko wrote:
dhylands wrote:I've never heard of running python code as being "linked" to the interpreter.

GhostScript is a GPLv3 postscript interpreter and I don't think that makes the files which are rendered by it GPL3 as well. I've run proprietary PostScript files using GhostScript. Similarly there are GPLv3 web browsers and that has no impact on the HTML files which are interpreted and displayed.
Those are applications or rendering engines processing data, not creating "works" or "derivative works" within the meaning of GPL3. The HTML or PS exists independently of the rendering engine, can be used with any compatible rendering engine and is not being conveyed as a single work.

Bundle up GhostScript with some PS code you author yourself and convey them in such a way that the PS is dependent upon GhostScript to function and GPL3 would apply.
I view PostScript and Javascript as programming languages, just like Python. I think the key takeaway for me is the "conveyancing".

If you bundle the Python code with a GPL3 python interpreter then that's where the problem comes in. If the 2 parts are distributed separately, then there is no issue.

Lysenko
Posts: 62
Joined: Wed Aug 17, 2016 1:21 pm

Re: PyCom choose GPL3

Post by Lysenko » Sun Nov 13, 2016 9:45 am

dhylands wrote: I view PostScript and Javascript as programming languages, just like Python. I think the key takeaway for me is the "conveyancing".
Exactly. GPL3 invented the concept of "convey" because "distribute" (GPL2) is a term used in various jurisdictions with slightly variant meanings. Inventing a new verb was intended to ensure that FSF get to define what is and is not covered without risking being overruled by local statute law.

User avatar
bmarkus
Posts: 111
Joined: Tue Oct 21, 2014 5:58 am

Re: PyCom choose GPL3

Post by bmarkus » Sun Nov 13, 2016 5:48 pm

Comment I received from PyCom:
The GPL V3 licence ensures all code written moving forward remains opensource. I think that is the premise we all want to see... correct? Each of our developers need to share code etc
Maybe would be better to discuss this issue at the PyCom Forum to get more attention from them.
Tiny Core Linux (piCore) developer
HAM radio call: HA5DI (Béla)

Lysenko
Posts: 62
Joined: Wed Aug 17, 2016 1:21 pm

Re: PyCom choose GPL3

Post by Lysenko » Sun Nov 13, 2016 6:19 pm

bmarkus wrote:Comment I received from PyCom:
The GPL V3 licence ensures all code written moving forward remains opensource. I think that is the premise we all want to see... correct? Each of our developers need to share code etc
Maybe would be better to discuss this issue at the PyCom Forum to get more attention from them.
They are correct that is exactly what it does. It ensures that no intellectual property can exist in the context of a LoPy or WiPy v2 product. That's fine for hobby use, so long as you never want to port or use any code that originates in Linux or anything else using the same license (GPL2 without the "or later" clause).

I didn't post to the PyCom forum because I'm not a customer, but I am a MicroPython/PyBoard/George Robotics customer and an outbreak of GPL3 is a dangerous infection that needs quarantined (IMO) ;)

User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: PyCom choose GPL3

Post by pythoncoder » Mon Nov 14, 2016 10:44 am

@Lysenko You evidently have a good grasp of the legalities and commercial implications. Given PyCom's focus on corporate customers, and your view that GPL3 will deter such clients, I suggest presenting a reasoned case on PyCom's forum. Perhaps you've already done so - I've rather lost interest in PyCom so haven't looked.
Peter Hinch
Index to my micropython libraries.

Lysenko
Posts: 62
Joined: Wed Aug 17, 2016 1:21 pm

Re: PyCom choose GPL3

Post by Lysenko » Mon Nov 14, 2016 12:03 pm

pythoncoder wrote:I suggest presenting a reasoned case on PyCom's forum. Perhaps you've already done so - I've rather lost interest in PyCom so haven't looked.
As I said, I'm not a PyCom customer so it would be a bit disingenuous to try to discuss this with them. My interest is confined to mainstream MP.

Besides, I rather suspect they may have no choice. They may be dependent on something (A)GPL3 licensed themselves.

Post Reply