Skip to content

fix(adobemedia): write resolved dependency versions into POM and re-include in publish#741

Merged
denischilik merged 1 commit into
mainfrom
fix/adobemedia-3-pom-versions
Jul 23, 2026
Merged

fix(adobemedia): write resolved dependency versions into POM and re-include in publish#741
denischilik merged 1 commit into
mainfrom
fix/adobemedia-3-pom-versions

Conversation

@denischilik

Copy link
Copy Markdown
Contributor

Background

adobemedia-3 resolves its Adobe Experience Platform extensions through the com.adobe.marketing.mobile:sdk-bom (declared with a version range), so the individual extensions (core, analytics, media, userprofile, lifecycle, identity, signal) are declared without explicit versions — the BOM supplies them at build time.

The generated Maven POM therefore listed those dependencies with an empty <version>. Maven Central rejects version-less dependencies (Dependency version information is missing for dependency: com.adobe.marketing.mobile:core, …), and because Central Portal deployments are atomic, that single failure blocked the entire kits bundle. As a stopgap, #739 excluded adobemedia-3 from the 6.0.0 publish.

What changed

  • kits/adobemedia/adobemedia-3/build.gradle — add a versionMapping block (scoped to this module only) that maps each published dependency to the version resolved on the releaseCompileClasspath / releaseRuntimeClasspath. The published POM now carries concrete versions while build.gradle keeps the readable sdk-bom range (auto-tracking 3.x, parity with the iOS SPM .upToNextMajor(from: "3.0.0")).
  • settings-kits.gradle, kits/matrix.json, settings-kit-examples.gradle — reverse the chore: exclude adobemedia-3 from 6.0 publish and enable manual publish trigger #739 exclusion so the kit is built, tested, and published again.

No VERSION change here — the fix ships in the next release bump (Release – Draft), so the full kits bundle re-publishes at a fresh version with adobemedia-3 included.

Validation

Generated the POM locally and confirmed every dependency now has a concrete version:

sdk-bom     -> 3.20.0 (import)
core        -> 3.8.0
analytics   -> 3.0.2
media       -> 3.1.2
userprofile -> 3.0.1
lifecycle   -> 3.0.2
identity    -> 3.0.2
signal      -> 3.0.1

./gradlew -c settings-kits.gradle :kits:android-adobemedia:adobemedia-3:generatePomFileForMavenPublication -PVERSION=6.0.0 → no version-less <dependency> entries remain.

Test plan

  • CI: build-kits matrix runs :kits:android-adobemedia:adobemedia-3:testRelease green.
  • Next release publishes com.mparticle:adobemedia-3 to Maven Central (POM validation passes).

…nclude in publish

adobemedia-3 resolves its Adobe extensions through the sdk-bom, so they were
declared without explicit versions and the generated POM listed them with an
empty <version>. Maven Central rejects version-less dependencies, which blocked
the whole kits bundle, so #739 excluded the kit from the 6.0.0 publish.

Add a versionMapping block (scoped to this module) that maps each dependency to
the version resolved on the release classpaths, so the published POM carries
concrete versions while the build.gradle keeps the sdk-bom range. Re-include the
kit in settings-kits.gradle, kits/matrix.json, and settings-kit-examples.gradle
so it ships again in the next release.
@denischilik
denischilik requested a review from a team as a code owner July 23, 2026 13:25
@cursor

cursor Bot commented Jul 23, 2026

Copy link
Copy Markdown

PR Summary

Cursor Bugbot is generating a summary for commit 6120f1e. Configure here.

@sonarqubecloud

Copy link
Copy Markdown

@denischilik
denischilik merged commit eb2b4c8 into main Jul 23, 2026
81 of 83 checks passed
@denischilik
denischilik deleted the fix/adobemedia-3-pom-versions branch July 23, 2026 15:13
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