What micrometer-metrics/micrometer shipped
Written by FoxPlug from the repository's own releases; not affiliated with Micrometer. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/micrometer-metrics/micrometer; Micrometer did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of October 26, 2026
What shipped
- Stopped HdrHistogram types from appearing in the public signature hierarchy of TimeWindowPercentileHistogram, since HdrHistogram is only an implementation dependency of micrometer-core. Pull request #8118
- Added distinct labeling for transitive dependency upgrades so release notes can tell them apart from other Dependabot updates. Pull request #8119
- Fixed the Dependabot relabel job so root Gradle dependency upgrades are identified correctly when a target branch is configured. Pull request #8125
- Gave gh an explicit repository context in the Dependabot relabel job, which runs without a checkout. Pull request #8122
- Upgraded the cimg/openjdk build images for JDK 25, 21 and 17 to their latest patch versions. Pull request #8126
Why it matters
The HdrHistogram change matters most to anyone using TimeWindowPercentileHistogram, because those types no longer sit in the supertype hierarchy of a public class when HdrHistogram is absent from the compile classpath. The remaining changes mainly tidy the dependency update and release note tooling that maintainers rely on.
Changelog entry
- Keep HdrHistogram types out of the TimeWindowPercentileHistogram public signature hierarchy Pull request #8118
- Distinguish transitive dependency upgrades in Dependabot labeling for release notes Pull request #8119
- Correctly identify root Gradle dependency upgrades in the Dependabot relabel job Pull request #8125
- Provide repository context to gh in the Dependabot relabel job Pull request #8122
- Upgrade cimg/openjdk images to 25.0.5, 21.0.13 and 17.0.21 Pull request #8126
This week: HdrHistogram types removed from the TimeWindowPercentileHistogram signature hierarchy, Dependabot relabeling fixed for Gradle upgrades and branch-based configs, and build images bumped for JDK 25, 21 and 17.
This week in Micrometer: TimeWindowPercentileHistogram no longer exposes HdrHistogram types in its supertype hierarchy, which matters because HdrHistogram is only an implementation dependency of micrometer-core. The Dependabot relabel workflow was also corrected to identify root Gradle dependency upgrades when a target branch is set, and it now passes repository context to gh without a checkout. Transitive dependency upgrades get their own labels for cleaner release notes, and the cimg/openjdk build images were upgraded across JDK 25, 21 and 17.
Week of October 19, 2026
What shipped
- Release candidate 1.18.0-RC1 was published with dependency upgrades including cloudwatch, spectator-reg-atlas, google-auth-library-oauth2-http and google-cloud-monitoring. Release
- Version 1.17.2 was released with bug fixes for HTTP Basic authentication password whitespace, a missing reflection hint for getProcessCpuTime, JMS session proxy return types and Kotlin interoperability for CaffeineCacheMetrics. Release
- Version 1.16.8 was released with the same set of bug fixes, including HTTP Basic authentication password whitespace and the getProcessCpuTime reflection hint. Release
- AtlasMeterRegistry now publishes FunctionTimer count and totalTime as rates instead of raw gauge measurements. Pull request #8108
- ValueClassIdentity from Error Prone is now treated as an error in the build, with violations in test code fixed. Pull request #8116
Why it matters
This week brought a release candidate for the next minor line and maintenance releases for two older lines, so users can pick up bug fixes for authentication, CPU time reflection and cache metrics interoperability. The Atlas change also corrects how FunctionTimer values are published, so that data is reported as per-second rates rather than gauges.
Changelog entry
- Publish 1.18.0-RC1 release candidate with dependency upgrades. Release
- Release 1.17.2 with bug fixes. Release
- Release 1.16.8 with bug fixes. Release
- Preserve whitespace in HTTP Basic authentication passwords in 1.17.2. Release
- Add missing reflection hint for getProcessCpuTime in 1.17.2. Release
- Proxy JMS session results using the method's declared return type in 1.17.2. Release
- Restore Kotlin interoperability for CaffeineCacheMetrics in 1.17.2. Release
- Publish Atlas FunctionTimer statistics as rates. Pull request #8108
- Enable ValueClassIdentity from Error Prone as an error in the build. Pull request #8116
- Fix ValueClassIdentity violations in test code. Pull request #8116
Micrometer 1.18.0-RC1 is out, alongside 1.17.2 and 1.16.8 with fixes for Basic auth password whitespace, getProcessCpuTime reflection, JMS proxy return types and CaffeineCacheMetrics Kotlin interop. Atlas FunctionTimer statistics now publish as rates.
Micrometer 1.18.0-RC1 is available for early testing, with dependency upgrades across AWS CloudWatch, Spectator Atlas, Google auth and Google Cloud Monitoring. The 1.17.2 and 1.16.8 maintenance releases ship bug fixes for whitespace in HTTP Basic authentication passwords, a missing reflection hint for getProcessCpuTime, JMS session results proxied using the method's declared return type, and Kotlin interoperability for CaffeineCacheMetrics. AtlasMeterRegistry now publishes FunctionTimer count and totalTime as rates rather than gauge measurements.
Week of October 12, 2026
What shipped
- HTTP Basic authentication now preserves whitespace in passwords, so a password like " secret " is sent as written and a single-space password is no longer emptied. Pull request #8015
- The StatsD UDP server no longer logs a warning for every packet when the StatsD server is down on Linux (epoll), where each packet produced a PortUnreachableException and a repeated post-termination warning. Pull request #8066
- The OSGi test now runs against the current Prometheus client instead of micrometer-registry-prometheus-simpleclient, with two of the three blockers described in August fixed here. Pull request #8034
- Compiler and Error Prone warnings on main were resolved after the 1.17.x forward-merge, including removing an ineffective deprecated annotation on the AppOptics package declaration and avoiding deprecated imports. Pull request #8065
- Compiler warnings, deprecations and Error Prone issues on 1.17.x were resolved after the 1.16.x forward-merge, including an explanatory comment in an empty catch block in JvmGcMetrics. Pull request #8055
Why it matters
This week fixed a credential bug in HTTP Basic authentication where passwords were trimmed before encoding, which could change the credential and break authentication. It also stops the StatsD UDP server from logging a warning for every packet when the server is down on Linux, and moves the OSGi test back to the current Prometheus client. The remaining changes clear compiler warnings and deprecations on main and 1.17.x.
Changelog entry
- Preserve whitespace in HTTP Basic authentication passwords instead of trimming them before encoding the Authorization header. Pull request #8015
- Avoid logging a warning for every packet when the StatsD UDP server is down on Linux (epoll). Pull request #8066
- Run the OSGi test against the current Prometheus client. Pull request #8034
- Resolve remaining compiler and Error Prone warnings and deprecations on main. Pull request #8065
- Resolve compiler warnings, deprecations and Error Prone issues on 1.17.x. Pull request #8055
This week: HTTP Basic auth no longer trims passwords, so whitespace is preserved. The StatsD UDP server stops logging a warning per packet when the server is down on Linux. The OSGi test runs against the current Prometheus client again, and compiler warnings are cleared on main a
This week's changes to Micrometer: HTTP Basic authentication now preserves whitespace in passwords. withBasicAuthentication previously trimmed the password before encoding the Authorization header, so " secret " was sent as "secret" and a single-space password became empty. The StatsD UDP server no longer logs a warning for every packet when the server is down on Linux (epoll), where each packet raised a PortUnreachableException and an unsubscribed inbound side produced a repeated warning. The OSGi test runs against the current Prometheus client again, with two of the three blockers fixed here. Compiler and Error Prone warnings were also resolved on main and 1.17.x after the forward-merges.
Week of October 5, 2026
What shipped
- Removed CI warning suppression so local and CI builds enforce warnings the same way. Pull request #8013
- Resolved compiler deprecation and unchecked warnings across modules, including SimpleObservation generics and parameterized ObservationConvention in tests. Pull request #8012
- Updated ModifiedClassPathClassLoader to the latest upstream version, replacing deprecated DefaultServiceLocator with maven-resolver-supplier. Pull request #8038
- Cleaned up Error Prone warnings in test code, handling FutureReturnValueIgnored, EmptyCatch blocks, dead variables and mock invocation issues. Pull request #8011
- Fixed Error Prone bug patterns in production code, adding default branches to enum switches and suppressing JdkObsolete and FutureReturnValueIgnored where needed. Pull request #8006
Why it matters
This week the project moved toward a clean build output: warnings that were hidden in CI are now visible, and deprecation and Error Prone warnings across production and test code were resolved. People who build Micrometer locally and in CI now get the same feedback, so issues surface earlier instead of only in one environment. The class loader alignment with upstream also removes deprecated resolution code.
Changelog entry
- Remove CI warning suppression so local and CI builds enforce warnings identically. Pull request #8013
- Resolve compiler deprecation and unchecked warnings across modules. Pull request #8012
- Update ModifiedClassPathClassLoader to the latest upstream version. Pull request #8038
- Clean up Error Prone warnings in test code. Pull request #8011
- Fix Error Prone bug patterns in production code. Pull request #8006
Clean build output work landed this week: CI no longer suppresses warnings, deprecation and unchecked warnings are resolved across modules, and Error Prone issues in production and test code are fixed.
This week the project continued its clean build output initiative. CI warning suppression was removed so local and CI builds enforce warnings the same way. Compiler deprecation and unchecked warnings were resolved across modules, including SimpleObservation generics and ObservationConvention parameterization in tests. Error Prone warnings in test code were cleaned up, and bug patterns in production code were fixed with default branches for non-exhaustive enum switches and targeted suppressions. ModifiedClassPathClassLoader was also updated to the latest upstream version.
Week of September 28, 2026
What shipped
- Error Prone checker disabled MissingSummary and InlineMeSuggester patterns to reduce build output noise from intentional public API designs. Pull request #8004
- Build script output reduced by consolidating version resolution logging from 44 prints (one per subproject) to a single root project print. Pull request #8003
- Documentation clarified that custom MeterTag value expression resolvers are application-provided, not Micrometer classes, with example resolver renamed to CustomValueExpressionResolver. Pull request #7480
- License header checking consolidated with new directives: spotless-license-check:ignore skips checking for entire files, spotless-license-check:off skips for remaining file content. Pull request #7993
- Documentation typos fixed. Pull request #8000
Why it matters
This week focused on build quality and clarity. The team reduced build noise and tooling warnings while improving documentation accuracy, making the development experience cleaner for contributors and users working with custom instrumentation patterns.
Changelog entry
- Error Prone: disabled MissingSummary and InlineMeSuggester to reduce warnings from intentional public API patterns Pull request #8004
- Build: consolidated version resolution output from 44 subproject logs to single root project log Pull request #8003
- Docs: clarified that custom MeterTag value expression resolvers are application-provided, renamed example to CustomValueExpressionResolver Pull request #7480
- Build: added spotless-license-check:ignore and spotless-license-check:off directives for license header control Pull request #7993
- Docs: fixed typos in documentation Pull request #8000
Micrometer reduced build output noise, clarified custom resolver documentation, and consolidated license header checking directives for a smoother development experience.
Micrometer addressed build quality this week with multiple improvements: reduced tooling noise by consolidating version logging, configured Error Prone to suppress intentional API patterns, clarified that custom MeterTag resolvers are application-provided, and introduced new license header directives for better file control. These changes create a cleaner development experience for contributors and users.
Week of September 14, 2026
What shipped
- JMS instrumentation now accepts custom observation conventions to allow customizing observation names, contextual names, and key values. Pull request #7924
- New gauges for JVM memory pool usage after garbage collection aligned with OpenTelemetry semantic conventions. Pull request #7296
- Meter convention types refactored to use per-convention specific interfaces instead of group interfaces, improving Spring Boot auto-configuration. Pull request #7369
- Active observation LongTaskTimer is now opt-in in DefaultMeterObservationHandler via a new builder pattern. Pull request #7944
- TomcatMetrics now matches HTTP/2 GlobalRequestProcessor MBeans when HTTP/2 is enabled on connectors. Pull request #7547
- Wavefront module removed following its prior deprecation. Pull request #7967
- AppOptics module deprecated for removal due to AppOptics end of life. Pull request #7964
- Reproducible builds configured for the project. Pull request #7962
Why it matters
This week brings improvements to custom observation configuration for JMS, expanded JVM metrics aligned with OpenTelemetry standards, and refactored meter conventions that simplify integration with Spring Boot. Cleanup of deprecated modules and build reproducibility also advance the project's quality.
Changelog entry
- Allow configuring custom observation conventions for JMS instrumentation Pull request #7924
- Add gauges for JVM memory pool usage after garbage collection Pull request #7296
- Introduce per-convention meter convention types and builder pattern Pull request #7369
- Make active LongTaskTimer opt-in in DefaultMeterObservationHandler Pull request #7944
- Match HTTP/2 GlobalRequestProcessor MBean in TomcatMetrics Pull request #7547
- Remove deprecated Wavefront module Pull request #7967
- Deprecate AppOptics module for removal Pull request #7964
- Setup reproducible builds Pull request #7962
Micrometer now supports custom JMS observation conventions, adds JVM memory-after-GC metrics, refactors meter conventions for better Spring Boot integration, and makes active LongTaskTimer opt-in.
This week's Micrometer updates focus on improved instrumentation customization and standards alignment. JMS instrumentation gains custom observation convention support, new gauges measure JVM memory pool usage after garbage collection per OpenTelemetry specs, and meter conventions are refactored to use per-convention interfaces. Active observation LongTaskTimer becomes opt-in by default, TomcatMetrics gains HTTP/2 support, and deprecated modules are cleaned up.