axum has been updated to 0.8.1, we are using 0.7.9, after the update there was a build problem as several crates are using 0.7.9, but most likely they have already been migrated to 0.8 and I don't understand where the dependency error comes from
cargo tree --invert axum
error: There are multiple axum packages in your project, and the specification axum is ambiguous.
Please re-run this command with one of the following specifications:
axum@0.7.9
axum@0.8.1
That change has been merged into the master branch of tonic’s GitHub repository, but there has not yet been any release of tonic to crates.io after that merge. If you look at https://crates.io/crates/tonic you can see that the last release was 4 months ago, and https://docs.rs/crate/tonic/0.12.3/source/Cargo.toml.orig will show you the source code of that release (which includes axum = {version = "0.7", default-features = false, optional = true}). When you are trying to troubleshoot problems with dependencies and want to determine what those dependencies’ code is, the source of truth is the contents of crates.io packages (which can be viewed through docs.rs), not GitHub. There is no guarantee that the same source code even exists on GitHub, even though it usually does, and if it does, the code in master/main/trunk is usually going to be newer than the release on crates.io.
Unless you want to publish your own crate to crates.io you can use tonic = { git = "https://github.com/hyperium/tonic" } to directly depend on the version from git. You can also add rev = "..." to specify the exact commit you want to use.