Spring Cleaning Step 1: Spotbugs Integration

Hello Guys,
I’ve had the idea to improve the code quality this spring so we can iron out problems and start implementing features on an even more solid base soon.

For this, I’ve worked on an integration of “SpotBugs”. This tool will analyze .class files and find common problems such as infinite loops, (guaranteed) Nullpointers, resource leaks and style problems such as unused variables.

I wrote a more detailed introduction at the readme here.

In short: The Plugin integrates into our Github Actions pipeline and will annotate pull requests and commits with potential problems.

If you want to look into what issues we currently (could) have (keep in mind that some might be on purpose and others are false positives) integrate this PR and execute gradlew spotbugsMain.

Currently I am looking for your opinions on:

  • The naming of the code/repository. On one hand it’s made for our code base, but on the other hand it’s relatively easy to adopt (hence we are uncertain about the jme3 prefix etc)
  • Any opinions towards the project and it’s integration into the engine repo? (The PR shows a few screenshots)

Edit: Currently the bot is broken, yesterday I splitted up the code into a few files and added a config, which is why some code is unreferenced yet.

11 Likes

Thanks for this work. I look forward to trying it on the Engine and perhaps also on Minie.