pejrich
Getting a weird error message in Mix i've not see before. "Because your app depends on XXX empty"
I was updating my Rustler from 0.25 to 0.27, and when I ran mix deps.get, I got the following message which i’ve not seen before. Usually when there’s a dependency mismatch, it’ll state which packages are clashing and over what version they disagree. But this doesn’t have any of that info. I tried removing my mix.lock, and runnning mix deps.clean. If I remove rustler entirely from my mix.exs then it’ll run, and if my rustler is 0.25 it’ll run, but when I set it to 0.27 it fails.
Mix.ex
...
{:rustler, "~> 0.27.0"},
...
$ mix deps.get
Resolving Hex dependencies...
Resolution completed in 0.03s
Because your app depends on rustler empty which doesn't match any versions, version solving failed.
** (Mix) Hex dependency resolution failed
I can’t add the bold and code formatting, but the error message appears like this: “Because your app depends on rustler empty which doesn’t match any versions, version solving failed.”
EDIT:
It also happens if I try to change {:httpoison, "~> 1.0"}, to {:httpoison, "~> 2.0"},
Because your app depends on httpoison empty which doesn’t match any versions, version solving failed.
Also, your app here is verbatim, not something i’ve replaced to generalize it.
Most Liked
LostKobrakai
karolsluszniak
pejrich
If I add override: true to both rustler and httpoison it does finally work, but i’m still unsure why it was caused or how to fix it properly
Nicd
This was seen on IRC yesterday also, pasting the relevant logs:
10:47:42 <Nicd> I was suspicious of that error message but it’s literally what you said
https://usercontent.irccloud-cdn.com/file/G9t4aRmi/Screenshot%202023-03-09%20at%2010.47.17.png
10:48:13 <josevalim> Nicd: this is a bug in the hex resolver, i will investigate
10:54:04 <josevalim> here is a minimal example that reproduces the phoenix empty bug:
10:54:07 <josevalim> Snippet | IRCCloud
10:55:58 <josevalim> serafeim: i know what is happening. the scrivener_html does not allow phoenix 1.7. so there is an error but the error message is unclear
So I guess there are conflicting package requirements (some other package doesn’t allow that version of rustler or httpoison), but the error message is bugged.
BradS2S
I’m guessing one of your transitive dependencies is asking for a version of a direct dependency that Mix sees as having no middle ground.
For the masochistic there’s always: mix deps.tree







