I have encountered a strange issue within my umbrella application structure. When I'm compiling whole project after running mix clean
command, I'm getting following warning message from application_a:
function ApplicationB.ModuleName.function_name/0 is undefined (module
ApplicationB.ModuleName is not available)
lib/file_name.ex:13`
The thing is that the module is there, ApplicationB.ModuleName.function_name/0
is defined and it's public. When I'm running the project from umbrella level in the interactive shell, everything works fine, I can call the function manually and it works as expected.
I've been trying to do the research and as far as I can see the function of ApplicationB should be available for ApplicationA as both are within the same umbrella and there is no need to add them into deps list. If the function is defined in my /lib folder of application_b, it should be available to the rest of applications.
Does anyone have an idea how to get rid of the warning, and what is more important - explain it? :)