Differences between revisions 2 and 3
Revision 2 as of 2006-02-16 22:51:30
Size: 8074
Editor: gamay
Comment:
Revision 3 as of 2006-02-23 22:03:39
Size: 8719
Editor: GaryBader
Comment:
Deletions are marked like this. Additions are marked like this.
Line 185: Line 185:

GaryBader - sounds good, though we could make it even simpler like:
{{{
/*
Copyright...
...
*/
}}}
Line 186: Line 195:
  * GaryBader - this needs more discussion. Ideally, we normalize all the code that are copyright Cytoscape.
Line 187: Line 197:
  * GaryBader - definitely agree. The script needs to somehow avoid replacing headers on code that is not our own.
Line 188: Line 199:
  * GaryBader - Fine with me, following the 'when in doubt, keep it simple' design maxim.
Line 197: Line 209:
 * GaryBader - since the script is automatic, this would be easy. Personally, I don't find this that useful, since my IntelliJ IDE makes this information easy to read, but maybe it is useful in emacs or something.

RFC Name : Java code license clean-up

Editor(s): Mike Smoot, Gary Bader

TableOfContents([2])

About this document

This is an official Request for Comment (RFC) for Java code license clean-up

For details on RFCs in general, check out the [http://www.answers.com/main/ntquery?method=4&dsid=2222&dekey=Request+for+Comments&gwp=8&curtab=2222_1&linktext=Request%20for%20Comments Wikipedia Entry: Request for Comments (RFCs)]

Status

Open for public comment

How to Comment

Add comments in the discussion section at the bottom of the page along with your name and the date.

Proposal

  • We would like to standardize the headers of all Java class files in the cytoscape directory in CVS. We are not changing any code in the csplugins directory now.

At the top of the file:

/** Copyright (c) 2006 The Cytoscape Consortium
 ** The Cytoscape Consortium is: Institute of Systems Biology, University of California San Diego
 ** Memorial Sloan-Kettering Cancer Center, Pasteur Institute, Agilent Technologies
 **
 ** This library is free software; you can redistribute it and/or modify it
 ** under the terms of the GNU Lesser General Public License as published
 ** by the Free Software Foundation; either version 2.1 of the License, or
 ** 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.  The software and
 ** documentation provided hereunder is on an "as is" basis, and the
 ** Institute for Systems Biology and the Whitehead Institute 
 ** have no obligations to provide maintenance, support,
 ** updates, enhancements or modifications.  In no event shall the
 ** Institute for Systems Biology and the Whitehead Institute 
 ** be liable to any party for direct, indirect, special,
 ** incidental or consequential damages, including lost profits, arising
 ** out of the use of this software and its documentation, even if the
 ** Institute for Systems Biology and the Whitehead Institute 
 ** have been advised of the possibility of such damage.  See
 ** the GNU Lesser General Public License for more details.
 ** 
 ** You should have received a copy of the GNU Lesser 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.
 **/

//--------------------------------------------------------------------
// $Revision: 1.22 $
// $Date: 2005/01/18 19:22:38 $
// $Author: authorname $
//--------------------------------------------------------------------

Followed by package and import statements and code

At the bottom of the file:

/*
$Log: $
*/

The $Log: $ will be replaced by the CVS commit message upon initial check-in, and each new CVS commit message will be appended to the list, so it will eventually look something like this example:

/*
$Log: keyword.html,v $
Revision 1.3 1999/12/23 21:59:22 markd
dummy change to bump up revision.

Revision 1.2 1999/12/23 21:59:15 markd
dummy change to bump up revision.

Revision 1.1 1999/12/23 21:58:35 markd
initial revision
*/

Existing license examples

//ExpressionData.java

/** Copyright (c) 2002 Institute for Systems Biology and the Whitehead Institute
 **
 ** This library is free software; you can redistribute it and/or modify it
 ** under the terms of the GNU Lesser General Public License as published
 ** by the Free Software Foundation; either version 2.1 of the License, or
 ** 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.  The software and
 ** documentation provided hereunder is on an "as is" basis, and the
 ** Institute for Systems Biology and the Whitehead Institute 
 ** have no obligations to provide maintenance, support,
 ** updates, enhancements or modifications.  In no event shall the
 ** Institute for Systems Biology and the Whitehead Institute 
 ** be liable to any party for direct, indirect, special,
 ** incidental or consequential damages, including lost profits, arising
 ** out of the use of this software and its documentation, even if the
 ** Institute for Systems Biology and the Whitehead Institute 
 ** have been advised of the possibility of such damage.  See
 ** the GNU Lesser General Public License for more details.
 ** 
 ** You should have received a copy of the GNU Lesser 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.
 **/

//--------------------------------------------------------------------
// $Revision: 1.22 $
// $Date: 2005/01/18 19:22:38 $
// $Author: cerami $
//--------------------------------------------------------------------

//---------------------------------------------------------------------------
//  $Revision: 1.1 $ 
//  $Date: 2004/06/15 22:46:56 $
//  $Author: amarkiel $
//---------------------------------------------------------------------------

/*
 * The contents of this file are subject to the Sapient Public License
 * Version 1.0 (the "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 * http://carbon.sf.net/License.html.
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
 * the specific language governing rights and limitations under the License.
 *
 * The Original Code is The Carbon Component Framework.
 *
 * The Initial Developer of the Original Code is Sapient Corporation
 *
 * Copyright (C) 2003 Sapient Corporation. All Rights Reserved.
 */

Open Issues

  • Who should copyright be assigned to? Should all code be assigned to the Cytoscape Consortium?
  • How should we deal with existing author statements? Ideally they would be preserved.

Implementation Plan

  • MikeSmoot plans to modify an existing Perl script to update the licenses on all Java source code in the cytoscape CVS directory.

Discussion

MikeSmoot comments:

  • I don't like the double ** at the beginning of each line of comments because it implies that the comment is javadoc, even though it isn't. I'd prefer something like:

/*
 * Copyright...
 */

  • or

//-------------------------------------------------
// Copyright...
//-------------------------------------------------
  • but that's just a minor quibble.

GaryBader - sounds good, though we could make it even simpler like:

/*
Copyright...
...
*/
  • It's not clear to me whether we're changing all of the licenses to be the same or whether we're just adding a header to those files that are missing it.
    • GaryBader - this needs more discussion. Ideally, we normalize all the code that are copyright Cytoscape.

  • I don't think that we can change the Sapient licensed code.
    • GaryBader - definitely agree. The script needs to somehow avoid replacing headers on code that is not our own.

  • I don't like the CVS tags included in the file. I find the information redundant (that's what CVS is for) and that it clutters up the code. Also, for some files, the Log at the botton of the file will get really, really long (e.g. Cytoscape.java is currently at revision 95).
    • GaryBader - Fine with me, following the 'when in doubt, keep it simple' design maxim.

  • We might want to add the name of the file to the Copyright statement, e.g.:

//-------------------------------------------------
// File: Cytoscape.java
// Copyright (c) 2006  Cytoscape Consortium.
// ...
//-------------------------------------------------
  • GaryBader - since the script is automatic, this would be easy. Personally, I don't find this that useful, since my IntelliJ IDE makes this information easy to read, but maybe it is useful in emacs or something.

License_clean-up_RFC (last edited 2009-02-12 01:03:09 by localhost)

Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux