[Twisted-Python] Twisted & Qt

Chaz. eprparadocs at gmail.com
Tue Sep 26 12:51:13 EDT 2006

Not that I mean to beat a dead horse, but the use of a single word or 
phrase in a document doesn't fall under the derivative work clause of 
copyright. Instead in comes from trademark law. For instance to xerox 
something is one of those cases where the mark Xerox was lost to the 
common use of to copy something. Google is undergoing just such an issue 
right now. At no point can't you use one word or phase in an document 
and have it magically copyrighted. On the other hand using a trademark 
means you have to acknowledge ownership.

Now this isn't to say that you can use the idea of Professor X in a 
document - a story - and not run into problems. That is a totally 
different beast and isn't covered by Trademark or Copyright law. Instead 
it is a part of intellectual property law.

But none of this applies to QT. You can easily use a library - with an 
MIT license or not - to link to a GPL'ed library. What you can't do is 
assume the entire work produce as the lesser of the two libraries. This 
means that you can link something with Twisted's QT reactor and still 
link it with PyQT or QT. The heart of the issue is that the entire 
product will fall under the more restrictive of the libraries, in this 
case GPL. GPL doesn't say you can't link with anything other than GPL; 
it only says the resulting work must be GPL. Since neither the MIT or 
BSD licenses say that you must have a resulting work product of MIT or 
BSD, you are safe.

In no case, do I believe you need to remove the QT reactor from the 
Twisted. It has no impact other than to make things more difficult to 
use. Is this what is really wanted here?

Chuck Wegrzyn

glyph at divmod.com wrote:
> On Tue, 26 Sep 2006 11:42:18 -0400, James Y Knight <foom at fuhm.net> wrote:
>> On Sep 26, 2006, at 9:45 AM, glyph at divmod.com wrote:
>>> I've gotten in touch with Riverbank Computing, the copyright  holders 
>>> on PyQt, and they are of the opinion that any Python code  that 
>>> imports "qt" is, in fact, a derivative work and therefore  beholden 
>>> to the GPL.
>> The only issue here is that we don't want to confuse people by having  
>> part of Twisted (qtreactor) be GPL.
> Twisted is ostensibly a derivative work of all of the parts of Twisted.
>> But wait, the MIT license is compatible with the GPL.
> And that's your professional legal opinion?
> It may be that riverbank and trolltech agree with this interpretation.  
> The response I received wasn't entirely clear.  However, you are making 
> a number of assumptions about intellectual propertly law which are both 
> outside your expertise and, to my knowledge, still undecided by any case 
> law.
> I've asked the fellow at Riverbank for a clarification of his intent 
> before reviewing and committing the removal.  However, the impression I 
> got from my first exchange is that Trolltech regards the QT API as their 
> intellectual property, so the presence of phrases like "QObject.connect" 
> and "QSocketNotifier.__init__" would make qtreactor a derivative work of 
> their intellectual property, much like simple mentions of a fictional 
> character's name in a short story can also classify as a derivative work.
>>> I'll be removing it from the Twisted repository and contributing it  
>>> to Riverbank for inclusion in PyQt at my next available  
>>> opportunity.  This is probably going to require an immediate  
>>> addition of a plugin API for reactors, so it can be loaded externally.
>> I strongly object to this, regardless of the outcome of the above.  
>> The internal reactor supporting APIs (posixbase etc) are not stable  
>> enough that I'm at all comfortable with giving a reactor over to  
>> external maintenance. If we have to, please instead let's segment it  
>> into a separate distributable, but still develop and release it in  
>> lockstep with twisted core.
> If we distribute it separately, I believe it will create license 
> confusion due to the interaction of Qt and PyQt commercial licenses.  
> However, I'll let the people who are actually interested in Twisted and 
> Qt integration work this out with the PyQt maintainer; I don't care, 
> personally.
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

More information about the Twisted-Python mailing list