by clemens (08.12.2021)

Dependencies in the main mix.exs file in umbrella projects are not included in relases

tl;dr

If you’ve got a dependency that one of your apps in your umbrella project depends on, do not put it in the main mix.exs file at the base of the umbrella project. It will not be included in relases in that case.

E.g. for a recent project I’ve included the logger_file_backend in one of our projects. I did include it as a dependency in the main mix.exs file, however after bundling and installing the release, I got an error that the package is not available. So simply put it into the mix.exs file of the app that actually needs the dependency.

The only dependencies that are fine in the main mix.exs file are such that are only required for testing or development, like the clipboard package.