Licensing for My CMSMS Module

Talk about writing modules and plugins for CMS Made Simple, or about specific core functionality. This board is for PHP programmers that are contributing to CMSMS not for site developers
Post Reply
Nackson
New Member
New Member
Posts: 1
Joined: Fri Nov 14, 2025 6:50 am

Licensing for My CMSMS Module

Post by Nackson »

Hi everyone,

I'm new here and currently developing a module for CMS Made Simple. I have a few questions about licensing as I prepare for release.

My module uses:

XYZ PHP library (MIT license)
jQuery ABC library (GPL v3)
I want to release my module under GPL v2, like CMSMS, while redistributing the libraries with my changes.

Can I release my module under GPL v2 while keeping the original licenses for the libraries?
If I extend a class from the XYZ library, do I need to keep the MIT license for that class?
Thank you!
Nackson[https://golfhit.org/]golf hit[/url]
scotch33
Dev Team Member
Dev Team Member
Posts: 285
Joined: Tue Feb 14, 2006 9:56 pm

Re: Licensing for My CMSMS Module

Post by scotch33 »

Hey there, Nackson,

We don't have a licence expert in the dev team at the moment so we only know our own licence limitations, but I did a quick AI check for you. Take the following information as a starting point with which to check. I would advise following and confirming the cites it gives.

1. Can you release your module under GPLv2 while redistributing MIT- and GPLv3-licensed libraries?
MIT Library (XYZ)

Yes — MIT is extremely permissive. You can redistribute it inside a GPLv2 module without any conflict.
MIT also allows you to licence your own code however you like.

Source:
MIT Licence text — Open Source Initiative
https://opensource.org/license/mit/

GPLv3 Library (jQuery ABC)

This one is more nuanced:

If you modify the GPLv3 library or tightly integrate it into your module in a way that creates a combined derivative work, then GPLv3 requires your whole module to be GPLv3.

If you simply redistribute it unmodified (e.g., as a standalone JS file), then it remains under GPLv3, and your PHP module can stay GPLv2 — exactly the same way CMSMS itself bundles third-party JS libraries.

Source:
GPLv3 FAQs — Free Software Foundation
https://www.gnu.org/licenses/gpl-faq.html

(See “Can I combine GPLv2 and GPLv3 code?” and “What is a ‘combined work’?”)

GPLv3 Licence text — GNU Project
https://www.gnu.org/licenses/gpl-3.0.html

GPLv2 Licence text — GNU Project
https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

2. If you extend a class from the MIT-licensed XYZ library, do you need to keep the MIT licence?

Yes — for the MIT-licensed code you are extending, you must preserve the MIT licence notice.
However, your new code (the subclass) may be licensed under GPLv2 with no issues.
MIT explicitly allows sublicensing of derivative works.

Source:
MIT Licence text — Open Source Initiative
https://opensource.org/license/mit/

(See the clause: “Permission is hereby granted… to deal in the Software without restriction…”)

Practical summary

Your module: GPLv2 (same as CMSMS)

MIT library: Remains MIT; no conflict even if you extend it

GPLv3 library: Allowed if unmodified and kept separate; otherwise your module must switch to GPLv3

This is also consistent with how CMS Made Simple itself includes third-party JS libraries with their original licences unchanged.
Post Reply

Return to “Developers Discussion”