docs/updating.md
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 mainFirst 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-SNAPSHOTgit commit and push to main.
Finally, merge all of these changes back to snapshot:
git checkout snapshot && git pull
git merge main
git push