digitalmars.D - Copyright for Phobos to D Foundation
- Seb (12/12) May 28 2016 One thing that confused me a lot in the beginning, is that every
- Joseph Rushton Wakeling (23/27) May 28 2016 No, not at all, and you don't need legal experience to recognize
- Seb (6/10) May 28 2016 Yes that's a huge problem. I tried to tackle this with this
- Joseph Rushton Wakeling (14/24) May 28 2016 Er ... not that I wish to dampen your enthusiasm, but don't you
- Seb (15/42) May 28 2016 Oh this wasn't thought to conflict with the (often not-updated)
- Russel Winder via Digitalmars-d (36/42) May 29 2016 I am not sure of the situation with GDC since the GCC folk are involved
- rikki cattermole (4/36) May 29 2016 Uninstall dmd and have ldc installed. Hey dub defaults to ldc!
- Russel Winder via Digitalmars-d (15/20) May 29 2016 =A0
- rikki cattermole (4/13) May 29 2016 So you want gdc and ldc to both be default at the same time?
- Russel Winder via Digitalmars-d (19/30) May 29 2016 Sorry I didn't add enough detail: this is not to do with Dub, or SCons,
- Iain Buclaw (4/5) May 29 2016 Until the maintainers fix their problem with not sharing or
- rikki cattermole (3/8) May 29 2016 I was making the point that dub could handle ldc as the default if dmd
- Martin Nowak (4/6) May 30 2016 That's already done since a long time. Since 0.9.25 you can also
- Iain Buclaw (5/22) May 29 2016 Licensing the common parts of the frontend and library as under
- Dicebot (7/22) May 29 2016 Ideally not a single line of code should be accepted into Phobos without
- Seb (7/36) May 29 2016 It could all be made electronically & automated, if it's
- Russel Winder via Digitalmars-d (14/24) May 29 2016 I note that the current Chair of the PSF is a practicing lawyer.
- Andrei Alexandrescu (4/5) May 30 2016 I have none, sorry. We have an attorney at least temporarily to help our...
- Piotrek (6/11) May 30 2016 AFAIK, there is no trick to defend you entirely from trolls (bad
One thing that confused me a lot in the beginning, is that every Phobos module has it's own copyright - I am not a lawyer, but it sounded for me pretty weird that in theory I could get sued by a lot of Oracle-like patent trolls. I imagine the same effect also for companies when they read a different copyright on every module in Phobos. Now that D foundation finally got its own page [1], it's probably time to start this dicussion. Is it safe to assume that the entire Phobos source code (except for the external C modules), belongs to the D foundation? Ping WalterBright, andralex & people with legal experience. [1] https://github.com/dlang/dlang.org/pull/1311
May 28 2016
On Saturday, 28 May 2016 at 17:50:46 UTC, Seb wrote:Now that D foundation finally got its own page [1], it's probably time to start this dicussion. Is it safe to assume that the entire Phobos source code (except for the external C modules), belongs to the D foundation?No, not at all, and you don't need legal experience to recognize that. Copyright is extremely under-reported for Phobos, in my experience -- authors of significant components of modules do not necessarily add their name to the copyright list or even the author list. But without any paperwork to transfer copyright (and note, not all legal jurisdictions recognize the possibility to do so), copyright still belongs to these authors for the significant parts they have written. Note, having multiple copyright holders isn't necessarily a problem, given that Phobos is Boost-licensed. It tends to be more an issue for copyleft-licensed works (where having multiple copyright holders can e.g. complicate a license upgrade), or in the case where there is a copyright violation and it is convenient to have a single entity that can launch a claim against the violator (this is why e.g. the Free Software Foundation requests copyright transfer for contributions to their major projects). But the Boost license makes any copyright violation claim unlikely -- pretty much the only scenario I can see that flying is if somebody redistributes the source code while stripping off the copyright/license/authorship information.
May 28 2016
On Saturday, 28 May 2016 at 18:11:16 UTC, Joseph Rushton Wakeling wrote:Copyright is extremely under-reported for Phobos, in my experience -- authors of significant components of modules do not necessarily add their name to the copyright list or even the author list.Yes that's a huge problem. I tried to tackle this with this https://github.com/dlang/dlang.org/pull/1307 It's currently pending, so make noise if you find this useful too ;-)
May 28 2016
On Saturday, 28 May 2016 at 18:30:03 UTC, Seb wrote:On Saturday, 28 May 2016 at 18:11:16 UTC, Joseph Rushton Wakeling wrote:Er ... not that I wish to dampen your enthusiasm, but don't you have another project to be working on? ;-) Specifically on that PR: I think it's problematic to try auto-adding all contributors to modules, because author (and copyright) credits should generally be given for _significant_ contributions -- authoring functions and data structures, etc. -- not for minor tweaks and fixes. Historically with Phobos, I think there's an extent to which adding one's name to the author list was also taken as an indication of being willing to take some level of active maintenance duty for its contents. (I don't personally agree with that idea, but it was mentioned to me at a point where I was adding my name to the authors list of a module.)Copyright is extremely under-reported for Phobos, in my experience -- authors of significant components of modules do not necessarily add their name to the copyright list or even the author list.Yes that's a huge problem. I tried to tackle this with this https://github.com/dlang/dlang.org/pull/1307 It's currently pending, so make noise if you find this useful too ;-)
May 28 2016
On Saturday, 28 May 2016 at 18:39:20 UTC, Joseph Rushton Wakeling wrote:On Saturday, 28 May 2016 at 18:30:03 UTC, Seb wrote:Oh this wasn't thought to conflict with the (often not-updated) authors list which is displayed at the top of the page. It was just an attempt to give people (small) credits and motivation. Btw how about moving this part of the conversation to the PR?On Saturday, 28 May 2016 at 18:11:16 UTC, Joseph Rushton Wakeling wrote:Er ... not that I wish to dampen your enthusiasm, but don't you have another project to be working on? ;-) Specifically on that PR: I think it's problematic to try auto-adding all contributors to modules, because author (and copyright) credits should generally be given for _significant_ contributions -- authoring functions and data structures, etc. -- not for minor tweaks and fixes.Copyright is extremely under-reported for Phobos, in my experience -- authors of significant components of modules do not necessarily add their name to the copyright list or even the author list.Yes that's a huge problem. I tried to tackle this with this https://github.com/dlang/dlang.org/pull/1307 It's currently pending, so make noise if you find this useful too ;-)Historically with Phobos, I think there's an extent to which adding one's name to the author list was also taken as an indication of being willing to take some level of active maintenance duty for its contents. (I don't personally agree with that idea, but it was mentioned to me at a point where I was adding my name to the authors list of a module.)I agree - there should be a separate maintainer(s) field which are be in charge of merging PRs to the module and can be contacted for questions. It seems to me that this is already the case for many modules, but more on an informal, not documented basis. However I guess having fixed maintainer(s) is too rigid for an open source project, but it would be a great change which also might help to tackle the PR bottleneck problem.
May 28 2016
On Sat, 2016-05-28 at 17:50 +0000, Seb via Digitalmars-d wrote:One thing that confused me a lot in the beginning, is that every=C2=A0 Phobos module has it's own copyright - I am not a lawyer, but it=C2=A0 sounded for me pretty weird that in theory I could get sued by a=C2=A0 lot of Oracle-like patent trolls. I imagine the same effect also for companies when they read a=C2=A0 different copyright on every module in Phobos.I am not sure of the situation with GDC since the GCC folk are involved with that =E2=80=93 Iain may be able to take a view on this. Also I am not totally sure of the LDC situation. However I think it would be a very good idea if DMD, LDC, GDC, Phobos, druntime, and Dub and the repository were all copyright the D Foundation, and that all contributions had a copyright share or transfer. Contribution agreements are notoriously complicated, cf. the situation over the Canonical one. However, it is not beyond the bounds of possibility that there is lawyer with licence to operate in the jurisdiction that the D Foundation is incorporated in who could draw up a suitable copyright share/transfer agreement that can be digitally signed. This agreement would then be required for any new contributions. Dealing with retrospective can be difficult but not impossible. Contribution agreements sometimes cause a lot of grief, cf. the original Gradle one as well as the aforementioned Canonical one. However, it can be done and to great effect. The benefit of getting over the problems so as to allow all ownership to at least include D Foundation is unquantifiable per se, but anecdotally is very great. Having a clear central owner of a technology gives organizations confidence that the technology is not going away. I know D has been around over a decade and isn't going away, but organizations (and their lawyers) do not think that way. They want a clear central organization as owner with responsibility. I have seen this with Apache Groovy and SCons over the years. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
May 29 2016
On 29/05/2016 10:54 PM, Russel Winder via Digitalmars-d wrote:On Sat, 2016-05-28 at 17:50 +0000, Seb via Digitalmars-d wrote:Uninstall dmd and have ldc installed. Hey dub defaults to ldc! With a little bit of shell magic no need to uninstall and is easy to work with.One thing that confused me a lot in the beginning, is that every Phobos module has it's own copyright - I am not a lawyer, but it sounded for me pretty weird that in theory I could get sued by a lot of Oracle-like patent trolls. I imagine the same effect also for companies when they read a different copyright on every module in Phobos.I am not sure of the situation with GDC since the GCC folk are involved with that – Iain may be able to take a view on this. Also I am not totally sure of the LDC situation. However I think it would be a very good idea if DMD, LDC, GDC, Phobos, druntime, and Dub and the repository were all copyright the D Foundation, and that all contributions had a copyright share or transfer. Contribution agreements are notoriously complicated, cf. the situation over the Canonical one. However, it is not beyond the bounds of possibility that there is lawyer with licence to operate in the jurisdiction that the D Foundation is incorporated in who could draw up a suitable copyright share/transfer agreement that can be digitally signed. This agreement would then be required for any new contributions. Dealing with retrospective can be difficult but not impossible. Contribution agreements sometimes cause a lot of grief, cf. the original Gradle one as well as the aforementioned Canonical one. However, it can be done and to great effect. The benefit of getting over the problems so as to allow all ownership to at least include D Foundation is unquantifiable per se, but anecdotally is very great. Having a clear central owner of a technology gives organizations confidence that the technology is not going away. I know D has been around over a decade and isn't going away, but organizations (and their lawyers) do not think that way. They want a clear central organization as owner with responsibility. I have seen this with Apache Groovy and SCons over the years.
May 29 2016
On Sun, 2016-05-29 at 22:59 +1200, rikki cattermole via Digitalmars-d wrote:[=E2=80=A6]=A0=C2=A0Uninstall dmd and have ldc installed. Hey dub defaults to ldc! With a little bit of shell magic no need to uninstall and is easy to=C2=work with.There is also that ldc and gdc Debian packages cannot both be installed and have gdc work :-( --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
May 29 2016
On 29/05/2016 11:10 PM, Russel Winder via Digitalmars-d wrote:On Sun, 2016-05-29 at 22:59 +1200, rikki cattermole via Digitalmars-d wrote:So you want gdc and ldc to both be default at the same time? Because with --compiler switch, and a little bit of shell magic its not all that hard to switch between them for default and one offs.[…]There is also that ldc and gdc Debian packages cannot both be installed and have gdc work :-(Uninstall dmd and have ldc installed. Hey dub defaults to ldc! With a little bit of shell magic no need to uninstall and is easy to work with.
May 29 2016
On Sun, 2016-05-29 at 23:43 +1200, rikki cattermole via Digitalmars-d wrote:On 29/05/2016 11:10 PM, Russel Winder via Digitalmars-d wrote:Sorry I didn't add enough detail: this is not to do with Dub, or SCons, it is to do with Debian packaging, gdc, and ldc. The gdc module search path and the ldc module search path both have the same directory as the primary directory for search even though the install directories are different. Given that gdc and ldc are generally many D versions apart, gdc is trying to use modules from the future and it breaks. Using ldc is fine. So to use gdc you cannot have ldc installed from packages. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder=C2=A0[=E2=80=A6] There is also that ldc and gdc Debian packages cannot both be installed and have gdc work :-(=20 So you want gdc and ldc to both be default at the same time? =20 Because with --compiler switch, and a little bit of shell magic its not=C2=A0 all that hard to switch between them for default and one offs.
May 29 2016
On Sunday, 29 May 2016 at 10:59:57 UTC, rikki cattermole wrote:Uninstall dmd and have ldc installed.Until the maintainers fix their problem with not sharing or upstreaming bug fixes and contributions. Then I would not make such endorsements.
May 29 2016
On 30/05/2016 4:53 AM, Iain Buclaw wrote:On Sunday, 29 May 2016 at 10:59:57 UTC, rikki cattermole wrote:I was making the point that dub could handle ldc as the default if dmd is not on the PATH variable.Uninstall dmd and have ldc installed.Until the maintainers fix their problem with not sharing or upstreaming bug fixes and contributions. Then I would not make such endorsements.
May 29 2016
On Monday, 30 May 2016 at 04:42:24 UTC, rikki cattermole wrote:I was making the point that dub could handle ldc as the default if dmd is not on the PATH variable.That's already done since a long time. Since 0.9.25 you can also configure your default compiler. https://github.com/dlang/dub/blob/d642e93b4765970b585e5e3533aa392834593d26/source/dub/dub.d#L225
May 30 2016
On Sunday, 29 May 2016 at 10:54:34 UTC, Russel Winder wrote:On Sat, 2016-05-28 at 17:50 +0000, Seb via Digitalmars-d wrote:Licensing the common parts of the frontend and library as under the D Foundation should be no problem. Walter may have to let the FSF know though incase a clause needs changing in the copyright assignments.One thing that confused me a lot in the beginning, is that every Phobos module has it's own copyright - I am not a lawyer, but it sounded for me pretty weird that in theory I could get sued by a lot of Oracle-like patent trolls. I imagine the same effect also for companies when they read a different copyright on every module in Phobos.I am not sure of the situation with GDC since the GCC folk are involved with that – Iain may be able to take a view on this. Also I am not totally sure of the LDC situation. However I think it would be a very good idea if DMD, LDC, GDC, Phobos, druntime, and Dub and the repository were all copyright the D Foundation, and that all contributions had a copyright share or transfer.
May 29 2016
On 05/28/2016 08:50 PM, Seb wrote:One thing that confused me a lot in the beginning, is that every Phobos module has it's own copyright - I am not a lawyer, but it sounded for me pretty weird that in theory I could get sued by a lot of Oracle-like patent trolls. I imagine the same effect also for companies when they read a different copyright on every module in Phobos. Now that D foundation finally got its own page [1], it's probably time to start this dicussion. Is it safe to assume that the entire Phobos source code (except for the external C modules), belongs to the D foundation? Ping WalterBright, andralex & people with legal experience. [1] https://github.com/dlang/dlang.org/pull/1311Ideally not a single line of code should be accepted into Phobos without explicit copyright transfer to D Foundation. However, situation is so messy already any small attempts to clean it up make no difference - it would need some major paperwork. From a practical point of view though, you (as a Phobos user) are guarded from abuse by Boost license.
May 29 2016
On Sunday, 29 May 2016 at 11:10:16 UTC, Dicebot wrote:On 05/28/2016 08:50 PM, Seb wrote:It could all be made electronically & automated, if it's important to us. See e.g. how the Python Software Foundation handles this: https://www.python.org/psf/contrib Can't we at least make it a requirement for future submissions? So that we can slowly cleanup the mess instead of creating more.One thing that confused me a lot in the beginning, is that every Phobos module has it's own copyright - I am not a lawyer, but it sounded for me pretty weird that in theory I could get sued by a lot of Oracle-like patent trolls. I imagine the same effect also for companies when they read a different copyright on every module in Phobos. Now that D foundation finally got its own page [1], it's probably time to start this dicussion. Is it safe to assume that the entire Phobos source code (except for the external C modules), belongs to the D foundation? Ping WalterBright, andralex & people with legal experience. [1] https://github.com/dlang/dlang.org/pull/1311Ideally not a single line of code should be accepted into Phobos without explicit copyright transfer to D Foundation. However, situation is so messy already any small attempts to clean it up make no difference - it would need some major paperwork. From a practical point of view though, you (as a Phobos user) are guarded from abuse by Boost license.
May 29 2016
On Sun, 2016-05-29 at 11:24 +0000, Seb via Digitalmars-d wrote:[=E2=80=A6] =20 It could all be made electronically & automated, if it's=C2=A0 important to us. See e.g. how the Python Software Foundation handles this: =20 https://www.python.org/psf/contrib =20 Can't we at least make it a requirement for future submissions?=C2=A0 So that we can slowly cleanup the mess instead of creating more.I note that the current Chair of the PSF is a practicing lawyer. Whatever the D Foundation does re copyright and ownership, it should not do it on the basis of what programmers say. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
May 29 2016
On 05/28/2016 01:50 PM, Seb wrote:Ping WalterBright, andralex & people with legal experience.I have none, sorry. We have an attorney at least temporarily to help our nonprofit status application, I can forward precise questions if needed. -- Andrei
May 30 2016
On Monday, 30 May 2016 at 16:03:05 UTC, Andrei Alexandrescu wrote:On 05/28/2016 01:50 PM, Seb wrote:AFAIK, there is no trick to defend you entirely from trolls (bad guys in general). The Boost and MIT seem to be the best we can do. I would leave any copywrite line as it is. We can always add more holders. Is there any reason to remove the old ones? PiotrekPing WalterBright, andralex & people with legal experience.I have none, sorry. We have an attorney at least temporarily to help our nonprofit status application, I can forward precise questions if needed. -- Andrei
May 30 2016