-
Notifications
You must be signed in to change notification settings - Fork 109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Resolving Hex dependencies... Failed to use X because Y dependency requires specific version ... 🤦♂️ #182
Comments
Ran: mix deps.unlock --all Followed by: mix deps.get Got: Resolving Hex dependencies...
The dependency resolver is taking more than 30 seconds. This typically happens when Hex cannot find a suitable set of dependencies that match your requirements. Here are some suggestions:
1. Do not delete mix.lock. If you want to update some dependencies, do mix deps.update dep1 dep2 dep3
2. Tighten up your dependency requirements to the latest version. Instead of {:my_dep, ">= 1.0.0"}, try {:my_dep, "~> 3.6"} Took a break to refill my water bottle and when I returned to my desk I spent a few mins checking my GH Notifications ... ⏳ |
Had to kill the |
Need a permanent solution to this. 💭 Parking for now but will return to it ASAP. |
Happening again ... auth % mix deps.get
Resolving Hex dependencies...
Failed to use "ecto" (versions 3.3.0 to 3.9.1) because
ecto_sql (version 3.7.2) requires ~> 3.7.0
phoenix_ecto (version 4.4.0) requires ~> 3.3
Failed to use "ecto" (versions 3.7.0 to 3.7.2) because
ecto_sql (version 3.7.2) requires ~> 3.7.0
fields (version 2.10.0) requires ~> 3.8
phoenix_ecto (version 4.4.0) requires ~> 3.3
Failed to use "jason" (version 1.4.0) because
auth_plug (version 1.4.11) requires ~> 1.2
elixir_auth_github (version 1.6.2) requires ~> 1.2
elixir_auth_google (version 1.6.3) requires ~> 1.2
phoenix (version 1.6.14) requires ~> 1.0
phoenix_live_view (version 0.18.2) requires ~> 1.0
postgrex (version 0.16.2) requires ~> 1.0
rbac (version 0.7.2) requires ~> 1.3.0
mix.exs specifies ~> 1.3
** (Mix) Hex dependency resolution failed, change the version requirements
of your dependencies or unlock them (by using mix deps.update or mix deps.unlock).
If you are unable to resolve the conflicts you can
try overriding with {:dependency, "~> 1.0", override: true} Lame. 🤦♂️ |
Downgrading the required version of {:ecto, "~> 3.8"}, To: {:ecto, "~> 3.3"}, And thus avoid compatibility issues! 🤞 |
From bad to much worse! 🤦♂️ n@MBP auth % mix deps.unlock --all
n@MBP auth % mix deps.get
Resolving Hex dependencies...
The dependency resolver is taking more than 30 seconds. This typically happens when Hex cannot find a suitable set of dependencies that match your requirements. Here are some suggestions:
1. Do not delete mix.lock. If you want to update some dependencies, do mix deps.update dep1 dep2 dep3
2. Tighten up your dependency requirements to the latest version. Instead of {:my_dep, ">= 1.0.0"}, try {:my_dep, "~> 3.6"}
Failed to use "ecto" (versions 3.8.0 to 3.9.1) because
ecto_sql (versions 3.7.1 and 3.7.2) requires ~> 3.7.0
phoenix_ecto (version 4.4.0) requires ~> 3.3
Failed to use "jason" (version 1.4.0) because
auth_plug (versions 1.4.14 to 1.4.16) requires ~> 1.3
elixir_auth_github (versions 1.6.1 and 1.6.2) requires ~> 1.2
elixir_auth_google (versions 1.6.2 and 1.6.3) requires ~> 1.2
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.0
phoenix_live_view (versions 0.18.0 to 0.18.2) requires ~> 1.0
postgrex (versions 0.15.13 to 0.16.5) requires ~> 1.0
rbac (version 0.7.0) requires ~> 1.2.2
mix.exs specifies ~> 1.3
Failed to use "jason" (version 1.4.0) because
auth_plug (versions 1.4.14 to 1.4.16) requires ~> 1.3
elixir_auth_github (versions 1.6.1 and 1.6.2) requires ~> 1.2
elixir_auth_google (versions 1.6.2 and 1.6.3) requires ~> 1.2
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.0
phoenix_live_view (versions 0.18.0 to 0.18.2) requires ~> 1.0
postgrex (versions 0.15.13 to 0.16.5) requires ~> 1.0
rbac (versions 0.7.1 and 0.7.2) requires ~> 1.3.0
mix.exs specifies ~> 1.3
Failed to use "plug" (versions 1.10.2 to 1.13.1) because
auth_plug (version 1.4.16) requires ~> 1.13.2
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.10
phoenix_ecto (version 4.4.0) requires ~> 1.9
phoenix_html (version 3.2.0) requires ~> 1.5
plug_cowboy (version 2.5.2) requires ~> 1.7
Failed to use "plug" (versions 1.10.2 to 1.13.2) because
auth_plug (version 1.4.15) requires ~> 1.13.3
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.10
phoenix_ecto (version 4.4.0) requires ~> 1.9
phoenix_html (version 3.2.0) requires ~> 1.5
plug_cowboy (version 2.5.2) requires ~> 1.7
Failed to use "plug" (versions 1.10.2 to 1.13.3) because
auth_plug (version 1.4.14) requires ~> 1.13.4
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.10
phoenix_ecto (version 4.4.0) requires ~> 1.9
phoenix_html (version 3.2.0) requires ~> 1.5
plug_cowboy (version 2.5.2) requires ~> 1.7
Failed to use "plug" (versions 1.13.2 to 1.13.6) because
auth_plug (version 1.4.16) requires ~> 1.13.2
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.10
phoenix_ecto (version 4.4.0) requires ~> 1.9
phoenix_html (version 3.2.0) requires ~> 1.5
ping (version 1.1.0) requires ~> 1.12.1
plug_cowboy (version 2.5.2) requires ~> 1.7
Failed to use "plug" (versions 1.13.3 to 1.13.6) because
auth_plug (version 1.4.15) requires ~> 1.13.3
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.10
phoenix_ecto (version 4.4.0) requires ~> 1.9
phoenix_html (version 3.2.0) requires ~> 1.5
ping (version 1.1.0) requires ~> 1.12.1
plug_cowboy (version 2.5.2) requires ~> 1.7
Failed to use "plug" (versions 1.13.4 to 1.13.6) because
auth_plug (version 1.4.14) requires ~> 1.13.4
phoenix (versions 1.6.5 to 1.6.14) requires ~> 1.10
phoenix_ecto (version 4.4.0) requires ~> 1.9
phoenix_html (version 3.2.0) requires ~> 1.5
ping (version 1.1.0) requires ~> 1.12.1
plug_cowboy (version 2.5.2) requires ~> 1.7
Failed to use "telemetry" (versions 0.4.0 and 0.4.1) because
ecto_sql (versions 3.7.1 and 3.7.2) requires ~> 0.4.0 or ~> 1.0
phoenix (versions 1.6.5 to 1.6.14) requires ~> 0.4 or ~> 1.0
phoenix_live_view (versions 0.18.0 to 0.18.2) requires ~> 0.4.2 or ~> 1.0
plug (versions 1.10.0 and 1.10.1) requires ~> 0.4
telemetry_metrics (version 0.6.1) requires ~> 0.4 or ~> 1.0
Failed to use "telemetry" (versions 0.4.2 and 0.4.3) because
ecto_sql (versions 3.7.1 and 3.7.2) requires ~> 0.4.0 or ~> 1.0
phoenix (versions 1.6.5 to 1.6.14) requires ~> 0.4 or ~> 1.0
phoenix_live_view (versions 0.18.0 to 0.18.2) requires ~> 0.4.2 or ~> 1.0
plug (versions 1.10.0 and 1.10.1) requires ~> 0.4
telemetry_metrics (version 0.6.1) requires ~> 0.4 or ~> 1.0
telemetry_poller (version 1.0.0) requires ~> 1.0 |
We recently had this happen in dwyl/auth_plug#76 and it's happened in the past too. ⏳
It's happening to me in the
auth
project while I try to updateFields
:As noted in dwyl/auth_plug#76 (comment) this is one of my biggest frustrations with Hex. 😢
By upgrading to a later version of a dependency e.g.
jason
orplug
in one of the packages we "control",we are no longer able to
use
the package in a project where a different dependency relies on on an older version!So we are forced to conform to the lowest common denominator in terms of updates.
Which is really bad for both security and performance. 🤦♂️
When a newer version of a package is released, provided all tests continue passing, everyone should use it!
The text was updated successfully, but these errors were encountered: