This doc is mostly for maintainers.
All new features should be uploaded as PRs against the main
branch.
Once merged into main
, they will be automatically merged into the snapshot
branch.
We publish snapshot versions of Accompanist, which depend on a SNAPSHOT
versions of Jetpack Compose. These are built from the snapshot
branch.
As mentioned above, updating to a new Compose snapshot is done by submitting a new PR against the snapshot
branch:
git checkout snapshot && git pull # Create branch for PR git checkout -b update_snapshot
Now edit the project to depend on the new Compose SNAPSHOT version:
Edit /gradle/libs.versions.toml
:
Under [versions]
:
composesnapshot
property to be the snapshot numbercompose
property is correctMake sure the project builds and test pass:
./gradlew check
Now git commit
the changes and push to GitHub.
Finally create a PR (with the base branch as snapshot
) and send for review.
Once the next Jetpack Compose version is out, we're ready to push a new release:
snapshot
into main
First we merge the snapshot
branch into main
:
git checkout snapshot && git pull git checkout main && git pull # Create branch for PR git checkout -b main_snapshot_merge # Merge in the snapshot branch git merge snapshot
Edit /gradle/libs.versions.toml
:
Under [versions]
:
composesnapshot
property to a single character (usually -
). This disables the snapshot repository.compose
property to match the new release (i.e. 1.0.0-beta06
)Make sure the project builds and test pass:
./gradlew check
Commit the changes.
Edit gradle.properties:
VERSION_NAME
property and remove the -SNAPSHOT
suffix.Commit the changes, using the commit message containing the new version name.
Push the branch to GitHub and create a PR against the main
branch, and send for review. Once approved and merged, it will be automatically deployed to Maven Central.
Once the above PR has been approved and merged, we need to create the GitHub release:
At this point the release is published. This will trigger the docs action to run, which will auto-deploy a new version of the website.
The current release is now finished, but we need to update the version for the next development version:
Edit gradle.properties:
VERSION_NAME
property, by increasing the version number, and adding the -SNAPSHOT
suffix.0.3.0
. Update to 0.3.1-SNAPSHOT
git commit
and push to main
.
Finally, merge all of these changes back to snapshot
:
git checkout snapshot && git pull git merge main git push