[Rust Daily] 2023-09-05 cargo-audit version 0.18 - performance, compatibility and security improvements

cargo-audit version 0.18 - performance, compatibility and security improvements

cargo audit is a tool that checks your project dependencies for known security vulnerabilities. By default, it checks your Cargo.lock file, but it can also scan compiled binaries. The new version brings the following features:

  • Performance: cargo audit now uses the sparse crates.io index when checking for withdrawn packages, which greatly speeds up the scanning process since the entire crates.io index no longer needs to be downloaded.

  • Security: cargo audit previously relied on OpenSSL on all platforms. In this release, we have switched to rustls - a high-quality, memory-safe implementation of TLS in Rust.

  • Compatibility: Since switching from libgit2 to gitoxide as our git implementation, many long-standing issues have been resolved.

Github warehouse address: https://github.com/rustsec/rustsec

tokio-graceful: A graceful shutdown tool for Rust projects using the Tokio asynchronous runtime

tokio-graceful is a graceful shutdown tool for Rust projects using the Tokio asynchronous runtime.

This project uses  the concept of guard  to help manage and control the application shutdown process: when a "guard" exists, it can prevent the application from shutting down until the "guard" is given up or discarded. This way, it ensures that all important tasks and operations are completed before the application shuts down. In tokio-graceful, there are two types of "guards": weak guards and strong guards. Weak guards will not affect the reference count of shutdown, while strong guards will

With Guard in Rust the tool is created and used lock-free, and only locks under the following circumstances:

  • When you use a (weak or strong) guard to wait to see if the shutdown signal is actually canceled;

  • When checking whether the application can be shut down, it usually locks until a shutdown signal is received and drops all (strong) daemons.

And, the tool is written in 100% safe Rust code. It provides some examples showing how to use this toolkit in a real production environment.

Github warehouse address: https://github.com/plabayo/tokio-graceful

Slint 1.2 released: Enhanced platform abstraction

Introduction: Slint version 1.2 is released, including many new features while maintaining full backwards compatibility. It mainly has the following characteristics:

  • Improved platform API: Slint's platform API is a low-level interface that provides abstractions for the window surface and event loop. In version 1.2, we significantly expanded the public APIs of Rust and C++ to support new use cases, such as embedding Slint UI in external applications, implementing your own backend for custom window systems, and more.

  • Support for Espressif: We built a Slint ESP-IDF component for the Espressif IDF framework, which implements our new C++ platform layer.

  • LinuxKMS backend: In Slint 1.2, we introduced the new lightweight, experimental LinuxKMS backend to provide a single full-screen application user interface for embedded devices.

  • Other features and bug fixes: including the addition of ReverseModel, an enhanced StandardListView, a newbie guide in the new VS code extension, and more.

-- From Daily Team RustPlumber

Community learning exchange platform subscription:

  • Rust.cc Forum: support rss

  • WeChat public account: Rust language Chinese community

Guess you like

Origin blog.csdn.net/u012067469/article/details/132726741