[
https://issues.apache.org/jira/browse/FINERACT-822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17124243#comment-17124243
]
Michael Vorburger commented on FINERACT-822:
--------------------------------------------
Just copy/pasting something we discussed in
https://github.com/apache/fineract/pull/961 just so that it's easier to find
this again later in the future:
We discussing making all bug patterns which by default are configured to just
be a Warning an Error in EP's config.
Strictly speaking in Fineract's current build configuration this happens
anyway, since compiler warning are set to errors with "-Werror", it will still
fail if picked up. However, here are 2 reasons why I suggest we still anyway
always do it:
1. It's probably "clearer" to future new developers to the project if they see
Errors from EP, instead of just Warnings, which then cause the build to anyway
fail - just because, by "convention", Warnings normally don't cause build
failure, in Java. (I'm assuming that Error Prone's reporting issues errors
instead of warnings, once you explicitly list everything.)
2. How much do you want to bet that at some point, in future years, when people
who are currently active on his project have moved on, and others maintain it,
someone disagrees with making all warnings errors, and removes that again? (Or
someone may do that in a private in-house fork.) They would then also loose all
Error Prone validation which by default is just a warning, but that you are
working hard on fixing and enforcing. If you make all EP checks errors, then
it's more "durable" - independent of the -Werror thing.
> Enable and enforce (!) Google's Error Prone quality check tool in Fineract
> --------------------------------------------------------------------------
>
> Key: FINERACT-822
> URL: https://issues.apache.org/jira/browse/FINERACT-822
> Project: Apache Fineract
> Issue Type: Improvement
> Reporter: Michael Vorburger
> Assignee: Percy Ashu
> Priority: Major
> Fix For: 1.4.0
>
>
> As tracked in overall FINERACT-712, similarly to SpotBugs (FINERACT-702), PMD
> and Checkstyle (FINERACT-821), I would suggest that we also enable and
> enforce Error Prone quality check tool in Fineract to catch any obvious
> programming error bugs.
> Error Prone is extensively used inside Google private code base, has been
> open sourced, and is meanwhile popular in many open source projects as well
> (see other Apache projects' use). More information is available on
> [https://errorprone.info|https://errorprone.info/] and
> [https://github.com/google/error-prone].
> I have spent a fair amount of time in a past life on a project (which I'm
> currently no longer actively invoved in) to refine a what I believe to be
> "good" Error Prone rule set, we could reuse this for Fineract (it's EPL
> licensed, so copy/pasting it is perfectly fine), see
> https://github.com/opendaylight/infrautils/blob/master/common/parent/pom.xml
--
This message was sent by Atlassian Jira
(v8.3.4#803005)