Closed migueldeicaza closed 10 years ago
Unfortunately, the code is based on original C++ zeromq codebase which is itself LGPL-licensed and the copyrights are owned by individual contributors. Thus, re-licensing it would require everyone involved to agree on the change. So, for example, I wrote most of the original code but even I can't re-license it. Instead, I've created a new MIT-licensed project (nanomsg) and rewritten the whole codebase from scratch. However, it's still in alpha stage and I don't expect anyone to translate it into C# anytime soon.
@sustrik, you'd be surprised. I've already started working on translating it into C# :)
On 19 August 2013 15:15, sustrik notifications@github.com wrote:
Unfortunately, the code is based on original C++ zeromq codebase which is itself LGPL-licensed and the copyrights are owned by individual contributors. Thus, re-licensing it would require everyone involved to agree on the change. So, for example, I wrote most of the original code but even I can't re-license it. Instead, I've created a new MIT-licensed project (nanomsg) and rewritten the whole codebase from scratch. However, it's still in alpha stage and I don't expect anyone to translate it into C# anytime soon.
— Reply to this email directly or view it on GitHubhttps://github.com/zeromq/netmq/issues/96#issuecomment-22870663 .
What licensing problems occur exactly ? My googleFU is being weak and I'm not able to find the exact clauses in each that are a problem.
I think you are refering to clause 4d of LGPLv3 (boils down to releasing sources or using dynamic linking). The license used by netmq contains the so-called linking exception, so you should be fine using the library on environments which do not allow dynamic linking.
Hey guys,
Your choice of the LGPLv3 means that the code can not be used on embedded environments like iOS, PlayStation Mobile or systems like the Xbox or PS3 due to the LGPL incompatibility with the terms imposed by the various walled-garden agreements (perhaps even Android, but I have not read those terms in detail).
In an ideal world, you could use the Apache2 or MIT X11 license for the code, which would allow the code to be used on those environments (Mono's class libraries were originally MIT X11, we incorporated MS-PL (which is basically Apache2) and later switched new work to Apache2.
If you are not willing to make that change for general distribution, you might want to consider giving rights to someone in the team to be able to relicense this for proprietary use on those platforms, so that if in the future a really strong need emerges for you guys to support a given platform, you have the choice to do it.
This could even be the beginning of dual-licensing the code. While I can not guarantee that it will be a booming business, it is an option to keep around.
Miguel