< 返回版块

苦瓜小仔 发表于 2025-06-12 10:47

Tags:日报

RustConf 2025 演讲嘉宾公布

演讲者包括 Microsoft Azure CTO、Dioxus 作者、Redox OS 作者等等。

演讲者介绍:https://rustconf.com/speakers/

基金会公告:https://rustfoundation.org/media/announcing-the-rustconf-2025-speaker-lineup/

公告:Rust Leadership Council 六月更新

2025 年 6 月,Rust 领导委员会发布了最新进展。委员会迎来了 Josh Stone 加入,代表编译器团队。

他们还招聘了项目管理经理 Tomas Sedovic,以支持项目管理工作。

5 月的 RustWeek 全员会议吸引了超过 150 人参加,获得了积极反馈。

委员会批准了多项举措,包括创建愿景文档团队、更新博客发布流程和团队入职文档等。

此外,他们还在讨论 Rust 社区的组织形式、基金会预算分配(包括旅行预算和 2026 年规划)以及如何改善委员会与基金会之间的沟通。

阅读:https://blog.rust-lang.org/inside-rust/2025/06/11/leadership-council-update/

Reddit:https://www.reddit.com/r/rust/comments/1l96q82/june_2025_leadership_council_update/

文章《Rust Could be a Good Beginner Language》

作者:scp-iota

这篇文章探讨了 Rust 是否适合初学者学习。尽管 Rust 通常被认为是一种复杂的语言,但作者认为它可能非常适合编程初学者。

文章指出,初学者在学习编程时,需要同时掌握编程概念和语言特性,而 Rust 的所有权、引用和不可变性等概念可以帮助他们更好地理解编程基础,避免在其他语言中常见的错误。

此外,Rust 强大的类型推断功能使其代码看起来简洁,类似于动态语言 Python,同时还能享受编译时类型检查的好处。作者认为,从 Rust 开始学习编程可以为后续学习其他低级语言打下坚实的基础。

阅读:https://scp-iota.github.io/software/2025/06/11/rust-for-beginners.html

Reddit:https://www.reddit.com/r/rust/comments/1l94dzz/rust_could_be_a_good_beginner_language/

文章《Are We Embedded Yet? #2》

作者:jslazak

Ratatui 是一个用于构建终端用户界面的库,其 0.30.0-alpha.4 版本已支持 no_std,使其能够在无标准库支持的嵌入式设备上运行。

作者还发起了“Rat in The Wild”挑战,鼓励开发者将 Ratatui 应用推向极限,甚至在 PlayStation 1 等平台上运行。

此外,作者正在为 Mousefood(一个与 Ratatui 集成的输入处理库)添加 no_std 支持,并开发了一个在 ESP32 上运行的演示应用。

作者还计划在未来与其他开发者合作开展联合项目,并在多个技术会议上分享 Ratatui 的最新动态和演示。

阅读:https://jslazak.com/are-we-embedded-yet-2/

Reddit:https://www.reddit.com/r/rust/comments/1l8vuu2/ratatui_are_we_embedded_yet/

文章《rustc_codegen_gcc 进展报告》

作者:antoyo

rustc_codegen_gcc 是一个为 Rust 编译器前端提供 GCC 后端的项目,支持更多架构和优化。

过去几个月的进展包括改进文档、同步 Rust 最新版本、修复递归内联错误、支持更多调用约定属性等。

目前项目仍面临同步困难,作者计划在 Rust CI 中编译 sysroot,以减少错误。未来将继续修复链接时优化(LTO)问题,并逐步完善更多功能。

阅读:https://blog.antoyo.xyz/rustc_codegen_gcc-progress-report-36

Reddit:https://www.reddit.com/r/rust/comments/1l9460l/rustc_codegen_gcc_progress_report_36/

文章《Building a Custom JSON Deserializer with binary support and more》

文章介绍了为 Socket.IO 协议开发的自定义 JSON 反序列化器,解决了 Rust 中处理 Socket.IO 数据时的难题,如二进制数据占位符、变长参数和元组与数组的区分。

通过扩展 serde_json,实现了延迟提取事件名、自动注入二进制数据、区分元组和数组等功能,性能提升 10 倍。

阅读:https://totodore.github.io/serde-wrapper/

文章:《Patterns for Modeling Overlapping Variant Data in Rust》

这篇文章探讨了在 Rust 中建模重叠变体数据的六种模式,以搜索引擎为例。每种方法都有其优缺点:

  1. 每个类型一个结构体:简单易懂,但代码重复最多。
  2. 共享核心结构体:减少字段重复,但灵活性差,难以适应新类型。
  3. 单个类型与变体枚举:减少字段重复,但结构僵化,难以扩展。
  4. 枚举与完整结构体:灵活且类型安全,但实现时代码重复较多。
  5. 单体结构体与类型字段:零代码重复,但需要运行时检查,API 可能混乱。
  6. 基于特质的组合:灵活性最高,无字段重复,但初始代码量大,可能需要运行时检查。

作者指出,没有一种方法是万能的,选择哪种取决于具体需求、维护成本和 API 设计。

阅读:https://mcmah309.github.io/posts/patterns-for-modeling-overlapping-variant-data-in-rust/

Reddit:https://www.reddit.com/r/rust/comments/1l8qnte/patterns_for_modeling_overlapping_variant_data_in/

log_hz - 限制发送速率的日志库

一个日志记录库,它提供用于以受限制的速率进行日志记录的宏。

这个板条箱的灵感来自于 ROS 1 的 ROS_LOG_THROTTLE 经验。

在机器人应用中,我们经常有以固定(通常非常高)速率运行的循环。 在这些循环中,日志消息对于调试非常有用,但也可能很快使日志中充满重复信息。 防止过多日志垃圾邮件的受限制日志记录宏可能非常有用。

文档:https://docs.rs/log_hz

InterceptSuite - SOCKS5 代理工具

InterceptSuite 是一个开源的 SOCKS5 代理工具,支持 Windows、Linux 和 macOS。

它可用于拦截、检查和分析 TLS/SSL 网络流量,甚至实时修改请求和响应。

该工具用 C 语言构建核心库,使用 Rust Tauri 开发 GUI,完全免费且开源。

作者在开发过程中尝试了多种语言和框架,最终选择了 Tauri,因为它比 Python 和 .NET 更轻量且易于使用。

仓库:https://github.com/Anof-cyber/InterceptSuite/

Reddit:https://www.reddit.com/r/rust/comments/1l5u9c4/i_have_built_a_cross_platform_socks5_proxy_based/

TrailBase - Firebase 替代品

TrailBase 是一个易于自托管、亚毫秒级延迟的 Firebase (一个由谷歌支持的全面移动和网络开发平台)替代品。

它提供类型安全的 REST 和实时 API、内置 JS/ES6/TS 运行时、服务端渲染、认证与管理界面等功能,助力开发者减少组件数量,专注构建移动、Web 或桌面应用。

最新版本 v0.13 增加了嵌套过滤器、改进的认证界面、Swift 客户端实现、多租户数据库支持、数据库引用的完全限定、数据库架构可视化、混合工作负载下的写入吞吐量提升、服务端 JavaScript 运行时中的 SQLite 事务、SQLite 视图上的外键扩展、可配置的密码策略等众多改进和更新。

仓库:https://github.com/trailbaseio/trailbase

Reddit:https://www.reddit.com/r/rust/comments/1l8t562/media_trailbase_013_submillisecond_open/

Podcast:What's New in Rust 1.79 and 1.80

该播客介绍了 Rust 1.79 和 1.80 版本的主要更新内容。

Rust 1.79 引入了内联常量表达式、关联类型位置的边界支持、自动临时生命周期扩展等功能,并稳定了多个 API,如 {integer}::unchecked_add<[u8]>::utf8_chunks

Rust 1.80 增加了 LazyCellLazyLock,支持检查过的 cfg 名称和值,以及模式中的独占范围,并稳定了如 Vec::<[T; N]>::into_flattened<[u8]>::trim_ascii 等 API。

此外,1.80.1 修复了浮点比较的误编译问题和 dead_code lint 的误报。

收听:https://rustacean-station.org/episode/rust-1.79-1.80/

Reddit:https://www.reddit.com/r/rust/comments/1l8xmog/podcast_whats_new_in_rust_179_and_180_rustacean/

视频:《From zero to demo: a newcomer's experience learning Bevy》

介绍 Bevy 的入门教程。

观看:https://www.youtube.com/watch?v=_FIDuLV0ZsA

Slides:https://docs.google.com/presentation/d/1OXN2EZhv1I4cW_Nlj24VPEqkOtdT8kWBO00Xb9Vm1Rw

--

From 日报小组 苦瓜小仔

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页