chore: Add GPL exception for Vendure plugins #3280
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Because Vendure uses the GPL v3.0 license, the common interpretation based on GNU FAQ (single combined program) would suggest that any plugins must also be GPL licensed.
However, it is our opinion that plugins should not be subject to this restriction. In our opinion, the GPL requirements should apply to the Vendure code itself (i.e., the files in this repo). Plugin code is not typically distributed as a combined program - it is distributed as a stand-alone package that only consumes the public APIs of Vendure.
The GPL v3.0 section 7 includes the ability to specify special exceptions (see incompatible libs FAQ) to what is considered a "derivative work".
Well known examples of this are the Linux syscall exception, which allows programs to make "normal system calls" and not fall under "derivative work"
Similarly, the GCC compiler has an exception which allows you to include GPL code in your compiled executable without requiring you to then license the resulting executable under the GPL.
This PR applies the same principle to our license.
This change would explicitly allow people to license Vendure plugins under any license they choose, both open source and proprietary.