Erlang/OTP 24.3.4.17

This release of Erlang/OTP can be built from source or installed using pre-built packages for your OS or third-party tools (such as kerl or asdf).

docker run -it erlang:24.3.4.17
Patch Package OTP 24.3.4.17
Git Tag OTP-24.3.4.17
Date 2024-04-09
Issue Id
ERIERL-1041
ERIERL-1043
ERIERL-682
System OTP
Release 24
Application

common_test-1.22.1.3 #

The common_test-1.22.1.3 application can be applied independently of other applications on a full OTP 24 installation.

OTP-18960
Application(s):
common_test

With this change, the last column in common_test testcase log file is modified to now show the total sum of each time in the table rows, and Elapsed Time which is a clock time spent to run above functions. The Elapsed Time is the same time that was previously a total.

Full runtime dependencies of common_test-1.22.1.3: compiler-6.0, crypto-3.6, debugger-4.1, erts-7.0, ftp-1.0.0, inets-6.0, kernel-4.0, observer-2.1, runtime_tools-1.8.16, sasl-2.4.2, snmp-5.1.2, ssh-4.0, stdlib-3.5, syntax_tools-1.7, tools-2.8, xmerl-1.3.8

compiler-8.1.1.6 #

The compiler-8.1.1.6 application can be applied independently of other applications on a full OTP 24 installation.

OTP-19003
Application(s):
compiler
Related Id(s):
GH-8187 , PR-8189

In rare circumstances, an unsafe optimization could cause the compiler to generate incorrect code for list matching.

OTP-19019
Application(s):
compiler

In rare circumstances, the compiler code generate unsafe code for a bit syntax match.

Full runtime dependencies of compiler-8.1.1.6: crypto-3.6, erts-11.0, kernel-7.0, stdlib-3.13

crypto-5.0.6.5 #

The crypto-5.0.6.5 application can be applied independently of other applications on a full OTP 24 installation.

OTP-18996
Application(s):
crypto
Related Id(s):
PR-8173 , PR-8174

The function crypto:pbkdf2_hmac will no longer block the main schedulers. If the iteration count or block size parameters are such that the function is likely to take a long time to execute, the function will be scheduled to run on a dirty CPU scheduler.

Full runtime dependencies of crypto-5.0.6.5: erts-9.0, kernel-5.3, stdlib-3.4

erts-12.3.2.17 #

Note! The erts-12.3.2.17 application *cannot* be applied independently of other applications on an arbitrary OTP 24 installation. On a full OTP 24 installation, also the following runtime dependency has to be satisfied: -- kernel-8.3 (first satisfied in OTP 24.3)

OTP-19006
Application(s):
erts

The code server could be hanging if a module with on_load function was loaded at the same time as another module was purged using erlang:purge_module directly.

OTP-19015
Application(s):
erts
Related Id(s):
ERIERL-682

Fix bug in re:run/3 where if an invalid UTF-8 subject was given, re:run could get stuck in an infinite loop. Bug was introduced in Erlang/OTP 22.1.

OTP-19034
Application(s):
erts

Calling erlang:trace/3 with first argument one of ports, processes, existing_ports, existing_processes, existing or all, could cause emulator crash if a dirty scheduler was executing a simultaneous trace action.

OTP-19036
Application(s):
erts
Related Id(s):
GH-8186

Fixed an integer overflow when the monotonic time unit reported by the operating system was greater than 10 and lower than 100 microseconds.

OTP-19043
Application(s):
erts
Related Id(s):
PR-8342

When a traced process executing on a dirty scheduler received an exit signal, the dirty scheduler could use the wrong thread specific data which could lead to a crash.

OTP-19048
Application(s):
erts
Related Id(s):
PR-8343

Fixed a more or less harmless bug that caused time correction of Erlang monotonic time to become slightly off on Windows platforms when QueryPerformanceCounter() was used as OS monotonic time source.

erlang:system_info(os_monotonic_time_source) now also returns information about used resolution which not always corresponds to the resolution of the OS monotonic time source.

OTP-19044
Application(s):
erts
Related Id(s):
ERIERL-1043 , PR-8342

Checks for monotonicity of monotonic time have been improved so that Erlang and OS monotonic time are checked separately.

A new configure argument --enable-ensure-os-monotonic-time has also been added. It enables functionality ensuring the monotonicity of monotonic timestamps delivered by the OS. When a non-monotonic timestamp is detected, it will be replaced by the last delivered monotonic timestamp before being used by Erlang's time functionality. Note that you do not want to enable this unless the OS monotonic time source on the system fails to produce monotonic timestamps. This since ensuring the monotonicity of OS monotonic timestamps will hurt scalability and performance of the system.

Full runtime dependencies of erts-12.3.2.17: kernel-8.3, sasl-3.3, stdlib-3.13

ssh-4.13.2.6 #

The ssh-4.13.2.6 application can be applied independently of other applications on a full OTP 24 installation.

OTP-18986
Application(s):
ssh

With this change, more secure algorithms are preferred by ssh and documentation is updated to reflect that.

OTP-19002
Application(s):
ssh
Related Id(s):
ERIERL-1041

With this change, KEX strict terminal message is emitted with debug verbosity.

OTP-19013
Application(s):
ssh
Related Id(s):
GH-7897 , PR-8220

With this change, owner and group file attributes decoding is fixed and results with value of integer type.

Full runtime dependencies of ssh-4.13.2.6: crypto-5.0, erts-9.0, kernel-5.3, public_key-1.6.1, runtime_tools-1.15.1, stdlib-3.15