stm32f103xx-hal
stm32f103xx-hal copied to clipboard
Better Cargo Depenency Version handling
I was wondering if it may be better to change the cargo crates version dependency so we use something like Tilde requirements (https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html). Currently there are so many identical dependencies that it is not uncommon to see two versions of the same crate compiled into the same program, even though they are mostly compatible. The tilde dependency at least allows minor revisions, which can be broken during major revisions.
Other examples like stm32f103xx seem to not really depend on other crates (e.g. the optional crate cortex-m-rt), but still specify the exact version required. I'm also not entirely sure how it works if two different crates require the same package and one of the crates asks for any version (*) and the other asks for a specific version, if they both then agree on the same version.
I'd be willing to help submit pull requests if there is some consensus as to how to manage this?