Umbra v0.1.0 Umbra.Behaviour.Tolerant View Source

This is the most tolerant GenServer implementation.

It creates fallback for all handlers returning {:noreply, state} which doesn't have any effect.

GenServer.handle_call/3 returning :noreply will timeout the client, to avoid that, you can define your own handle_call implementation as follow:

defcall _, client: false, state: state, do: {:reply, state, state}