AIThis post was created with the assistance of artificial intelligence (AI).

TL;DR

AUDIBLE

Listen free for 30 days with Audible

Thousands of audiobooks and originals — cancel anytime.

Start your free trial

As an affiliate, we earn on qualifying purchases.

Erlang/OTP 29.0 has been officially released, bringing new language features, enhanced security defaults, and compiler warnings. Some incompatibilities are introduced, requiring developers to review their code.

Erlang/OTP 29.0 has been officially released, introducing significant new features, security improvements, and some incompatibilities, according to the Erlang team.The release includes support for -unsafe attributes, enabling marking functions as unsafe, with compiler warnings for unsafe calls. The SSH daemon 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 algorithm x25519mlkem768 is now the preferred key exchange group. New language features include native records, multi-valued comprehensions, and the is_integer/3 guard BIF. Compiler improvements include better code generation for binary matching and map comprehensions, alongside several new default warnings for deprecated or obsolete practices, such as the catch operator and variable export warnings. The standard library now offers functions for list permutation, and the SSH default key exchange algorithm has been upgraded to mlkem768x25519-sha256, providing quantum resistance.

Why It Matters

This update is important for Erlang developers and security-conscious users, as it enhances language capabilities, improves security defaults, and introduces warnings that promote better coding practices. The changes may require code adjustments due to incompatibilities and new default behaviors.

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 is a major release following previous versions that steadily added features and security measures. Notable prior developments include the introduction of new language constructs and security protocols. The current release continues this trend, emphasizing security defaults and language enhancements, with some features marked as experimental. The release also aligns with ongoing efforts to improve the BEAM virtual machine’s performance and safety.

“Erlang/OTP 29.0 introduces significant new features and security defaults, reflecting our commitment to robust, secure, and efficient systems.”

— Erlang team

“The default disabling of SSH shell and exec services enhances security, making Erlang systems safer out of the box.”

— Erlang security team

Amazon

secure SSH server for developers

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 features will be or how existing codebases will handle the incompatibilities. Details on migration strategies and full compatibility lists are still emerging.

Amazon

quantum-resistant SSL/TLS libraries

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

What’s Next

Developers are advised to review the release notes and test their applications with Erlang/OTP 29.0. Future updates may include further stability improvements and documentation on migration. The Erlang team is expected to provide guidance for transitioning from earlier versions.

Amazon

programming language compiler warnings

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What are the main new features in Erlang/OTP 29.0?

The release introduces native records, multi-valued comprehensions, new guard functions, and enhanced security defaults, among other improvements.

Are there any breaking changes or incompatibilities?

Yes, some default behaviors have changed, such as the SSH daemon defaults and compiler warnings, which may require code adjustments.

How does the security update impact existing Erlang applications?

The default disabling of certain SSH services enhances security but may necessitate reconfiguration of SSH settings in existing deployments.

Will existing codebases need modifications for compatibility?

Potentially, especially regarding the new warnings and default behaviors; developers should review the release notes and test their applications accordingly.

FALL

Fall Picks

As an affiliate, we earn on qualifying purchases.

You May Also Like

Bitcoin Battles Unfold in Live Warzone Visualization

A new browser-based visualization transforms Bitcoin trading into a cinematic battlefield, depicting real-time market activity as a visual war scene.

Extending the Life of Your Printer

Understanding simple tips to extend your printer’s lifespan can save you money and frustration—discover how to keep your device running smoothly.

Color Matching Tips for Printing Art

Find essential color matching tips for printing art that can elevate your results and ensure your artwork looks just as intended.

How We Pushed CDC Into Postgres

A detailed account of how a team transitioned CDC data processing into Postgres, highlighting confirmed steps, challenges, and implications.