Re: Update default elixir to 1.12 and rabbitmq to 3.9.4

From: Mike Jakubik <>
Date: Fri, 27 Aug 2021 16:09:06 UTC
Hi Dave,

It's great to hear that there is actively work ongoing to get these up to date. I understand it may be a bit to do if there are many dependencies to deal with. Our company primarily uses Erlang 24/Elixir 1.12/RabbitMQ 3.9.x for the bulk of our business.

I did manage to build/install RabbitMQ with Elixir 1.12 after changing it's port Makefile to depend on exlixir-devel instead, all seems to be working well, I'll try updating the port to 3.9.4 to see if that works, hopefully there are not many structural differences.


---- On Wed, 25 Aug 2021 09:51:15 -0400 Dave Cottlehuber <> wrote ----

Hi Mike 
For the future: 
- deprecate in 2021Q3 any ports that are not compatible with OTP releases in the last 2 years 
- remove the deprecated runtimes in 2021Q4 
- remove ports directly dependent on erlang- and elixir- languages, where they are more commonly installed via mix and rebar3 tools, the standard community build tool chain. 
- bump the main lang/erlang runtime to OTP24 because JIT is awesome 
The main obstacle to these changes is putting some time aside to go through the 100+ ports that depend directly & indirectly on one of the elixir & erlang runtimes, see if they still build/work/have updates when using OTP24. 
So, if you can help out by testing even a portion of these that would make a huge difference! 
Once we've done this cleanup, it will be much simpler to bump OTP versions more quickly. Last year we cleaned out the < OTP20 versions, and this year, trim that down to <OTP22 or possibly even OTP23, in line with upstream support. 
Note that if you're using the /latest/ ports tree and not quarterly 
branch, there's already lang/elixir-devel at 1.12 & lang/erlang-runtime24 
so there's nothing stopping you today, and net/rabbitmq is already at 
3.9.1 with the patches for elixir 1.12 support included. So you're 
already good to go. If there's something specific you want that doesn't 
already play well with this setup, let me know. 
$ sudo pkg install -yr FreeBSD lang/elixir-devel 
$ iex -- profit 
Erlang/OTP 24 [erts-12.0.3] [source] [64-bit] [smp:32:32] [ds:32:32:10] [async-threads:1] [sharing-preserving] 
Interactive Elixir (1.12.2) - press Ctrl+C to exit (type h() ENTER for help) 
and it does the right thing and uses OTP24 by default. 
NB if you're running other apps, you may need to prepend to your PATH 
 sent from my Couch