Release Checklist
This checklist tracks what should be true before publishing outside the local Ivy repository.
Current Scope
For now the project is prepared for local Ivy publication only.
Required Before External Publication
- Add Maven publication (
maven-publish) if publishing to Maven repositories. - Add signing for Maven Central or any repository that requires signed artifacts.
- Add complete POM metadata: project name, description, URL, license, developers, and SCM coordinates.
- Keep Java 21 as the public baseline and document it for consumers.
- Decide whether
variantsartifact APIs are published as experimental or split into a later module. - Add Gradle plugin marker artifact generation if
plugins { id(...) version(...) }must work. - Add a published-consumption smoke test that resolves artifacts from a temporary local repository.
Local Ivy Release Steps
- Ensure the Mercurial working tree is clean.
- Run:
bash
./gradlew clean check javadoc jar sourcesJar javadocJar --rerun-tasks
- Optionally run:
bash
./gradlew check --configuration-cache
- Publish locally:
bash
./gradlew publish
- Optionally smoke-publish into
/tmpfirst:
bash
./gradlew -Duser.home=/tmp/gradle-common-ivy-smoke \
:common:publishIvyPublicationToIvyRepository \
:variants:publishIvyPublicationToIvyRepository \
--rerun-tasks
- Verify
${user.home}/ivy-repo/org.implab.gradlecontainscommonandvariantsfor the expected version.
API Status
commonis intended to be a shared utility library.variantscore and source APIs are pre-1.0 and should be treated as evolving.variantArtifactsis experimental and may change more aggressively.
