Tim O'Brien wrote:
Gamma.java specifically mentioned that is was based on "Numerical
Recipes in C" which is not available under a license compatible with the
ASL. All code currently in [math] which depends on Gamma.java has been
removed. If it can be shown that this code does not violate the
copyright maintained by NR, then I'll *gladly* and *quickly* reverse
this action. This isn't meant to discourage contribution of any individual.


http://www.nr.com/com/info-copyright.html - Information pertaining to NR
copyright.  http://www.nr.com/infotop.html - Restrictions on "commercial
use"

Here are some proposed guidelines for [math] to help us avoid this
situation in the future:

1. Patches must be accompanied by a clear reference to a "source" - if
code has been "ported" from another language, clearly state the source
of the original implementation. If the "expression" of a given
algorithm is derivative, please note the original source (textbook,
paper, etc.).


2. References to source materials covered by restrictive proprietary
licenses should be avoided.

+1 I have adding these to a new subsection called 'Licensing and copyright' under Guidlines in the developer.xml patch that I posted earlier today and have now submitted here:


http://issues.apache.org/bugzilla/show_bug.cgi?id=20404

The full text of the original plus the new section now reads:

Guidelines

Developers are asked to comply with the following development guidelines. Code that does not comply with the guidelines including the word must will not be committed. Our aim will be to fix all of the exceptions to the " should " guidelines prior to a release.

Coding Style

Commons-math follows Code Conventions for the Java Programming Language .<hypertext link> As part of the maven build process, style checking is performed using the checkStyle plugin, using the properties specified in checkStyle.properties . Committed code should generate no checkStyle errors.

Documentation

* Committed code must include full javadoc.
* All component contracts must be fully specified in the javadoc class, interface or method comments, including specification of acceptable ranges of values, exceptions or special return values.
* References to definitions for all mathematical terms used in component documentation must be provided, preferably as HTML links.
* Implementations should use standard algorithms and references to algorithm descriptions should be provided, preferably as HTML links.


Unit Tests

* Committed code must include unit tests.
* Unit tests should provide full path coverage.
* Unit tests should verify all boundary conditions specified in interface contracts, including verification that exceptions are thrown or special values (e.g. Double.NaN, Double.Infinity) are returned as expected.


Licensing and copyright

* All new source file submissions must include the Apache Software License in a comment that begins the file
* All contributions must comply with the terms of the Apache Contributor License Agreement (CLA) <hypertext link>
* Patches must be accompanied by a clear reference to a "source" - if code has been "ported" from another language, clearly state the source of the original implementation. If the "expression" of a given algorithm is derivative, please note the original source (textbook, paper, etc.).
* References to source materials covered by restrictive proprietary licenses should be avoided.




IMHO, commons-math should not be currently concerned with porting existing code or utilities - we're looking to create a simple, compact package which provides basic functionality not available in the core J2SE distribution. This package should also look to provide a few differentiators - (tight integration with beanutils, collections, digester, betwixt).

I agree here as well.




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to