This information is only useful for maintainers of this library, not for its users.
To release a new version of this library:
-
Make your changes (duh!).
-
Update the version in
mix.exs
and update the changelog file. -
Commit.
-
Release a new tag:
git tag -a vx.x.x -m "Release vx.x.x"
-
Push the tag to GitHub:
git push --tags
. -
Wait for CI to build all NIFs (with the new version).
-
Clean Rustler caches. If you don't do this, you can get issues with wrong versions trying to be downloaded. To clean caches, find where RustlerPrecompiled stores caches and wipe the directory. I usually do:
NIMBLELZ4_FORCE_BUILD=true mix run -e 'IO.puts(:filename.basedir(:user_cache, "rustler_precompiled") <> "/precompiled_nifs")' | xargs rm -vr
to wipe that directory.
-
After wiping the caches, run this to get a local checksum file:
mix rustler_precompiled.download NimbleLZ4 --only-local
-
Run the "download" to download a file that must be included in the Hex package:
mix rustler_precompiled.download NimbleLZ4 --all --print
-
Release the package on Hex:
mix hex.publish
.