Skip to content

Publish the report HTML as a JVM-target resource JAR#59

Merged
mlopatkin merged 2 commits into
mainfrom
ml/refactor-cc-report-consumption
Jun 11, 2026
Merged

Publish the report HTML as a JVM-target resource JAR#59
mlopatkin merged 2 commits into
mainfrom
ml/refactor-cc-report-consumption

Conversation

@mlopatkin

@mlopatkin mlopatkin commented Jun 11, 2026

Copy link
Copy Markdown
Member

Add a jvm() target to the multiplatform build and pack the assembled report HTML into its resources.
The standard jvmJar replaces the hand-rolled jar task and the custom DocsType consumable variant, so the artifact is consumable as an ordinary java-runtime library via the KMP-generated jvm variant.

Switch publishing to the standard KMP publications (root + jvm). The JS target is only a build input -- its webpack bundle is inlined into the HTML -- so it is not published.

This is a preliminary step to eliminate multiple sources of truth for the serialized forms of the data. This proved to
be problematic for people working on the report when they make changes in one place and forget to update the other side.

To align with KMP, project.version now derives from the configuration-cache-report.version property instead of the latter being set on the publication directly.

The corresponding gradle/gradle change is gradle/gradle#38183

Place the HTML at org/gradle/internal/configuration/problems/ inside the
JAR — the path where the consumer (configuration-problems-base in
gradle/gradle) loads it via CommonReport::class.java.getResource. The
consumer no longer needs to repack the JAR into its own resources tree;
it can include the JAR's contents as-is.
Add a jvm() target to the multiplatform build and pack the assembled
report HTML into its resources.
The standard jvmJar replaces the hand-rolled jar task and the custom
DocsType consumable variant, so the artifact is consumable as an
ordinary java-runtime library via the KMP-generated jvm variant.

Switch publishing to the standard KMP publications (root + jvm). The JS
target is only a build input -- its webpack bundle is inlined into the
HTML -- so it is not published. project.version now derives from the
configuration-cache-report.version property.
@mlopatkin
mlopatkin force-pushed the ml/refactor-cc-report-consumption branch from 6567d8f to 3b06bb9 Compare June 11, 2026 10:48
@mlopatkin
mlopatkin marked this pull request as ready for review June 11, 2026 10:49
@mlopatkin
mlopatkin requested a review from a team as a code owner June 11, 2026 10:49
@mlopatkin
mlopatkin requested review from a team, abstratt, asodja and eskatos and removed request for a team June 11, 2026 10:49
@mlopatkin
mlopatkin merged commit 4fd41a7 into main Jun 11, 2026
3 checks passed
@mlopatkin
mlopatkin deleted the ml/refactor-cc-report-consumption branch June 11, 2026 14:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants