Contributing

This plugin is an open source project made possible with the help of users and enthusiasts. To continue to be useful and to evolve, this plugin needs continuing contributions. There are multiple ways where you can help:

  • join the discussions

  • give feedback on ideas

  • report issue

  • test new releases

  • contribute source code to fix issues or add new functionality

  • write documentation

Hacking

Developer setup for hacking on this project isn’t very difficult. The requirements are very small:

  • Java 11 or higher

  • Maven 3

Everything else will be brought in by Maven. This is a typical Maven Java project, nothing special. You should be able to use IntelliJ, Eclipse, or NetBeans without any issue for hacking on the project.

Code formatting

The project doesn’t have a strict policy, but there are some rules provided in using .editorconfig file. Check your IDE for editorconfig support.

The rules are:

  • Use of spaces for indentation.

  • Maven import policy.

Testing

Unit tests are written with Spock. This will be downloaded by Maven and can be run from IntelliJ without any additional setup. Tests are run simply by:

./mvnw clean test

Or any of the other goals which run tests.

Integration tests under src/it are run using maven-invoker-plugin and the runt-its profile. To only run them without excluding unit tests, use:

./mvnw clean verify -DskipTests -Prun-its

To run all tests at once just use ./mvnw clean verify -DskipTests -Prun-its.