Files
packages/lang/erlang/test.sh
T
Alexandru Ardelean 21df5ff4b5 erlang: update to 28.5
Upstream release 28.5 (2026-04-23), patch release for OTP 28.

Applications updated:
- erl_interface-5.7: new --{enable,disable}-use-embedded-3pp-alternatives
  configure option; allows using system zstd, zlib, ryu, openssl, tcl
  instead of bundled copies (default: zlib uses OS version if available)
- erts-16.4: fixed bug in enif_make_map_from_arrays for arrays with >= 33
  keys (duplicates could produce broken maps); fixed Unicode handling in
  erl.exe args_file on Windows
- mnesia-4.25.3: bug fixes
- ssl-11.6: bug fixes

Highlight: new "Secure Coding Guidelines" document added to Design
Principles describing how to write secure Erlang code.

Reference: https://github.com/erlang/otp/releases/tag/OTP-28.5

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-05-10 11:31:30 +03:00

30 lines
824 B
Bash

#!/bin/sh
case "$1" in
erlang)
# Check erl binary is present and prints the right OTP version
otp_major="${2%%.*}"
timeout 60s erl -noshell -eval "V = erlang:system_info(otp_release), io:format(\"OTP ~s~n\", [V])" -s init stop 2>&1 | \
grep -qF "OTP ${otp_major}" || {
echo "FAIL: erl did not report expected OTP version '$2' (major: $otp_major)"
exit 1
}
echo "erl OTP version: OK"
# Verify epmd (Erlang port mapper daemon) is present
[ -x /usr/bin/epmd ] || [ -x /usr/lib/erlang/bin/epmd ] || {
echo "FAIL: epmd not found"
exit 1
}
echo "epmd: OK"
# Basic arithmetic eval
result=$(timeout 60s erl -noshell -eval "io:format(\"~w~n\", [2+2])" -s init stop 2>/dev/null)
[ "$result" = "4" ] || {
echo "FAIL: erl basic eval returned '$result', expected '4'"
exit 1
}
echo "erl eval: OK"
;;
esac