< 返回版块

rust 日报 babpstep 发表于 2023-09-05 21:35

Tags:cargo,tokio,slint

cargo-audit 0.18 版本 - 性能、兼容性和安全性改进

cargo audit 是一个工具,可以检查你的项目依赖项中已知的安全漏洞。默认情况下,它会检查你的 Cargo.lock 文件,但也可以扫描编译后的二进制文件。 新版本带来了以下特点:

  • 性能: cargo audit 现在在检查被撤回的包时使用稀疏的 crates.io 索引,这大大加快了扫描过程,因为不再需要下载整个 crates.io 索引。
  • 安全性: cargo audit 之前依赖于所有平台上的 OpenSSL。在这个版本中,我们已经切换到 rustls - 一个高质量的、内存安全的 Rust 中的 TLS 实现。
  • 兼容性: 由于从 libgit2 切换到 gitoxide 作为我们的 git 实现,解决了许多长期存在的问题。

github仓库地址

tokio-graceful: 为使用 Tokio 异步运行时的 Rust 项目提供的优雅关机工具

tokio-graceful 是一个为使用 Tokio 异步运行时的 Rust 项目提供的优雅关闭工具。

该项目使用 guard 这个概念来帮助管理和控制应用程序的关机过程:当一个"guard"存在时,它可以阻止应用程序的关机,直到该"guard"被放弃或丢弃。这样,它可以确保在应用程序关机之前完成所有重要的任务和操作。在 tokio-graceful 中,有两种类型的"guard":弱守护和强守护。弱守护不会影响关机的引用计数,而强守护则会

通过 Rust 中的 Guard 该工具的创建和使用都是无锁的,并且只在以下情况下锁定:

  • 当你使用(弱或强)守护,等待是否真的取消了关闭信号时;
  • 当检查应用程序是否可以关闭时,通常会锁定,直到接收到关闭信号并丢弃所有(强)守护。

并且,该工具是用 100% 安全的 Rust 代码编写的。它提供了一些示例,展示了如何在实际的生产环境中使用这个工具包。

github仓库地址

Slint 1.2 发布:增强的平台抽象

介绍: Slint 1.2 版本发布,包括许多新功能,同时保持完全的向后兼容性。主要有以下特性:

  • 改进的平台API: Slint 的平台 API 是一个低级接口,为窗口表面和事件循环提供抽象。在 1.2 版本中,我们显著扩展了 Rust 和 C++ 的公共 API,以支持新的用例,如在外部应用程序中嵌入 Slint UI、为自定义窗口系统实现自己的后端等。
  • 对 Espressif 的支持: 我们为 Espressif IDF 框架构建了一个Slint ESP-IDF 组件,该组件实现了我们的新 C++ 平台层。
  • LinuxKMS 后端: 在 Slint 1.2 中,我们引入了新的轻量级、实验性的 LinuxKMS 后端,为嵌入式设备提供了单一全屏应用程序的用户界面。
  • 其他功能和错误修复: 包括添加 ReverseModel、增强的 StandardListView、新的 VS code 扩展中的新手指南等。

-- From 日报小组 RustPlumber

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页