Here are my old deps:
{:absinthe_plug, "~> 1.4"},
{:absinthe_relay, "~> 1.4"},
And the new ones:
{:absinthe, "~> 1.5"},
{:absinthe_plug, "~> 1.5"},
{:absinthe_relay, "~> 1.5"},
With the old deps, I could do something like this
variables = %{something: nil}
...
|> get("/graphql", query: query, variables: variables)
And in my resolver
def some_resolver(%{something: nil}, _), do: handle_nil
def some_resolver(%{something: something}, _), do: handle_something(something)
A lot of tests failed when I upgraded, and I noticed that now something
is ""
instead of nil
. Is there are a reason that nil
is now converting to ""
? It’s quite a large project and I’m concerned the tests don’t adequately cover all the cases, and I’m worried there’s a lot of places checking for is_nil(val)
that now need to check for not in [nil, ""]
. Is there a way to force absinthe to treat nil
as nil
, and not ""
?
Thanks!