[Rust] Rust 官方周报 395 期(2021-06-16)
💥 内容涉及著作权,均归属作者本人。若非作者注明,默认欢迎转载:请注明出处,及相关链接。
Summary: Rust 官方周报 395 期:Rust 核心更新、Rust 社区更新、官方资讯、项目/工具更新、观测/思考文章、实际演练文章、周最佳 crate、Rust 近期活动、Rust 工作招聘、Rust 开发者引语。本期文章中,Rust 做 WebAssembly、嵌入式、移动开发(Flutter、Fuchsia、iOS)等方面有所侧重。另外,还包含开源与心理健康方面的内容。
Topics: rust webassembly rust-官方周报 rust-web
Rust 官方周报(中文版)仓库为 github.com/zzy/this-week-in-rust-zh-cn,欢迎您的参与,一起丰富中文网络的 Rust 资源。
关于周报中的资源链接,已经有中文资源的,替换为中文资源链接(中文资源中,均附有原文链接)。另外,对于部分周报文章,附有阅读和简单了解后的译注,但并非全部。如果你阅读了文章,有更适合的见解,请联系、PR,或者直接参与项目 github.com/zzy/this-week-in-rust-zh-cn。
大家好,欢迎查阅第 395 期《Rust 周报》!Rust 是一门系统编程语言,专注于三个要素:安全性、并发性,以及高性能。本文是其开发进展和社区生态的每周摘要。如果您想提出意见或建议,请在推特联系我们账号 @ThisWeekInRust,或者在 github 向我们发送 PR。想参与吗?我们期待您的贡献。
Rust 社区更新
CW 电视网:自杀(Suicide)、心理健康(Mental Health)
下文中的链接,是为了悼念 Rust 社区的一个贡献者。关于真正公正地对待逝者方面,这是一个非常敏感的话题。而对于我们生者,所能做的最重要的事情,唯有提高对心理健康的认识。
如果你或你所认识的人需要自杀预防热线,请访问 https://www.opencounseling.com/suicide-hotlines,获取你们国家的紧急情况和自杀预防热线的电话号码。
开源与心理健康(译注:redox-os 的贡献者,jD91mZM2,年仅 18 岁)
官方
- [内部] Rust 1.53.0 预发布测试(译注:Rust 1.53.0 今天发布,中文请参阅 Rust 1.53.0 明日发布,关键新特性一瞥)
- [Inside] 请欢迎 Boxy、Léo Lanteri Thauvin,以及 the8472 成为编译器贡献者
简讯
项目/工具更新
- rust-analyzer 更新日志 #81
- AWS-SDK-Rust:CloudFormation、SageMaker、EC2,以及 SES
- Aya 发布 0.10.1 版本(译注:aya 是 Rust 实现的 eBPF 库)
- TensorBase 周报 7 期
- cap-std 介绍,Rust 标准库基于 capability 的版本
- 大事件,wasmer 2.0 发布!(译注:wasmer 提供基于 WebAssembly 的超轻量级容器。其号称可以运行于任何地方:桌面、云、IoT 设备,甚至能嵌入到任何编程语言)
iterate
库介绍- ripgrep 13.0.0 版本发布
观测/思考
- 关于 Fuchsia 安全的几点思考
- 使用 Rust 实现 shell 的历史搜索(history search)/同步(Ellie Huxtable 访谈)
- Rust 中的可视化内存管理(译注:文章精要概括,推荐)
- [视频] Flutter 开发中使用 Rust
Rust 演练
- 嵌入式 Rust 开发:为 STM32F3DISCOVERY 构建闪烁(Flash)二进制程序
- 使用 Rust 进行飞行学习(Learning to Fly):模拟和进化(4)(译注:系列文章,共 4 篇,开发者使用神经网络和遗传算法开发的飞行模拟游戏,从零开始,直到用户界面,内容很详实)
- 使用 Rust + WebAssembly 提速 WebCola 图形可视化库(译注:效果真的很棒,比如下图这个复杂的谱图关系,操作全面,响应极速)
- 从 NAND 到 Raytracer:Hack 计算机上的光线追踪(Raytracing)(译注:请注意 Hack 计算机,Hack computer 仅支持黑白二色,光线要做灰度映射)
- Cacao:使用 Rust 构建 macOS(及 iOS)应用(译注:和以前的实践类似,还是很麻烦)
- 在 Rust 构造 API(1)
- 为了兴趣和利益,学习在 Rust 构建一个解析器(Parser)
- 在 AWS Lambda 上运行 Rust 的初学者指南
- 使用 Rust 实现命令行键值(k-v)数据存储
- 如何在 Rust web 应用中使用 casbin 授权(3)
- 从
serde
库切换到nom
库,输入信息的解析速度提高了 3-10 倍 - [中文] [系列] Rust 和 Wasm 的融合,使用 yew 构建 web 前端(3)- 资源文件及小重构
- [中文] [系列] Rust 和 Wasm 的融合,使用 yew 构建 web 前端(4)- 获取 GraphQL 数据并解析(注:笔者此 2 篇文章,还有个小插曲。有位国人在 Rust 周报官方提出:笔者的博客拿 Rust 搞营销,广告多等,总之不能收录。因为官方编辑不懂中文,不了解博客实际,而让其审阅中文文章的,所以笔者未做辩解。笔者借此说明下:宣传意图属实,因为笔者希望分享给更多人看。本号关注朋友很少,但这些第一阶段的基础文章,每天都有不少朋友联系交流调试中的问题,证明对部分朋友,是有帮助的。文章末尾以前是有 1 条广告(已移除),但在国内拿 Rust 搞营销?真没有那个意图,Rust 学习者和使用者才多少……但笔者接受批评,博客文章不再有任何广告。谢谢指导。)
- [视频] 使用 Rust 构建 web 应用(1) - 配置
- [视频] 使用 Rust 构建 web 应用(2) - 数据库
- [视频] Rust 中实现无锁(Lock-Free)及无等待的模拟仿真(2)
研讨/论文
无
其它
- Rustaceans 座谈会:Facebook Rust 攻城狮访谈系列
- Pop!_OS 使用了大量 Rust
- 关于 Fuchsia 安全的几点思考
- [视频] 主题演讲:Bryan Cantrill - 软硬件协同设计(Co-design):即将到来的黄金时代(Golden Age)
周最佳 crate
本周最佳 crate 是 nativeshell,使用 Rust 开发 Flutter 应用,其中 static-rc 是一个编译时(compile-time)引用计数(reference-counted)的智能指针。
谢谢 Zicklag 的提议。
参与邀请
您一直想为开源项目做贡献,但却不知道从哪里开始吗?每周,我们都会强调一些来自 Rust 社区的任务。您可以挑选,并开始参与!
有些任务可能还有导师,请访问具体任务页面,以了解更多信息。
- boa-dev/boa has some good first issues
- softprops/shiplift - We have too many unwrap() calls in the codebase
如果你是 Rust 项目所有人,正在寻求贡献人员,请提交任务到这个页面。
Rust 核心更新
Rust 编译器性能
一些提升,一些会退,没有大的变化。
验测工作是由 @simulacrum完成的。修正范围:1160cf..a50d721
已核准的 RFCs
Rust 的改进遵循 RFC(request for comments)流程。如下是本周核准实现的 RFCs:
无
新的 RFCs
近期活动
线上
- June 17, 2021, Denver, CO, US - Python/Javascript 开发者学习 Rust - Juhis - Rust Denver
- June 18, 2021, Online - Rust 基础学习 | Rust 101 - KubeDaily
- June 29. 2021, Dallas, TX, US - Last Tuesday - Dallas Rust
如果你正在运作一次 Rust 活动,请将其添加到日历中,以便在此处提及。请向 Rust 社区团队发送电子邮件,以获取访问日历权限。
Rust 招聘信息
Tweede golf
Paige
ChainSafe Systems
Gnosis
Braiins
NZXT
Kollider
通过 @ThisWeekInRust,tweet 信息给我们,以便于我们在此处列出你的招聘信息!
本周引语
如果把手动管理内存比喻为“挥舞着一把枪”,那么,借用检查器(borrow checker)就如同一种自动安全装置,以防止你在粗心地指着自己时,不小心扣动了扳机。但它是粗粒度(coarse-grained)的,并且在警告方面有差错;它将你的“足迹”模拟为矩形,而非一个详细的全方位(3D)网格。如果你真的以为可以将它放在脚趾之间,同时可以避免击中自己(例如:“此函数返回的值,必须在不超过 15 次的连续调用中,保持活动状态”);那么,
unsafe
将允许你做尝试,但借用检查器(borrow checker)的内置规则不够精确,无法帮助到你。然而,如果你不小心把手放在了前面,但却没有声明,借用检查器(borrow checker)仍然会阻止你。
谢谢 StyMaar 的提议!
Rust 周报编辑人员:nellshamrell, llogiq、cdmistman。
谢谢您的阅读!