Repository navigation
build: Assemble dist zips from a local Maven repo layout - #6467
Merged
Merged
Conversation
Craft expects Maven file names in each dist dir, e.g. <artifactId>-<version>-javadoc.jar. We used to copy build outputs and rename them to match, so the rules broke whenever a plugin changed its output names. The vanniktech maven-publish 0.30.0 -> 0.37.0 bump (#6412) added the version to the KMP javadoc jars, so sentry-compose-<version>-javadoc.jar was missing and the 8.63.0 publish failed. Now every module also publishes to build/distMaven and the dist zips copy from its Maven layout, where file names are fixed by Maven itself. Only the craft-specific names are renamed (pom-default.xml, -release.aar). The zip contents are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
romtsn
marked this pull request as ready for review
November 5, 2026 09:13
romtsn
requested review from
markushi and
runningcode
and removed request for
a team
November 5, 2026 09:13
📲 Install BuildsAndroid
|
runningcode
approved these changes
Nov 5, 2026
runningcode
left a comment
Contributor
There was a problem hiding this comment.
Nice! Looks like less code and less renames.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📜 Description
The dist zips that craft publishes are now built from a local Maven repo layout instead of from renamed build outputs.
Each module also publishes to
build/distMaven, anddistZipcopies frombuild/distMaven/io/sentry/<artifactId>/<version>/. File names there follow the Maven standard (<artifactId>-<version>[-<classifier>].<ext>), which is what craft looks for, so it no longer matters how plugins name their outputs. The only renames left are the ones craft needs:.pom→pom-default.xmland.aar→<artifactId>-release.aar.kotlin-tooling-metadata.jsonkeeps its old name too. The checksum files the repo writes are left out of the zips, since craft's deploy step generates its own on upload.The zip contents are unchanged. The
publishToMavenLocaldependency stays, so~/.m2is still filled as before.💡 Motivation and Context
The 8.63.0 publish failed with
sentry-compose-8.63.0-javadoc.jar does not exist(publish run). The vanniktech maven-publish bump from 0.30.0 to 0.37.0 (#6412) added the version to the KMP javadoc jars (sentry-compose-kotlinMultiplatform-<version>-javadoc.jar,sentry-compose-androidRelease-<version>-javadoc.jar). The rename rules inPublication.ktno longer matched, so the root and-androidcompose zips had no javadoc jar under the name craft expects. This change follows the approach sentry-kotlin-multiplatform already uses for its core library.💚 How did you test it?
Ran
./gradlew distZipbefore and after the change: the file listings of all 51 zips are identical, apart from stale old-version jars the previousbuild/libscopy picked up locally. The compose zips now containsentry-compose{,-android,-desktop}-<version>-javadoc.jarwith real content.:sentry-compose:distZipalso builds with the configuration cache on.📝 Checklist
sendDefaultPIIis enabled.🔮 Next steps
Cut a new release once this is merged.
🤖 Generated with Claude Code
#skip-changelog