m.room.create
has a null
room_id
when calling /state
on a room #1094
Labels
No labels
Bug
Cherry-picking
Database
Dependencies
Dependencies/Renovate
Difficulty
Easy
Difficulty
Hard
Difficulty
Medium
Documentation
Enhancement
Good first issue
Help wanted
Inherited
Matrix/Administration
Matrix/Appservices
Matrix/Auth
Matrix/Client
Matrix/Core
Matrix/Federation
Matrix/Hydra
Matrix/MSC
Matrix/Media
Meta
Meta/CI
Meta/Packaging
Priority
Blocking
Priority
High
Priority
Low
Security
Status/Blocked
Status
Confirmed
Status
Duplicate
Status
Invalid
Status
Needs Investigation
To-Merge
Wont fix
old/ci/cd
old/rust
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
continuwuation/continuwuity#1094
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Calling
GET /_matrix/client/v3/rooms/:room_id/state
returns the state as expected, however them.room.create
event lacks theroom_id
, which is illegal for client-formatted events.example:
This mainly has an impact on clients that keep track of rooms by ensuring a foreign key relation between events and room IDs, which will obviously fail when the room ID is null. Notable examples are Gomuks web.
This is proving to be a very annoying issue.
#[serde(skip_serializing_if = "Option::is_none")]
pub room_id: Option<OwnedRoomId>,
This somehow needs to be populated by
room_id_or_hash()
, but not only that, only if we're converting to a client event AND it is not already populated.There isn't really a centeral place to set this - #847 is similar, I traced where all the points that clients recieve events are to do the transforms. The only actual problems with that were code style/not parelising the additional database lookups iirc