- defp check_version(nil), do: :undefined
-
- defp check_version(version) do
- try do
- version = String.replace(version, ~r/\r|\n|\s/, "")
-
- formatted =
- version
- |> String.split(".")
- |> Enum.map(&String.to_integer/1)
- |> Enum.take(2)
-
- with [major, minor] when length(formatted) == 2 <- formatted,
- true <- (major == 22 and minor >= 2) or major > 22 do
- :ok
- else
- false -> {:error, version}
- _ -> :undefined
- end
- rescue
- _ -> :undefined
- catch
- _ -> :undefined
+ defp do_check(nil), do: :undefined
+
+ defp do_check(version) do
+ version = String.replace(version, ~r/\r|\n|\s/, "")
+
+ [major, minor] =
+ version
+ |> String.split(".")
+ |> Enum.map(&String.to_integer/1)
+ |> Enum.take(2)
+
+ if (major == 22 and minor >= 2) or major > 22 do
+ :ok
+ else
+ {:error, version}