24 comments

[ 4.3 ms ] story [ 75.6 ms ] thread
Do you provide a lock file?
AFAIK maintaining a lock file is left to the tool that fetches and maintains dependencies.

For Elixir, mix maintains the mix.lock file. Hex integrates with mix.

For Erlang, rebar3 maintains a rebar.lock file. There's a rebar3_hex plugin for Hex integration with rebar3.

Is this a new project? How come it has such high download numbers already?
Not a new project, but a new website.
Hex is (or, up to now, has been) Elixir's package manager.
Well done! Great looking website.

I primarily use Erlang and is good to see it finally has a standardized package manager and that both Elixir and Erlang can use hex packages.

Rebar even moved under the main Erlang organization in Github:

https://github.com/erlang/rebar3

A nice step forward

Elixir really seems to have given Erlang a much needed boost in some ways.
Yes, David! This might be a good time to breathe new life into Chicago Boss, huh ;)
Probably not:

* It's not well liked in the broader Erlang world because of compiler magic.

* Elixir has Phoenix, which is now the project in that space.

Also: I changed jobs and moved so... don't use Erlang at work any more, sadly.

can this be installed using homebrew ?
It's automatically installed when you type: brew install elixir
You'll find a large number of these packages are actually Elixir, as hex is the native Elixir package manager :)

Lovely to see this becoming more mainstream, and good marketing choice by Eric by making it the "Erlang ecosystem package manager".

If you're interested, the package manager[0] and website/API[1] are open source.

[0] https://github.com/hexpm/hex [1] https://github.com/hexpm/hex_web

Hex runs on Heroku. I wonder how many dynos it uses. Any ideas?
Not sure what the current stats are but a year ago the maintainer tweeted some stats about it [0].

    hex.pm on single 512mb Heroku dyno. 
    250rpm, 
    request time 23ms 95% percentile, 
    43mb memory used, ~0.15 dyno load.
I suspect there's a lot more use these days given the growth of Elixir, and I'd be curious to see newer stats.

[0] https://twitter.com/emjii/status/591240463782391808

It still runs on a single 7$ hobby dyno. Package and registry downloads goes directly to our CDN so the dyno only gets traffic for the HTTP API and website.
For anyone looking around for a new language to try: give Elixir serious consideration.

I've been learning Elixir over the last few months and it's been a breath of fresh air.

EDIT: In case it's not clear from the context, hex.pm is primarily the Elixir package manager, but it works for the whole Erlang ecosystem too, hence why it's referred to as a package manager for "the erlang ecosystem".

Thank god - we're safe.

EDIT: serious point - does anyone know off-hand what hex.pm's unpublish policy is?

My understanding is: you can't unpublish an existing package, like in npm's leftpad situation. You do have a one hour window to change or revert a published version of a package, after that the published version is read-only.

Docs: https://hex.pm/docs/publish

It'll be great to have categories for packages.. For instance: ORMs / AWS clients / Social SDKs / Authentication / Caching / Internationalization / Cryptography / Machine Learning / and so on..
What's with the ".pm"? Brings back bad memories of perl.
"package manager" I'd wager. Not "PERL module" :)
Obviously "package manager"?