scouten
Mix.lock being rewritten with and then without "hexpm"
Our (umbrella) project’s mix.lock file is getting substantially rewritten periodically and we’d like some help in identifying how/why this is happening.
Looking at a recent diff, I’m seeing lots of lines that look like this:
-%{"base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], []},
+%{"base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm"},
The only actual difference is the addition (or sometimes removal) of a final element "hexpm" in the tuple. This diff is repeated throughout the file.
This is causing merge hell for our team. Any advice on how to make it stop?
Edit: We’re using Elixir 1.4.1.
Marked As Solved
michalmuskala
This is, most probably, the difference between an older hex client and a newer hex client that stores additional metadata (the format allows adding additional fields at the end, so the older client should still be able to consume the file, it will only spit out the older format on write operations).
Also Liked
ericmj
Michal is correct. If all your developers updates their Hex version with mix local.hex it should stop happening.
ericmj
Not currently but it’s a nice idea.
scouten
Yes, this looks right. I’ve asked the rest of the team to upgrade to 0.16.0 and all seems well now. Thanks for the pointer.
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








