From 0d916984d202420d87c44fc3e51a04c69322f8c6 Mon Sep 17 00:00:00 2001 From: sphaso Date: Mon, 2 Mar 2026 09:54:02 +0100 Subject: [PATCH] fix: dialyzer deprecated property and stricter bind spec --- lib/noether/either.ex | 5 +++-- mix.exs | 1 - 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/noether/either.ex b/lib/noether/either.ex index 65df52f..84d6b3a 100644 --- a/lib/noether/either.ex +++ b/lib/noether/either.ex @@ -6,6 +6,7 @@ defmodule Noether.Either do @type either :: {:ok, any()} | {:error, any()} @type fun0 :: (-> any()) @type fun1 :: (any() -> any()) + @type fune :: (any() -> either()) @doc """ Given an `{:ok, value}` and a function, it applies the function on the `value` returning `{:ok, f.(value)}`. @@ -96,7 +97,7 @@ defmodule Noether.Either do iex> bind({:error, 1}, fn _ -> {:ok, 45} end) {:error, 1} """ - @spec bind(either(), fun1()) :: either() + @spec bind(either(), fune()) :: either() def bind({:ok, a}, f) when is_function(f, 1), do: f.(a) def bind(a = {:error, _}, _), do: a @@ -114,7 +115,7 @@ defmodule Noether.Either do iex> flat_map({:error, 1}, fn _ -> {:ok, 45} end) {:error, 1} """ - @spec flat_map(either(), fun1()) :: either() + @spec flat_map(either(), fune()) :: either() defdelegate flat_map(either, f), to: __MODULE__, as: :bind @doc """ diff --git a/mix.exs b/mix.exs index 349b3ff..412737e 100644 --- a/mix.exs +++ b/mix.exs @@ -8,7 +8,6 @@ defmodule Noether.MixProject do elixir: "~> 1.13", start_permanent: Mix.env() == :prod, aliases: aliases(), - dialyzer: [plt_add_deps: :transitive], deps: deps(), package: package(), description: "Algebra utilities for Elixir",