Erlang/OTP 29.0

TL;DR

Erlang/OTP 29.0 is now available, bringing significant new features, improved security defaults, and compiler warnings. The release aims to enhance performance, safety, and developer productivity.

Erlang/OTP 29.0 has been officially released, marking a major update with new features, security improvements, and some incompatibilities, according to the Erlang/OTP team.

The release introduces support for -unsafe attributes to mark functions as unsafe, with the compiler warning about such calls. The SSH daemon now defaults to disabled for shell and exec services, aligning with the ‘secure by default’ principle, and the SFTP subsystem is no longer enabled by default. In SSL, the hybrid quantum-resistant key exchange algorithm x25519mlkem768 is now preferred. New language features include native records, multi-valued comprehensions, and an improved is_integer/3 guard. The compiler now emits warnings for deprecated constructs like catch, variable exports from subexpressions, and obsolete boolean operators. Enhancements to the stdlib include functions for list permutation, and the SSH default key exchange algorithm has shifted to mlkem768x25519-sha256, offering quantum resistance.

Why It Matters

This update matters because it enhances security by default, introduces advanced language features for more expressive code, and improves performance through compiler optimizations. Developers need to be aware of potential incompatibilities and new warnings to update their codebases accordingly.

Amazon

Erlang/OTP 29.0 development tools

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Background

Erlang/OTP 29.0 follows previous releases focusing on performance and security. Notably, the support for native records is experimental, and the shift to secure defaults in SSH reflects ongoing security improvements. The release also continues the trend of adding language features to improve developer productivity and code safety.

“Erlang/OTP 29.0 introduces significant new features and security defaults, marking an important step forward for the platform.”

— Erlang/OTP Team

“The new support for -unsafe attributes and compiler warnings aims to improve code safety and maintainability.”

— Erlang/OTP Documentation

Modern OpenSSH In-Depth: The Complete Secure Shell Guide for SSH Server Configuration, Key Management, Tunneling, SFTP File Transfer, and DevOps Automation.

Modern OpenSSH In-Depth: The Complete Secure Shell Guide for SSH Server Configuration, Key Management, Tunneling, SFTP File Transfer, and DevOps Automation.

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What Remains Unclear

It is not yet clear how widely adopted the new native records will become, as they are marked experimental. Additionally, the full impact of the new compiler warnings on existing codebases remains to be seen, and some incompatibilities may surface as developers update.

QUANTUM-RESISTANT CRYPTOGRAPHY: IMPLEMENTING ML-KEM, ML-DSA, AND SLH-DSA: Migrate TLS, APIs, and Key Exchange to NIST PQC Standards Before Harvest-Now Decrypt-Later Attacks Strike

QUANTUM-RESISTANT CRYPTOGRAPHY: IMPLEMENTING ML-KEM, ML-DSA, AND SLH-DSA: Migrate TLS, APIs, and Key Exchange to NIST PQC Standards Before Harvest-Now Decrypt-Later Attacks Strike

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What’s Next

Next steps include developers adopting Erlang/OTP 29.0, testing their applications against the new features, and monitoring community feedback for any unforeseen issues. Further updates or patches may follow to address initial challenges.

The BEAM Book: Understanding the Erlang Runtime System

The BEAM Book: Understanding the Erlang Runtime System

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What are native records in Erlang/OTP 29.0?

Native records are a new data type introduced as an experimental feature, providing a more efficient and type-safe alternative to traditional tuple-based records.

How does the new default SSH configuration improve security?

The SSH daemon now defaults to disabling shell and exec services, reducing the risk of arbitrary code execution by authenticated users unless explicitly enabled.

What is the significance of the new hybrid quantum-resistant key exchange algorithm?

The x25519mlkem768 algorithm enhances security against quantum attacks while maintaining compatibility with existing systems, marking a step forward in cryptographic robustness.

You May Also Like

Understanding Zero Trust Security: A Modern Approach

Discover how Zero Trust Security revolutionizes your defenses by treating every access as a threat, ensuring your organization stays secure—find out more.

The Rise of Hack‑for‑Hire Firms and How They Operate

Uncover how hack-for-hire firms secretly operate, fueling cybercrime’s growth and raising urgent questions about cybersecurity and accountability.

Japan to craft cyberdefense guidelines in response to Anthropic’s Mythos

Japan plans to create new cybersecurity guidelines encouraging software developers to use advanced AI tools like Anthropic’s Claude Mythos to identify vulnerabilities.

Anthropic weighs taking part in Japan cyber defense alliance

U.S. AI firm Anthropic is exploring participation in Japan’s proposed cyber defense consortium, aiming to strengthen cybersecurity amid rising threats.