View topic - Copyright and license note in the source files


All times are UTC + 1 hour


Post new topic Reply to topic  [ 10 posts ] 
Author Message
PostPosted: 05 Aug 2009, 13:54 
Spring Developer

Joined: 24 Jun 2007, 07:34
Location: 50┬░ 56' N, 11┬░ 35' O
The question came up because I read the Copyright in Ubuntu thread:

Lots of projects stick GPL copyright notes in top of their source files. Is that necessary? Should we do this, too? Or it a single LICENSE-file enough?

Also, what about author / copyright field? Some files have them, others don't. Those who have them mostly aren't up to date. Should we update them regularly, and add them were missing?
Top
 Offline Profile  
 
PostPosted: 05 Aug 2009, 14:34 
Spring Developer

Joined: 08 Oct 2006, 15:58
Don't know about the legal necessity, but I'd really prefer all the licensing details to be in one place instead of spread out and duplicated all over the code because they:

    * needlessly bloat the source files
    * add zero information except (sometimes) author names, which can be listed elsewhere for accreditation
    * are more easily maintained in one single LICENSE

Finding out who originally wrote what (or who contributed to what) is harder than it sounds too, how far back in Spring's development would you want to go? Some sources have even undergone so many changes that they're unrecognizably different now, should the names of everyone significantly involved in their history be listed too? Or just those of the principal author(s), if they can be traced? IMHO a CREDITS file would be better suited for that purpose anyway.
Top
 Offline Profile  
 
PostPosted: 05 Aug 2009, 17:37 
Spring Developer
User avatar

Joined: 22 Sep 2007, 08:51
in theory, the parts of the engine that could be easyly used in other places too, could have other licences, right? for example, if someone writes support for a new map format, and wants his stuff to be LGPL.
would this work?:
one LICENSE/COPYRIGHT file in spring source root (GPL V2+), and additional LICENSE/COPYRIGHT files in subfolders , eg. the ones in rts/lib, or rts/Map/SM3 if needed.

i dont think we have to remove license info from individual files, but i am also not totally against it.
I am pro a clearer line though, eg defining a proposed file header comment format (the part that contains licence info and author and such).
Top
 Offline Profile  
 
PostPosted: 07 Aug 2009, 10:28 
Spring Developer

Joined: 24 Jun 2007, 07:34
Location: 50┬░ 56' N, 11┬░ 35' O
hoijui: I think all parts of the engine should be GPL (except those from lib/). GPL is nonexclusive, so if you have written some awesome map format you can include it in spring under the GPL, and publish it elsewhere under any license you want.

Crell@drupal.org wrote:
Placing the license in the header is what the FSF would encourage, yes. However, the inclusion of the LICENSE.txt file is sufficient denotation, according to our lawyer.

OK, so there should be no need to add license headers, and I also would prefer it in a single file.
Top
 Offline Profile  
 
PostPosted: 15 Feb 2010, 15:38 
Spring Developer
User avatar

Joined: 22 Sep 2007, 08:51
having a chat with Auswaschbar and Tobi, we agreed on using a minimal header instead of none is also ok.

It should look like this:
Code:
/* This file is part of the Spring engine (GPL v2 or later), see LICENSE.html */
(80 chars)
Top
 Offline Profile  
 
PostPosted: 24 Feb 2010, 12:44 
Spring Developer
User avatar

Joined: 22 Sep 2007, 08:51
http://www.gnu.org/licenses/gpl-howto.html
reads:
Code:
Whichever license you plan to use, the process involves adding two elements to each source file of your program: a copyright notice (such as ÔÇ£Copyright 1999 Terry JonesÔÇØ), and a statement of copying permission, saying that the program is distributed under the terms of the GNU General Public License (or the Lesser GPL).

This, together with the idea of the header to be a thing that can easily change (eg. someone using our code, he has to use our header or parts of it and will add stuff), i came up with:
Code:
/*
   Copyright 2010 John Doe <john.doe@email.com>
   This file is part of the Spring RTS game engine,
   and is licensed under the GNU GPL v2 and later.
   See the file README.LICENSE for details.
*/

As i got it, we have to include a legal person to hold the copyright,
and i guess the Spring community is not one, so we have to use our individual names.

README.LICENSE currently contains GPLv2 in .txt format. i would like to move it to either gpl-2.0.txt or Documentation/gpl-2.0.txt, add the same for v3, and then only link to these to files from within README.LICENSE.

i plan to make a branch with the transition to the new header (plus other related stuff, eg. as explained in here). once the transition is done, changing the header would be simple of course, but the initial enforcement will need lots of hand tweaking: is there a header already? if yes, what info of it is still needed, ...
Top
 Offline Profile  
 
PostPosted: 24 Feb 2010, 14:39 
Redacted
User avatar

Joined: 08 Jan 2007, 06:13
Location: Don't be silly. If there's no machine heaven, where do all the toasters go?
How can a file be in the name of a single person? (for the majority of Spring's files, that are highly edited) Unless you plan to make an exhaustive list of editors I suggest ignoring that advice.
Top
 Offline Profile  
 
PostPosted: 24 Feb 2010, 14:49 
Spring Developer

Joined: 24 Jun 2007, 07:34
Location: 50┬░ 56' N, 11┬░ 35' O
lurker wrote:
How can a file be in the name of a single person? (for the majority of Spring's files, that are highly edited) Unless you plan to make an exhaustive list of editors I suggest ignoring that advice.

That was what we agreed about.
Top
 Offline Profile  
 
PostPosted: 24 Feb 2010, 16:00 
Spring Developer

Joined: 01 Jun 2005, 10:36
Location: The Netherlands
Code:
Copyright (C) __DATE__ `git log -- __FILE__ | sed -n '/Author/ {s/Author: //g;p}' | sort | uniq`

:wink:
Top
 Offline Profile  
 
PostPosted: 28 Feb 2010, 10:34 
Spring Developer
User avatar

Joined: 22 Sep 2007, 08:51
As most of you probably noticed, most of the change has been done now.
used this header:
Code:
/* This file is part of the Spring engine (GPL v2 or later), see LICENSE.html */

in all code under rts/, with the exception of most stuff under rts/lib/.
stuff under AI/Wrappers/ and AI/Interfaces will also get it, but i want to do that with the pureint branch. As AI/Skirmish/ is not really integral stuff of the engine, i guess i will not change stuff there. An alternative would be, adding the header anyway, but replacing Spring engine with eg. AAI.
Top
 Offline Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Site layout created by Roflcopter et al.