Skip to content

Commit 5d7b272

Browse files
cigraingerclaude
andcommitted
fix: make rustler dep unconditionally optional for Hex
Rustler should always be optional: true so Hex shows it as (optional). End users get precompiled NIFs via rustler_precompiled; they don't need Rust installed. Dev/test force_build is now in native.ex via Mix.env(). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 398c800 commit 5d7b272

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

‎lib/dux/native.ex‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,9 @@ defmodule Dux.Native do
1717
x86_64-pc-windows-msvc
1818
),
1919
nif_versions: ["2.16"],
20-
force_build: System.get_env("DUX_BUILD") in ["1", "true"]
20+
force_build:
21+
System.get_env("DUX_BUILD") in ["1", "true"] or
22+
Mix.env() in [:dev, :test]
2123

2224
# Database lifecycle
2325
def db_open, do: :erlang.nif_error(:nif_not_loaded)

‎mix.exs‎

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ defmodule Dux.MixProject do
44
@version "0.1.0"
55
@source_url "https://github.com/elixir-dux/dux"
66

7-
@force_build? System.get_env("DUX_BUILD") in ["1", "true"]
8-
@dev? Mix.env() in [:dev, :test]
97

108
def project do
119
[
@@ -38,7 +36,7 @@ defmodule Dux.MixProject do
3836
defp deps do
3937
[
4038
{:rustler_precompiled, "~> 0.8"},
41-
{:rustler, "~> 0.37.3", optional: not (@dev? or @force_build?)},
39+
{:rustler, "~> 0.37.3", optional: true},
4240
{:nx, "~> 0.9", optional: true},
4341
{:benchee, "~> 1.3", only: [:dev, :test]},
4442
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},

0 commit comments

Comments
 (0)