10

A project I would like to fork clearly states that it is released under the MIT license terms and includes the relevant LICENSE file. Separately, it also has a line in its CONTRIBUTING file that states any contributions must also be released under the MIT license.

  • Is the addendum in CONTRIBUTING in conflict with the LICENSE terms as per the MIT license?
  • Am I beholden to the addendum terms if I fork but do not contribute back to the original codebase?
  • More specifically, can I rerelease the project with my derivative changes under a copyleft license like GPL?

2 Answers 2

17

Whilst I completely agree with my esteemed colleage about the first part of the answer (the project have indicated they'll reject non-MIT-licensed contributions), I beg to differ about the second part.

As I have argued elsewhere on SE, you are perfectly entitled to release the upstream code, with your contribution added in, under GPL in its entirety. You will still need to preserve upstream's copyright notices, and include the text of the MIT licence, but you are not required to distribute it under that licence. MIT is not a copyleft licence.

Moreover, although you could distribute the codebase under a mixed licence (MIT for the upstream bit, GPL for yours), anyone who takes it and adds a further modification of their own is required to distribute the entire work under GPL (see eg GPLv3 s5c, "You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy").

So if you're going to add your bit under GPL, I think it's going to make everyone's lives clearer and simpler if you release the entire work under GPL.

1
  • Even this is too conservative. The MIT license explicitly allows sublicensing, so OP can absolutely take the original, verbatim, and relicense it under GPL as-is. They do have to preserve the text of MIT, of course, but that's it, the license absolutely does not require you to make a derivative work or continue to distribute the original portion under MIT. This does not necessarily apply to BSD or other permissive licenses, but MIT has the magic word "sublicense," which allows it.
    – Kevin
    Commented Aug 19 at 22:55
4

This doesn't seem to me to be a conflict per se.

  • The code is licensed under the MIT license.
  • If you want to contribute to the project, the project team will accept contributions only under the MIT license i.e. if you send them a GPL licensed contribution, they'll reject it, no matter how good it is.

can I rerelease the project with my derivative changes under a copyleft license like GPL?

No, you can't. The code has been made available to you under the MIT license and as such you must obey the MIT license; you may not simply release it under the GPL without obeying the conditions of the MIT license.

However, because the MIT and GPL licenses are compatible, you can release your code under the GPL while simultaneously releasing the original code under the MIT license. Practically, what this means is that you have to continue to include the MIT license (and appropriate copyright statement) when distributing your derivative work.

1
  • 3
    Why do you say "no, you can't" for the second part? If I read the whole paragraphs of what you've written, it seems you're actually saying one can indeed release under GPL, as long as you leave the MIT license text in there where it belongs, e.g. on the "old" code.
    – Brandin
    Commented Aug 12 at 5:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.