9

When making changes to an Apache licensed file, one should amend the file header:

Copyright 2022 Me, Myself & I

There is the possibility to add the suffix "Not a contribution":

Copyright 2022 Me, Myself & I. Not a contribution.

What does this actually mean? From the license itself:

"Contribution" shall mean any work [...] that is intentionally submitted to Licensor [...]. [...] "submitted" means any form of [...] communication sent to the Licensor [...] excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."

When would this be a good idea to do so, and what's the consequence?

0

1 Answer 1

13

The Apache license codifies the “inbound = outbound” principle, meaning that an Apache-2.0 covered project can expect that all contributions intentionally sent to that project are also provided under that license. This makes it easy to integrate such contributions.

But not everyone who interacts with the project wants to contribute, or is legally able to contribute.

For example, consider an Apache-2.0 licensed library that is hosted on some online platform (e.g. GitHub). An employee of SomeBigCorporation needs to report a bug to that project, and provides example code triggering the problem. What is the license of that code snippet?

  • By default, the project could expect it to be Apache-2.0 licensed. The bug report with the code was “intentionally submitted” to the project.
  • However, the employee might not have the rights to license that code snippet under Apache-2.0. Perhaps the SomeBigCorporation legal department has an onerous process that must be completed before Open Source contributions are allowed, or maybe such contributions are forbidden outright.
  • If the bug reporter doesn't intend to license that code under Apache-2.0, they can unambiguously indicate so by marking it as “not a contribution”.
10
  • And, of course, withholding Apache-2.0 licensing of a derivative of Apache-2.0 code places significant limitations on what you or anyone else can do with the derivative without violating the license of the original code. In particular, it would probably violate the license of the original code for you to distribute such a derivative to third parties. Oct 21, 2022 at 15:55
  • 1
    @JohnBollinger Not at all. Apache is a permissive license, and allows modifications that are not distributed under the same license. However, the license of the base version would still apply, and would require the modified version to carry “prominent notices stating that You changed the files”, and would require a copy of the License+Notice files to be provided to all recipients. This can be done in a manner that makes it clear that only the base version is Apache-licensed, not the modified software as a whole.
    – amon
    Oct 21, 2022 at 16:20
  • What does that mean, "not to license code"? All code is licensed. Can I understand it as: "I made a few changes, but really nothing noteworthy. I'm adding a copyright statement, so that it is clear that there were changes, but please ignore this copyright line for all legal purposes"?
    – parvus
    Oct 26, 2022 at 9:01
  • 1
    @parvus All code is covered by copyright (some exceptions apply). Only the copyright holder can grant licenses to others, allowing them to use the software in a way that would otherwise violate copyright (e.g. distributing copies or making changes). In an employment relationship, it is typically the employer/business that controls the copyright, and individual employees might not be authorized to grant licenses.
    – amon
    Oct 26, 2022 at 9:21
  • 1
    @parvus The “not a contribution” makes it clear that the submitter is not intending to license the code/comment/whatever under Apache-2.0. It is the exact opposite of waiving rights, it's more like an explicit reminder that all rights are reserved. If there are multiple contributors, there's probably no such thing as the “current copyright holder” – everyone holds copyright for their contributions.
    – amon
    Oct 27, 2022 at 8:32

Your Answer

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

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