I am currently evaluating using PyQt in a commercial application, and I was surprised to learn that the PyQt Commercial License does not permit you to expose any of the PyQt library in the application's script API. From the PyQt site:
The right to distribute the required PyQt modules and QScintilla library with your applications so long as the users of those applications do not themselves have direct access to PyQt. Otherwise those users themselves become developers and require their own copies of the commercial versions of both PyQt and Qt.
Is this because if they were allowed access to PyQt you would effectively have a 'loophole' in the PyQt Commercial License? This clause closes that loophole, I assume. I was wondering if there must be a similar clause in the GPL and related licenses? Otherwise, surely, you would be able to release an application under an open-source license that was essentially nothing more than a 'shell' application which allowed people to 'script' its behaviour - said behaviour being the creation of a second, non-GPL application using the GPL PyQt bindings.
I have no doubt that this 'loophole' is addressed in the GPL, which must have had many talented lawyers examining it with fine-toothed combs. - Really, I'm trying to learn more about how law affects the life of a coder. The GPL and other open-source licenses seem a good place to start.
Furthermore, would the same system released under the LGPL have a similar problem? Or does that license's more permissive nature mean that there wouldn't be as much of a conflict allowing users access to the library via an application?