mirror of
https://github.com/matrix-org/matrix-spec
synced 2025-12-20 16:38:37 +01:00
Clarify the meaning of "public spaces" (#2109)
Some checks failed
Spec / 🔎 Validate OpenAPI specifications (push) Has been cancelled
Spec / 🔎 Check Event schema examples (push) Has been cancelled
Spec / 🔎 Check OpenAPI definitions examples (push) Has been cancelled
Spec / 🔎 Check JSON Schemas inline examples (push) Has been cancelled
Spec / ⚙️ Calculate baseURL for later jobs (push) Has been cancelled
Spec / 📢 Run towncrier for changelog (push) Has been cancelled
Spell Check / Spell Check with Typos (push) Has been cancelled
Spec / 🐍 Build OpenAPI definitions (push) Has been cancelled
Spec / 📖 Build the spec (push) Has been cancelled
Spec / 🔎 Validate generated HTML (push) Has been cancelled
Spec / 📖 Build the historical backup spec (push) Has been cancelled
Some checks failed
Spec / 🔎 Validate OpenAPI specifications (push) Has been cancelled
Spec / 🔎 Check Event schema examples (push) Has been cancelled
Spec / 🔎 Check OpenAPI definitions examples (push) Has been cancelled
Spec / 🔎 Check JSON Schemas inline examples (push) Has been cancelled
Spec / ⚙️ Calculate baseURL for later jobs (push) Has been cancelled
Spec / 📢 Run towncrier for changelog (push) Has been cancelled
Spell Check / Spell Check with Typos (push) Has been cancelled
Spec / 🐍 Build OpenAPI definitions (push) Has been cancelled
Spec / 📖 Build the spec (push) Has been cancelled
Spec / 🔎 Validate generated HTML (push) Has been cancelled
Spec / 📖 Build the historical backup spec (push) Has been cancelled
Relates to: #633 Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
This commit is contained in:
parent
643a6dca2d
commit
7470c72d94
|
|
@ -0,0 +1 @@
|
||||||
|
Spaces are subject to the same access mechanisms as rooms.
|
||||||
|
|
@ -2,8 +2,8 @@
|
||||||
|
|
||||||
{{% added-in v="1.2" %}}
|
{{% added-in v="1.2" %}}
|
||||||
|
|
||||||
Often used to group rooms of similar subject matter (such as a public "Official
|
Often used to group rooms of similar subject matter (such as an "Official
|
||||||
matrix.org rooms" space or personal "Work stuff" space), spaces are a way to
|
matrix.org rooms" space or a "Work stuff" space), spaces are a way to
|
||||||
organise rooms while being represented as rooms themselves.
|
organise rooms while being represented as rooms themselves.
|
||||||
|
|
||||||
A space is defined by the [`m.space` room type](#types), making it known as a
|
A space is defined by the [`m.space` room type](#types), making it known as a
|
||||||
|
|
@ -18,11 +18,11 @@ In the default power level structure, this would be `100`. Clients might wish to
|
||||||
go a step further and explicitly ignore notification counts on space-rooms.
|
go a step further and explicitly ignore notification counts on space-rooms.
|
||||||
|
|
||||||
Membership of a space is defined and controlled by the existing mechanisms which
|
Membership of a space is defined and controlled by the existing mechanisms which
|
||||||
govern a room: [`m.room.member`](#mroommember), [`m.room.history_visibility`](#mroomhistory_visibility),
|
govern a room: [`m.room.member`](/client-server-api#mroommember), [`m.room.history_visibility`](/client-server-api#mroomhistory_visibility),
|
||||||
and [`m.room.join_rules`](#mroomjoin_rules). Public spaces are encouraged to have
|
and [`m.room.join_rules`](/client-server-api#mroomjoin_rules). Canonical aliases and invites, including
|
||||||
a similar setup to public rooms: `world_readable` history visibility, published
|
third-party invites, still work just as they do in normal rooms as well. Furthermore,
|
||||||
canonical alias, and suitably public `join_rule`. Invites, including third-party
|
spaces can also be published in the [room directory](/client-server-api#published-room-directory) to make them
|
||||||
invites, still work just as they do in normal rooms as well.
|
discoverable.
|
||||||
|
|
||||||
All other aspects of regular rooms are additionally carried over, such as the
|
All other aspects of regular rooms are additionally carried over, such as the
|
||||||
ability to set arbitrary state events, hold room account data, etc. Spaces are
|
ability to set arbitrary state events, hold room account data, etc. Spaces are
|
||||||
|
|
@ -87,10 +87,9 @@ the state of `#space:example.org` would consist of:
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
No state events in the child rooms themselves would be required (though they
|
No state events in the child rooms themselves would be required (though they can also
|
||||||
can also be present). This allows for users
|
be present). This allows for users to define spaces without needing explicit permission
|
||||||
to define personal/private spaces to organise their own rooms without needing explicit
|
from the room moderators/admins.
|
||||||
permission from the room moderators/admins.
|
|
||||||
|
|
||||||
Child rooms can be removed from a space by omitting the `via` key of `content` on the
|
Child rooms can be removed from a space by omitting the `via` key of `content` on the
|
||||||
relevant state event, such as through redaction or otherwise clearing the `content`.
|
relevant state event, such as through redaction or otherwise clearing the `content`.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue