kennethL

kennethL

Erlang Core Team

Erlang/OTP 23.0 has been released

Erlang/OTP 23.0 is released, see http://erlang.org/news/140
For a deeper dive into some of the highlights you can read our blog http://blog.erlang.org/OTP-23-Highlights/

Erlang/OTP team at Ericsson

First 10 of 13 Posts Switch mode

hauleth

hauleth

For me the biggest thing is socket-based gen_tcp implementation as this makes step towards socket activation in Erlang. This will make possible to listen on restricted sockets without giving more permissions to the VM and will allow for lazy starting Erlang applications using launchd and systemd.

17
Post #2
nshoes

nshoes

Are there not enough unrestricted sockets available?

brightball

brightball

For some reason on Ubuntu it’s telling me that I need the libwxgtk3.0-dev library installed, but I can’t actually find or install it from anywhere. Any ideas?

NobbZ

NobbZ

Sometimes you want to implement something that has an assigned port, like an SSH server, an HTTP server, FTP, you name it.

If we can do this without having to run the VM as superuser, or without having to rely on a third party program that acts as a “proxy”, we are a huge step forward.

Its not that there are not enough unrestricted ports, its just that the restricted ports have a purpose which we want to fullfil.

rudolfb

rudolfb

Try the following:

# sudo apt -y install libwxgtk3.0-dev

# Ubuntu 20.04 LTS does not have this package for Erlang
# Need to install from source:
# https://www.wxwidgets.org/downloads/
# https://wiki.codelite.org/pmwiki.php/Main/WxWidgets31Binaries#toc2

sudo apt-add-repository 'deb https://repos.codelite.org/wx3.1.3/ubuntu/ eoan universe'
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6856E1DB1AC82609
sudo apt update -y
sudo apt -y install libwxbase3.1-0-unofficial3 \
                 libwxbase3.1unofficial3-dev \
                 libwxgtk3.1-0-unofficial3 \
                 libwxgtk3.1unofficial3-dev \
                 wx3.1-headers \
                 wx-common
CharlesO

CharlesO

Anyone having issues using SSHKit on OTP-23?
(From windows connecting to SUN)

Is there new configuration needed?

ellispritchard

ellispritchard

This is important too:

CPU quotas are now taken into account when deciding the default number of online schedulers.

This should mean that people using the BEAM in containerised environments (like Kubernetes) get much better performance (with less throttling) out of the box, without having to learn about/tweak the various flags.

CharlesO

CharlesO

This works:

def ssh_test do

    SSHKit.SSH.connect('#{@server_ip}',

      port: @server_ssh_port,

      user: '#{@server_username}',

      password: '#{@server_password}',

      modify_algorithms: [prepend: [kex: [:"diffie-hellman-group1-sha1"]]]

    )

  end

Just had to restore the algo the server was expecting

kennethL

kennethL

Erlang Core Team

Why do you think that the way you can listen to restricted sockets (ports as I understand it) will change because of the socket module and the possibility to run gen_tcp with the socket module as backend?

hauleth

hauleth

Because you will be able to use socket activation and pass already opened file descriptor to it. So you supervisor (systemd or launchd) will open privileged port for you and then you will just pass it to your web server. The same goes for UNIX socket where you will be able to create sockets in paths that you cannot write to. Currently we need to do some workarounds to make it work with ports.

Where Next?

Trending in Erlang News Top

bjorng
We want to introduce a new native datatype to Erlang: native records. Although replacing all tuple records with native records is not our...
New
erlangforums
A new Erlang announcement has been posted: Original announcement:
New
erlangforums
A new Erlang announcement has been posted: Original announcement:
New
erlangforums
A new Erlang announcement has been posted: Original announcement:
New
jhogberg
Patch Package: OTP 29.0.5 Git Tag: OTP-29.0.5 Date: 2026-08-04 Trouble Report Id: OTP-...
New
jhogberg
Patch Package: OTP 28.5.0.5 Git Tag: OTP-28.5.0.5 Date: 2026-08-04 Trouble Report Id: ...
New
jhogberg
Patch Package: OTP 27.3.4.16 Git Tag: OTP-27.3.4.16 Date: 2026-08-04 Trouble Report Id: ...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
type1fool
I just stumbled on a newly redesigned elixir-lang.org. :tada: It looks like @Software_Mansion did the work, and I think it is generally a...
New
akoutmos
@hugobarauna and I (Alex Koutmos) have been hard at work on writing a book on Nerves that takes you from simply blinking LEDs to building...
New

We're in Beta

About us Mission Statement