Re: Update default elixir to 1.12 and rabbitmq to 3.9.4

From: Dave Cottlehuber <dch_at_skunkwerks.at>
Date: Wed, 25 Aug 2021 13:51:15 UTC
On Wed, 25 Aug 2021, at 12:03, Mike Jakubik wrote:
> Hello, 
> 
> 
> 
> Any plans on putting in these updates soon and making elixir the default of
> 
> v 1.12? It's considered stable now. Also make otp24 the default. I tried
> 
> compiling rabbitmq 3.9.1 with it (just by changing the dep in Makefile) and
> 
> it works just fine so the updates seem fairly trivial.
>
> 
> 
> Thanks!
> 
> 
> 
> Mike Jakubik

Hi Mike

For the future:

https://www.freebsd.org/status/report-2021-04-2021-06/#_freebsd_erlang_ecosystem_ports_update

- 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.

Basically:

```
$ 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)
iex(1)> 
```

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

    /usr/local/lib/erlang24/bin

A+
Dave
--
  sent from my Couch