The following is a set of guidelines for contributing to openTCS.
This project is maintained by the openTCS development team of Fraunhofer IML. A public mirror of the development repository is available at GitHub.
You are very welcome to contribute to this project when you find a bug, want to suggest an improvement, or have an idea for a useful feature. For this, please always create an issue and/or a pull request, and follow our style guides as described below.
We document changes in the changelog.
It is required to create an issue if you want to integrate a bugfix, improvement, or feature. Briefly and clearly describe the purpose of your contribution in the corresponding issue, using the appropriate template for it.
The openTCS project uses the SemVer for versioning. The release versions are tagged with their respective version.
For consistent formatting of the project's code, Spotless is used.
After making changes, make sure you run ./gradlew spotlessApply
to re-format the code.
- New or changed non-trivial code should be covered by tests.
- JUnit test classes and methods should omit the
public
modifier unless there is a technical reason for adding it.
To build the project from NetBeans, register a Java platform named "JDK 21 - openTCS" (without the quotes) within NetBeans. This JDK will be used by NetBeans for running the build process.
The NetBeans settings contained in this project include formatting rules. Please apply them before submitting contributions to keep the formatting consistent.