I'm not a lawyer, but I believe there is a longstanding misunderstanding on this matter and the FSF is in the wrong. The FSF, in the GPL FAQ, says that maintained dynamic linking, as exhibited in Python, infects any package that imports. However, to trigger this clause the 'linked' package must constitute a derivative work, which has a definite legal meaning. The FSF's justification in the case of static linking is relatively sound. However, legal rulings on the matter of dynamic linking, as in Python (*Galoob v. Nintendo*) disagree.
For those interested, the actual ruling for *Galoob v. Nintendo*: https://law.justia.com/cases/federal/appellate-courts/F2/964/965/341457/
The relevant portion of the ruling, which stands today and was affirmed in *Micro Star v. FormGen Inc.*, states rather concretely
A derivative work must incorporate a protected work in some concrete or
Ergo, despite what the FSF states, *on the basis of current law dynamic linking - linking without creating a file in any way, simply asking another library to do something - does not constitute creation of a derivative work, and thus does not infringe the GPL.* Linking as a matter of current law involves actually combining the linked code with the code from the linking package into a concrete form, generally a file, which can then be executed. Thus, static linking infects, but dynamic linking does not. Again, *this isn't what the FSF says, but ultimately the GPL means what it actually says, not what the FSF wants it to. *Consider this the same way that the US Constitution exists separately from the Federalist papers and other writings of the founding fathers.
Despite this being relatively clearly settled law, very few people call the FSF out on it, and fewer have the guts to act appropriately as permitted under the law. Most It's actually harming communities, though, and PyFFTW is a great example.
If anyone can actually refute this, I'm all ears.
On Wed, Nov 1, 2017 at 6:43 PM, Nathaniel Smith firstname.lastname@example.org wrote:
On Wed, Nov 1, 2017 at 6:22 PM, Juan Nunez-Iglesias email@example.com wrote:
On Thu, Nov 2, 2017 at 12:14 PM, Stefan van der Walt <
On Wed, Nov 1, 2017, at 16:32, Juan Nunez-Iglesias wrote:
Stéfan, as an aside, I notice that SPORCO is BSD, but uses PyFFTW.
Yes, I'm aware. If we ever do rely on this code, we'll have to switch that out.
I'm not pointing it out to switch it out. Rather, I've heard from many
proponents that linking/importing GPL in BSD code is fine, and saying the opposite is simply FUD. So I'm wondering whether SPORCO is unwittingly illegal or simply bearing this out. Know of any cases where this has been specifically tested?
You can combine GPL and BSD code, and it's certainly not illegal; it's just that you may have to treat the combined work as being under the GPL.
-- Nathaniel J. Smith -- https://vorpus.org _______________________________________________ scikit-image mailing list firstname.lastname@example.org https://mail.python.org/mailman/listinfo/scikit-image