ZcashFoundation / zebra

Zcash - Financial Privacy in Rust 🦓
https://zfnd.org/zebra/
Apache License 2.0
412 stars 106 forks source link

Color eyre unpin #9031

Closed zancas closed 4 days ago

zancas commented 5 days ago

Builds on #9030

Motivation

color-eyre was restricitvely pinned to 0.6.3 which produced conflicts in crate consuming zebra

The goal is to allow consumers using a zebra crate as a dependencies to compile.

Specifications & References

https://doc.rust-lang.org/cargo/reference/resolver.html#semver-compatibility

Solution

By removing the manifest's pin to a specific minor version of the dependency, we allow consumers to find matching dependencies between their dependencies.

Tests

cargo nextest run

Follow-up Work

Allowing consumers flexibility in the dependency set of this workspace will make it more consumable.

I think a reasonable policy might be:

"^n" for n > 0 and

"~0.m" where n == 0.

Fastidious (nightly) runs of cargo update will keep developers aware of how the ecosystem is evolving relative to zebra.