samoa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From smarthi <...@git.apache.org>
Subject [GitHub] incubator-samoa pull request: SAMOA-13: Update "How to contribute"...
Date Wed, 04 Feb 2015 21:04:35 GMT
Github user smarthi commented on a diff in the pull request:

    https://github.com/apache/incubator-samoa/pull/6#discussion_r24119311
  
    --- Diff: CONTRIBUTING.md ---
    @@ -1,18 +1,73 @@
     How to contribute?
     =================
     
    -User contribution is essential to keep moving the project forward.
    +The best way to submit a contribution to Apache SAMOA is through a GitHub pull request.
     
    -# Getting Started
    +Here is a guide to contribute to Apache SAMOA. 
     
    -1. [Fork the repository](https://help.github.com/articles/fork-a-repo) on GitHub
    +## Where is the source code?
     
    -2. Sign the [Contributor License Agreement] (http://www.clahub.com/agreements/gdfm/samoa)
    +SAMOA source code is maintained through **git**. The Apache SAMOA [git repository](git://git.apache.org/incubator-samoa.git)
is the source of truth. Only SAMOA committers can push updates to this repo.
     
    -3. Create a feature branch ```git checkout -b branch_name```
    +The Apache git repo is [mirrored to github](https://github.com/apache/incubator-samoa)
for convenience. This mirror is read-only.
     
    -4. Make your changes (please make commits that are logical units)
    +For writing contributions we suggest you start by [forking](https://help.github.com/articles/fork-a-repo)
the [GitHub Apache SAMOA](https://github.com/apache/incubator-samoa) repository.
     
    -5. Build and run tests
    +## How do I build the software?
     
    -6. Submit a [pull request](https://help.github.com/articles/using-pull-requests)
    +We use [**maven**](http://maven.apache.org/): `mvn clean install` 
    +
    +Note that this only builds the core artifacts of SAMOA (instances, API, local engine
and test framework). 
    +
    +To build everything, including the integrations with various stream processing platforms
use the "all" profile: `mvn clean install -Pall`
    +
    +You may also specify platform profiles individually: `-Pstorm`, `-Ps4`, `-Psamza`, `-Pthreads`.
    +
    +
    +
    +## What rules should I follow in a code contribution?
    +
    +
    +### Coding convention
    +
    +* All public classes and methods should have informative Javadoc comments.
    +* Do not use @author tags.
    +* Code should be formatted according to Sun's conventions, with the following exceptions:
    +	* **Use spaces for indentation, not tabs**
    +	* **Indent two (2) spaces per level, not four (4).**
    +  	* **Line length limit is 120 chars, instead of 80 chars.**
    +* SAMOA includes an eclipse-format.xml formatting template that eclipse or intellij idea
users might find convenient.
    +
    +### Tests
    +
    +* Contributions should pass existing unit tests (`mvn test`).
    +* New unit tests should be provided to demonstrate bugs and fixes. JUnit 4.1 is our test
framework
    +
    --- End diff --
    
    We could just say the latest version of Junit is our test framework instead of calling
out a specific version


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message