Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added information about using eclipse formatter.

...

  • 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 two exceptions:
    • Indent two (2) spaces per level, not four (4).
    • Line length limit is 100 chars, instead of 80 chars.
    • An eclipse formatter is provided in the dev-support folder - this can be used with both Eclipse and Intellij. Please consider importing this before editing the source code.
      • For eclipse: 
        • Go to Preferences -> Java -> Code Style -> Formatter; Import eclipse-styles.xml; Apply.
        • In addition update save actions: Java - > Editor -> Save Actions; Check the following: Perform the following actions on save; Format Source Code; Format edited lines.
      • For Intellij:
        • Go to Settings -> Editor -> Code Style -> Java -> Scheme; Click manage; Import eclipse-styles.xml; Apply.
  • Contributions should not introduce new Checkstyle violations.
    • Check for new Checkstyle violations by running mvn checkstyle:checkstyle-aggregate, and then inspect the results in the target/site directory.
    • If you use Eclipse you should install the eclipse-cs Checkstyle plugin. This plugin highlights violations in your code and is also able to automatically correct some types of violations.
  • Contributions should pass existing unit tests.
  • New unit tests should be provided to demonstrate bugs and fixes. JUnit is our test framework:
    • You should create test classes for junit4, whose class name must start with a 'Test' prefix.
    • You can run all the unit tests with the command mvn test, or you can run a specific unit test with the command mvn test -Dtest=<class name without package prefix> (for example: mvn test -Dtest=TestFileSystem).
    • After uploading your patch, it might worthwhile to check if your new test has been executed in the precommit job.

...