One other thing you may have to do if you have contributors who have also committed code is to get their permission to change the license as well, as the code they committed may still be under their copyright and not yours, and they can choose to allow their code to be relicensed or not. Some projects use a contributor release to reassign copyright for contributions for reasons like this, for instance. This is partly the reason why the Linux kernel has never changed to GPLv3 and still uses GPLv2 (and also because Linus just doesn’t like some provisions of the GPLv3) — it would be pretty much impossible to get everyone who contributed code to a project as large as the kernel to agree to a license change. Any code that couldn’t be changed would need to be extracted and rewritten, and that’s not going to happen given the sheer size of the code base.
If you don’t have other contributors then you’re home free. You can’t retroactively change licenses to existing copies of the code that have been distributed, but you can change it going forward.
Thank you so much. This is exactly what I needed
One other thing you may have to do if you have contributors who have also committed code is to get their permission to change the license as well, as the code they committed may still be under their copyright and not yours, and they can choose to allow their code to be relicensed or not. Some projects use a contributor release to reassign copyright for contributions for reasons like this, for instance. This is partly the reason why the Linux kernel has never changed to GPLv3 and still uses GPLv2 (and also because Linus just doesn’t like some provisions of the GPLv3) — it would be pretty much impossible to get everyone who contributed code to a project as large as the kernel to agree to a license change. Any code that couldn’t be changed would need to be extracted and rewritten, and that’s not going to happen given the sheer size of the code base.
If you don’t have other contributors then you’re home free. You can’t retroactively change licenses to existing copies of the code that have been distributed, but you can change it going forward.