This is a summary of what has been happening around Cargo development for the last 6 weeks which is approximately the merge window for Rust 1.83. Carg

This Development-cycle in Cargo: 1.83

submited by
Style Pass
2024-11-01 19:30:02

This is a summary of what has been happening around Cargo development for the last 6 weeks which is approximately the merge window for Rust 1.83.

Cargo can't be everything to everyone, if for no other reason than the compatibility guarantees it must uphold. Plugins play an important part of the Cargo ecosystem and we want to celebrate them.

In preparation for documenting the MSRV-aware dependency resolver, epage revamped the dependency resolution documentation ( #14620, #14662, ) and wrote down the lessons learned on choosing an MSRV from the RFC process (#14636).

Previous, we discussed suboptimal results when resolving dependencies with multiple distinct MSRVs in a workspace. We were resolving for the lowest MSRV in the workspace. For a workspace member with any other MSRV, they would either get a version older than needed or too new. We proposed resolving for compatibility with the most MSRVs in the workspace. We made reporting improvements to better communicate this. However, there was still concerns over newer users unintentionally ending up in this situation and being confused. With the MSRV policy recommendations we made in #14636, we are directing users away from this situation. In comparing with the current state and the remaining problems with the proposed state, we felt the balance shifted in favor of the proposed state and we merged it in #14569.

At this point, epage posted #14639 to stabilize and document the MSRV-aware resolver. FCP did not close before the end of 1.83, so expect this for 1.84.

Leave a Comment