【Rust日报】Datadog 将静态分析器从 Java 迁移到 Rust, 分析时间减少了三倍

2024-05-29 19:03:20 浏览数 (2)

Datadog 将静态分析器从 Java 迁移到 Rust, 分析时间减少了三倍

Codiga 加入 Datadog 后,作者团队需要将静态分析器整合到 Datadog,但遇到扩展语言支持和解析速度慢的问题。

最终选择使用Rust进行迁移, 在迁移过程中, 主要挑战是理解 Copy 和 Clone trait、借用检查器以及并行处理。

迁移后,分析时间减少了三倍,且不再依赖 JVM,分析器可以嵌入 IDE 实时反馈。

原文链接 https://www.datadoghq.com/blog/engineering/how-we-migrated-our-static-analyzer-from-java-to-rust/

LazyCell 和 LazyLock 在 nightly 已经稳定

目前, LazyCell 和 LazyLock 在 nightly 已经稳定, 不出意外, 会在 1.80 正式稳定.

原文链接 https://github.com/rust-lang/rust/pull/121377

约20%的crates 使用unsafe关键字

Rust 基金会近日报告指出,尽管 Rust 消除了大多数运行时内存问题,但约20%的 crates 使用了unsafe关键字。报告显示,截至2024年5月,145,000个 Rust crates 中,127,000个包含重要代码,这其中19.11%使用了unsafe关键字,而34.35%直接调用了使用unsafe关键字的其他 crates。

这些unsafe Rust大多用于调用第三方非 Rust 语言代码或库,如 C 或 C 。例如,使用最多的unsafe源码是 windows crate,用于调用 Windows API。尽管这些代码需要特别小心,但它们并非天然存在漏洞。 为维护 Rust 的安全性,Rust 项目开发了如 Miri 等检查工具。Rust 基金会通过其安全计划不断推进 Rust 生态系统的安全,开发了依赖关系图 Painter、错别字检测工具 TypoMania 和恶意 crates 监控工具 Sandpit,帮助识别和响应潜在的安全问题。

原文链接 https://developers.slashdot.org/story/24/05/25/2250236/rust-foundation-reports-20-of-rust-crates-use-unsafe-keyword

将 CSV 数据集加载到 NDArray

本文探讨如何将现实世界的数据集加载到 ndarray::Array 中,逐步涵盖高层次特征和样本分析。

使用 Iris Flower Dataset 作为示例, 解释数据集特征及分析目标(样本数量、特征数量、数据类型、缺失值等)。

原文链接 https://datacrayon.com/data-analysis-with-rust-notebooks/loading-datasets-from-csv-into-ndarray/

0 人点赞