element-hq / element-hq/synapse
Synapse accepts optional unspecced `servers` field in `PUT directory/room/{roomAlias}`
- Dominant language
- Python
- Stars
- 4.6k
- Forks
- 600
- Avg merge
- 5d 22h
- Merged PRs (30d)
- 51
Description
This issue has been migrated from [#14177](https://github.com/matrix-org/synapse/issues/14177).
---
Spec: https://spec.matrix.org/v1.4/client-server-api/#put_matrixclientv3directoryroomroomalias
https://github.com/matrix-org/synapse/blob/6b99a66fe0260682fa95a0b19d3bee19c1e48876/synapse/rest/client/directory.py#L74-L89
Forwarded to here https://github.com/matrix-org/synapse/blob/1a209efdb2a6c51e52dd277de7581099852877ae/synapse/handlers/directory.py#L173 and to here https://github.com/matrix-org/synapse/blob/1a209efdb2a6c51e52dd277de7581099852877ae/synapse/handlers/directory.py#L93-L95 and eventually written to the database here https://github.com/matrix-org/synapse/blob/3e0536cd2afb5a640619bd872fc27b068ec3eb9b/synapse/storage/databases/main/directory.py#L112-L117
Contributor guide
Research direction
Start with the PUT room-alias handling in synapse/rest/client/directory.py, then follow the references into synapse/handlers/directory.py and synapse/storage/databases/main/directory.py. Compare the accepted request fields with the linked Matrix specification and trace where servers is persisted. Done means the endpoint behavior matches the specification and the unspecced field is no longer accepted or stored.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend, databases
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100