[dmd-internals] DMD copyright assignment

Steven Schveighoffer via dmd-internals dmd-internals at puremagic.com
Tue Jun 24 07:59:53 PDT 2014


On Jun 24, 2014, at 2:17 AM, Andrei Alexandrescu <andrei at erdani.com> wrote:

> On 6/23/14, 9:06 PM, Steven Schveighoffer via dmd-internals wrote:
>> On Jun 23, 2014, at 8:43 PM, Andrei Alexandrescu via dmd-internals
>> <dmd-internals at puremagic.com> wrote:
>>> I concur. If the contributor holding the copyright disappears, we
>>> can't change the license anymore. If the contributor holding the
>>> copyright has a falling with D, they can do harm by suddenly
>>> changing license for their part of Phobos. I don't see any good for
>>> anyone out of this - only the right to damage D in the future if
>>> they so want.
>> 
>> The only harm this does is that we need someone else to maintain this
>> code. It does not retroactively change the license. Once it's in
>> phobos, and it's boost, there's no reneging on that.
> 
> What if converting/relicensing it later to Boost 2.0 or some other license is in the best interest of D, and due to some technicality we'd need approval of all copyright holders? I don't know much about copyright law, but I think we can all agree it's complicated and prone to all sorts of loopholes. We can trust Walter to act in the best interest of D now and in the future; the alternative on the table is to trust instead an open union of persons.

Much of these arguments seem to stem from ignorance and fear of the future. At some point, I think we need to analyze what actually can happen rather than assuming what can.

I am not a lawyer, maybe we should involve one. I think most people here have a pretty good understanding of copyright rules, but what "might" legally happen is not something we really have any firm grasp on. I am very confident that the current situation does not *require* assigning copyright to one entity. The boost license has lasted very long, as far as I know, no open source license has been successfully challenged in a court. Many many projects use this model of centralizing on a license rather than an individual entity to own the code. Are we just asking too much without any evidence that it's necessary?

> 
>> BTW, are we talking all of D or just DMD for requiring copyright
>> assignment? I thought we were just talking DMD (of course, the XML
>> thing would have been for Phobos, but I thought that was just an
>> example).
> 
> Everything under our github repo.
> 

Thinking about this some more, I feel it may be too much to ask for ownership of the code. For instance, std.container.RedBlackTree is my code, and it is in phobos. I wouldn't care about any of my other contributions, but this code also lives in my dcollections project. How does this work if I assign ownership of the code to Digital Mars? Do they now own that part of dcollections? What if Digital mars decides to relicense phobos as proprietary (as long as we are playing catastrophic what if, we have to look at all parties), does that mean I have to remove RedBlackTree from my code? Does it mean that I can never relicense dcollections without DM's permission? I admit I don't know the implications there. For code that is solely going to live in phobos/dmd, I don't mind giving up the copyright. For code that I have an interest in maintaining separately, that seems like an issue. I think it would be more of an issue for a proprietary company that is willing to donate some of their code under boost. We should consider very carefully this requirement, we may be excluding valuable contributions. It may be worth the price of future license inflexibility to say that any code in DMD/phobos/druntime is licensed under boost or any future version of boost, in order to appease some contributors' wishes.

-Steve


More information about the dmd-internals mailing list