80 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
Kévin Commaille
35da79a26e identifiers: Make DeviceKeyId a type alias of KeyId 2024-11-08 13:13:19 -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
ae3897cad8 identifiers: Allow to validate KeyId with any key name type
Use new trait bounds for KeyId to only allow specific types.
Change the KeyId validation to be generic over the key name type.
Remove the KeyName type and replace it with the more specific
ServerSigningKeyVersion.
2024-11-08 12:49:53 -05:00
Kévin Commaille
cc1b2144ea chore: Point links to v1.12 of the spec 2024-10-19 14:59:08 -04:00
Jason Volk
3109496a1f expose MAX_BYTES as an associated constant for identifiers
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-09 10:34:00 +00:00
Jason Volk
c434098fb1 Improve validation error for empty mxid.
Previously an empty MXID was reported as MissingLeadingSigil but a more
concise variant is just Empty.

Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-09 10:34:00 +00:00
Jonas Platte
1a138ed6c9 Use workspace lint configuration instead of rustflags hack 2024-09-11 07:13:32 +00:00
Kévin Commaille
ceba4586d6 identifiers: Remove link to previous version of spec in changelog
It doesn't pass the spec links checker anymore
and it doesn't seem worth it to try to solve this.
2024-06-21 18:10:14 +02:00
Kévin Commaille
b8e4d5b6a2 misc: Update spec links to latest version 2024-06-21 18:10:14 +02:00
Kévin Commaille
d2d64f32c2
Release ruma-identifiers-validation 0.9.5 2024-05-09 11:49:30 +02:00
Jonas Platte
4a02b97aa3
Update website URL 2024-04-04 13:20:58 +02:00
Kévin Commaille
0e7c91d789 docs: Point links to v1.10 of the spec 2024-03-22 21:28:39 +01:00
Tulir Asokan
b2c3df421d
identifiers: Fix MXC URI validation 2024-03-07 13:39:57 +01:00
Kévin Commaille
4efca6fba5 docs: Point links to v1.9 of the spec 2023-11-30 14:42:14 +01:00
Jonas Platte
e658b8b128
Remove 'www.' from ruma.io URLs 2023-10-12 15:44:00 +02:00
Jonas Platte
a9f42be255
Release ruma-identifiers-validation 0.9.3 2023-10-11 21:25:13 +02:00
Jonas Platte
984cbda962
identifiers: Don't require room IDs to contain a server name
Room IDs being splittable into localpart and servername does not have
much inherent value and there are proposals like MSC4051¹ that propose
changing the format. Relaxing the rules makes Ruma forwards-compatible
with those proposals. The server_name accessor is kept because it is
used by at least one downstream, but is updated to return an `Option`.

¹ https://github.com/matrix-org/matrix-spec-proposals/pull/4051
2023-09-28 16:43:16 +02:00
Jonas Platte
33f7df8bf2
Release ruma-identifiers-validation 0.9.2 2023-09-27 18:25:45 +02:00
Jonas Platte
10f651916f
identifiers: Add a compat flag to allow arbitrary-length IDs 2023-09-27 16:33:53 +02:00
Kévin Commaille
acfeb38e90 docs: Update spec links to point to v1.8 2023-08-24 12:16:29 +02:00
Kévin Commaille
c8bbcecdc8 docs: Update changelogs for Matrix 1.8 2023-08-24 12:16:29 +02:00
Kévin Commaille
8bdfd809e4 identifiers-validation: Allow + in the localpart of user IDs
According to MSC4009
2023-08-21 11:02:57 +02:00
Kévin Commaille
77d94caf11 chore: Use workspace-defined MSRV 2023-07-04 15:40:37 +02:00
Kévin Commaille
38f600c602 docs: Update v1.6 spec links to v1.7 2023-05-30 16:38:30 +02:00
Jonas Platte
d5b0cc608f
Add user ID localpart emptiness check 2023-05-02 15:09:23 +02:00
Jonas Platte
4c85fe9c78
Replace compat feature with more fine-grained compat-* features
… and document them.
2023-04-20 14:00:27 +02:00
Kévin Commaille
446c6ab753
Release ruma-identifiers-validation 0.9.1 2023-02-15 12:41:47 +01:00
Kévin Commaille
a859567487 docs: Migrate spec links to v1.6 2023-02-15 09:59:05 +01:00
Kévin Commaille
e653912e22 xtask: Disallow linking to the latest spec when a link uses a non-unique ID
These IDs can change from one version to the other if another heading
with the same name is added before, so the link would not
point to the proper part of the spec anymore.
2023-02-12 12:39:24 +01:00
Kévin Commaille
f159776f52 chore: Make all applicable spec links use the latest spec instead of a specific version 2023-02-12 12:39:24 +01:00
HKalbasi
270f8196bc
identifiers: Don't allow invalid characters in RoomVersionId 2023-02-12 11:05:33 +01:00
Jonas Platte
3013ca0dc1
identifiers: Don't accept colons in user-id localparts, even in compat 2023-02-07 20:56:22 +01:00
Jonas Platte
d18bea570c Use Cargo workspace dependencies
… for most external dependencies that are used from multiple workspace
crates.
2022-11-01 11:13:21 +01:00
Jonathan de Jong
7e1fd603e6
Bump MSRV to 1.64 2022-10-26 17:22:23 +02:00
Kévin Commaille
045861441a doc: Update Matrix spec links to v1.4 2022-10-21 10:41:20 +02:00
Jonas Platte
66ff4dbaad Raise MSRV to 1.62 2022-09-20 13:49:16 +02:00
Jonas Platte
5d516ca544
Release ruma-identifiers-validation 0.9.0 2022-09-12 20:22:17 +02:00
Jonas Platte
bf670fb814 identifiers: Move session ID validation out of separate validation crate 2022-06-08 13:31:38 +02:00
Jonas Platte
34ad27bdf5 identifiers-validation: Disallow non-ascii alphanumeric chars in session IDs 2022-06-08 13:31:38 +02:00
Jonas Platte
4b756c5887 identifiers-validation: Simplify localpart_is_fully_conforming 2022-06-08 13:31:38 +02:00
Jonas Platte
a8e7c47bbe
Remove RoomName type 2022-06-03 11:40:33 +02:00
Jonas Platte
07af61d784
Bump MSRV to 1.60 2022-06-01 14:52:02 +02:00
Kévin Commaille
906d576a27
Implement Improved Signalling for 1:1 VoIP
According to MSC2746
2022-05-30 14:09:58 +02:00
Jonas Platte
e1ebff0047
Set rust-version for crates/* (excl. ruma-signatures) 2022-05-27 12:05:41 +02:00
Jonas Platte
5f902851af
Upgrade to Rust 2021 2022-05-27 12:04:23 +02:00
Jonas Platte
70ea38b138
Release ruma-identifiers-validation 0.8.1 2022-04-28 15:47:56 +02:00
Jonas Platte
242085cf37
Release ruma-identifiers-validation 0.8.0 2022-04-28 15:46:12 +02:00
Jonas Platte
9cfee27722
identifiers: Clean up error enum 2022-04-27 19:09:44 +02:00
Jonas Platte
294506540d identifiers-validation: Ensure the Error type doesn't get too big 2022-04-10 11:43:40 +02:00