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
deshipu
Posts: 1388
Joined: Thu May 28, 2015 5:54 pm

Re: PyCom choose GPL3

Post by deshipu » Thu Nov 10, 2016 8:18 am

kfricke wrote:Naturally. But i recall that they have a team of 3-4 dedicated developers at hand. So they have a fair degree of independence i'd say.
Then again, they don't gain from open sourcing their code -- it's just their good will, as they could have kept it closed as well.

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

Re: PyCom choose GPL3

Post by pythoncoder » Thu Nov 10, 2016 5:24 pm

deshipu wrote:
kfricke wrote:...Then again, they don't gain from open sourcing their code...
They will gain sales to people who won't buy closed source solutions. Perhaps more importantly they gain contributions from the open source community in the form of detailed bug reports and PR's. Open source is very much a two way street.
Peter Hinch
Index to my micropython libraries.

User avatar
deshipu
Posts: 1388
Joined: Thu May 28, 2015 5:54 pm

Re: PyCom choose GPL3

Post by deshipu » Thu Nov 10, 2016 5:55 pm

pythoncoder wrote:
deshipu wrote:
kfricke wrote:...Then again, they don't gain from open sourcing their code...
They will gain sales to people who won't buy closed source solutions. Perhaps more importantly they gain contributions from the open source community in the form of detailed bug reports and PR's. Open source is very much a two way street.
What I meant, they don't gain the pull requests -- because then they couldn't redistribute the code under a different license anymore.

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

Re: PyCom choose GPL3

Post by pythoncoder » Fri Nov 11, 2016 8:47 am

deshipu wrote:...What I meant, they don't gain the pull requests -- because then they couldn't redistribute the code under a different license anymore.
Sorry, I don't follow you. Say they put their source on Github and we find a bug. We write a fix and submit a PR. Is there a problem? Likewise they can take fixes from the MicroPython tree because MIT is more liberal than GPL3. IANAL but as far as I can see the one thing we emphatically can't do is take their code and submit it in a PR to MicroPython.

I'm not pretending their licensing isn't a problem: just trying to get a handle on the implications.
Peter Hinch
Index to my micropython libraries.

User avatar
kfricke
Posts: 342
Joined: Mon May 05, 2014 9:13 am
Location: Germany

Re: PyCom choose GPL3

Post by kfricke » Fri Nov 11, 2016 9:28 am

The point is that they have a product and do own the code they want to open to the public under the GPLv3 (or an vraiant of this, it seems). It is their code and they will sell closed license copies of it to their commercial customers. Others do so and this is called "dual licensing" in most situations.

Once a contributor does add code their code-base this needs to be placed under the GPLv3 as well (the nature of "viral" GPL licenses). But that code is not owned by them. They can not sell other licensed variants to their customers until the contributor grants the ownership of the code to them. This is where contributions to their code end in donations to them or do restrict their use of the contributed code.

At the moment i do bet that they will open their code and let others fork it, but that they will not pull contributions into their code.

As you mentioned yesterday: Most of us do not care about this and see the benefit in open sources. I am personally also fine with the change.

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

Re: PyCom choose GPL3

Post by Lysenko » Fri Nov 11, 2016 9:37 am

pythoncoder wrote:We write a fix and submit a PR. Is there a problem?
There is no problem. By creating the PR you are implicitly agreeing to GPL3 license whatever you are submitting.

The problem arises if you want (for example) to use a driver licensed under GPL2 with a LoPy. Unless the author included the optional "or any later" clause, you can't do it.

dwight.hubbard
Posts: 38
Joined: Mon May 16, 2016 6:35 pm

Re: RE: Re: PyCom choose GPL3

Post by dwight.hubbard » Fri Nov 11, 2016 4:48 pm

Lysenko wrote:
pythoncoder wrote:We write a fix and submit a PR. Is there a problem?
There is no problem. By creating the PR you are implicitly agreeing to GPL3 license whatever you are submitting.

The problem arises if you want (for example) to use a driver licensed under GPL2 with a LoPy. Unless the author included the optional "or any later" clause, you can't do it.
The problem arises when you start to try and build your product to sell. The GPL 3 is a risk that many sources of funding specifically call out during the due diligence phase of transactions.

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

Re: RE: Re: PyCom choose GPL3

Post by Lysenko » Fri Nov 11, 2016 5:40 pm

dwight.hubbard wrote: The problem arises when you start to try and build your product to sell. The GPL 3 is a risk that many sources of funding specifically call out during the due diligence phase of transactions.
Absolutely. I was just discussing how it impacts on hobbyists there.

As mentioned by kfricke, I assume they want to dual license it commercially and/or are forced to use GPL3 because they are depending on something GPL3 themselves (perhaps pySX127x, which is AGPL3).

The problem with that is I've already seen a partial, alternate ESP32 port and implementing an SX1272 interface isn't rocket science (Libelium WaspMotes use that part).

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

Re: RE: Re: PyCom choose GPL3

Post by pythoncoder » Sat Nov 12, 2016 7:08 am

dwight.hubbard wrote:...The problem arises when you start to try and build your product to sell. The GPL 3 is a risk that many sources of funding specifically call out during the due diligence phase of transactions.
Would this apply if your project involves standard firmware and Python code, or only if you modify the firmware?

If the former, surely Pycom have a problem. If the latter, I appreciate the reason.
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 » Sat Nov 12, 2016 8:37 am

That's a distinction without a difference. GPL3 covers "conveying" a "work" and it is implicit in this case that any python code you write is linked into the same "work" as the standard libraries and runtime interpreter.

If you want to allow people to link to your work without infection you need a different license (LGPL) but even that wouldn't help here because you are not making calls into a black box API that resides in a replaceable DLL. Even deriving a subclass from an LGPL licensed library class creates a "derivative work" as far as FSF are concerned and restores the full implications of GPL3.

There is no authoritative case law on much of this as yet, but that just means (to contract lawyers) there is an unquantifiable litigation liability which is the same thing as playing Russian Roulette with at least one (but possibly all) chambers loaded.

Post Reply