Section 2.3 a) of the MPL 2.0 States:

no patent license is granted by a

(a) for any code that a Contributor has removed from Covered Software
  1. What does code a contributor has "removed from Covered Software" mean? Does it pertain to retracting code the Contributor made available using the MPL 2.0 license?

  2. This whole section is hard to follow for me but I'm curious about what happens when a Contributor retracts their code from the Covered Software.

  3. My understanding is that if a Contributor licensed some code in the past, who ever received the code with that license can continue using it regardless of filing of a patent or the Contributor removing the code from the most recent version?

1 Answer 1


The full text of the license is here.

Section 2.3 can only be understood in context with Section 2.1 b. 2.1 b is a general statement that a license is granted (i.e. the contributor may not charge any royalties for his/her contributions nor for the Contributor Version to which he/she contributed), while 2.3 limits the scope of this license.

The part of the Contributor Version is critical here, because it means that you grant a patent license even for functionality earlier contributed by others as soon as you contribute something (even something minor or unrelated to the patented functionality) to the project.

2.3a covers the case that a Contributor removes code (you could call it a 'negative contribution'). From the license context it is clear that this refers to code of another contributor, because if that code was part of the Contributor's own contribution the license for that functionality would already be in place since the time of that earlier contribution.

So Section 2.3a just clarifies the license situation in case of a 'negative contribution'. This could be important in the case when a Contributor actually owns a patent right (for functionality x) which they don't want to license for free, and where someone else included code for functionality x into the project. If then the Contributor wants to contribute some code for functionality y (unrelated to functionality x), then the Contributor might want to remove code related to functionality x from the Contributor Version in order not to be forced to license their patent.

  • I think I understand a bit of what you're saying. Correct me if I'm wrong. Bob adds his dog to the code. Bob patents having a dog in code. Sally removes bob's dog from the code and replaces it with her own dog. The code is now in violation of Bob's dog patent and Sally has to pay Bob a fee to resolve this. The previous version with bob's dog is still okay but the new version no longer has the patent license. Im lost in the last part. Why would Bob subsequently adding his cat to the project make it okay for Sally to have her dog in it without a patent license? Aug 12, 2022 at 18:57
  • My example goes this way: Bob owns patent rights on "dog" functionality and does not want to license it for free. Sally adds dog functionality to the code. Later Bob wants to add "cat" functionality to the code. Bob adds code for cat functionality and removes Sally's dog-code, creating a new 'Contributor Version' that does not infringe Bob's patent rights (so no license obligation). Now we have 2 versions, either with dog or with cat functionality. If then Sally restores her dog-code on top of Bob's version we have full functionality, but without Bob's patent license. Aug 13, 2022 at 10:07
  • You don't need to have a patent license to add any code to a project. You don't even need to know if a patent exists or not. Most OSS licenses have 'no warranties' language which is there for this purpose (among other purposes). It is the end user of the code, executing the code and benefiting from the functionality, who needs a patent license. Aug 13, 2022 at 10:14
  • Wait in paragraph 2 you wrote "as soon as you contribute something [...] to the project" did you mean file, since MPL covers on a per file basis instead of project like GPL does? Thank you for going further to answering my questions about your answer. Aug 13, 2022 at 16:07
  • The answer is based on the assumption, that the entire project is homogeneously based on the same license. Also, with your differentiation (file-based vs. project-based) you seem to be referring to the copyleft impact of the licenses, which is irrelevant for the patent considerations. And you should not assume that one can by-pass the obligations under Section 2.1 of MPL 2.0 by splitting the functionality into 2 or more separate files. Aug 14, 2022 at 8:52

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.