Rust 1.100.0发布 版本号首进三位数

资讯 驱动中国 程青 432次阅读
分享 微 Q 信
AI摘要
由 AI 生成 · 仅供参考

Rust团队于11月12日发布1.100.0稳定版,版本号首次进入三位数,本次更新稳定永不返回类型与Allocator API核心,新增DropGuard等标准库接口,并改进Cargo与供应链安全。

驱动中国11月13日消息,Rust团队于当地时间11月12日发布Rust 1.100.0稳定版。该版本号首次进入三位数阶段,本次更新涵盖多项语言与标准库功能稳定化,并改进Cargo依赖管理、构建缓存及软件供应链安全机制。

Rust官方介绍提到,never type(永不返回类型)在本次版本中正式稳定。该功能经过约10年时间和5次稳定化尝试后进入稳定版本。永不返回类型以!表示,用于描述不会产生返回值的计算过程。return、break以及std::process::exit等终止控制流的表达式均具有这一类型。

本次更新允许开发者在任意位置显式使用!,包括Result等类型定义。Rust 1.100同时将Infallible调整为永不返回类型!的别名,使此前使用Infallible的API能够与新类型兼容。

这一调整带来兼容性变化。在Rust 2015、2018和2021版本中,永不返回类型的默认回退行为由()改为!,少数代码可能因此受到影响。

内存分配方面,Rust 1.100稳定了Allocator API的核心部分。开发者可以通过新稳定的Allocator trait定义自定义内存分配器,并将其用于部分标准库类型,目前包括Vec和Box。Rust团队表示,这是Allocators 1.0项目目标的重要进展,后续计划将自定义分配器扩展至更多集合类型和指针类型。

标准库新增core::mem::DropGuard,用于在变量离开作用域时执行指定闭包。开发者可借助该接口处理函数正常返回、错误传播以及发生panic等不同退出路径,从而简化资源清理和事务回滚逻辑。

此外,Rust 1.100新增std::mem::conjure_zst,为开发者在满足安全条件时创建零大小类型(ZST)提供专门接口,减少此前通过transmute等方式创建此类值的需求。

版权声明:本文由驱动中国整理发布,转载需注明出处与原文链接。如有疑问请联系 editor@qudong.com。
来源:驱动中国 · 原文链接:https://www.qudong.com/article/529658.html
本文价值 ★★★★★ 5 1 人已评
登录后为本文打分
网友评论0 条评论
正在回复 的评论取消
评论加载中…
🔐

登录后参与互动

评论、点赞均可赚积分
连续签到、邀请好友也有奖励 🎁

电脑端: 微信扫码登录 微信内: 一键登录

微信扫一扫

打开微信「扫一扫」,分享本文到朋友圈或好友