diff --git a/crates/ruma-client-api/CHANGELOG.md b/crates/ruma-client-api/CHANGELOG.md index 7568a795..11513f08 100644 --- a/crates/ruma-client-api/CHANGELOG.md +++ b/crates/ruma-client-api/CHANGELOG.md @@ -9,6 +9,7 @@ Improvements: variable, or inside `.cargo/config.toml`. It can also be enabled by setting the `RUMA_UNSTABLE_EXHAUSTIVE_TYPES` environment variable. - Add `ErrorKind::ThreepidMediumNotSupported`, according to MSC4178. +- Add `ErrorKind::UserSuspended`, according to MSC3823. # 0.19.0 diff --git a/crates/ruma-client-api/src/error.rs b/crates/ruma-client-api/src/error.rs index 7271c535..9f4531be 100644 --- a/crates/ruma-client-api/src/error.rs +++ b/crates/ruma-client-api/src/error.rs @@ -223,6 +223,9 @@ pub enum ErrorKind { /// M_USER_LOCKED UserLocked, + /// M_USER_SUSPENDED + UserSuspended, + #[doc(hidden)] _Custom { errcode: PrivOwnedStr, extra: Extra }, } @@ -305,6 +308,7 @@ impl AsRef for ErrorKind { #[cfg(feature = "unstable-msc3843")] Self::Unactionable => "M_UNACTIONABLE", Self::UserLocked => "M_USER_LOCKED", + Self::UserSuspended => "M_USER_SUSPENDED", Self::_Custom { errcode, .. } => &errcode.0, } } diff --git a/crates/ruma-client-api/src/error/kind_serde.rs b/crates/ruma-client-api/src/error/kind_serde.rs index 21a2f271..0477ccab 100644 --- a/crates/ruma-client-api/src/error/kind_serde.rs +++ b/crates/ruma-client-api/src/error/kind_serde.rs @@ -254,6 +254,7 @@ impl<'de> Visitor<'de> for ErrorKindVisitor { #[cfg(feature = "unstable-msc3843")] ErrCode::Unactionable => ErrorKind::Unactionable, ErrCode::UserLocked => ErrorKind::UserLocked, + ErrCode::UserSuspended => ErrorKind::UserSuspended, ErrCode::_Custom(errcode) => ErrorKind::_Custom { errcode, extra }, }) } @@ -314,6 +315,7 @@ enum ErrCode { #[cfg(feature = "unstable-msc3843")] Unactionable, UserLocked, + UserSuspended, _Custom(PrivOwnedStr), }