When I run dialyxir on my project, using mix, it reports unknown function or unknown type errors for what appear to be every single invocation of a function or type from one of my dependencies.
My mix.exs section is now just:
dialyzer: [
plt_add_deps: :app_tree
],
But I have tried every incantation that I can find in the forum or help or SO. I tried changing :app_tree to {true, :transitive, :project, :apps_direct} and probably a few others, and none made any difference, except whether to tell me that the option was deprecated. I tried adding extra_applications to the plt_add_deps field. I tried adding either or both of deps or extra_applications to plt_add_apps, and still got nowhere. After checking some similar topics to this post I’ve now also tried removing the plt_add_apps completely.
I’m using dialyxir 1.1.0 with erlang 24.0.6 and elixir 1.12.3 using asdf. Per the similar posts I also took a shot at changing my tool version to elixir 1.12.3-otp-24.
Is there a way in this version combination to get Dialyxir not to give me 8800+ errors because it can’t find the functions and types of my dependencies?
(On my Elixir 1.7.4 branch I had a similar but slightly less annoying problem of 700-800 errors because all of them associated to line 0 of the include file. I live in hope that any fix provided might work there too.)
For now I’ve added a line to my ignore file to ignore function warnings for each of my dependencies, and about 8 more lines to ignore types I have in specs.