Excellent, interesting blog post on how Rust's cargo does version resolution, why it favours the latest compatible version, and the tradeoffs in this space. https://aturon.github.io/2018/07/25/cargo-version-selection/