-
Run the script
release.sh
with the desired version as a parameter:./release.sh [version]
-
The script will ask you if you want to push the release branch and create a release tag.
-
Ensure
CHANGELOG.md
looks good and is ready to be published. -
Type "yes" to the console if everything is okay. Tag push triggers a GitHub Actions workflow, which publishes the release artifacts to Maven Central and creates a GitHub release.
-
Click the link displayed in the console to create a Pull Request for release branch.
-
Merge the Pull Request as soon as the "Check" workflow succeeds. It is recommended to use fast-forward merge to merge release branches.
To prepare a release manually, follow the steps the script does:
-
Ensure the repository is up to date, and the main branch is checked out.
-
Create the release branch with the name
release/[version]
. -
Update the version in
gradle.properties
andREADME.md
("Usage" section) with the version to be released. -
Update the
CHANGELOG.md
:- Replace
Unreleased
section with the release version - Add a link to the diff between the previous and the new version
- Add a new empty
Unreleased
section on the top
- Replace
-
Commit the changes, create a tag on the latest commit, and push it to the remote repository. The tag should follow the format
v[version]
. -
Create a Pull Request for the release branch and merge it.