Question

I've started my own open source project, which is still in an early phase of development. I chose to use the MIT license for it.

However, I've read that the Apache license is better for large projects, and it's going to become a large project later. So, I plan to study the Apache license later, and consider it for my project when the project becomes stable.

Could transitioning from the MIT to the Apache license create any legal issues? Does a late transition involve any more risks?

Disclaimer: I'm a programmer, not a lawyer.

Was it helpful?

Solution

The owner, or copyright holder of the project is the one who gets to decide what license to use on each distribution of that project. The owner is completely free to use different licenses on different distributions.

The tricky points to keep in mind are:

1) If others contribute to the project, then you are no longer the sole owner, so changing the license would have to involve getting multiple people together to agree on it. If you're going the typical open source route of allowing pull requests from pretty much anyone, this can be a problem.

2) The copies of the project that you have already distributed cannot have their licenses retroactively changed. The change can only apply to new distributions. In particular, anyone who has received old copies of the project under MIT is perfectly free to distribute copies of their copy under any license they please (since the MIT license imposes no restrictions on this behavior).

3) Some people have strong opinions on licensing issues, and some people get understandably nervous when licenses change. So if you do have a non-trivial user base when you make this change, then you should post a very clear and specific explanation of why you want to make this change, solely for PR reasons. In particular, at the risk of taking your question too literally, you should have a more specific reason than "because Apache is better for big projects and we are big now".

Note that I am using the term "distribution" instead of "version" because it is fairly commonplace to release the same version of a program under multiple licenses, for various reasons. For instance, you may release a program for free under a copyleft license, while at the same time allowing corporations to purchase a version with a more permissive or closed source license. The version the corporations purchase would simply have different LICENSE, COPYRIGHT and/or README files.

But in all honesty, MIT to Apache is not a huge change. It should be a perfectly harmless transition as long as you're aware of these potential issues ahead of time.

Licensed under: CC-BY-SA with attribution
scroll top