[ 
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)

Reply via email to