Skip to content
Compare
Choose a tag to compare
@philss philss released this 22 Sep 21:10
· 11 commits to main since this release
8b9e060

Added

  • Add support for the :variant option. This is a way to build alternative versions
    for the same target. The idea is to build for different dependencies, or with different
    features.

    This feature is compatible with RustlerPrecompiled since version 0.7.
    See: https://github.com/philss/rustler_precompiled/releases/tag/v0.7.0

  • Add the :cargo-args option. It enables the users to pass arbitrary flags
    to the cargo build command (this may be cross build sometimes).

  • Support the RUSTFLAGS environment variable. It pass down options to the
    Rust compiler.

    Normally this env var is not needed, since it's possible to configure the
    same flags by configuring the .cargo/config.toml file in your project.

    Be aware that you need to set this env var before using this GitHub Action.
    It is also required to configure the Cross.toml file to read this env var.
    See the guide
    for details

  • Add two env vars to make easier to debug:

    • RUSTLER_PRECOMPILED_DEBUG_MODE: sets the compilation profile to "debug" instead
      of the default "release".
    • DRY_RUN: avoid to run the build command, and instead print what would be executed.
  • Support Rustler NIF version selection by cargo features.

    This makes the selection of the NIF version work for projects using Rustler
    above version 0.29. The RUSTLER_NIF_VERSION is deprecated since that version,
    and was removed in the v0.30 of Rustler.

    The build script is going to detect which cargo features the project has declared
    that are related to NIF versions. It is going to take the same naming used by
    Rustler - e.g. nif_version_2_15. If the project has declared any "version features",
    the build script is going to activate the correct version based on the :nif-version
    input of the GitHub Action.

    See the update from Rustler: https://github.com/rusterlium/rustler/blob/master/UPGRADE.md#028---029
    And also the RustlerPrecompiled guide: https://hexdocs.pm/rustler_precompiled/precompilation_guide.html#additional-configuration-before-build

Pull requests

  • Support Rustler's NIF version selection using features by @philss in #4
  • Support building with a variant name by @philss in #5

Full Changelog: v1.0.1...v1.1.0