I am working on an aiohttp server that will call python modules or shared object libraries. SOME of those modules or so's might be governed by GPL-3 licensing. The parent aiohttp server that does routing to those modules or so's is governed by aiohttp's Apache2 license. Some of the other modules or so's will be under a liberal MIT license, or even possibly a proprietary license for that matter. I will call the GPL-3 licensed modules or so's by means of a Worker, as explained here:


That documentation indicates that those modules or so's will be run under a separate process. Does this sound sufficient for no claim to be made that the Apache 2 licensed router or other non-GPL-3 modules/so's are infringing on the GPL-3 licenses of those other modules or so's?


I found out one thing: Apache 2 is compatible with GPL-3. So that addresses conflicts with the parent process running aiohttp,

I believe aiomultiprocess is doing under the hood a fork of those separate "Worker" processes, so it should be in the clear for GPL-3 (except for processes using licenses that have sweeping claims, like Affero or some proprietary ones out there...)

So now it's down to whether other separate forked "Worker" process threads running various licenses can coexist with process threads running GPL-3 and Apache 2. I think so; feel free to weigh in here...

FYI: the additional aiomultiprcoess component is MIT...


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.