文章摘要
Erlang/OTP 29.0 是一个重要版本更新,主要新增了不安全函数标记功能,编译器会对已知不安全函数调用发出警告;SSH守护程序默认禁用shell和exec服务以增强安全性;同时包含多项改进和少量不兼容变更。该版本由社区共同贡献完成。
文章总结
以下是经过编辑整理的中文内容摘要:
Erlang/OTP 29.0 版本发布公告
核心更新内容:
一、安全增强
1. 新增-unsafe属性标记不安全函数,编译器默认会对已知危险函数调用发出警告
2. SSH守护进程默认禁用shell和exec服务,需显式配置才能执行Erlang代码
3. SFTP子系统不再默认启用
4. SSL默认优先采用后量子混合算法x25519mlkem768
二、新功能
1. 新增io_ansi模块支持终端ANSI序列输出
2. 新增ct_doctest模块支持文档示例测试
3. xref工具现直接处理ignore_xref属性
三、语言特性
1. 实验性实现EEP-79原生记录类型
2. 新增is_integer/3范围检查守卫函数
3. 支持EEP 78多值推导式(如[-I, I || I <- [1,2,3]])
4. 新增推导式变量绑定功能(需启用compr_assign特性)
四、编译器改进
1. JIT优化多段小端二进制匹配代码生成
2. 优化常量值映射推导式的编译效率
3. 新增多项默认警告:
- 废弃的catch操作符
- 子表达式变量导出
- 过时的and/or运算符
- 建议改用{a=X,B=Y}形式的模式匹配
五、其他更新
1. 默认代码路径将当前目录移至末位
2. 停止维护Windows 32位版本
3. 新增rand:shuffle/1列表随机排序函数
完整更新内容详见官方README文件。
(注:原文中的导航菜单、图片链接等非核心内容已省略,发布日期"2026年"疑似笔误未作修改)
评论总结
评论总结:
改进功能的认可(评分:无)
- 观点:支持默认禁用SSH和SFTP的安全改进,认为io_ansi模块和Native Records是重要进步
- 引用:
- "Disabling the SSH daemon by default is a good security change"
- "The addition of Native Records is really cool...this looks like a substantial improvement"
技术细节询问(评分:无)
- 观点:请求解释内部实现原理
- 引用:
- "Can someone please explain the innards?"
OTP概念科普(评分:无)
- 观点:解释Erlang/OTP的核心价值是高可靠性库和电信级容错设计
- 引用:
- "standardize the creation of highly reliable, fault-tolerant applications"
- 引用官方设计原则文档
生态发展关注(评分:无)
- 观点:关注records特性在生态中的实际应用效果
- 引用:
- "I'm interested to see how records play out in the ecosystem"
关键要点:
- 安全改进获得明确支持
- 新功能引发技术讨论(实现原理/生态影响)
- OTP的核心设计理念被强调
- 整体评论呈现技术社区的务实态度:既赞赏改进,也关注落地细节