- Events and their content types no longer implement
Deserializeand instead implement
TryFrom<&str>, which take a
&strof JSON data and return a new
InvalidEventtype on error.
- Integers are now represented using the
UInttypes from the
- Some event types have new fields or new default values for previous fields to bring them up to date with version r0.5.0 of the client-server specification.
- Some event types no longer have public fields and instead use a constructor function to perform validations not represented by the type system.
- All enums now include a "nonexhaustive" variant to prevent exhaustive pattern matching. This will change to use the
#[nonexhaustive]attribute when it is stabilized.
ParseErrorhas been renamed
- This release brings ruma-events completely up to date with version r0.5.0 of the client-server specification. All previously supported events have been updated as necessary and the following events have newly added support:
- Improved documentation for the crate and for many types.
- Added many new tests.
- rustfmt and clippy are now used to ensure consistent formatting and improved code quality.