[erlang-questions] Erlang package manager

Tristan Sloughter <>
Wed Dec 17 01:18:08 CET 2014


I'm just throwing my thoughts out there. This isn't to cover all
features I'd want to see in a package manager, but instead just the ones
I know are "controversial". These are also the direction we've gone with
rebar3 (http://rebar3.org).

* Binary packages

Why build from source if you don't need to? Most Erlang applications
have no native code.

* No semver enforcement

I mean, why bother? For one, you can't actually force semantic
versioning. You can require the version be of the format
MAJOR.MINOR.PATCH+[metadata] but not the semantic part.

I think forcing the format in the name of "semver" is confusing and
wrong. 

* Strict version declarations

No ">=1.0" or "<1.0 and >0.5". The project should set a version number
of the dependency it relies on.

"Solving" dependencies is a matter of choosing the highest version of a
dep in the dependency tree. This is also followed by maven,
http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

* No global install

It just causes headaches. Sandboxes are much more fun to play in without
all the kids in the neighborhood crowding in and someone ending up
leaving a poop in it.

-- 
  Tristan Sloughter
  




More information about the erlang-questions mailing list