[dmd-internals] DMD copyright assignment

Steven Schveighoffer via dmd-internals dmd-internals at puremagic.com
Thu Jun 26 08:39:45 PDT 2014


On Jun 24, 2014, at 11:33 PM, Walter Bright via dmd-internals <dmd-internals at puremagic.com> wrote:

> 
> On 6/24/2014 5:19 PM, David Nadlinger wrote:
>> 
>>   C.6) You wrote earlier that "the credit has a lot of value to one's professional career", and I couldn't agree more. Yet at the same time, you are asking people for the permission to take it away from them. Regardless of whether you actually intend to do that or not, the simple possibility makes this a rude thing to do without a good reason.
>> 
> 
> 
> I find this discussion rather exhausting. But I want to respond strongly to this point. The CA simply does not take credit away from a contributor. Copyright status has nothing to do with who did the work. For example, a book author assigns copyright to the publisher, but nobody imagines that the publisher wrote the book.

On this point, it is true, but a completely different situation. An author of a book doesn't assign copyright to a publisher because they trust the publisher or because the publisher has been nice to them, they do it to get paid, or to get published. Generally the author doesn't have the means or the knowhow to publish (this is becoming less of a hurdle lately) and market, and the ability to absorb a possible flop of a book. The publisher offers a great service and cash in exchange for the rights to copy.

In this case, we are talking about the rights to software that is already published, already where it should be, to be assigned for no practical reason except some undiscovered, and likely mythical, flaw in a license, which has existed for over a decade without challenge, which has been written and examined by countless for-profit and highly respected attorneys (this is the VERY reason we chose boost, you said yourself proprietary houses are OK with the terms of the boost license) in a world where zero open source licenses have been successfully challenged in court. Basically, you are asking for copyright assignment with no benefit to the assigner, in case the proverbial open source sky falls.

I find the discussion exhausting too, but quite solvable. What I would not like to see is to have contributions to DMDFE stop happening, and instead going to the other compilers that use DMDFE under the boost license but not ported back to the original project. That would be disastrous, and essentially forking the community. Exhausting as it is, we are not foolish children that need to be explained by the wise and experienced parent how it is. We have experience, we have understanding of the situation. But ultimately as the owner of DMDFE, it is your choice. And this choice really may piss off or turn away a lot of contributors or potential contributors who love D, so make it wisely.

> 
> I'm not asking for CA for phobos, because I think that any issues can be worked around, i.e. the modules are replaceable.

And I'm very glad to hear that.

> This is not so true of DMDFE. Trying to unwind a major contributor's work is a completely daunting task. I don't want to ever be faced with such a disaster. I don't have a well-financed phalanx of lawyers to bulldoze past such problems. And would the OTHER contributors to DMD care to have their good work made useless because one other contributor is no longer willing or available to give their consent to a change? The worst thing that could happen to DMD contributors is to have their work abandoned. Me, I don't want to expend my life doing things that would be abandoned, and I expect other open source contributors to feel the same way.

And it won't be. There are already 3 projects using DMDFE, and those will not all be abandoned, regardless of CA status. There are other front ends we could use (e.g. SDC) that could be relicensed if needed.

> 
> As I recall, there were 5 authors of Tango XML. 4 agreed to change the license, one refused. The 4 got their work thrown away because it was inextricably intermingled with the 5th. I don't want that to happen to DMD contributors.

1. This hasn't happened, the work isn't thrown away and is still present in tango's library. Anyone is free to use it and include attribution to tango.
2. DMDFE continues to be part of DMD, LDC, and GDC. This won't stop, nor will it get thrown away.

There has not yet been any evidence shown in this discussion, IMO, that warrants assigning of copyright. Yet that is the current situation, and you are free to leave it that way. It may reduce the contributions to DMDFE, but that is your choice.

You don't actually have to make it now. This is the situation that will force your hand:

1. Henji Kara appears and makes LDC 2x as fast as DMD and fixes 100 bugs in LDC.
2. The developers of DMD would like to incorporate these changes, but Mr. Kara refuses to assign copyright.
3. The developers of LDC refuse to remove these fixes, as they are too important.
4. LDC can STILL take improvements from DMD, because the boost license allows them to do that, but DMD will not get the reciprocal fixes. In case the sky falls.

> When the Boost license is used, one essentially has already agreed to give up their rights to the code. What right is being usefully retained by not doing the CA? If someone has a real issue with that, I am more than willing to talk with them and see if a resolution can be found.

This is not what the boost license does. It allows others to use their code that they still own, and not have to pay, not have to release the source, not have to give binary attribution. It does not give up all rights. For example, they still have the right to release the code separately, perhaps with improvements, under another more restrictive, or incompatible license.

Imagine there is some project that I want to donate my code to, besides D. And the owner of the project has some sort of paranoia about licenses, and doesn't like the boost license. He requires me to change it to Grandma's Super License (I think that was brought up earlier), which I have no problem with. If I've given DM the copyright ownership of the license, then I have to get permission from DM to relicense my own code. Even if DM is accommodating on that, it makes no sense to insert them between us. As you cannot bring yourself to trust any contributor, why should we all trust you and DM's heirs implicitly? If you can come up with a good reason, I could consider it.

> If anyone is still unsure of my intentions, recall that I repeatedly offered to the Tango team that I granted permission to them to use ANY of my D code, and they could relicense their fork of it as they saw fit. I did not oblige them to reciprocate, and they did not, but I'd still do it again.

As I recall, you did not require CA, just relicensing. CA was never on the table, and never would have resolved this situation (any CA of Tango code would have gone to the main developer of Tango who was the one that refused to allow incorporation into phobos). And I don't think you were offering to assign copyright to them as a reciprocal offer. Tango licensing issues continue to be irrelevant to this discussion, and I say that as someone who was one of the affected authors of Tango code that was held hostage from being Phobos code.

BTW, as a side note, when posting on these message groups, can everyone please sign their posts? The new system does not say who the messages are from, I have to look at the "Reply-To" header to see, and that doesn't show up by default.

-Steve


More information about the dmd-internals mailing list