GPL and virality

I think it’s fine to warn someone of the implications and advise against it. GPL-licensed packages are a bigger problem when code around it is not GPL-licensed. It’s not uncommon to take a look at someone’s source code for a Julia package and derive some alternative algorithm from it. An example where this happened before was with NLsolve.jl which was GPL where I among others got inspiration for rootfinding algorithms from how they are done there. Optim.jl and all of JuliaNLSolvers is now taking a mix of approaches from the previous NLsolve.jl and Optim.jl, and so a lot of the stuff that has moved repos or is now in NLSolversBase.jl is definitely some form of derived work. @pkofod got all of the authors to agree to a license change to MIT for this to all be possible. If it had stayed GPL, this would definitely have been a license violation without changing the license of Optim.jl to GPL (among others).

From what I have seen, many people just choose GPL since they are used to it because of R. I think giving a “hey, around here we don’t tend to use GPL because ________, but you should still feel free to make the final choice on your own” is a perfectly fine thing to inform new package authors about the implications of this choice.

To me, anything that would need a lawyer to answer the question (or be answered on a case by case basis) is something to avoid. GPL invites tough questions when surrounded by similar libraries with similar contributors but with non-GPL compatible licensed code.

7 Likes