June 23, 2014
On 6/23/2014 11:06 PM, Andrei Alexandrescu wrote:
>
>> It's not about wanting to maintain my copyright, it's about removing
>> an unnecessary hurdle to contribution.  For example, if we require
>> copyright assignment I can't submit code that I don't own the
>> copyright to, even if it's licence compatible.  Since the move to
>> boost means we don't need it, we shouldn't have it.
>
> I think that's a good point. Walter?
>


I'm much more willing to allow that in Phobos, because it is a more manageable risk if we need to replace it.
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 23, 2014
On Monday, June 23, 2014 23:17:19 Andrei Alexandrescu via dmd-internals 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@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.

I confess that part of me feels a little funny about the idea of everything that I write for Phobos ending up under someone else's copyright, but from a logical standpoint, it seems like a reasonable idea. And with many modules effectively being copyrighted under multiple authors, picking apart who owns what would be a bit of a pain anyway (though presumably, with enough effort, the source control would tell you). So, if nothing else, given how many modules are effectively copyrighted by multiple people, it would certainly be cleaner if it were all under digital mars.

I don't expect that we'll ever need to change the license, particularly with how unrestrictive Boost is, but we also don't really know what's going to happen in the future, so it's arguably good insurance to be able to change the license if we need to. The worst that can happen is that digital mars / Walter becomes a Sith and does nasty things with the license, so we're forced to fork using the current license.

By the way, if digital mars had the copyright for all of the main D code, and Walter got run over by a bus tomorrow, what would happen to the copyright? Who would own it? Would it make more sense to have the copyright go to some sort of D foundation so that we as a group have some control over it? If we lost control of the copyright due to some legal issue with digital mars, we might actually be better off with the copyright being under all of the individual contributors, because as much of a pain as it would be to get the license changed at that point if we wanted to, it would at least be theoretically possible, whereas if it were under digital mars, and none of us had control over the copyright, then we'd never be able to change the license. But I confess that I really don't know all of the legal ins and outs of this, particularly when a company is involved (and a company with only one employee no less - at least, I'm not aware of there being any other employees).

On a related note, what would happen to the dmd backend if Walter got run over by a bus tomorrow? As I understand it, we have it because Walter made a deal with Symantec. We can't even distribute it without his permission. So, it seems like we'd lose the backend without him.

Now, I certainly hope that we have Walter around for a long time to come, but if we're worrying about not being able to get ahold of people in the future to be able to change licenses or whatnot, then it seems like a good question to ask what happens if we lost Walter. Thanks to ldc and gdc, I don't think that Walter represents a bus count of one for D, but we definitely want to make sure that we don't risk losing D because of the loss of a few people.

- Jonathan M Davis

_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
Andrei Alexandrescu via dmd-internals, el 23 de June a las 23:17 me escribiste:
> 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@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.

Yeah, that's the real way to go if the goal is to protect D's interests. Walter could go bananas too, or die. I know at this point this option might be unrealistic and the most practical solution is to keep giving the rights to Walter/DigitalMars, but I can definitely understand people being concerned about giving up their rights to a private company that has no legal obligation to do what's best for D instead of its own interests.

Then, there are a bunch of very serious projects that have settled with a license and don't require copyright assignment, like LLVM (which I think have a similar position to D in terms of being freely available for any use). The FSF asks for copyright assignment not to be able to change the license in the future (for that reason they say in the license that you can use any newer GPL version, at your choice), but for litigation reasons, to be able to enforce the license, which I guess is not a concern for D if you basically want to have it effectively as Public Domain.

http://llvm.org/docs/DeveloperPolicy.html#copyright https://www.gnu.org/licenses/why-assign.html

-- 
Leandro Lucarella (AKA luca)                     http://llucax.com.ar/
----------------------------------------------------------------------
In 1995 a Japanese trawler sank, because a Russian
cargo plane dropped a living cow from 30,000 feet
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
Walter Bright via dmd-internals, el 23 de June a las 23:33 me escribiste:
> 
> On 6/23/2014 9:00 PM, Steven Schveighoffer via dmd-internals wrote:
> >
> >A statement saying that any contributors must agree that they give permission for Digital Mars to change the license of their code to any future version of boost license would be sufficient and reasonable, IMO. Remember that if any issues ever arise with boost license, the boost project is sure to fix them, and then we can adopt that new license.
> >
> 
> 
> 
> LLVM doesn't require copyright assignment, but they admit on their site that they are aware that implies the LLVM license can never change. GCC requires copyright assignment for larger contributions.

As I said, that's for a different reason, to be able to change the license they just do this:

"This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, EITHER VERSION 3 OF THE LICENSE, OR (AT YOUR
OPTION) ANY LATER VERSION."
(capitalization added by me :)


> If the copyright holder agrees to such a clause, what rights do they retain as copyright holder? Such open-ended clauses may also even be invalid - I've never heard of one. Going with copyright assignment is simple and direct. I don't care to try and break new legal ground here. I don't care to risk the hard work of every contributor to D by trying a novel legal theory.
> 
> >By this same logic, we can lament the fact that we can't incorporate libmysql because we didn't get it's owner's permission to license under boost instead of GPL. It's not a fair comparison -- Oracle/Sun did not want to contribute to D, so why should we worry about that?
> 
> Because we don't really care about libmysql's license. If it's license becomes incompatible with D's goals, we'll just find another library. It won't destroy D. We can even survive various modules in Phobos needing to be rebooted over licensing issues. It'd be a lot harder to survive dmd being holed below the waterline.
> 
> 
> _______________________________________________
> dmd-internals mailing list
> dmd-internals@puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-internals

-- 
Leandro Lucarella (AKA luca)                     http://llucax.com.ar/
----------------------------------------------------------------------
Hey, it's George. I got nothing to say.
	-- George Constanza, message in Jerry's answering machine
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
On 6/24/14, 6:06 AM, Leandro Lucarella wrote:
> I can definitely understand people being concerned about giving up
> their rights to a private company that has no legal obligation to do
> what's best for D instead of its own interests.

The converse is Digital Mars giving up its interest in doing the best for D to an amorphous set of past, present, and future individual contributors. -- Andrei
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
On 24 Jun 2014, at 2:43, Andrei Alexandrescu via dmd-internals wrote:
> 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.

Wait, what?!

To the best of my knowledge (I am not a lawyer, obviously), this fear is rooted in a misunderstanding of how software licenses work. It is true that somebody could leave D development, take the code they contributed to Phobos and release a new version under a different license. However, while it would obviously be sad to lose a contributor, it wouldn't impact the project in the slightest, because they already granted us permission to use their contributions under the Boost license.

This issue seems to underlie all your arguments. Let's make sure we agree on what can happen or not before continuing the discussion.

Cheers,
David
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
Andrei Alexandrescu, el 24 de June a las 06:59 me escribiste:
> On 6/24/14, 6:06 AM, Leandro Lucarella wrote:
> >I can definitely understand people being concerned about giving up their rights to a private company that has no legal obligation to do what's best for D instead of its own interests.
> 
> The converse is Digital Mars giving up its interest in doing the best for D to an amorphous set of past, present, and future individual contributors. -- Andrei

Yeah, but as with law, companies could change, they could get sold, who knows. There is no guarantee for that not to eventually happens. I don't doubt Digital Mars good intentions now and in the past, but unfortunately I can't predict the future :)

Again, having something else, non-profit and more democratic would be the ideal, but I acknowledge using Digital Mars is a reasonable realistic option for the maturity level of the project right now. All this considering we want to go the copyright assignment road, and I'm not at all convinced about that.

-- 
Leandro Lucarella (AKA luca)                     http://llucax.com.ar/
----------------------------------------------------------------------
SATANAS EN COMISARIA
	-- Crónica TV
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
On Jun 24, 2014, at 2:17 AM, Andrei Alexandrescu <andrei@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@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
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 24, 2014
On Jun 24, 2014, at 2:33 AM, Walter Bright <walter@digitalmars.com> wrote:

> 
> On 6/23/2014 9:00 PM, Steven Schveighoffer via dmd-internals wrote:
>> 
>> A statement saying that any contributors must agree that they give permission for Digital Mars to change the license of their code to any future version of boost license would be sufficient and reasonable, IMO. Remember that if any issues ever arise with boost license, the boost project is sure to fix them, and then we can adopt that new license.
>> 
> 
> 
> 
> LLVM doesn't require copyright assignment, but they admit on their site that they are aware that implies the LLVM license can never change. GCC requires copyright assignment for larger contributions.

I think as Luca says, it's to have standing to sue in court, not to be able to relicense. GCC's projects ALWAYS give the user the option of using any future version of GPL, so they have a similar stipulation to what I stated.

> 
> If the copyright holder agrees to such a clause, what rights do they retain as copyright holder? Such open-ended clauses may also even be invalid - I've never heard of one. Going with copyright assignment is simple and direct. I don't care to try and break new legal ground here. I don't care to risk the hard work of every contributor to D by trying a novel legal theory.

This isn't too complicated, it's the same rights they have that aren't granted by the license. Basically, they are licensing under boost and any future version of boost. The GPL is the example I'm thinking of, it's very pervasive.

When I license code under a copyright, I retain the ownership rights. This means I can relicense as I please, I can write derivative works without permission from anyone else, I can redistribute however I want. But the license I grant to you dictates what you can do. All I am doing is granting you a perpetual right to relicense under a future version of boost. I don't think this is new legal ground.

> 
>> By this same logic, we can lament the fact that we can't incorporate libmysql because we didn't get it's owner's permission to license under boost instead of GPL. It's not a fair comparison -- Oracle/Sun did not want to contribute to D, so why should we worry about that?
> 
> Because we don't really care about libmysql's license. If it's license becomes incompatible with D's goals, we'll just find another library. It won't destroy D. We can even survive various modules in Phobos needing to be rebooted over licensing issues. It'd be a lot harder to survive dmd being holed below the waterline.

We don't really care about tango's XML library's license. It's license is incompatible (note that libmysql's license IS currently incompatible), it won't destroy D. We can survive by using a compatible XML library, or writing our own. Really the arguments are exactly the same.

I think instead of playing a guessing game as to what some future event might do to DMD, let's first actually show what event can happen besides some nebulous unproven concerns. Living in constant fear of the unknown is not a way to plan for the future. So far, the example problems we've been given would not be solved by having sole ownership of the copyright of DMD or Phobos.

-Steve
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
June 25, 2014
On Wed, Jun 25, 2014 at 12:59 AM, Steven Schveighoffer via dmd-internals <dmd-internals@puremagic.com> wrote:
>
> How does this work if I assign ownership of the code to Digital Mars? Do they now own that part of dcollections?

I guess, but it doesn't really matter because you can do almost anything with it under boost without owning it.

> 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't matter, because once it's been licensed under boost you can always use it under boost.

> Does it mean that I can never relicense dcollections without DM's permission?

You can relicense it to anything boost is compatible with (GPL, BSD,
proprietary license) but you can't remove the restrictions that are
placed on it by boost.  ie You can't remove the attribution from the
source and then redistribute it, whereas you could if you owned the
copyright.
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals