Subject: Re: [PATCH 0/2] Two janitorial patches for builtin/blame.c

From: David Kastrup <[email-masked]>
Date: Tue, 21 Jan 2014 20:56:06 +0100

Jonathan Nieder <[email-masked]> writes:

> David Kastrup wrote:
>> Jonathan Nieder <[email-masked]> writes:
>
>>> Any idea how this could be made more clear?  E.g., maybe we should
>>> bite the bullet and add a line to all source files that don't already
>>> state a license:
>>>
>>> 	/*
>>> 	 * License: GPLv2.  See COPYING for details.
>>> 	 */
>>
>> Probably somewhat more verbose like "This file may be distributed under
>> the conditions of the GPLv2.  See the file COPYING for details".
>> I think there are boilerplate texts for that.
>
> All else being equal, longer is worse.

I am not sure that all else is equal.

>> Whatever the exact wording, that would be the cleanest way I think.  The
>> respective Documentation/SubmittingPatches text looks like it is quoted
>> from somewhere else, so adapting it to the realities of files without
>> clear copyright statement seems less straightforward.
>
> Hm, the wording comes from the Linux kernel project, where it's also
> pretty normal not to have a license notice in every file (and where
> the default license is also GPLv2).
>
> Is the problem the phrase "indicated in the file",

At least that's what I perceive as a problem in combination with the
complete absence of any such notice in the file I am contributing to.

git grep -i license

actually shows a dearth of licensing information outside of subprojects
and contrib.  The README file states

    Git is an Open Source project covered by the GNU General Public
    License version 2 (some parts of it are under different licenses,
    compatible with the GPLv2). It was originally written by Linus
    Torvalds with help of a group of hackers around the net.

without mentioning _which_ parts are under different licenses.  The
license file COPYING itself does not specify which files are covered,
and there is _also_ LGPL-2.1 which has a statement

     While most of this project is under the GPL (see COPYING), the
     xdiff/ library and some libc code from compat/ are licensed under
     the GNU LGPL, version 2.1 or (at your option) any later version and
     some other files are under other licenses.  Check the individual
     files to be sure.

Well, and when checking the individual files, there is really nothing
to be found for "being sure".

The net result is that when signing off on a patch according to the
rules in Documentation/SubmittingPatches, for most files you don't
really have a definite statement just _what_ license you are agreeing
your work to be distributed under.

> or is the problem
> e.g. the lack of a pointer to
> https://github.com/libgit2/libgit2/blob/development/git.git-authors?

No, not at all.  libgit2 is not in any way special among projects that
might want to have access to Git code under different licenses.  It
would be possible to state something like "Unless indicated otherwise,
consent will be assumed for contributions to Git as being
redistributable in the libgit2 project under its respective licenses" or
something, but I think that would be seriously surprising, and not
noticing such a clause could not be construed as implying consent.

-- 
David Kastrup