A story about unexpected changes in riak-erlang-client dependencies

Yuri Lukyanov snaky at aboutecho.com
Tue Apr 9 11:44:06 EDT 2013


Glad to hear you are moving away from master dependencies. Would be
great if all of us follow this way. It's sad that even if you
completely sorted out your own deps and rebar.conig's, it does not
solve the problem in general. You may still want to use third-party
deps which are not necessary good in terms of dependency management
policy. And you end up forking those projects for one reason only: to
fix their rebar.config's and create tags. Not mentioning the headache
when you want to update your forked versions with newer versions from
original repositories...

Looks like we are far away from the perfect dependency world :)

On Tue, Apr 9, 2013 at 7:15 PM, Reid Draper <reiddraper at gmail.com> wrote:
> Yuri,
>
> You're certainly not the only one dealing with this. Sorry about that. It's bit us here at Basho a few times too. As you saw, we're moving toward not having master dependencies, at least for tagged versions of repos. Especially for projects that are likely to be dependencies in other projects (ie. our client libraries, lager, etc.). That being said, it will take us some time to get there. You should also be aware of another 'fun' issue with rebar: if multiple dependencies require the same dep, the version that rebar first encounters will be the one that gets used. You'll find it helpful to use `./rebar list-deps` to see exactly what's being used in your project. I agree that this is something the Erlang community could improve, but in the short-term we're going to be more diligent about using recursively using tags for all tagged repos.
>
> Reid




More information about the riak-users mailing list