prepare Maven Central-compatible Kotlin publication#269
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
b002ef4 to
f6fc2a0
Compare
f6fc2a0 to
922152c
Compare
922152c to
f25cb78
Compare
f25cb78 to
381260e
Compare
381260e to
ca6726c
Compare
ca6726c to
65cc36f
Compare
65cc36f to
1dfb4e9
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. 🎉 ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
@Grimald please take a look when you have a chance 🙏 |
|
@Guardiola31337 PR looks good and is merge-ready.
But I'm not a codeowner =(( |
1dfb4e9 to
9c6b748
Compare
|
Thanks for the review. Addressed the two hardening items that make sense in this PR:
Kept actual Maven Central upload out of the release workflow for now because Central credentials/signing are not available in GitHub secrets yet. Leaving plugin-version centralization as a follow-up since |
9c6b748 to
beb4b9f
Compare
|
@Takaros999 fixed the conflicts, ready for another round of 👀 |
Description
bindingsartifact as a Maven Central-compatible Maven publication with coordinatescom.worldcoin:idkitpublishToMavenLocalminSdkfrom 26 to 23 so WLD AndroiddevDebugcan consume the artifactChanges
.github/workflows/publish-kotlin.ymlunchanged relative tomain; it still publishes Kotlin releases to GitHub Packages:bindings:publishtargeting GitHub Packages by defaultreleasepublication-Pidkit.publish.mavenCentral=true-javadoc.jarartifact so the publication shape is compatible with Maven Central without running Android/Kotlin Javadoc generationverifyKotlinNativeLibrariesand wire it into Maven publish tasks so publishing fails before artifact creation if expected native.sofiles are missingmavenLocal(), checks the generated artifact files/POM/AAR native libraries, and dry-runs the Maven Central task graph without credentialsmavenLocal(), and explicit local Maven Central publish commandsPublishing behavior
Default release behavior remains GitHub Packages:
Without
-Pidkit.publish.mavenCentral=true, Gradle configures GitHub Packages and Maven local tasks, but does not configure Maven Central upload or signing tasks.Local Maven publish:
Manual Maven Central publish from a developer machine with Central Portal credentials and signing configured in
~/.gradle/gradle.properties:To upload and release in one command:
Testing
./gradlew :app:assembleDebugfromkotlin/Examples/IDKitSampleApp./kotlin/Examples/IDKitSampleApp/gradlew -p kotlin :bindings:tasks --allexposes GitHub Packages and local Maven publish tasks, not Central/signing tasks./kotlin/Examples/IDKitSampleApp/gradlew -p kotlin -Pidkit.publish.mavenCentral=true :bindings:tasks --allexposespublishToMavenCentral,publishAndReleaseToMavenCentral, andsignMavenPublication./kotlin/Examples/IDKitSampleApp/gradlew -p kotlin :bindings:publish --dry-runtargetspublishMavenPublicationToGitHubPackagesRepositoryand includesverifyKotlinNativeLibraries./kotlin/Examples/IDKitSampleApp/gradlew -p kotlin :bindings:publishToMavenLocal --dry-run./kotlin/Examples/IDKitSampleApp/gradlew -p kotlin -Pidkit.publish.mavenCentral=true :bindings:publishToMavenCentral --dry-run./kotlin/Examples/IDKitSampleApp/gradlew -p kotlin :bindings:verifyKotlinNativeLibrariesfails locally when generatedjniLibsare absent, with the expected missing-library messagegit diff --checkNot included yet