mirror of
https://gitlab.computer.surgery/matrix/grapevine.git
synced 2025-12-17 07:41:23 +01:00
Grapevine is a Matrix homeserver, forked from Conduit 0.7.0
Previous behavior was causing us to error out of the entire state_cache::update_membership function when it saw an invalid m.direct, making it impossible for affected users to join upgraded rooms. This bug is especially bad if an affected user attempts to upgrade a room, because we will fail to create their join event in the new room, leaving both rooms permanently bricked. The new behavior should never prevent users from joining a room based on the contents of their account data, and should migrate the `m.direct` event in a reasonable way even if it is partially corrupted by the element bug. This also fixes a bug where the previous implementation will unintentionally remove any keys that aren't part of the expected m.direct schema. I don't know of any cases where this came up in practice. Fixes: #46 |
||
|---|---|---|
| bin | ||
| book | ||
| nix | ||
| src | ||
| .envrc | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .lycheeignore | ||
| .markdownlintignore | ||
| book.toml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| clippy.toml | ||
| default.nix | ||
| engage.toml | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE.md | ||
| README.md | ||
| rust-toolchain.toml | ||
| rustfmt.toml | ||