That's not a loophole, it's the purpose of the license. The MPL was made to make embedding an otherwise open-source codebase into a new (non-open) project doable. There used to be several commercial products that used the gecko web engine and other mozilla code, and mozilla code was generally provided under a dual (MPL/GPL) or triple (MPL/GPL/LGPL) license so that developers could choose.
post
Spent some time reading this: https://rosenlaw.com/OSL3.0-explained.htm
Section IV. Source Code And Derivative Works seems interesting.
... authorizes licensees "to translate, adapt, alter, transform, modify, or arrange the Original Work, thereby creating derivative works (" Derivative Works ") based upon the Original Work." ...
Only the Source Code of the Original Work or the Source Code of a modified (altered, etc.) Derivative Work must be disclosed.
If linking (by whatever technical means) can be accomplished by making and using unmodified copies of the Original Work, then 1(a) and 1(c) permit that; only the Source Code of the Original Work must be disclosed.
I'm totally not qualified to comment on this, but it kiiiinda seems like OSL 3.0 would capture the work2.go file. At least, it doesn't seem to give up on work2.go as easily as the MPL 2.0...
Maybe a better middle ground between GPL and MIT? It seems like: if you purely use my library, then you don't disclose anything. But if you touch my library, then you have to disclose the (entire) change?
all 5 comments