romenigld
'mix hex.outdated' tells the 'Update not possible' for some libraries
I want to update my APP for the course PhoenixLiveView with Pragmatic Studio and when I try to do a mix hex.outdated it complains Update not possible for some libraries as you can see:
$ mix hex.outdated
Dependency Current Latest Status
ecto_sql 3.4.3 3.5.4 Update possible
faker 0.14.0 0.16.0 Update not possible
floki 0.26.0 0.29.0 Update possible
gettext 0.17.4 0.18.2 Update possible
inflex 2.0.0 2.1.0 Update not possible
jason 1.2.2 1.2.2 Up-to-date
number 1.0.1 1.0.3 Update possible
phoenix 1.5.6 1.5.7 Update possible
phoenix_ecto 4.1.0 4.2.1 Update possible
phoenix_html 2.14.2 2.14.3 Update possible
phoenix_live_dashboard 0.2.10 0.4.0 Update not possible
phoenix_live_reload 1.2.1 1.3.0 Update possible
phoenix_live_view 0.14.7 0.15.4 Update not possible
plug_cowboy 2.4.0 2.4.1 Update possible
postgrex 0.15.3 0.15.8 Update possible
telemetry_metrics 0.6.0 0.6.0 Up-to-date
telemetry_poller 0.5.0 0.5.1 Update possible
timex 3.6.2 3.6.3 Update possible
Run `mix hex.outdated APP` to see requirements for a specific dependency.
To view the diffs in each available update, visit:
I want to try the command mix deps.update.
But first I want to ask here how to properly update these libraries.
Someone can help me with this please?
Marked As Solved
kokolegorille
Sorry I was wrong and You also need to change your versions in mix.exs as well, as mentionned by @shamanime
Try to change your mix.exs to
dashboard → 0.4
live_view → 0.15
then mix deps.get and mix compile…
Also Liked
shamanime
The command will consider the restrictions in your mix.exs file.
When you run mix dips.update --all, it will upgrade all versions labeled as “Update possible”.
For instance, say you have {:phx_gen_auth, "~> 0.5.0"} in your mix file.
After you run mix hex.outdated you’ll see:
Dependency Current Latest Status
phx_gen_auth 0.5.0 0.6.0 Update not possible
In this case, the update is not possible because in the mix file you specifically restricted the upgrade to 0.5 versions, it would update to 0.5.x as 0.5.2 or 0.5.9 but it won’t upgrade to 0.6.x.
So you might want to relax your dependencies a little bit.
hauleth
“Update not possible” mean that constraints in direct or indirect dependencies are preventing upgrade. For example if some library requires inflex =2.0.0 then there is nothing you can do unless that dependency updates their constraint. Of course you can override deps, but that can cause breakages in that dependencies due to incompatibility.
LostKobrakai
The auto fetching of deps can be disabled in the settings.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









