It looks like quite a bit of GPL code is used in Thesis <a href="http://drewblas.com/2010/07/15/an-analysis-of-gpled-code-in-thesis/" rel="nofollow">http://drewblas.com/2010/07/15/an-analysis-of-gpled-code-in-...</a>
For some historical context: The debate over whether using the
publicly advertised functions of a GPL library makes your code GPL too
is an old one, the best and early example of this was the CLISP
v.s. FSF debate, which the FSF won:
<a href="http://clisp.cvs.sourceforge.net/viewvc/clisp/clisp/doc/Why-CLISP-is-under-GPL" rel="nofollow">http://clisp.cvs.sourceforge.net/viewvc/clisp/clisp/doc/Why-...</a>
in particular Stallman said:<p><pre><code> I say this [that using the readline API makes your code GPL too]
based on discussions I had with our lawyer long ago. The issue
first arose when NeXT proposed to distribute a modified GCC in two
parts and let the user link them. Jobs asked me whether this was
lawful. It seemed to me at the time that it was, following
reasoning like what you are using; but since the result was very
undesirable for free software, I said I would have to ask the
lawyer.
What the lawyer said surprised me; he said that judges would
consider such schemes to be "subterfuges" and would be very harsh
toward them. He said a judge would ask whether it is "really" one
program, rather than how it is labeled.
</code></pre>
Later, Linux under the direction of Linus Torvalds did the opposite
the other way by looking the other way when nVIDIA and others
distributed binary blobs that directly interfaced with the
kernel. Some people now point to this as an example of why this sort
of thing is just fine by the GPL, but in fact it's a very grey
area. It's likely that if the Linux kernel had been run by the FSF
that nVIDIA's actions would have resulted in a lawsuit.<p>However, as pointed out by others this doesn't appear to be a case of
using a public GPL API at all, but rather case of code being
copied. See
<a href="http://drewblas.com/2010/07/15/an-analysis-of-gpled-code-in-thesis/" rel="nofollow">http://drewblas.com/2010/07/15/an-analysis-of-gpled-code-in-...</a>
specifically this comparison:
<a href="http://drewblas.files.wordpress.com/2010/07/diff.png" rel="nofollow">http://drewblas.files.wordpress.com/2010/07/diff.png</a>
Regardless of whether or not Thesis and other WP themes are actually legally required by the GPL to be distributed only under the GPL, if one believes at all in the concept of copyright, it's ethically, if not necessarily legally, important to consider the intentions of the developers of WP in using the GPL.<p>It's clearly the case that both Wordpress and the FSF believe that programs which link or include GPL-ed works are derivative works. Even if they're wrong, isn't it somewhat unethical to agree to an agreement and then violate what the other side of that agreement have told you from the beginning they believed it means?
It's hard to judge this without understanding how a theme integrates with WordPress and I suspect the author of this post thinks this is just a mater of calling an API or two.<p>The way it works is by overriding the behavior of WordPress, both integrating in internal filtering of input/output, reacting on actions/events, integrate with the admin interface of WP and calling APIs.<p>If this is not a derivate work, nothing is.
Though I'm not familiar with Wordpress and it's theming system, this argument has indeed puzzled me. This article is spot on: why would a theme be beholden to the software's license?<p>That said, maybe Wordpress themes are much different than normal themes, and are much more tightly coupled? That WP would pursue this if not puzzles me.
I just wanna point out that Matt Mullenweg used to have a much more logical, awesome, and superior stance before he decided to go all Richard Stallman on the non-GPL developer community.<p><a href="http://ma.tt/2009/10/matt-qa-wordpress-gpl/#comment-469692" rel="nofollow">http://ma.tt/2009/10/matt-qa-wordpress-gpl/#comment-469692</a>
To summarize:<p>Thesis integrates with Wordpress, it is not derivative from it. Same way Linux modules integrate with the Linux kernel (and many of them are closed source).<p>If someone is using a public/open API, and not distributing any part of the software, it means they are not based on the other.