你好,欢迎再来一期本周的螃蟹行情!Rust是一种追求三位一体的系统语言:安全性、并发性和速度。这是它的进展和社区的每周总结。有什么要说的吗?推特@ThisWeekInRust或向我们发送请求。 想参与吗?我们热爱贡献.
这本周的螃蟹行情是在在 Github 上公开的。如果你在本周的问题中发现任何错误,请提交 PR。
use
语句放得到处都是?Rust 核心团队希望获得社区的意见!如果您还没有,read the official blog并提交博客文章-它会显示在这里!自征集博客以来,以下是精彩的投稿:
这周的箱子是uniffi,是统一的 Rust ffi binding 生成器。
谢谢mark-i-m的建议!
一直想为开源项目做贡献,但不知道从哪里开始?每周我们都会重点介绍 Rust 社区的一些任务,供您选择和开始!
其中一些任务也可能有导师,请访问任务页面以获取更多信息。
如果您是 Rust 项目的所有者并且正在寻找贡献者,请提交任务这里。
共有 427 个拉取请求在上周合并
aarch64-unknown-linux-musl
支持NtIdent
s 到内置宏之前,停止标准化(normalizing)他们impl Trait
with const generics, 还有添加对min_const_generics
和 const_generics
的多种测试IntRange::from_pat
, 然后缩减 ParamEnv
#[rustc_allow_const_fn_ptr]
,和添加 #![feature(const_fn_fn_ptr_basics)]
const_item_mutation
lint 不对 指针写入开发async
blocks in a const-contextAbort
terminators in all const-contextsTooGeneric
的处理handle_alloc_error
默认 panic (for no_std + liballoc)AllocRef::by_ref
改为 &self
, 而不是 &mut self
slice_ptr_range
simd_select_bitmask
thread::park
/unpark
on LinuxHashMap
and BTreeMap
iterator types 的 Debug
实现Iterator::advancie_by
和 DoubleEndedIterator::advance_back_by
安静的一周。在综合基准上进行了相当大的性能退化,并进行了一些小改进。
#77023是一个有趣的案例。它将 slice lengths 的不变量,在len
函数内,编码为assume
intrinsic。它似乎导致了较小的编译时速度降低,但是在check
构建性能(用于生成代码质量的代理)没有提升。实际上,LLVM 文档 特别不建议 过度使用assume
intrinsic 的情况,比如 不变量不太可能对 optimizer 有很大帮助的时候,似乎就是这情况。
见full report更多。
对 Rust 的更改跟随 RustRFC (request for comments) process。以下是本周批准实施的 RFC:
本周未批准任何 RFC。
每周the team宣布即将做出决定的 RFC 和主要 PR 的“最终评论期”。立即发表您的意见。
meta
放到 prelude[…] clippy 适用那些最终通过编译器时,在代码内部发现一定空白的人。😉
Thanks to blonk for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by: nellshamrell, llogiq, and cdmistman.