This repository was archived by the owner on Apr 26, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
This repository was archived by the owner on Apr 26, 2024. It is now read-only.
Leave room with unknown room version #15785
Copy link
Copy link
Open
Labels
A-LeaveLeaving a roomLeaving a roomO-UncommonMost users are unlikely to come across this or unexpected workflowMost users are unlikely to come across this or unexpected workflowS-TolerableMinor significance, cosmetic issues, low or no impact to users.Minor significance, cosmetic issues, low or no impact to users.T-EnhancementNew features, changes in functionality, improvements in performance, or user-facing enhancements.New features, changes in functionality, improvements in performance, or user-facing enhancements.
Description
Background
Synapse currently only supports leaving a room with a supported/known room version. This means you can get stuck in rooms with experimental room versions which are later dropped from Synapse.
If you try to leave a room with a room version that is no longer supported, the /leave request gives a 400 error with M_UNSUPPORTED_ROOM_VERSION
{
"errcode": "M_UNSUPPORTED_ROOM_VERSION",
"error": "Room !abc uses a room version org.matrix.mscxxx.test which is no longer supported"
}
The technical reason behind not being able to leave is that Synapse doesn't know how to resolve state in those rooms. Perhaps the spec needs some fallback mechanism for users wanting to escape or we can just make some assumptions and do our best effort at sending a leave.
What would you like to do?
Leave room with unknown/unsupported room version
Related issues:
Metadata
Metadata
Assignees
Labels
A-LeaveLeaving a roomLeaving a roomO-UncommonMost users are unlikely to come across this or unexpected workflowMost users are unlikely to come across this or unexpected workflowS-TolerableMinor significance, cosmetic issues, low or no impact to users.Minor significance, cosmetic issues, low or no impact to users.T-EnhancementNew features, changes in functionality, improvements in performance, or user-facing enhancements.New features, changes in functionality, improvements in performance, or user-facing enhancements.