TL;DR

Erlang/OTP 29.0 has been released, introducing new language features, security enhancements, and compiler warnings. Key updates include support for unsafe attributes, default-disabled SSH services, and new cryptographic algorithms. The release impacts Erlang developers and system security practices.

Erlang/OTP 29.0 has been officially released, introducing significant new features, security enhancements, and language updates that impact Erlang developers and system administrators worldwide.

The release includes support for -unsafe attributes, allowing functions to be marked as unsafe and generating warnings for unsafe 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 in default configurations.

New language features include native records, multi-valued comprehensions, and the is_integer/3 guard BIF, enhancing data handling and verification capabilities. The compiler now issues warnings for deprecated constructs like the catch operator, obsolete guard tests, and variable exports from subexpressions, encouraging modernization of codebases. Compiler optimizations have been improved for binary matching and map comprehensions.

Standard library functions now include rand:shuffle/1 and rand:shuffle_s/2 for list permutation. The SSH key exchange algorithm defaults to mlkem768x25519-sha256, providing quantum-resistant security while maintaining backward compatibility. Many of these features aim to improve performance, security, and developer experience.

Why It Matters

This release is significant because it enhances the security posture of Erlang-based systems, especially with default SSH settings and advanced cryptographic algorithms. It also introduces language features that improve code safety and performance, which are critical for high-reliability applications. Developers need to adapt to new warnings and potential incompatibilities, making this a pivotal update for maintaining secure and efficient Erlang systems.

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 updates that have steadily improved language features, security, and tooling support. The release reflects ongoing efforts to modernize Erlang, support quantum-resistant cryptography, and promote safer coding practices. Prior releases have introduced features like native records and multi-valued comprehensions, but this update emphasizes security defaults and compiler warnings to guide developers toward best practices.

“Erlang/OTP 29.0 introduces a host of new features, security improvements, and language enhancements aimed at making Erlang systems more secure, efficient, and developer-friendly.”

— Erlang/OTP Development Team

“The default disabling of SSH shell and exec services aligns with our commitment to secure by default principles, reducing attack surfaces for Erlang-based systems.”

— Erlang/OTP Maintainers

Mastering Linux Security and Hardening: Secure your Linux server and protect it from intruders, malware attacks, and other external threats

Mastering Linux Security and Hardening: Secure your Linux server and protect it from intruders, malware attacks, and other external threats

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What Remains Unclear

While the release details are comprehensive, it is not yet clear how widely adopted the new features will be in existing codebases, or how quickly developers will migrate to the new standards. Compatibility issues related to deprecated features like catch and obsolete guards may also influence adoption timelines.

Acquiring Card Payments

Acquiring Card Payments

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What’s Next

Next steps include widespread adoption of Erlang/OTP 29.0 by the community, with updates to documentation and tooling to support new features. Developers are encouraged to review the release notes and test their systems for compatibility, especially regarding the new compiler warnings and security defaults.

BEAM ECOSYSTEM DEVELOPMENT WITH ERLANG AND ELIXIR: Building fault-tolerant distributed applications using the BEAM virtual machine

BEAM ECOSYSTEM DEVELOPMENT WITH ERLANG AND ELIXIR: Building fault-tolerant distributed applications using the BEAM virtual machine

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What are the main security improvements in Erlang/OTP 29.0?

The default SSH daemon disables shell and exec services, and the preferred SSL key exchange algorithm now includes quantum-resistant options, enhancing security against both classical and quantum attacks.

What new language features does Erlang/OTP 29.0 introduce?

Native records, multi-valued comprehensions, and the is_integer/3 guard BIF are among the key language enhancements, providing more expressive and safer coding options.

Are there any breaking changes or incompatibilities?

The release introduces some incompatibilities, such as deprecated guard tests and the removal of 32-bit Windows builds. Developers should review the detailed release notes for potential impacts on existing applications.

How does the new default security configuration impact existing systems?

Systems with SSH shell and exec services enabled will need to be reconfigured explicitly to restore these features. This change aims to enhance security by default but requires administrators to verify settings.

You May Also Like

Cooking on a Budget: How to Make Gourmet Meals With Basic Appliances

Offering simple tips to craft gourmet meals with basic appliances, you’ll discover how to elevate your cooking without breaking the bank.

How to Convert Oven Recipes for the Air Fryer (Adjustment Guide)

Optimize your oven recipes for the air fryer with simple adjustments that guarantee perfect results—discover how to elevate your cooking game today.

5 Common Habits That Shorten the Life of Your Appliances

Not maintaining your appliances properly can lead to costly repairs and early replacements—learn the habits that could be shortening their lifespan.

How to Unclog a Kitchen Sink (Garbage Disposal Tips & Tricks)

Lessen your sink headaches by discovering expert tips to unclog your garbage disposal, ensuring smooth drainage—find out how to tackle stubborn clogs now.