fix(versionable)!: wrong derived bounds in the Versionize macro

Over-restrictive derived bounds were in some cases unsatisfiable, making the
`versionize` method uncallable.

BREAKING_CHANGE:
- The `#[versionize(bound = ...)]` attribute is not needed anymore, so it has
been removed.
This commit is contained in:
Nicolas Sarlin
2024-09-18 11:51:25 +02:00
committed by Nicolas Sarlin
parent a631904bd1
commit b63347336b
6 changed files with 165 additions and 253 deletions

View File

@@ -3,6 +3,6 @@
/// This trait should be implemented for each version of the original type that is not the current
/// one. The upgrade method is called in chains until we get to the last version of the type.
pub trait Upgrade<T> {
type Error: std::error::Error;
type Error: std::error::Error + Send + Sync + 'static;
fn upgrade(self) -> Result<T, Self::Error>;
}