[GRASS5] Jan's copyright notice ++
Frank Warmerdam
warmerda at home.com
Thu Nov 2 11:32:02 EST 2000
Andreas Lange wrote:
> the file header is as such a nice idea. But wouldn't it be possible to
> get one step further and introduce something that can be processed
> automated (with some documentation system or something homegrown)?
> I feel it is a waste of time to re-write the headers (which are from
> on-liners to several pages of prose) while we have not decided how the
> future development strategy will be.
>
> If we agree that we want the modules have internal information about
> authors, version, purpose, function, title etc. this should be done in
> one place/with one system.
Andreas,
I think that there is a big difference in effort between settling on a new
style of header, and applying it to code as touched vs. implementing
auto-extractable function descriptions which would have to be applied to
all interesting functions to be of much use.
> Another question: What should be done with the old comment headers? I am
> clueless if they must be preserved for license reasons or if the info
> should be included into the new headers and then discarded.
I presume we should try to retain information in the PURPOSE field, and
if the copyright isn't GPL, then retain the copyright information in the
COPYRIGHT field.
On the suggested format, I have a few questions.
/*
* <Id flag - see STYLE_PROGRAMMING for proper syntax>
*
****************************************************************************
* -- GRASS Development Team --
*
* MODULE: GRASS gis library
What does MODULE mean? Is this effectively the directory the files is in?
Would it be "raster" for src/raster/r.in.gdal? Please explain more fully.
* FILENAME: env.c
I hate including filenames in standard headers. It will be included in the
$Id$ after exapansion anyways, and filenames in the header that need to be
hand maintained are often not done properly, and just left with the value
copied from somewhere else. I propose this be dropped.
* AUTHOR(S): Original author unknown - probably CERL
* Justin Hickey - Bangkok Thailand - jhickey at hpcc.nectec.or.th
* Roger Bivand - rsb at reclus.nhh.no
* PURPOSE: To provide functionality for GRASS programs to set and get
* environment variables. The set environment functions can set
* variables for the duration of the program, or variables can be
* set permanently by adding them to the GISRC file. The get
* environment functions simply get the given variable from the
* environment regardless of whether it is permanent or not.
* Functions are also provided to read and write the GISRC file.
* This file has been rewritten by Justin Hickey.
* DATE CREATED: Jul 14 2000
What is the purpose of DATE CREATED? Perhaps it should be dropped.
* COPYRIGHT: (C) 2000 by the GRASS Development Team
*
* This program is free software under the GPL (>=v2)
* Read the file COPYING that comes with GRASS for details.
*
*****************************************************************************/
Beyond the above I would like to see capture of log messages automatically.
I find it enormously useful to be able to scan back through log messages (the
same messages entered on a CVS commit) when looking at source file.
The following is an example of the header style I normally use. I think the
most sigificant difference compared to the proposed style is the inclusion of
the $Log$ section to auto-generate checkin logs. Could we consider dropping
DATE CREATED and FILENAME from the existing style, and adding a $Log$ section?
/******************************************************************************
* $Id: make_loc.c,v 1.1 2000/10/31 04:39:43 frankw Exp $
*
* Project: libgrass
* Purpose: Function to create a new location automatically given a
* "Cell_head", PROJ_INFO and PROJ_UNITS information.
* Author: Frank Warmerdam, warmerda at home.com
*
******************************************************************************
* Copyright (c) 2000, Frank Warmerdam
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
******************************************************************************
*
* $Log: make_loc.c,v $
* Revision 1.1 2000/10/31 04:39:43 frankw
* New
*
*/
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up | Frank Warmerdam, warmerda at home.com
light and sound - activate the windows | http://members.home.com/warmerda
and watch the world go round - Rush | Geospatial Programmer for Rent
----------------------------------------
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo at geog.uni-hannover.de with
subject 'unsubscribe grass5'
More information about the grass-dev
mailing list