Skip to content

Dev guide: Contributor Guidelines

John Sichi edited this page Jun 15, 2020 · 3 revisions

Checkin Rules

The command "mvn install" must run through with no errors and no warnings. Regardless of whether the build seems to work from your IDE, mvn is the final criterion for a good checkin. This target will build all library code and tests, run through all tests, run javadoc, and build an archive. The build doesn't stop on javadoc warnings, so please scan the output carefully.

The build is set up to turn on all lint warnings for all packages. Some code has explicit @SuppressWarnings annotations to disable the warnings for specific lines of code. If you are using Eclipse, verify that your changes do not cause any unsuppressed warnings for a full build. New code really shouldn't be adding any new warnings unless you are working on an existing class which was already failing lint, so try to avoid adding new SuppressWarnings annotations except where actually necessary.

Unit Tests

All code submitted needs to be accompanied by working JUnit tests. See "Unit testing" for details.

Javadoc and comments

All classes and methods should be properly documented. See "How to write documentation" for details.

Coding and Style Conventions

All classes must follow our standardized Coding and Style Conventions

Deprecation policy

JGraphT maintains a one-version-backwards compatibility. For details, see our Deprecation Policy

Clone this wiki locally