For example, my project depends on crate A, A depends on B, then my project can't use crate B until I put B in the dependencies section of my project's Cargo.toml.
In Java if you're using Maven or Gradle, you can directly use B and don't need to declare it in the pom.xml or build.gradle. Why didn't cargo follow that path?