- Java 17+ (required by Gradle 8.2 and the build toolchain)
- A GPG key set up locally and made available to the Gradle signing plugin as per https://docs.gradle.org/current/userguide/signing_plugin.html#sec:signatory_credentials
- A Central Portal token from https://central.sonatype.com (go to Account → Generate User Token)
- Checkout latest master.
- Make sure you are on a clean master and everything is pushed.
- Run
./gradlew clean testand make sure everything passes. - Update the version in
gradle.propertiesand thebaselineVersionin binary_compatibility.gradle to the version being released. Commit, push via PR, and tag the merge commit. - Run
./gradlew publishAggregationToCentralPortal -PSONATYPE_NEXUS_USERNAME=<token-username> -PSONATYPE_NEXUS_PASSWORD=<token-password>. - Log in to https://central.sonatype.com and verify the deployment. Since
publishingTypeisUSER_MANAGED, you need to manually publish the deployment from the portal UI. - Add a description of the new release at https://github.com/spotify/mobius/releases.
- Once the new set of artifacts is available on https://repo.maven.apache.org/maven2/com/spotify/mobius/,
update the
baselineVersionproperty in binary_compatibility.gradle to the version that was just released. - Update the version in
gradle.propertiesin the master branch to the next version.