We love contributions!
- Create a github account if you haven't already, and fork the project
- Create a new branch, using a branch name that gives an idea of what the changes are about
- One topic per commit; a number of small commits are better than one big one
- Do not introduce whitespace changes! (Windows users:
git config --global core.autocrlf true
) - Encouraged but not enforced: each commit should stand alone, in the sense that the code should compile and run at that point.
- Do not introduce whitespace changes! (Windows users:
- One major topic per pull request. Commits that fix small things (typos, formatting) are perfectly acceptable in a PR fixing a bug or adding a feature.
- Tests are good. Tests are required unless you're fixing something simple or that was obviously broken.
- Do not change EXPRESS schema definition without reference to an upstream change.
- Make your changes and push them to your GitHub repo
- Once your branch is pushed, submit a pull request.
- enable github option on each PR 'Allow edits from maintainers', refer to github help if necessary
- We'll look at the PR and either merge (possibly after rebase) or add feedback.
- If there isn't any activity within several days send a message to the mailing list -
scl-dev
ATgroups.google.com
.
- If there isn't any activity within several days send a message to the mailing list -
SC's source has been reformatted with astyle. When making changes, try to match the current formatting. The main points are:
- compact (java-style) brackets:
if( a == 3 ) {
c = 5;
function( a, b );
} else {
somefunc();
}
- indents are 4 spaces
- no tab characters
- line endings are LF (linux), not CRLF (windows)
- brackets around single-line conditionals
- spaces inside parentheses and around operators
- return type on the same line as the function name, unless that's too long
- doxygen-style comments (see http://www.stack.nl/~dimitri/doxygen/docblocks.html)
If in doubt about a large patch, run astyle with the config file misc/astyle.cfg. Download astyle from http://sourceforge.net/projects/astyle/files/astyle/