absinthe_plug icon indicating copy to clipboard operation
absinthe_plug copied to clipboard

Ensure module is loaded when fetching default_url

Open martosaur opened this issue 1 year ago • 0 comments

We've run into an issue recently when we were getting ** (RuntimeError) function for default_url: {Elixir.MyModule, graphiql_default_url} is not exported with arity 1 or 0 error. Both the module and the function did exist. After investigation, it turned out that for some reason by the time absinthe_plug was calling function_exported? the module was not loaded and function_exported? does not do this automatically.

So I believe it's worth loading the module explicitly. I also added a test which is a bit clunky, so if you know a better way to create an unloaded module please let me know!

martosaur avatar Dec 09 '22 18:12 martosaur