1

Source Repository license: Business Source License 1.1

Destination Repository license: MIT. This is an open-source repo, sort of a library, having a lot of contributors. Code here is used by a lot of people in their production projects.

Amount of code copied: 10 lines (it's basically a util function source code)

Reason

I'm aspiring to make an open-source contribution to a repo, and 95% of the code in my contribution is written by me while I've copied 10 lines from a repo which is unfortunately BSL 1.1 licensed.

Right now my contribution is private, I have not yet made the PR. The reason I'm concerned is that earlier I have seen license conflict issues and maintainers don't want to get into that hassle so they hesitate to merge the PR, and PR stays open forever.

How do I proceed?

  • How can I credit the source repository in my contribution code/github pull request text (it has multiple authors).

  • If this is a problem, should I re-implement that 10 lines of code myself? (honestly, I don't prefer this, I always like to mention credits for anyone's work I'm using. But if it prevents me from making my contribution I have to do it)

4

There are two questions you need to answer here:

  1. Can you simply re-use BSL 1.1 code in an MIT licensed codebase - or in legal terms, are the licenses compatible?

This one is simple "no"; the BSL states:

The Licensor hereby grants you the right to copy, modify, create derivative works, redistribute, and make non-production use of the Licensed Work.

(my emphasis). The MIT license lets you do just about anything with the code, including running it in production, so the licenses are incompatible.

  1. Is the 10 line fragment of code actually copyrightable on its own?

This is potentially trickier and dependent on the copyright laws in individual jurisdictions, rather than anything to do with the licenses themselves. If the 10 line fragment isn't sufficiently original (e.g. a list of the integers 1-10) then it isn't covered by copyright so it can never be a copyright violation to do anything with it.

If the code is non-trivial, it probably is covered by copyright.

Should I re-implement that 10 lines of code myself?

Yes, although you now need to be very careful as you have looked at the BSL implementation in detail and it may be difficult for you to prove that your implementation is actually truly original and not a derivative work of the BSL implementation.

If at all possible, the safest would be for you to write a specification of what the function should do and then get somebody who has never looked at the BSL implementation to implement it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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