This issue tracks code quality improvements for the Prometheus Java Client library. Work through these items incrementally.
Remaining Items
Add SpotBugs (Medium Priority)
Refactor Large Classes (Lower Priority)
Document Configuration Classes (Lower Priority)
Consolidate Servlet Exporter Duplication (Lower Priority)
Add Mutation Testing (Lower Priority)
Completed Items
This issue tracks code quality improvements for the Prometheus Java Client library. Work through these items incrementally.
Remaining Items
Add SpotBugs (Medium Priority)
spotbugs-maven-plugintopom.xmlRefactor Large Classes (Lower Priority)
prometheus-metrics-core/src/main/java/.../Histogram.java(978 lines) - consider extracting native histogram logicDocument Configuration Classes (Lower Priority)
PrometheusPropertiesLoader- add JavaDocExporterPropertiesand related classes - add JavaDocExporterOpenTelemetryProperties- add JavaDoc (noted in TODO)Consolidate Servlet Exporter Duplication (Lower Priority)
servlet-jakartaandservlet-javaxintoexporter-commonAdd Mutation Testing (Lower Priority)
pitest-maven) for critical modulesprometheus-metrics-coreandprometheus-metrics-modelCompleted Items
AbstractDropwizardExportsbase class with generics. Reduced both modules by ~30%.catch (Exception e)with specific exception types in 6 locations.