feat: track api-diff baseline via Renovate and store diffs in docs/apidiffs by zeitlinger · Pull Request #2174 · prometheus/client_java (original) (raw)

added 2 commits

June 2, 2026 17:30

@zeitlinger

…idiffs

Derive the api-diff baseline from the latest published release instead of a hardcoded version, and commit per-module diffs so API changes are visible in review.

Closes #2170 Signed-off-by: Gregor Zeitlinger gregor.zeitlinger@grafana.com

@zeitlinger

The micrometer and jmx-exporter compatibility tests install local artifacts with -Dmaven.test.skip=true, which skips building the *:test-jar artifacts that the activeByDefault default profiles declare as test dependencies. Leaving the profile active broke dependency resolution (e.g. prometheus-metrics-exposition-textformats:jar:tests), failing on main and on every PR (e.g. #2173).

Deactivate those profiles in the compat install (-P '!default'), the same approach the release task already uses (-P 'release,!default'). Signed-off-by: Gregor Zeitlinger gregor.zeitlinger@grafana.com

@zeitlinger

Match opentelemetry-java's docs/apidiffs layout and format:

jaydeluca

zeitlinger added a commit that referenced this pull request

Jun 3, 2026

@github-actions @zeitlinger

jaydeluca pushed a commit that referenced this pull request

Jun 4, 2026

@zeitlinger @jaydeluca

…idiffs (#2174)

Summary

Fixes the manual-bump drift in the api-diff baseline (#2170) and makes API changes visible in review.

Notes

Validation

Closes #2170

Also fixes a pre-existing compat-test break on main

micrometer-compatibility and jmx-exporter-compatibility fail on main (e.g. #2173), unrelated to this change. The compat harness installs local artifacts with -Dmaven.test.skip=true, which skips building the *:test-jar artifacts that the activeByDefault default profiles declare as test dependencies, breaking resolution (e.g. prometheus-metrics-exposition-textformats:jar:tests).

Fixed by deactivating those profiles in the compat install (-P !default), matching what the release task already does (-P release,!default). Verified locally: full mvnw install -Dmaven.test.skip=true -P !default → BUILD SUCCESS.

Reviewer note: the seed diffs show the full stable surface (expected)

The committed docs/apidiffs/current_vs_latest/*.txt list the entire @StableApi surface as additions, not a small delta. This is the documented bootstrap state from #2168, not a bug:

It self-corrects after the next release ships @StableApi: Renovate bumps the baseline to that release, the bump workflow regenerates current_vs_latest/ as an annotated-vs-annotated (near-empty) diff, and the archived <new>_vs_<old>/ becomes the first real release diff. So the current files are best read as a one-time record of the initial declared stable API surface.


Signed-off-by: Gregor Zeitlinger gregor.zeitlinger@grafana.com Signed-off-by: Jay DeLuca jaydeluca4@gmail.com

jaydeluca pushed a commit that referenced this pull request

Jun 4, 2026

🤖 I have created a release beep boop

1.7.0 (2026-06-03)

Features

Bug Fixes

Performance Improvements

Documentation


[!IMPORTANT] Close and reopen this PR to trigger CI checks.

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Gregor Zeitlinger gregor.zeitlinger@grafana.com Signed-off-by: Jay DeLuca jaydeluca4@gmail.com

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters

[ Show hidden characters]({{ revealButtonHref }})