3

I maintain a parser combinator library called Parjs, licensed under the MIT license. I’ve received a PR that contains a copyright notice by Oracle.

I was under the impression that whoever contributes to an open-source project retains copyright to the thing they did, but licenses it under the same license the project uses. So it would seem that the copyright notice isn’t needed.

Am I missing something?

2
  • 1
    I understand your apprehension, and "Oracle" is a bit of a red flag. But I'd feel comfortable merging this if the file header doesn't just contains a copyright notice, but also makes it clear under which license this was contributed. The MIT license is short enough that you can put it into every file, but I personally think that SPDX-License-Identifier headers are a concise and machine-readable solution to exactly this problem.
    – amon
    Feb 9 at 22:54
  • Normally, if you contribute source code as an employee of an organization, then the copyright belongs to the company for which you are working. This is commonly called "work for hire" in legal terminology. So, if this company authorized submitting the patches, then yes, it is a valid thing to write. Copyright to the employee would not really be correct, because when he leaves the company his 'copyright' to that code would not get to go with him; it would stay in the company (hence, Copyright YYYY the-company).
    – Brandin
    Feb 13 at 9:59

1 Answer 1

7

This is a reasonable thing for the contributor to include in their modification to your project. It is normal for modifications to an open source project to include copyright notices of (up to) everyone who ever introduced copyrightable changes into the work, because each contributor holds copyright to their contributions. You say the copyright notice "isn't needed" which is largely true -- copyright notices don't serve a significant legal function anymore -- but neither is it incorrect or a hindrance to your project's license.

It has no impact on the usability of your project under the MIT license, as long as the contributor is clear their intent is to also license their contribution under the same license. This is a normal expectation called "inbound=outbound". For an MIT-licensed project especially, it doesn't hurt to be crystal clear on this point. For Apache licensed projects, this is actually encoded in the license text (exceptions to the rule must be labeled "not a contribution"), and for GPL projects, any modification that isn't GPL'd is copyright infringement, but for MIT projects, a fork could reasonably introduce proprietary code without a legal issue.

In the absence of any intent to license under non-MIT terms (and especially in the face of a positive intent to use MIT terms) you may freely incorporate the changes from the contributor's fork. You are free to reject the PR, or free to accept under the terms they offer it (probably the same license your project already has), but you are not free to remove the copyright notice present on their changes, as this is one of the few requirements of the MIT license.

2
  • What happens if this code needs to be changed by someone else? Can I replace it with a notice for "The Parjs Authors" or similar?
    – GregRos
    Feb 9 at 22:26
  • 2
    @GregRos It is somewhat normal for the file to eventually have multiple copyright notices. You shouldn't remove or modify existing notices, but you can add your own.
    – amon
    Feb 9 at 22: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.