In order to release a new version to Hex.pm we first need to:
- Write the changes in the
CHANGELOG.md
file - Create a release branch named
release/<version>
- Update the
README.md
,CHANGELOG.md
,mix.exs
, andCargo.toml
with the new version - Commit with message
Release <version>
- Merge PR to
main
- Tag main with
git tag <version>
- Push tag with
git push origin <version>
- Wait for the CI to build all release files
- Run
mix rustler_precompiled.download MeeseeksHtml5ever.Native --all --print
- Copy the output of the mix task and add to the release notes
- Run
MIX_ENV=docs mix docs
- Run
MIX_ENV=docs mix hex.publish
and make sure the checksum file is present in the list of files to be published.
It's important to ensure that we publish the checksum file with the package because otherwise the users won't be able to use the lib with precompiled files. They will need to always enforce compilation.