diff --git a/lib/sbom.ex b/lib/sbom.ex index 19a27ea..4be2058 100644 --- a/lib/sbom.ex +++ b/lib/sbom.ex @@ -18,7 +18,7 @@ defmodule SBoM do Mix.Project.get!() {deps, not_ok} = - Mix.Dep.load_on_environment(env: environment) + load_env_deps(env: environment) |> Enum.split_with(&ok?/1) case not_ok do @@ -35,6 +35,17 @@ defmodule SBoM do end end + if Version.match?(System.version(), ">= 1.16.0") do + defp load_env_deps(options) do + Mix.Dep.Converger.converge(options) + end + else + defp load_env_deps(options) do + # Removed in Elixir >= 1.16.0 + Mix.Dep.load_on_environment(options) + end + end + defp ok?(dep) do Mix.Dep.ok?(dep) || Mix.Dep.compilable?(dep) end