ExtJS 4 License – Question Regarding ExtJS 4 GPL/Commercial License

gpllicensing

I am currently in the process of selecting a widget framework to be used for a new project. Current choices are Dojo/ExtJS4. We are leaning on ExtJS4 but might have some issues with the licensing.

From the Sencha license page:

Our open source license is the appropriate option if you are creating an open source application under a license compatible with the GNU GPL license v3.

However on the GPL FAQ:

http://www.gnu.org/licenses/gpl-faq.html#UnreleasedMods

A company is running a modified version of a GPL'ed program on a web site. Does the GPL say they must release their modified sources?

The GPL permits anyone to make a modified version and use it without ever distributing it to others. What this company is doing is a special case of that. Therefore, the company does not have to release the modified sources.

It is essential for people to have the freedom to make modifications and use them privately, without ever publishing those modifications. However, putting the program on a server machine for the public to talk to is hardly “private” use, so it would be legitimate to require release of the source code in that special case. Developers who wish to address this might want to use the GNU Affero GPL for programs designed for network server use.

Seems contradicting on what they have on Sencha's licensing page. Moreover, the webapp will be deployed on the cloud and will offer a subscription model. I've read that this is the so called ASP loophole and that the Affero GPL was made to address this. The project will have multiple modules, but certainly there would be backend/integration and frontend modules. The frontend will just consume exposed REST services and will be an entirely different application.

The question is, would there be any license issues if we use the GPL version and willing to offer the source code (frontend module only) which uses ExtJS for our future clients?

Best Answer

I think the confusion comes from not treating your server side and client side applications separately.

Let's deal with the server side first.

Presumably, you won't need any of Sencha's ExtJS code for the services that you are putting together. So their license restrictions won't have an impact upon your server side code. Even if you did use their code within your server's services, the GPL "loophole" (as you called it) means you don't need to distribute your server side source code.

Regarding the client, your client side code will become GPL'd unless you request an exception version from Sencha. Their licensing page provides the request for exception forms.

It's not clear to me if you need their commercial license or not, and that's a question best asked of Sencha. Assuming you didn't use ExtJS in your server code and you're selling access to the services and not the client, then you may be able to argue that you are not using ExtJS in a commercial manner. The polite (and easiest) thing would be to contact them and ask their opinion on the matter.

Related Topic