Resolves the bsdkrun binary. First match wins; the result is cached in
:persistent_term. Resolution order:
- an explicit override set via
set_binary_path/1, - the
$BSDKRUN_BINenvironment variable, bsdkrunon$PATH,- in-repo dev builds relative to this SDK:
<repo>/target/release/bsdkrunthen<repo>/target/debug/bsdkrun.
If none exist, resolve!/0 raises a Bsdkrun.Error of kind
:binary_not_found listing everything it looked at.
Summary
Functions
Reset cached discovery state and any override (mainly for tests).
Resolve (and cache) the path to the bsdkrun binary, or raise.
Force the SDK to use a specific bsdkrun binary, bypassing discovery. Handy
in tests or when running against a locally built debug binary.
Functions
@spec reset_cache() :: :ok
Reset cached discovery state and any override (mainly for tests).
@spec resolve!() :: String.t()
Resolve (and cache) the path to the bsdkrun binary, or raise.
@spec set_binary_path(String.t()) :: :ok
Force the SDK to use a specific bsdkrun binary, bypassing discovery. Handy
in tests or when running against a locally built debug binary.