mirror of
https://github.com/matrix-org/matrix-spec
synced 2026-02-22 22:13:43 +01:00
Compare commits
11 commits
1d5be4e9c4
...
d2dfd30dbc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d2dfd30dbc | ||
|
|
433f0361e1 | ||
|
|
0d89ec84e2 | ||
|
|
681a7618c0 | ||
|
|
11cc848297 | ||
|
|
cd527f5b58 | ||
|
|
a644bcd7a1 | ||
|
|
08ef01beec | ||
|
|
78ca690935 | ||
|
|
67a2aa4761 | ||
|
|
d60c847314 |
1
changelogs/internal/newsfragments/2189.clarification
Normal file
1
changelogs/internal/newsfragments/2189.clarification
Normal file
|
|
@ -0,0 +1 @@
|
|||
Specify a correct spelling for "display name".
|
||||
|
|
@ -2491,8 +2491,66 @@ using an `unstable` version.
|
|||
When this capability is not listed, clients should use `"1"` as the
|
||||
default and only stable `available` room version.
|
||||
|
||||
### `m.profile_fields` capability
|
||||
|
||||
{{% added-in v="1.16" %}}
|
||||
|
||||
This capability defines which [profile](#profiles) fields the user is
|
||||
able to change.
|
||||
|
||||
The capability value has a required flag, `enabled`, and two optional lists, `allowed` and
|
||||
`disallowed`.
|
||||
|
||||
When `enabled` is `false`, all profile fields are managed by the server
|
||||
and the client is not permitted to make any changes.
|
||||
|
||||
When `enabled` is `true`, clients are permitted to modify profile fields,
|
||||
subject to the restrictions implied by the OPTIONAL lists `allowed` and
|
||||
`disallowed`.
|
||||
|
||||
If `allowed` is present, clients can modify only the fields
|
||||
listed. They SHOULD assume all other fields to be managed by
|
||||
the server. In this case, `disallowed` has no meaning and should be ignored.
|
||||
|
||||
If `disallowed` is present (and `allowed` is not), clients SHOULD assume
|
||||
that the listed fields are managed by the server. Clients may modify any
|
||||
fields that are *not* listed, provided `enabled` is `true`.
|
||||
|
||||
If neither `allowed` nor `disallowed` is present, clients can modify all fields
|
||||
without restrictions, provided `enabled` is `true`.
|
||||
|
||||
When this capability is not listed, clients SHOULD assume the user is able to change
|
||||
profile fields without any restrictions, provided the homeserver
|
||||
advertises a specification version that includes the `m.profile_fields`
|
||||
capability in the [`/versions`](/client-server-api/#get_matrixclientversions)
|
||||
response.
|
||||
|
||||
An example of the capability API's response for this capability is:
|
||||
|
||||
```json
|
||||
{
|
||||
"capabilities": {
|
||||
"m.profile_fields": {
|
||||
"enabled": true,
|
||||
"disallowed": ["displayname"]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### `m.set_displayname` capability
|
||||
|
||||
{{% boxes/note %}}
|
||||
{{% changed-in v="1.16" %}}
|
||||
This capability is now deprecated. Clients SHOULD use the
|
||||
[`m.profile_fields`](/client-server-api/#mprofile_fields-capability)
|
||||
capability instead.
|
||||
|
||||
For backwards compatibility, servers that forbid setting the
|
||||
`displayname` profile field in the `m.profile_fields` capability
|
||||
MUST still present this capability with `"enabled": false`.
|
||||
{{% /boxes/note %}}
|
||||
|
||||
This capability has a single flag, `enabled`, to denote whether the user
|
||||
is able to change their own display name via profile endpoints. Cases for
|
||||
disabling might include users mapped from external identity/directory
|
||||
|
|
@ -2517,6 +2575,17 @@ An example of the capability API's response for this capability is:
|
|||
|
||||
### `m.set_avatar_url` capability
|
||||
|
||||
{{% boxes/note %}}
|
||||
{{% changed-in v="1.16" %}}
|
||||
This capability is now deprecated. Clients SHOULD use the
|
||||
[`m.profile_fields`](/client-server-api/#mprofile_fields-capability)
|
||||
capability instead.
|
||||
|
||||
For backwards compatibility, servers that forbid setting the
|
||||
`avatar_url` profile field in the `m.profile_fields` capability
|
||||
MUST still present this capability with `"enabled": false`.
|
||||
{{% /boxes/note %}}
|
||||
|
||||
This capability has a single flag, `enabled`, to denote whether the user
|
||||
is able to change their own avatar via profile endpoints. Cases for
|
||||
disabling might include users mapped from external identity/directory
|
||||
|
|
|
|||
|
|
@ -60,6 +60,11 @@ General
|
|||
you have at home. "identity server" is clear, whereas "identityserver" is
|
||||
horrible.
|
||||
|
||||
* When talking about a user's "display name", it is spelt as two words. In
|
||||
identifiers such as within the content of an ``m.room.member`` event, it is
|
||||
spelt as a single word, ``displayname``. (There are some historical exceptions
|
||||
to this where the identifier is spelt ``display_name``.)
|
||||
|
||||
* Lists should:
|
||||
|
||||
* Be introduced with a colon.
|
||||
|
|
@ -84,12 +89,12 @@ Changes between spec versions
|
|||
Sections should reference the Matrix spec version they were added/changed in. This
|
||||
is often a guess at what the next version will be - please use the currently released
|
||||
version with a minor version bump as the referenced version. For example, if the
|
||||
current version is `v1.1` then annotate your changes with `v1.2`.
|
||||
current version is ``v1.1`` then annotate your changes with ``v1.2``.
|
||||
|
||||
"Added/changed in" tags can be documented as the following:
|
||||
|
||||
* `{{% added-in v="1.2" %}}` or `{{% changed-in v="1.2" %}}` within Markdown documents.
|
||||
* `x-addedInMatrixVersion` and `x-changedInMatrixVersion` within OpenAPI.
|
||||
* ``{{% added-in v="1.2" %}}`` or ``{{% changed-in v="1.2" %}}`` within Markdown documents.
|
||||
* ``x-addedInMatrixVersion`` and ``x-changedInMatrixVersion`` within OpenAPI.
|
||||
|
||||
OpenAPI
|
||||
~~~~~~~
|
||||
|
|
@ -185,4 +190,4 @@ Describing grammar
|
|||
|
||||
Use `RFC5234-style ABNF <https://datatracker.ietf.org/doc/html/rfc5234>`_ when describing
|
||||
the grammar for something in the spec, such as user IDs or server names. Use lowercase
|
||||
and underscore-delimited element names (`user_id`, not `UserID` or `user-id`).
|
||||
and underscore-delimited element names (``user_id``, not ``UserID`` or ``user-id``).
|
||||
|
|
|
|||
Loading…
Reference in a new issue