semver icon indicating copy to clipboard operation
semver copied to clipboard

Implement PartialEq on `Error` or expose `ErrorKind`

Open orhun opened this issue 1 year ago • 1 comments

Hello!

I would like to use the error type of semver in my project via thiserror like so:

#[derive(Debug, thiserror::Error, PartialEq)]
pub enum ParseError {
    /// An invalid semantic version string
    ///
    /// This error occurs when a semantic version cannot be parsed from a string
    #[error("Invalid semver: {0} ({1:?})")]
    InvalidSemver(String, #[source] semver::Error),
}

However, this is not possible due to semver::Error does not implement PartialEq. Manually implementing that is a pain since I have a many other error variants.

Another thing that I thought about is using semver::ErrorKind but that's not exposed.

Can you help me with the case above? I'm also happy to submit a PR. LMK!

orhun avatar Nov 04 '24 17:11 orhun