Contribute: Difference between revisions

Jump to navigation Jump to search
44 bytes added ,  24 August 2021
m
Siko1056 moved page Contribution guidelines to Contribute
m (Siko1056 moved page Contribution guidelines to Contribute)
 
(4 intermediate revisions by 2 users not shown)
Line 3: Line 3:
* Bugs and patches should be submitted to Octave's [https://savannah.gnu.org/bug/?func=additem&group=octave bug] and [https://savannah.gnu.org/patch/?func=additem&group=octave patch] trackers respectively.
* Bugs and patches should be submitted to Octave's [https://savannah.gnu.org/bug/?func=additem&group=octave bug] and [https://savannah.gnu.org/patch/?func=additem&group=octave patch] trackers respectively.


* The best way to contribute patches is to create a Mercurial changeset. See the [[Mercurial]] page for instructions.
* The best way to contribute patches is to create a Mercurial changeset.
** Learn how to use [[Mercurial]].
** [[Commit message guidelines]].


=== Contributor Agreement ===
=== Contributor Agreement ===
Line 11: Line 13:
* Your contribution will be released under the terms of the GNU GPL, version 3 or any later version.
* Your contribution will be released under the terms of the GNU GPL, version 3 or any later version.


* Your contribution must be an independent work or derived from code that may be released under the terms of the GPL.  Under no circumstances may it be based on code from Matlab or other non-free code that you may have access to view.
* Your contribution must be an independent work or derived from code that may be released under the terms of the GPL.  '''Under no circumstances may it be based on code from Matlab or other non-free code that you may have access to view'''.


* In the Octave source code, all files are marked with a copyright statement that says "Copyright (C) YYYY-YYYY The Octave Project Developers".  This copyright notice is used to ease the burden of maintaining copyright information in the source files, not to diminish or remove credit for contributions.  Detailed information about what changes have been made and who has made them is maintained in the revision history of the Octave sources.
* In the Octave source code, all files are marked with a copyright statement that says "Copyright (C) YYYY-YYYY The Octave Project Developers".  This copyright notice is used to ease the burden of maintaining copyright information in the source files, not to diminish or remove credit for contributions.  Detailed information about what changes have been made and who has made them is maintained in the revision history of the Octave sources.
Line 25: Line 27:
Apart from C++ and Octave language (m-files), Octave's sources include
Apart from C++ and Octave language (m-files), Octave's sources include
files written in C, Fortran, M4, Perl, Unix shell, AWK, Texinfo, and
files written in C, Fortran, M4, Perl, Unix shell, AWK, Texinfo, and
@TeX{}.  There are not many rules to follow when using these other
TeX.  There are not many rules to follow when using these other
languages; some of them are summarized below.  In any case, the golden
languages; some of them are summarized below.  In any case, the golden
rule is: if you modify a source file, try to follow any conventions you
rule is: if you modify a source file, try to follow any conventions you
Line 45: Line 47:


If you modify a Fortran file, you should stay within Fortran 77 with
If you modify a Fortran file, you should stay within Fortran 77 with
common extensions like {{codeline|END DO}}.  Currently, we want all sources to
common extensions like {{codeline|END DO}}.  Currently, we want ensure that
be compilable with the f2c and g77 compilers, without special flags if
it is possible to compile all sources with the gfortran compiler, without
possible.  This usually means that non-legacy compilers also accept the
special flags if possible.  This usually means that non-legacy compilers
sources.
also accept the sources.


=== M4 guide ===
=== M4 guide ===

Navigation menu