惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
The Blog of Author Tim Ferriss
博客园 - 司徒正美
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
有赞技术团队
有赞技术团队
量子位
S
SegmentFault 最新的问题
博客园 - 聂微东
博客园 - 【当耐特】
J
Java Code Geeks
美团技术团队
Hugging Face - Blog
Hugging Face - Blog
H
Help Net Security
V
V2EX
人人都是产品经理
人人都是产品经理
博客园 - Franky
罗磊的独立博客
Engineering at Meta
Engineering at Meta
A
About on SuperTechFans
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
云风的 BLOG
云风的 BLOG
Y
Y Combinator Blog
Apple Machine Learning Research
Apple Machine Learning Research

Rust Blog

Security Advisory for Cargo (CVE-2026-5223) | Rust Blog Security Advisory for Cargo (CVE-2026-5222) | Rust Blog Project goals update — April 2026 (end of 2025H2) | Rust Blog Rust is participating in Outreachy | Rust Blog Raising the baseline for the `nvptx64-nvidia-cuda` target | Rust Blog Announcing Google Summer of Code 2026 selected projects | Rust Blog Announcing Rust 1.95.0 | Rust Blog docs.rs: building fewer targets by default | Rust Blog Changes to WebAssembly targets and handling undefined symbols | Rust Blog Announcing Rust 1.94.1 | Rust Blog Security advisory for Cargo | Rust Blog What we heard about Rust's challenges | Rust Blog Call for Testing: Build Dir Layout v2 | Rust Blog Announcing rustup 1.29.0 | Rust Blog Announcing Rust 1.94.0 | Rust Blog 2025 State of Rust Survey Results | Rust Blog Rust debugging survey 2026 | Rust Blog Update on the October 15, 2018 incident on crates.io Announcing Rust 1.29.2 Announcing Rust 1.29 Announcing Rust 1.28 What is Rust 2018? Announcing Rust 1.27.2 Announcing Rust 1.27.1 Security Advisory for rustdoc Announcing Rust 1.27 Announcing Rust 1.26.2 Announcing Rust 1.26.1 Rust turns three Announcing Rust 1.26
Cargo in 2020 | Inside Rust Blog
Eric Huss on behalf of the Cargo team · 2020-01-10 · via Rust Blog

This post is an overview of the major projects the Cargo team is interested in tackling in 2020.

It can be difficult to plan and predict around a volunteer-based open-source project with limited resources. Instead of trying to present a wish list, these are projects that already have a solid effort planned to push them forward. That doesn't mean that we are not interested in other projects. We have compiled a more detailed wish list at https://github.com/rust-lang/cargo/projects/1 that gives an outline of things we would like to see, but are unlikely to have significant progress this year.

If you are interested in helping, please let us know! We may not have time to shepherd additional projects, but we may have time to give some amount of feedback and review, particularly for well-motivated people who can do the legwork of design and gathering a consensus.

Features

Features provide a way to express optional dependencies and conditional compilation of code. Fixes and enhancements to Features are one of the most requested things we hear. In the beginning of 2020, we plan to implement a new feature resolver which will make it easier to make progress on implementing and experimenting with new behavior. There is a wide variety of different enhancements that we are looking at, which we hope to make incremental progress on while retaining a full picture of the long-term plan.

Initially we plan to address the issues of decoupling shared dependencies built with different features. Currently, features are unified for all uses of a dependency, even when it is not necessary. This causes problems when a feature intended for one context is incompatible with another. This often happens for packages which have conditional no_std support. This appears with build-dependencies, dev-dependencies, target-specific dependencies, and large workspaces, each of which have their unique challenges.

Beyond that, the following is a brief view of the other major enhancements we are tracking for the future:

  • Workspace feature selection and unification
  • Automatic features
  • Namespaced features
  • Mutually exclusive features
  • Private/unstable features
  • Profile and target default features
  • And working through some of the 50+ feature issues.

There are some significant challenges around retaining backwards compatibility, and being sensitive to increased build times. We hope that we can address some of the major pain points while balancing those concerns.

std aware Cargo

The "std aware Cargo" project is to make Cargo aware of the Rust standard library, and to build it from source instead of using the pre-built binaries that ship with rustc. Some of the notable benefits are:

  • Customizing the compile-time flags of the standard library, such as using different optimizations, target-cpu, debug settings, etc.
  • Supporting cross-compiling to new targets which do not have official distributions.
  • Paving the road for future enhancements, such as compiling with different features, and using custom sources.

A significant amount of work has already been finished in 2019 with the -Zbuild-std feature available on the nightly channel. There is still a long road to bring it to a state where it can be stabilized. Work is being tracked in the wg-cargo-std-aware repo, and anyone interested is encouraged to leave feedback on the issue tracker.

Profiles

Profiles have received a significant amount of work in 2018 and 2019. Overrides are now stable (shipping in Rust 1.41). Custom named profiles are available on the nightly channel. In 2020 we hope to continue pushing these enhancements forward. Some of the efforts we are working towards are:

Ongoing projects

Some ongoing efforts don't have an end, and we intend to continue making progress with them. Several new chapters have been added to the documentation, and there is more to come. The JSON APIs are continually expanding with new information making it easier to integrate tools and extract information. And of course, trying to stay on top of bugs and issues!