docs-matrix-spec/content/rooms/v2.md
Kévin Commaille 3af77f0cb4
Fix the table of content for room versions (#1884)
* Fix ToC for room versions pages

Like for the cs-module shortcode, use .RenderShortcodes
instead of .Content for the rver-fragment shortcode,
so the headings are detected by Hugo.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Change the way "this version" is detected in added-in and changed-in shortcodes

Now that we use .RenderShortcodes in the rver-fragment shortcode,
we cannot remove the output of these shortcodes dynamically
because they are replaced by a temporary placeholder due to Hugo's internals.

Instead, since the `this` parameter was only used for room version,
we always use the `v` parameter and compare with the version
provided in the page's front matter.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add version front matter for v11

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Update changelogs/room_versions/newsfragments/1884.clarification

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
Co-authored-by: Travis Ralston <travpc@gmail.com>
2024-06-20 15:47:09 +00:00

66 lines
1.5 KiB
Markdown

---
title: Room Version 2
type: docs
weight: 20
version: 2
---
This room version builds on [version 1](/rooms/v1) with an improved
state resolution algorithm.
## Client considerations
There are no client considerations introduced in this room version. Clients
which implement the redaction algorithm locally should refer to the
[redactions](#redactions) section below for a full overview of the algorithm.
## Server implementation components
{{% boxes/warning %}}
The information contained in this section is strictly for server
implementors. Applications which use the Client-Server API are generally
unaffected by the details contained here, and can safely ignore their
presence.
{{% /boxes/warning %}}
Room version 2 uses the base components of [room version 1](/rooms/v1),
changing only the state resolution algorithm.
### State resolution
{{% added-in v=2 %}}
{{% rver-fragment name="v2-state-res" %}}
## Unchanged from v1
The following sections have not been modified since v1, but are included for
completeness.
### Redactions
{{% rver-fragment name="v1-redactions" %}}
### Event IDs
{{% rver-fragment name="v1-event-ids" %}}
### Event format
Events in rooms of this version have the following structure:
{{% definition path="api/server-server/definitions/pdu" %}}
#### Deprecated event content schemas
{{% rver-fragment name="v1-deprecated-formatting-off-spec" %}}
{{% rver-fragment name="v1-stringy-power-levels" %}}
### Authorization rules
{{% rver-fragment name="v1-auth-rules" %}}
### Canonical JSON
{{% rver-fragment name="v1-canonical-json" %}}