After upgrading an umbrella project from Elixir 1.8.2
to 1.13.4
I am getting numerous warnings for dependencies that are missing in projects. One example is:
...
==> parser
Compiling 75 files (.ex)
warning: Timely.as/2 defined in application :timely is used by the current application but the current application does not depend on :timely. To fix this, you must do one of:
1. If :timely is part of Erlang/Elixir, you must include it under :extra_applications inside "def application" in your mix.exs
2. If :timely is a dependency, make sure it is listed under "def deps" in your mix.exs
3. In case you don't want to add a requirement to :timely, you may optionally skip this warning by adding [xref: [exclude: [Timely]]] to your "def project" in mix.exs
Invalid call found at 5 locations:
...
The warning seems is very specific and provides obvious strategies on how to fix. So I checked out the dependencies in the parser
app and the timely
dependency specification was missing. Thus, I added it and recompiled:
defp deps do
[
{:shared, in_umbrella: true},
{:timely, "~> 2.0"},
]
end
Unfortunately, I still get the same warning. I tried running mix deps.get
just in case it needed to update my mix.exs
file in order to get rid of the warning. However, this also did not work.
Any help is appreciated!