Compulsory checkin clauses.

Justin Wells jread at semiotek.com
Sat Aug 5 16:01:53 UTC 2000


On Sat, Aug 05, 2000 at 01:11:10AM -0700, David Johnson wrote:
> It's a private bug fix. In my opinion, it should be no one's business
> but the user. No harm to the author can possibly come of it.

Looking for thoughts on this:

How about releasing a modification to a GPL'd program which contains no 
material from the original? Recipients of the modification can "privately"
apply it to their GPL'd works, while the authors of the modification can 
claim that it is not covered by the GPL because it is not a derived work.

For example, a GPL'd program contains a file called 'foo.c' among its 
source code. I write a brand new 'foo.c' containing no material from the
original, but compatibly conforming to its API, and release that under
some proprietary license. I include a build script which copies my foo.c
over top of the original and conveniently builds the modified version for
the people who purchased my foo.c from me.

This creates a gray area: maybe my modification has to be GPL'd because I
clearly intended it to be linked into a GPL'd program. On the other hand, 
I will argue that I used a clean-room development approach and that my 
developers were never exposed to the source code of the original foo.c, 
and in fact didn't even know that they were developing something for use
with a GPL'd program: I simply provided them with a spec.

Rather than live with this uncertainty I would like to be able to put 
something into a license which clarifies it. I would like to force foo.c 
to be subject to the copyleft. 

A crude way to do it is to capture private modifications as well: but 
then you also capture honest private modifications made by an individual
or company for their own internal use, which doesn't seem fair.

I've been toying with language like "third party deployment of the 
modification" as a substitute for "distribution to a third party".

Thoughts?

Justin




More information about the License-discuss mailing list