Version 4

    So, you've made the life changing decision to get involved with HornetQ, you've submitted a patch or two and have now been given commit rights. Congratulations!


    There are a few things you need to know about how we do commits, code style, running tests etc.


    Checking out the source


    Check out the source from SVN as described HornetQ Source Location


    Code style


    In the root of the distribution are project files for eclipse and IntelliJ - these have the HornetQ code style built in - make sure you're using the right style!


    Also see HornetQ code style




    Any bug you fix, or new functionality must have corresponding test(s) that validate the fix or functionality works as expected.


    Do not add tests in the tests/jms-tests are - these are legacy JMS tests which we will phase out.


    All tests should go in the tests/src subtree.


    Integration tests need to go in subpackages of org.hornetq.tests.integration and unit tests need to go in subpackages of org.hornetq.tests/unit


    Running tests


    The test suite must be run before each commit.


    Execute the following target:


    ant dev-tests


    Committing code


    Once the test suite has run through all green, so you know you haven't broken anything, you can commit.


    Only commit code that you have changed for your task. E.g. don't do random cosmetic reformatting of unrelated classes in your commit.


    The SVN commit comment should contain the URL to the JIRA task, along with a comment summarising the commit.


    Development communication policy


    Familarise yourself with the Development communication policy


    HornetQ is a commuity project and we want to keep all technical discussions as open as possible.