Earlier quoted context omitted.
Hi. As I said in that page, I do know that cargo is working as designed, and that "0.4.1" is the same as "^0.4.1". My point is maybe a little more subtle, that cargo takes the newest allowed under the constraints, so given "^0.4.1", it has a choice between 0.4.1, 0.4.2, 0.4.3, 0.4.4, and 0.4.5, and it takes the last. When you're adding a new direct dependency, taking the latest is almost certainly right. But when you…
I think your wording there is incorrect and very misleading, even if you do understand it. You say > Cargo selects the latest version of a new dependency and its own new dependencies but that's not true; it selects the "latest semver-compatible minor version", which is a pretty different thing. The way you've phrased it makes it seem like cargo just flat out selects the newest version period (which can cause breaking…
No, it's exactly the same thing. Russ already established that an incompatible module is not just a later version but, in fact, a totally different thing.