getsentry / fsl.software

Functional Source License (FSL)
https://fsl.software/
134 stars 8 forks source link

Patent grant for MIT-style based FSL #40

Closed siemato closed 7 months ago

siemato commented 7 months ago

I was mulling over the patent section of the license. As far as I can tell, Patents aren't a thing of consideration for MIT, the BSDs have their own variant BSD-2-Clause-Patent, and there's the UPL-1.0 as a ground-up license in the spirits of MIT with patents. Under this premise, I am suggesting an extension of the FSL for this use-case, since patents remain a core building block in rights management in many legal frameworks for a plethora of markets.

Can you clarify what's needed for an extension of the FSL? While MIT+Apache covers most use cases, there's still non-attribution (Zero-clause BSD - 0BSD) and marketing restrictions (BSD-3-clause) without representation and both are quite fundamental to either the ecosystem as licensing for core/std libs or for protecting brands and brand value (and thus are again in the spirits of the FSL).

Thank you for your time and consideration.

Brian-M-J commented 7 months ago

There's also the Apache License with LLVM exceptions which, like the UPL, gets around the GPL 2.0 incompatibility.

I personally prefer the UPL. It's much shorter and simpler than the Apache license. For more info on it you can look at this and this.

chadwhitacre commented 7 months ago

Thanks for weighing in, @siemato @Brian-M-J! :-)

Can you clarify what's needed for an extension of the FSL?

On one interpretation of your question, an extension of FSL would be a new license with a different name. On another, if you are asking to modify the FSL itself such that we would release a 1.2 or 2.0 version, or a variant using a different future license (I think this is what you mean?), you have to make a convincing case. :)

this use-case

Sorry, I'm lost ... what's the use case? If I understand correctly that you're asking for FSL with, e.g., a UPL future license, what's the rationale since Apache 2.0 already includes a patent clause?

siemato commented 7 months ago

Thank you for your time, @chadwhitacre

Sorry, I'm lost ... what's the use case? If I understand correctly that you're asking for FSL with, e.g., a UPL future license, what's the rationale since Apache 2.0 already includes a patent clause?

Outside of personal taste, I'm primarily concerned about the incompatibility between Apache 2.0 and GPLv2, AGPLv3 and probably others that i'm not considering right now.

I'm more in favor of terse licenses for accessibility reasons. MIT/UPL/BSD-2/3 is just a lot easier to understand, but that's not a concern of functional applicability and personal opinion instead.

Brian-M-J commented 7 months ago

Sorry, I'm lost ... what's the use case?

A permissive license which includes a patent protection clause and is compatible with GPL 2.0. The UPL solves these issues and also has some other neat features:

Another problem solved with the UPL, which seems like a small thing but adds compliance and clarity, is that licensors and distributors are expressly permitted to reference the UPL rather than including a complete copy of the text in each item. What is the license solving for here? The MIT and BSD licenses expressly require that you include a complete copy of the license in each piece of source code. This means that if you have 50 different JavaScript files being downloaded from a page, each one should be giving you a complete copy of the license - you may be using as much bandwidth for licenses as you do for the actual code! And if you do not include a complete copy of the license, as some folks do not, merely referring to the license by URL or name, then you are not really applying the license in the intended manner and are in fact suggesting that downstream recipients not strictly follow those terms either.

the inclusion of the Larger Works concept facilitates use as a contributor license agreement (CLA), with contributors granting a patent license to the works to which they're contributing, and therefore creating a common & safe platform for collaboration where no one is going to assert infringement by the same project in which they're an active participant.

chadwhitacre commented 7 months ago

It's tricky. As a new license FSL is interesting to those like yourselves who are clearly knowledgeable about licensing details. At the same time, our goal with FSL is to be accessible to the vast majority of people who are not licensing geeks. :) We chose MIT and Apache 2.0 as the only two change/future licenses for FSL because they are extremely widely adopted, covering like 99%+ of the permissive OSS out there. We would want to see similar extremely wide adoption from UPL in order to consider adding a third variant of FSL.

I'm going to close this out for now. If someone thinks there is a case to be made based on license popularity, we can perhaps revisit.

Thank you for chiming in! Sorry for the dead end. 🙏

siemato commented 7 months ago

@chadwhitacre I opened this to draw attention to the patent issue, and I consider that successful. I was unsure, how you're positioning yourself to begin with, and i think this can serve as a reference of what options are out there, in case it ever comes up. Again, thank you for your time and feel free to @ me if the topic ever comes up.

chadwhitacre commented 7 months ago

Agreed. Good to have this on record. Thanks for opening this thread! :-)