This patch copies the FindBugs configuration in pom.xml from the
reporting section to the build section so findbugs can be used as part
of the build process (by using the maven goal findbugs:check).
It then adds this goal to the Travis CI build so that FindBugs
becomes part of the CI, and new patches would be prevented from
introducing new FindBugs errors.
FastDatePrinter#appendFullDigits uses a switch case without break
statements.
SF_SWITCH_NO_DEFAULT unfortunately cannot recognize this pattern, and
leave us with no choice but to suppress it.
FastDateParser#simpleQuote uses a switch case that actually has a
default branch in it, but doesn't use break statements.
SF_SWITCH_NO_DEFAULT unfortunately cannot recognize this pattern, and
leave us with no choice but to suppress it.
Exclude ES_COMPARING_PARAMETER_STRING_WITH_EQ FindBugs warnings from
StringUtils methods compare(String, String, boolean) and
compareIgnoreCase(String, String, boolean).
The usages of the == operator seem to be intentional optimizations
similar to the usage in indexOfDifference. If this reasoning is ever
overruled, this suppression should be removed.
Since commons-parent version 41, generation of the clirr report for the site has to be explicitly enabled by adding a "src\site\resources\profile.clirr" file.
This annotation was with "LANG-1316: Deprecate classes/methods moved to commons-text" and removed by mistake while reverting "LANG-1269: Wrong name or result of StringUtils#getJaroWinklerDistance".
* org.apache.commons.lang3.text.translate - every class
* org.apache.commons.lang3.text - every class other than WordUtils
* StringEscapeUtils - whole class
* StringUtils: getLevenshteinDistance, getFuzzyDistance and getJaroWinklerSimilarity methods
* ObjectUtils: identityToString(final StrBuilder builder, final Object object) method (StrBuilder was moved to commons-text)
This patch enforces the code style defined by the checkstyle checks
to the test files too.
In the cases where it would just add robustness and not improve the
code's readability and maintainability (specifically - the javadoc
checks), those checks are explicitly suppressed.