--- a/metrics-jakarta-servlets/src/main/java/io/dropwizard/metrics5/servlets/MetricsServlet.java +++ b/metrics-jakarta-servlets/src/main/java/io/dropwizard/metrics5/servlets/MetricsServlet.java @@ -188,6 +188,9 @@ public class MetricsServlet extends HttpServlet { return mapper.writer(); } + // Here `value` may be `null`, while `TimeUnit#valueOf` requires a non-`null` argument. + // XXX: Investigate better nullness handling by `IdentityConversion`. + @SuppressWarnings("IdentityConversion") protected TimeUnit parseTimeUnit(String value, TimeUnit defaultValue) { try { return TimeUnit.valueOf(String.valueOf(value).toUpperCase(Locale.US)); --- a/metrics-servlets/src/main/java/io/dropwizard/metrics5/servlets/MetricsServlet.java +++ b/metrics-servlets/src/main/java/io/dropwizard/metrics5/servlets/MetricsServlet.java @@ -188,6 +188,9 @@ public class MetricsServlet extends HttpServlet { return mapper.writer(); } + // Here `value` may be `null`, while `TimeUnit#valueOf` requires a non-`null` argument. + // XXX: Investigate better nullness handling by `IdentityConversion`. + @SuppressWarnings("IdentityConversion") protected TimeUnit parseTimeUnit(String value, TimeUnit defaultValue) { try { return TimeUnit.valueOf(String.valueOf(value).toUpperCase(Locale.US)); --- a/pom.xml +++ b/pom.xml @@ -136,6 +136,27 @@ + + + + com.google.errorprone + error_prone_annotations + ${error-prone.version} + + + com.google.guava + guava + 33.4.0-jre + + + + + + com.google.guava + guava + + + jdk8 @@ -218,7 +239,9 @@ -Xlint:all -XDcompilePolicy=simple - -Xplugin:ErrorProne -XepExcludedPaths:.*/target/generated-sources/.* + + --should-stop=ifError=FLOW + -Xplugin:ErrorProne ${error-prone.configuration-args} -J--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED -J--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED -J--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED @@ -229,12 +252,24 @@ -J--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED -J--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED -J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED + -Xmaxwarns + 1000000 com.google.errorprone error_prone_core - ${errorprone.version} + ${error-prone.version} + + + tech.picnic.error-prone-support + error-prone-contrib + ${error-prone-support.version} + + + tech.picnic.error-prone-support + refaster-runner + ${error-prone-support.version} @@ -364,7 +399,7 @@ org.apache.maven.plugins maven-compiler-plugin - 8 + 11 true true true