CodeIgniter License and Terms of Use FAQ¶
The content in this document is neither legal advice nor a legally binding interpretation of the OSL 3.0 license.
Contents
- CodeIgniter License and Terms of Use FAQ
- Is CodeIgniter really open source software?
- Licenses are confusing, what obligations does OSL 3.0 impose on me?
- So if I distribute an application built on CodeIgniter do I have to release it as OSL 3.0?
- So I can make something with CodeIgniter, and then sell it or give it away, right?
- Can I include other freely licensed software in my distributions?
- Wait, why can’t I include GPL code with CodeIgniter?
- So what’s changed from CodeIgniter’s old license?
Is CodeIgniter really open source software?¶
Yes! CodeIgniter is a free PHP framework, licensed with the Open Software License 3.0 (OSL 3.0) and its development is community driven in the public. So in both a legal sense and in the common understanding, CodeIgniter is certified open source software.
Licenses are confusing, what obligations does OSL 3.0 impose on me?¶
You can use the CodeIgniter source code for whatever you’d like, making any changes you like, for essentially any purpose, free or commercial. If you distribute the result of your changes, you must reciprocally license those changes under OSL 3.0, and make the source readily available to the public.
In your distribution, you must retain all copyright and trademark notices in the CodeIgniter files, as well as notices of licensing and other remarks identified in the attribution notice in the source code. Your own work will carry a prominent attribution notice that lets people know that you have modified CodeIgniter, and you must include the full OSL 3.0 license along with the distribution.
So if I distribute an application built on CodeIgniter do I have to release it as OSL 3.0?¶
No, the application folder of CodeIgniter does not carry the OSL 3.0 license, and your code and any assets always belong to you. The reciprocal licensing and release of a derivative product only applies to changes you might make to the core system files, which are all easily identifiable as they each carry an OSL 3.0 licensing notice in their comment headers. Default files (config, etc.) that are included by EllisLab in the application folder are licensed as AFL 3.0 (Academic Free License 3.0) which allows you to relicense those files to whatever license you have chosen for your code.
You can license your application however you like, but if you happen to distribute a modified derivative of CodeIgniter with your application, you must make those changes and those changes only freely available, licensed with OSL 3.0.
Can I include other freely licensed software in my distributions?¶
Absolutely, OSL 3.0 licensing only applies to OSL 3.0 licensed code, and does not force itself upon any other code or licenses you may distribute with your application. See the table below for an overview of its compatibility with distribution along side or linking to code covered by other licenses.
| License | Compatible? |
|---|---|
| Artistic License | Yes |
| Apache-2.0 | Yes |
| BSD 3 Clause | Yes |
| BSD 2 Clause | Yes |
| GPL | No |
| MIT (Expat) | Yes |
| MIT (X-11) | Yes |
| Your custom license | Yes |
Wait, why can’t I include GPL code with CodeIgniter?¶
The OSL 3.0 license does not have any problem with this, however, the FSF says that the GPL does. Incidentally, the FSF would undoubtedly make the same statement in regard to the license for CodeIgniter 1.x and 2.x, so this is not a change.
OSL 3.0 has a more defined view of “derivative” and only considers actual modifications to code - not merely linking other source code - as creating a derivative work. On the other hand, the FSF interprets the GPL in a very strict way, that any distribution that includes GPL code must in whole be licensed as GPL. The reach of the license of GPL’d code is hotly debated among lawyers, which is itself a significant reason to avoid it.
Since CodeIgniter is a platform, we think this restriction is icky, and applications you write - your own code - should not have our (or anyone else’s) license forced upon them.
So what’s changed from CodeIgniter’s old license?¶
If you were used to the old proprietary CodeIgniter license, the most notable changes are:
- Distributions of the original or modified code must be licensed as OSL 3.0
- Your notices of attribution in each changed file no longer have to carry itemized changes, just that it has been changed, and by whom.
- CodeIgniter is now certified open source software and a participant in the Open Source Initiative
- By accepting an OSD-conformant license that is not authored by EllisLab, questions about license rights, obligations, and compatibility are answered beyond the sole opinion of EllisLab.
- Barriers are removed for legal teams deciding whether or not to use CodeIgniter as the basis for their products.
