We have a workspace with imap-codec depending on imap-types and we (currently) develop both in lockstep. Thus, we use a [patch] directive to tell Cargo to use the local imap-types. All other crates ...
I want cargo-semver-checks to check for breaking changes. Updating imap-types (whose types we expose in the public API of imap-codec) is a breaking change, too. Thus, cargo-semver-checks should check. But it also needs to ignore the local [patch] because otherwise we would check local vs local. So... it tries to fetch imap-types 2.0.0 from crates.io and fails. (Possibly a mistake in thinking here ...)
When we do a release, we need to make sure to first publish imap-types and then imap-codec (depending on imap-types on crates.io.) Question: Are there any checks we might miss doing so?
We have a workspace with
imap-codec
depending onimap-types
and we (currently) develop both in lockstep. Thus, we use a[patch]
directive to tell Cargo to use the localimap-types
. All other crates ...... use
path = "imap-{types,codec}"
directly.Thoughts/Observations:
cargo-semver-checks
to check for breaking changes. Updatingimap-types
(whose types we expose in the public API ofimap-codec
) is a breaking change, too. Thus,cargo-semver-checks
should check. But it also needs to ignore the local[patch]
because otherwise we would check local vs local. So... it tries to fetchimap-types 2.0.0
from crates.io and fails. (Possibly a mistake in thinking here ...)imap-types
and thenimap-codec
(depending onimap-types
on crates.io.) Question: Are there any checks we might miss doing so?