653 Commits

Author SHA1 Message Date
Jason Volk
ac37db212a fix lints
Signed-off-by: Jason Volk <jason@zemos.net>
2025-01-01 22:20:39 +00:00
Jason Volk
6e4d02b9c0 add errors for feature not implemented or disabled
Signed-off-by: Jason Volk <jason@zemos.net>
2024-12-28 23:43:56 +00:00
strawberry
5a826d31a3
remove serde(flatten) in MSC4133 endpoints
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-12-15 03:23:31 -05:00
Kévin Commaille
b1790e05ce push: Allow to add custom data for pushers
Due to a clarification in the spec.
2024-12-15 03:10:09 -05:00
Kévin Commaille
f05d0e03a1 api: Disallow #[serde(flatten)] for single-body-fields of requests and responses
`#[ruma_api(body)]` must be used instead.
2024-12-15 03:07:49 -05:00
Kévin Commaille
3ca8adaadf client-api: Add ErrorKind::UserSuspended
According to MSC3823
2024-12-15 03:06:24 -05:00
Kévin Commaille
4a9dfc7b30 client-api: Remove outdated comment
The field is now correctly specified in the spec.
2024-12-15 02:57:17 -05:00
Kévin Commaille
6311fc644e client-api: Remove sentence about optional reason being blank.
If it is optional it makes no sense for it to be blank. This is due to a clarification in the Matrix spec.
2024-12-15 02:57:10 -05:00
Mathieu Velten
9af36342ff Add a test regarding ser/de of an UserId in a DirectUserIdentifier (#1968)
Add a test to check that a serialized UserId can be deserialized to an OwnedDirectUserIdentifier.

Also fixes Clippy failures.
2024-12-15 02:55:12 -05:00
Kévin Commaille
bc8b704e5b client-api: Add ErrorKind::ThreepidMediumNotSupported
According to MSC4178
2024-12-15 02:54:49 -05:00
Kévin Commaille
99081fd7d2 client-api: Remove unwanted empty line 2024-11-29 17:45:00 -05:00
strawberry
82ebed457a
correct MSC3266 room_version and encryption response fields
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-11-20 16:30:02 -05:00
strawberry
cf31b8798f add more missing unspecced r0 endpoints, fix silly upload_signatures struct
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-11-19 19:00:37 -05:00
Jason Volk
8cade7a14f client-api: add rooms/initialSync support
Signed-off-by: Jason Volk <jason@zemos.net>
2024-11-13 01:23:17 +00:00
Kévin Commaille
5ed3718310 client-api: Use Signatures in more places 2024-11-08 13:13:33 -05:00
Kévin Commaille
7f8f89eff7 identifiers: Differentiate signing keys from device keys
Use OwnedCrossSigningKeyId, OwnedDeviceSigningKeyId and
OwnedCrossSigningOrDeviceSigningKeyId instead of OwnedDeviceKeyId
to identify signing keys.
2024-11-08 13:13:15 -05:00
Kévin Commaille
09ff0b2819 identifiers: Differentiate one-time and fallback keys from device keys
Move the `DeviceKeyAlgorithm::SignedCurve25519` into the new
`OneTimeKeyAlgorithm` type.
Add `(Owned)OneTimeKeyId` and `(Owned)OneTimeKeyName` instead of using
`(Owned)DeviceKeyId`.
2024-11-08 13:02:19 -05:00
strawberry
dd8b13ed2f
add unspecced r0 routes to more key endpoints
may solve https://github.com/element-hq/element-ios/issues/5974
on conduwuit

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-28 16:40:53 -04:00
strawberry
9f6c48eea2
add MSC2815 support, query param and error codes
https://github.com/matrix-org/matrix-spec-proposals/pull/2815

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-19 18:30:44 -04:00
Kévin Commaille
f0b76f2295 chore: Mention Matrix 1.12 in changelog 2024-10-19 14:59:11 -04:00
Kévin Commaille
1aa2eadd70 client-api: Remove RuleScope
The `global` scope is hardcoded due to a clarification in the spec.
2024-10-19 14:58:59 -04:00
Charles Hall
7a8ca45bbe client-api: allow constructing ErrorBody::NotJson 2024-10-19 14:58:40 -04:00
strawberry
506b340302 add r0 endpoint to PUT /_matrix/client/r0/room_keys/keys
there's no reason to be needlessly pessimistic, they are
functionally the same.

see https://github.com/element-hq/hydrogen-web/issues/741

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-16 14:57:41 -04:00
strawberry
e81ed2741b add room reporting as per MSC4151
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-01 23:49:00 -04:00
strawberry
0738b7f72d Merge remote-tracking branch 'upstream/main' into conduwuit-changes
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-01 10:46:37 -04:00
Kévin Commaille
a9267360cb client-api: Add support for account locking
According to MSC3939.
2024-09-29 11:11:18 +02:00
strawberry
ade2f1daf0 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-09-28 17:09:18 -04:00
Kévin Commaille
12a2e9342b client-api: Add m.get_login_token capability
According to a clarification in the spec.
2024-09-28 20:34:46 +02:00
Ivan Enderlin
85b412ffed
client-api: sync::v5::Request::timeline_limit is not optional. (#1914)
Contrary to MSC3575, MSC4186 has `timeline_limit` which is not optional.

This patch changes `timeline_limit: Option<UInt>` to `Int` directly.
2024-09-27 08:17:02 +02:00
Ivan Enderlin
463904db31
client-api: Remove sync::v5::Response::initial. (#1913)
This patch removes the `initial` field from the `Response` for
MSC4186. There is no top-level `initial` value. This field exists for
`response::Room` though.
2024-09-27 08:16:47 +02:00
Ivan Enderlin
c06af4385e
client-api: Add unstable-msc4186 inside the CHANGELOG.md. (#1911) 2024-09-24 09:30:31 +02:00
strawberry
9900d06765 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-09-17 17:55:49 -04:00
Benjamin Lee
92a35381b5
client-api: fix build when unstable-msc4168 feature is disabled (#1910)
Without this feature, the v5 module does not exist.
2024-09-16 08:17:11 +02:00
strawberry
b6f82a72b6 Merge remote-tracking branch 'upstream/main' into conduwuit-changes 2024-09-13 16:35:24 -04:00
Ivan Enderlin
7cfa3be0c6
client-api: Implement MSC4186. (#1907)
* client-api: Derive `Default` for `v4::SyncList`.

* client-api: Implement MSC4186.
2024-09-12 07:12:49 +00:00
Jonas Platte
1a138ed6c9 Use workspace lint configuration instead of rustflags hack 2024-09-11 07:13:32 +00:00
strawberry
25c6d8b2ad cargo fmt
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-09 22:40:40 -04:00
strawberry
f621b318c5 support generic KV pairs of MSC4133
still GET/PUT/DELETE for now

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-09 22:40:32 -04:00
Johannes Marbach
0c00b90b22
client-api: Replace server_name with via in knock_room and join_room_by_id_or_alias
According to MSC4156

Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>
2024-09-09 11:26:23 +02:00
morguldir
b432789838 use RoomTypeFilter instead of Option<RoomType>
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-07 12:19:59 -04:00
strawberry
83a9bf7366 add DELETE impl of MSC4133 for MSC4175
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-06 23:25:12 -04:00
strawberry
bf93f9caa6 partial impl GET/PUT for MSC4133 and MSC4175
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-06 23:13:31 -04:00
strawberry
c8a2d06e24 Merge remote-tracking branch 'upstream/main' into conduwuit-changes
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-09-06 21:10:32 -04:00
morguldir
d6890ef00c client-api: use a RoomTypeFilter for syncv3 (not_)room_types filters
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-05 19:48:18 +00:00
morguldir
f1fbfb12ea client-api: use RoomType for syncv3 filters instead of strings
(cherry picked from commit 5b2ce304010d7c4d1dc1b53af5d49eb1171422ed)
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-09-05 19:48:18 +00:00
strawberry
000d1e3732 add missing other piece to ThreepidMediumNotSupported
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-24 13:15:34 -04:00
morguldir
5b2ce30401
syncv3: use RoomType in sync filters
Signed-off-by: morguldir <morguldir@protonmail.com>
2024-08-23 20:45:20 +02:00
strawberry
cd2de49c87 add M_THREEPID_MEDIUM_NOT_SUPPORTED, per MSC4178
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-17 02:19:44 -04:00
Jason Volk
2d2deb4ca7 structured Mxc type
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-16 00:37:51 +00:00
Jason Volk
3f06ade0fd Revert "Revert "optimize for optional static response headers zero-copy zero-alloc""
This reverts commit 6bdc5ad326029e84fe05ed2591d9ba442bab8ff5.

Revert "Revert "Fix assumptions about header value types""

This reverts commit 03037f6c92ffb43388022d288e5a36f20a8559dd.
2024-08-15 05:20:21 +00:00