0

First, yes, I understand that you are not a lawyer and that you cannot give me legal advice. I swear I will not hold you accountable for any responses you may give, yada, yada, yada, etc, etc, etc.

Anyway...

Next, general details of my potential application:

  1. Ext JS open source (GPL V3) app running all client-side code. THE CLIENT from here on.
  2. ASP.NET MVC application running the server-side code. THE SERVER from here on.
  3. 3rd party / open-source / server-side framework for interfacing between previous two systems. THE INTERFACE from here on. Its licensing is highly permissive.

Is THE SERVER "contaminated" by the license of THE CLIENT?

There are a few variables to consider here:

  1. Both THE SERVER and THE INTERFACE will be generating JSON to be directly used by THE CLIENT.
  2. All systems are currently designed to be served from the same server, same IIS process; however, it would be easy enough to separate all server-side code and all client-side code.
  3. Probably more (...?)

If you think that, "yes, given this arrangement of sub-systems, THE SERVER will have to be made available as GPL V3 code," would it be possible to completely separate the two by declaring THE CLIENT as an open source UI where 3rd party servers could be developed by whomever for whatever platform? In this case, I would just happen to be the developer of the first client, which happens to be an ASP.NET-based one?

Now a few specifics: I am an independent developer who would prefer to keep my options open. I currently have a 4.x commercial license for Sencha Ext JS, which was purchased at a very reasonable price. It is, at this point, out-dated; Ext JS 6.0.0 came out today after all. I do, however, refuse to purchase their licenses according to their new, absurd policies (e.g. 5 license minimum @ $4K-7K) plus support subscriptions to get their bug fixes!

Any thoughts? Well, besides, "ditch Sencha."

1 Answers1

2

IANAL, but as far as I understand you have nothing to worry about:

  1. Copyleft only transfers to Derivative Work - that is, a program that contains parts of the copyleft program. Dynamic linking is a legal gray area(RMS claims it transfers copyleft, others claims it doesn't, I don't know if it was ever discussed in court). I've never heard anyone claiming it can be transferred via interprocess communication.

  2. Even if copyleft was transferable via interprocess communication(and it doesn't!), it would have been the other way around(server->client) because the server doesn't depend on the client but the client depend on the server.

  3. Even if the server was GPL - it usually doesn't matter. Essentially, GPL says that if someone legally gets the executable they have the right to get the sources as well, and are allowed to freely modify and distribute the project. As long as you run the server on your own machines (or machines you hire. Or even a free hosting service!) you don't have to release the sources, because you are the only one with access to the binaries. The users served by the servers don't get that right because they can't get the binaries to begin with.

Idan Arye
  • 12,032
  • 31
  • 40