March 21, 2009

Christopher Wright wrote:
> Daniel Keep wrote:
>> When was the last time you had to put this in your GCC-compiled programs?
>>
>> "Portions of this program Copyright (C) Free Software Foundation.  Uses
>> glibc."
> 
> Executable code resulting from compilation is not a work derived from GCC.
> 
> glibc is extremely difficult to link statically and is distributed under the LGPL, so no copyright notice is necessary.
> 
> If dmd had good support for dynamic linking, this wouldn't be nearly as much of an issue. Sadly, ddl seems to be on hiatus, and at any rate, it can't be applied to the runtime.

I think you're missing my point.  I'm saying that a standard library shouldn't require you to insert legal disclaimers or attribution notices into your program or its documentation.

A standard library should be be as invisible as possible in this regard.

  -- Daniel
March 21, 2009
Daniel Keep wrote:
> 
> Christopher Wright wrote:
>> Daniel Keep wrote:
>>> When was the last time you had to put this in your GCC-compiled programs?
>>>
>>> "Portions of this program Copyright (C) Free Software Foundation.  Uses
>>> glibc."
>> Executable code resulting from compilation is not a work derived from GCC.
>>
>> glibc is extremely difficult to link statically and is distributed under
>> the LGPL, so no copyright notice is necessary.
>>
>> If dmd had good support for dynamic linking, this wouldn't be nearly as
>> much of an issue. Sadly, ddl seems to be on hiatus, and at any rate, it
>> can't be applied to the runtime.
> 
> I think you're missing my point.  I'm saying that a standard library
> shouldn't require you to insert legal disclaimers or attribution notices
> into your program or its documentation.
> 
> A standard library should be be as invisible as possible in this regard.
> 
>   -- Daniel

Right. It's invisible with glibc because you link to it dynamically, and because everyone installs it by default. Druntime has neither of these advantages.
March 21, 2009

Christopher Wright wrote:
> Daniel Keep wrote:
>>
>> Christopher Wright wrote:
>>> Daniel Keep wrote:
>>>> When was the last time you had to put this in your GCC-compiled programs?
>>>>
>>>> "Portions of this program Copyright (C) Free Software Foundation.  Uses
>>>> glibc."
>>> Executable code resulting from compilation is not a work derived from GCC.
>>>
>>> glibc is extremely difficult to link statically and is distributed under the LGPL, so no copyright notice is necessary.
>>>
>>> If dmd had good support for dynamic linking, this wouldn't be nearly as much of an issue. Sadly, ddl seems to be on hiatus, and at any rate, it can't be applied to the runtime.
>>
>> I think you're missing my point.  I'm saying that a standard library shouldn't require you to insert legal disclaimers or attribution notices into your program or its documentation.
>>
>> A standard library should be be as invisible as possible in this regard.
>>
>>   -- Daniel
> 
> Right. It's invisible with glibc because you link to it dynamically, and because everyone installs it by default. Druntime has neither of these advantages.

I'm not talking about distribution of the actual library machine code, I'm talking about the LEGAL ISSUES.  Tango's license apparently requires you to explicitly include attribution for Tango in your program.  This means it's possible to naively compile "Hello, World" with Tango, distribute it and break the law.

That glibc uses dynamic linking is immaterial: that there is no way to avoid the legal issues with Tango no matter what you do is the point I'm trying to make.

  -- Daniel
March 21, 2009
Daniel Keep wrote:

> I'm not talking about distribution of the actual library machine code, I'm talking about the LEGAL ISSUES.  Tango's license apparently requires you to explicitly include attribution for Tango in your program.  This means it's possible to naively compile "Hello, World" with Tango, distribute it and break the law.

Sorry to use you as the source to enter the thread, Daniel.

Tango DOES NOT IN ANY WAY require you to put attribution into your program. That is a choice you as a user would make entirely on your own by choosing to use Tango licensed under the BSD (which is quite possible because this license is better suited for use alongside the GPL).

However, the AFL does not put such a restriction on your binaries, and (unless you use the GPL for your code) the AFL is the license most users should use. This is also noted on the license page (it was probably not clear enough, I hope it is now).

http://dsource.org/projects/tango/wiki/LibraryLicense

For current or prospective contributors; you are completely and entirely entitled to relicense your own code to whichever license you wish, however these should also include the AFL and BSD when used in Tango.

To change the license to something else at this point (for instance to Apache 2.0 only), would be a major undertaking, but something that we may consider to do at a later point.

-- 
Lars Ivar Igesund
blog at http://larsivi.net
DSource, #d.tango & #D: larsivi
Dancing the Tango

March 21, 2009
On 2009-03-21 14:23:51 +0100, Daniel Keep <daniel.keep.lists@gmail.com> said:

> 
> 
> Christopher Wright wrote:
>> Daniel Keep wrote:
>>> 
>>> Christopher Wright wrote:
>>>> Daniel Keep wrote:
>>>>> When was the last time you had to put this in your GCC-compiled
>>>>> programs?
>>>>> 
>>>>> "Portions of this program Copyright (C) Free Software Foundation.  Uses
>>>>> glibc."
>>>> Executable code resulting from compilation is not a work derived from
>>>> GCC.
>>>> 
>>>> glibc is extremely difficult to link statically and is distributed under
>>>> the LGPL, so no copyright notice is necessary.
>>>> 
>>>> If dmd had good support for dynamic linking, this wouldn't be nearly as
>>>> much of an issue. Sadly, ddl seems to be on hiatus, and at any rate, it
>>>> can't be applied to the runtime.
>>> 
>>> I think you're missing my point.  I'm saying that a standard library
>>> shouldn't require you to insert legal disclaimers or attribution notices
>>> into your program or its documentation.
>>> 
>>> A standard library should be be as invisible as possible in this regard.
>>> 
>>> -- Daniel
>> 
>> Right. It's invisible with glibc because you link to it dynamically, and
>> because everyone installs it by default. Druntime has neither of these
>> advantages.
> 
> I'm not talking about distribution of the actual library machine code,
> I'm talking about the LEGAL ISSUES.  Tango's license apparently requires
> you to explicitly include attribution for Tango in your program.  This
> means it's possible to naively compile "Hello, World" with Tango,
> distribute it and break the law.
> 
> That glibc uses dynamic linking is immaterial: that there is no way to
> avoid the legal issues with Tango no matter what you do is the point I'm
> trying to make.
> 
>   -- Daniel

This is bullshit, if you look at the header of c stdio.h you extremely likely to find exactly the same disclaimer (at least I did find it).

If in your program you have an "about" and copyright, or you have documentation to it, then yes you should credit the inclusion of tango if you use the BSD license.

If you want to avoid this then you should use the AFL license (which yes is incompatible with GPLv2).

This if looking more and more like FUD.

Fawzi

March 21, 2009
On 2009-03-21 20:19:15 +0100, Fawzi Mohamed <fmohamed@mac.com> said:

> On 2009-03-21 14:23:51 +0100, Daniel Keep <daniel.keep.lists@gmail.com> said:
> 
>> 
>> Christopher Wright wrote:
>>> Daniel Keep wrote:
>>>> 
>>>> Christopher Wright wrote:
>>>>> Daniel Keep wrote:
>>>>>> When was the last time you had to put this in your GCC-compiled
>>>>>> programs?
>>>>>> 
>>>>>> "Portions of this program Copyright (C) Free Software Foundation.  Uses
>>>>>> glibc."
>>>>> Executable code resulting from compilation is not a work derived from
>>>>> GCC.
>>>>> 
>>>>> glibc is extremely difficult to link statically and is distributed under
>>>>> the LGPL, so no copyright notice is necessary.
>>>>> 
>>>>> If dmd had good support for dynamic linking, this wouldn't be nearly as
>>>>> much of an issue. Sadly, ddl seems to be on hiatus, and at any rate, it
>>>>> can't be applied to the runtime.
>>>> 
>>>> I think you're missing my point.  I'm saying that a standard library
>>>> shouldn't require you to insert legal disclaimers or attribution notices
>>>> into your program or its documentation.
>>>> 
>>>> A standard library should be be as invisible as possible in this regard.
>>>> 
>>>> -- Daniel
>>> 
>>> Right. It's invisible with glibc because you link to it dynamically, and
>>> because everyone installs it by default. Druntime has neither of these
>>> advantages.
>> 
>> I'm not talking about distribution of the actual library machine code,
>> I'm talking about the LEGAL ISSUES.  Tango's license apparently requires
>> you to explicitly include attribution for Tango in your program.  This
>> means it's possible to naively compile "Hello, World" with Tango,
>> distribute it and break the law.
>> 
>> That glibc uses dynamic linking is immaterial: that there is no way to
>> avoid the legal issues with Tango no matter what you do is the point I'm
>> trying to make.
>> 
>>   -- Daniel
> 
> This is bullshit, if you look at the header of c stdio.h you extremely likely to find exactly the same disclaimer (at least I did find it).
> 
> If in your program you have an "about" and copyright, or you have documentation to it, then yes you should credit the inclusion of tango if you use the BSD license.
> 
> If you want to avoid this then you should use the AFL license (which yes is incompatible with GPLv2).
> 
> This if looking more and more like FUD.
> 
> Fawzi

Sorry if I reacted a little too vehemently

Fawzi

March 22, 2009
Lars Ivar Igesund wrote:
> Daniel Keep wrote:
> 
>> I'm not talking about distribution of the actual library machine code,
>> I'm talking about the LEGAL ISSUES.  Tango's license apparently requires
>> you to explicitly include attribution for Tango in your program.  This
>> means it's possible to naively compile "Hello, World" with Tango,
>> distribute it and break the law.
> 
> Sorry to use you as the source to enter the thread, Daniel.
> 
> Tango DOES NOT IN ANY WAY require you to put attribution into your program. That is a choice you as a user would make entirely on your own by choosing to use Tango licensed under the BSD (which is quite possible because this license is better suited for use alongside the GPL).
> 
> However, the AFL does not put such a restriction on your binaries, and (unless you use the GPL for your code) the AFL is the license most users should use. This is also noted on the license page (it was probably not clear enough, I hope it is now).
> 
> http://dsource.org/projects/tango/wiki/LibraryLicense
> 
> For current or prospective contributors; you are completely and entirely entitled to relicense your own code to whichever license you wish, however these should also include the AFL and BSD when used in Tango.
> 
> To change the license to something else at this point (for instance to Apache 2.0 only), would be a major undertaking, but something that we may consider to do at a later point.

I read http://dsource.org/projects/tango/wiki/LibraryLicense.

I am sorry to say, the page /still/ is not /clear/ enough. (As of Mar 22, 00:24 UTC.)

The first bullets establish the intent, yes. But everything after that is actually... worthless. What the page should instead say, is /in terms understandable to/ *anybody*, explain what you have to do if you incorporate Tango in your software, or if you make another library that depends on Tango.

Even if this includes "awkward things" (like having to have a constant string in the binary, mentioning Tango in the "About" menu item, or whatever else), it should be stated in layman-understandable terms.

Currently, words like "encumbrance", phrases like "provides broad rights" etc. only make the prospective reader run away in frustration. Just state what you want, in language that can be understood at First Reading, without asking your mother. Or both of you having an IQ of 170+.

I'm not surprised that Don and others are getting second thoughts about contributing. A /clear/ stance to these issues makes everybody's (contributors, users, OS distributors, even app vendors) life easier. And, therefore, increases the popularity of Tango.
March 22, 2009
Fawzi Mohamed wrote:
> On 2009-03-21 14:23:51 +0100, Daniel Keep <daniel.keep.lists@gmail.com> said:
> 
>>
>>
>> Christopher Wright wrote:
>>> Daniel Keep wrote:
>>>>
>>>> Christopher Wright wrote:
>>>>> Daniel Keep wrote:
>>>>>> When was the last time you had to put this in your GCC-compiled
>>>>>> programs?
>>>>>>
>>>>>> "Portions of this program Copyright (C) Free Software Foundation.  Uses
>>>>>> glibc."
>>>>> Executable code resulting from compilation is not a work derived from
>>>>> GCC.
>>>>>
>>>>> glibc is extremely difficult to link statically and is distributed under
>>>>> the LGPL, so no copyright notice is necessary.
>>>>>
>>>>> If dmd had good support for dynamic linking, this wouldn't be nearly as
>>>>> much of an issue. Sadly, ddl seems to be on hiatus, and at any rate, it
>>>>> can't be applied to the runtime.
>>>>
>>>> I think you're missing my point.  I'm saying that a standard library
>>>> shouldn't require you to insert legal disclaimers or attribution notices
>>>> into your program or its documentation.
>>>>
>>>> A standard library should be be as invisible as possible in this regard.
>>>>
>>>> -- Daniel
>>>
>>> Right. It's invisible with glibc because you link to it dynamically, and
>>> because everyone installs it by default. Druntime has neither of these
>>> advantages.
>>
>> I'm not talking about distribution of the actual library machine code,
>> I'm talking about the LEGAL ISSUES.  Tango's license apparently requires
>> you to explicitly include attribution for Tango in your program.  This
>> means it's possible to naively compile "Hello, World" with Tango,
>> distribute it and break the law.
>>
>> That glibc uses dynamic linking is immaterial: that there is no way to
>> avoid the legal issues with Tango no matter what you do is the point I'm
>> trying to make.
>>
>>   -- Daniel
> 
> This is bullshit, if you look at the header of c stdio.h you extremely likely to find exactly the same disclaimer (at least I did find it).
> 
> If in your program you have an "about" and copyright, or you have documentation to it, then yes you should credit the inclusion of tango if you use the BSD license.

Even if it doesn't have an "about" or documentation, you STILL need to include a license, as far as I can see. I don't see anything in the BSD license that allows you to avoid it, ever.

> If you want to avoid this then you should use the AFL license (which yes is incompatible with GPLv2).
> 
> This if looking more and more like FUD.
> 
> Fawzi
> 
Until this thread, I'd believed that. But now it seems that Phobos and Tango genuinely _are_ incompatible in terms of license issues.

Are you sure that the AFL allows you to avoid the issue of providing a license? It's astonishingly difficult to make sense of that license. The 16-page commentary that it links you to is total rubbish, it seems to basically be an attack on the GPL, without saying what the AFL actually is. It only says:

"In effect, then, AFL 3.0 is like the BSD license, with no
reciprocal obligation to disclose source code."
What the heck does "like" mean?
It's certainly not the same, since BSD is GPL-compatible and AFL isn't.
On that basis, it is NOT like the BSD license.
I find that document (http://www.rosenlaw.com/OSL3.0-explained.pdf) appalling, and it severely erodes my confidence in the AFL.
March 22, 2009
Georg Wrede wrote:
> Even if this includes "awkward things" (like having to have a constant string in the binary, mentioning Tango in the "About" menu item, or whatever else), it should be stated in layman-understandable terms.
> 
> Currently, words like "encumbrance", phrases like "provides broad rights" etc. only make the prospective reader run away in frustration. Just state what you want, in language that can be understood at First Reading, without asking your mother. Or both of you having an IQ of 170+.


Having been involved with occasional contract disputes, I concur that the simpler and more obvious the language is, the better (and the lower your lawyer bill is :-) ).
March 22, 2009
== Quote from Walter Bright (newshound1@digitalmars.com)'s article
> Having been involved with occasional contract disputes, I concur that the simpler and more obvious the language is, the better (and the lower your lawyer bill is :-) ).

A perfect argument for the WTFPL!