Merge branch 'v5' into 'master'

feat: support room version 5

See merge request famedly/conduit!138
This commit is contained in:
Timo Kösters 2021-07-21 11:05:59 +00:00
commit e0072eff63
6 changed files with 35 additions and 22 deletions

View file

@ -23,6 +23,7 @@ pub async fn get_capabilities_route(
_body: Ruma<get_capabilities::Request>,
) -> ConduitResult<get_capabilities::Response> {
let mut available = BTreeMap::new();
available.insert(RoomVersionId::Version5, RoomVersionStability::Stable);
available.insert(RoomVersionId::Version6, RoomVersionStability::Stable);
let mut capabilities = Capabilities::new();

View file

@ -511,7 +511,7 @@ async fn join_room_by_id_helper(
federation::membership::create_join_event_template::v1::Request {
room_id,
user_id: sender_user,
ver: &[RoomVersionId::Version6],
ver: &[RoomVersionId::Version5, RoomVersionId::Version6],
},
)
.await;
@ -526,7 +526,12 @@ async fn join_room_by_id_helper(
let (make_join_response, remote_server) = make_join_response_and_server?;
let room_version = match make_join_response.room_version {
Some(room_version) if room_version == RoomVersionId::Version6 => room_version,
Some(room_version)
if room_version == RoomVersionId::Version5
|| room_version == RoomVersionId::Version6 =>
{
room_version
}
_ => return Err(Error::BadServerResponse("Room version is not supported")),
};
@ -940,7 +945,7 @@ pub async fn invite_helper<'a>(
create_invite::v2::Request {
room_id: room_id.clone(),
event_id: ruma::event_id!("$receivingservershouldsetthis"),
room_version: RoomVersionId::Version6,
room_version: room_version_id,
event: PduEvent::convert_to_outgoing_federation_event(pdu_json),
invite_room_state,
},

View file

@ -373,7 +373,10 @@ pub async fn upgrade_room_route(
) -> ConduitResult<upgrade_room::Response> {
let sender_user = body.sender_user.as_ref().expect("user is authenticated");
if !matches!(body.new_version, RoomVersionId::Version6) {
if !matches!(
body.new_version,
RoomVersionId::Version5 | RoomVersionId::Version6
) {
return Err(Error::BadRequest(
ErrorKind::UnsupportedRoomVersion,
"This server does not support that room version.",