Skip to content

Commit 90e4ef8

Browse files
authored
Merge pull request #543 from rusterlium/apply-current-nif-for-tests
Apply current NIF version for tests and raise default
2 parents 4ea76ec + 6f6670d commit 90e4ef8

File tree

4 files changed

+21
-4
lines changed

4 files changed

+21
-4
lines changed

rustler/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ readme = "../README.md"
99
edition = "2018"
1010

1111
[features]
12-
default = ["derive", "nif_version_2_14"]
12+
default = ["derive", "nif_version_2_15"]
1313
derive = ["rustler_codegen"]
1414
alternative_nif_init_name = []
1515
nif_version_2_14 = ["rustler_sys/nif_version_2_14"]

rustler_sys/Cargo.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,7 @@ build = "build.rs"
3535
categories = ["external-ffi-bindings"]
3636

3737
[features]
38-
# Default version: 2.14
39-
default = ["nif_version_2_14"]
38+
default = ["nif_version_2_15"]
4039
nif_version_2_14 = []
4140
nif_version_2_15 = ["nif_version_2_14"]
4241
nif_version_2_16 = ["nif_version_2_15"]

rustler_tests/lib/rustler_test.ex

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,22 @@ defmodule NifNotLoadedError do
22
defexception message: "nif not loaded"
33
end
44

5+
defmodule RustlerTest.Helper do
6+
def nif_feature_from_running_version() do
7+
[major, minor | _] =
8+
:erlang.system_info(:nif_version)
9+
|> to_string
10+
|> String.split(".")
11+
12+
"nif_version_#{major}_#{minor}"
13+
end
14+
end
15+
516
defmodule RustlerTest do
617
use Rustler,
718
otp_app: :rustler_test,
8-
crate: :rustler_test
19+
crate: :rustler_test,
20+
features: [RustlerTest.Helper.nif_feature_from_running_version()]
921

1022
defp err, do: :erlang.nif_error(:nif_not_loaded)
1123

rustler_tests/native/rustler_test/Cargo.toml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ crate-type = ["cdylib"]
1313
name = "hello_rust"
1414
path = "src/main.rs"
1515

16+
[features]
17+
nif_version_2_14 = ["rustler/nif_version_2_14"]
18+
nif_version_2_15 = ["nif_version_2_14", "rustler/nif_version_2_15"]
19+
nif_version_2_16 = ["nif_version_2_15", "rustler/nif_version_2_16"]
20+
nif_version_2_17 = ["nif_version_2_16", "rustler/nif_version_2_17"]
21+
1622
[dependencies]
1723
lazy_static = "1.4"
1824
rustler = { path = "../../../rustler" }

0 commit comments

Comments
 (0)