[std.database]

Steven Schveighoffer schveiguy at yahoo.com
Mon Oct 17 07:58:33 PDT 2011


On Mon, 17 Oct 2011 10:25:13 -0400, Steve Teale  
<steve.teale at britseyeview.com> wrote:

> On Mon, 17 Oct 2011 09:42:13 -0400, Steven Schveighoffer wrote:
>
>> On Sun, 16 Oct 2011 02:13:05 -0400, Steve Teale
>> <steve.teale at britseyeview.com> wrote:
>>
>>> There's a discussion going on about Windows header files that has
>>> discussed whether header files can be copyright.
>>>
>>> Header files may be an issue with the database implementations. For
>>> example my mysql.d is a straight translation of mysql.h (and a couple
>>> of others). Does that mean it is tainted by GPL and I can't make it
>>> Boost?
>>
>> A direct translation is a derivative work.  So yes, it must be GPL.
>>
>> However, there must be ways around this.  I believe headers have certain
>> rules in most licenses.
>>
>> You will definitely need some sort of non-translated header though.  I'm
>> not a license expert, so I don't know to what lengths you need to go to
>> re-license the header.
>>
>> However, what about mysql itself?  If the header is GPL, so is the
>> library, no?  I'm assuming you are not reimplementing the mysql client
>> lib?  Linking against a GPL library is definitely not going to be
>> acceptable in a phobos module.
>>
>> -Steve
>
> Hmm, I just did a quick check, and the MySQL client/server protocol is
> GPL also, so there's nowhere to go.

Protocol cannot be copyrighted.  A protocol is carefully formatted data,  
but not *MySQL's* data, it's *your* data.

If they want to attempt to say my passing "select name, bar, gobbledegook  
 from myPrivateDatabase" to a server makes my code GPL, be my guest, I  
don't even think I'd need a lawyer to defend that :)  Here is a good post  
discussing it: http://krow.livejournal.com/684068.html?thread=2670116

But the library can be copyrighted (and the protocol description).  Given  
mysql's sales model (and the company behind it), you would need a very  
meticulously documented process to clean-room implement it in a way that  
could be defended, and even then Walter may not go for inclusion in  
phobos, he is allergic to even the *notion* that something might be  
challenged in court being in D/phobos.

>
> How do Python and PHP communicate with MySQL. Is it just that they have
> the clout to get a dispensation from MySQL AB?

little searching reveals:

http://www.mysql.com/about/legal/licensing/foss-exception/

Note PHP and Python are both in the license list, whereas Boost is not :(

> Does this stuff have to go in some repository like the proposed Deimos (a
> figure representing dread in Greek Mythology) where you will presumably
> often encounter dread licensing gotchas?

I'd imagine so.  Another option is to reimplement libmysql.

Sorry :(

-Steve


More information about the Digitalmars-d mailing list