Skip to content

Latest commit

 

History

History
25 lines (22 loc) · 1.68 KB

CONTRIBUTING.md

File metadata and controls

25 lines (22 loc) · 1.68 KB

Modules

BioJava is composed of several submodules, one per broad bioinformatics topic. biojava-core contains general core methods that are shared across different modules.

Contributing

  • Fork the repo
  • On your fork branch off master (Ignore all other branches)
  • Submit pull request from your branch to the biojava/biojava master branch
  • If you are submitting a fix related to an existing issue be sure to include '#' in the commit message to make processing your pull request easier.

Coding

  • Please use the provided formatting xml file in /development/eclipse (intellij users can import the formatter file)
  • Please add javadocs following standard java conventions. Javadocs are a must for public facing API methods.
  • Add @author tags to class javadocs.
  • Be sure to add @since tags whenever adding a new public-facing API method/field/class.
  • Removed unused imports and variables or any other obvious compiler warning.
  • Please handle exceptions carefully. Follow the "Throw early, catch late" philosophy, see #111.
  • Add tutorial docs to the biojava-tutorial repository

Testing

  • We use junit 4 for testing. Some older tests are in junit 3, but all new ones should be 4.
  • Unit tests should cover reasonably the code. The tests should go into the src/test/main/ directory of the corresponding biojava module.
  • We store heavier and longer running tests into the biojava-integrationtest module
  • Try minimising use of external resources in tests. We haven't been very good at that in the past.