Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Reorganize Pydantic models and types used in handlers (#17279) | Eric Eastwood | 2024-06-10 | 1 | -284/+0 |
| | | | | | | Spawning from https://github.com/element-hq/synapse/pull/17187#discussion_r1619492779 around wanting to put `SlidingSyncBody` (parse the request in the rest layer), `SlidingSyncConfig` (from the rest layer, pass to the handler), `SlidingSyncResponse` (pass the response from the handler back to the rest layer to respond) somewhere that doesn't contaminate the imports and cause circular import issues. - Moved Pydantic parsing models to `synapse/types/rest` - Moved handler types to `synapse/types/handlers` | ||||
* | Add Sliding Sync `/sync` endpoint (initial implementation) (#17187) | Eric Eastwood | 2024-06-06 | 1 | -3/+188 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on [MSC3575](https://github.com/matrix-org/matrix-spec-proposals/pull/3575): Sliding Sync This iteration only focuses on returning the list of room IDs in the sliding window API (without sorting/filtering). Rooms appear in the Sliding sync response based on: - `invite`, `join`, `knock`, `ban` membership events - Kicks (`leave` membership events where `sender` is different from the `user_id`/`state_key`) - `newly_left` (rooms that were left during the given token range, > `from_token` and <= `to_token`) - In order for bans/kicks to not show up, you need to `/forget` those rooms. This doesn't modify the event itself though and only adds the `forgotten` flag to `room_memberships` in Synapse. There isn't a way to tell when a room was forgotten at the moment so we can't factor it into the from/to range. ### Example request `POST http://localhost:8008/_matrix/client/unstable/org.matrix.msc3575/sync` ```json { "lists": { "foo-list": { "ranges": [ [0, 99] ], "sort": [ "by_notification_level", "by_recency", "by_name" ], "required_state": [ ["m.room.join_rules", ""], ["m.room.history_visibility", ""], ["m.space.child", "*"] ], "timeline_limit": 100 } } } ``` Response: ```json { "next_pos": "s58_224_0_13_10_1_1_16_0_1", "lists": { "foo-list": { "count": 1, "ops": [ { "op": "SYNC", "range": [0, 99], "room_ids": [ "!MmgikIyFzsuvtnbvVG:my.synapse.linux.server" ] } ] } }, "rooms": {}, "extensions": {} } ``` | ||||
* | Correctly mention previous copyright (#16820) | Erik Johnston | 2024-01-23 | 1 | -0/+1 |
| | | | | | During the migration the automated script to update the copyright headers accidentally got rid of some of the existing copyright lines. Reinstate them. | ||||
* | Update license headers | Patrick Cloke | 2023-11-21 | 1 | -10/+16 |
| | |||||
* | Add support for pydantic v2 via pydantic.v1 compat module (#16332) | Maxwell G | 2023-09-25 | 1 | -1/+6 |
| | | | While maintaining support with pydantic v1. | ||||
* | A third batch of Pydantic validation for rest/client/account.py (#13736) | David Robertson | 2022-09-15 | 1 | -13/+15 |
| | |||||
* | A second batch of Pydantic models for rest/client/account.py (#13687) | David Robertson | 2022-09-07 | 1 | -4/+20 |
| | |||||
* | Use Pydantic to systematically validate a first batch of endpoints in ↵ | David Robertson | 2022-08-15 | 1 | -0/+69 |
`synapse.rest.client.account`. (#13188) |