Merge branch 'develop' into katex
This commit is contained in:
commit
89ce904ebb
30 changed files with 1622 additions and 740 deletions
21
docs/e2ee.md
21
docs/e2ee.md
|
@ -35,6 +35,27 @@ following on your homeserver's `/.well-known/matrix/client` config:
|
|||
}
|
||||
```
|
||||
|
||||
## Preferring setup methods
|
||||
|
||||
By default, Element offers users a choice of a random key or user-chosen
|
||||
passphrase when setting up Secure Backup. If a homeserver admin would like to
|
||||
only offer one of these, you can signal this via the
|
||||
`/.well-known/matrix/client` config, for example:
|
||||
|
||||
```json
|
||||
{
|
||||
"io.element.e2ee": {
|
||||
"secure_backup_setup_methods": ["passphrase"]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
The field `secure_backup_setup_methods` is an array listing the methods the
|
||||
client should display. Supported values currently include `key` and
|
||||
`passphrase`. If the `secure_backup_setup_methods` field is not present or
|
||||
exists but does not contain any supported methods, Element will fallback to the
|
||||
default value of: `["key", "passphrase"]`.
|
||||
|
||||
# Compatibility
|
||||
|
||||
The settings above were first proposed under a `im.vector.riot.e2ee` key, which
|
||||
|
|
|
@ -8,7 +8,7 @@ For example, flags make the following things possible:
|
|||
* Extended testing of a feature via labs on develop
|
||||
* Enabling features when ready instead of the first moment the code is released
|
||||
* Testing a feature with a specific set of users (by enabling only on a specific
|
||||
Riot instance)
|
||||
Element instance)
|
||||
|
||||
The size of the feature controlled by a feature flag may vary widely: it could
|
||||
be a large project like reactions or a smaller change to an existing algorithm.
|
||||
|
@ -49,7 +49,7 @@ When starting work on a feature, we should create a matching feature flag:
|
|||
```js
|
||||
SettingsStore.getValue("feature_cats")
|
||||
```
|
||||
3. Document the feature in the [labs documentation](https://github.com/vector-im/riot-web/blob/develop/docs/labs.md)
|
||||
3. Document the feature in the [labs documentation](https://github.com/vector-im/element-web/blob/develop/docs/labs.md)
|
||||
|
||||
With these steps completed, the feature is disabled by default, but can be
|
||||
enabled on develop and nightly by interested users for testing.
|
||||
|
@ -60,9 +60,9 @@ The following lists a few common options.
|
|||
## Enabling by default on develop and nightly
|
||||
|
||||
Set the feature to `true` in the
|
||||
[develop](https://github.com/vector-im/riot-web/blob/develop/riot.im/develop/config.json)
|
||||
[develop](https://github.com/vector-im/element-web/blob/develop/element.io/develop/config.json)
|
||||
and
|
||||
[nightly](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/nightly/config.json)
|
||||
[nightly](https://github.com/vector-im/element-desktop/blob/develop/element.io/nightly/config.json)
|
||||
configs:
|
||||
|
||||
```json
|
||||
|
@ -74,9 +74,9 @@ configs:
|
|||
## Enabling by default on staging, app, and release
|
||||
|
||||
Set the feature to `true` in the
|
||||
[staging / app](https://github.com/vector-im/riot-web/blob/develop/riot.im/app/config.json)
|
||||
[staging / app](https://github.com/vector-im/element-web/blob/develop/element.io/app/config.json)
|
||||
and
|
||||
[release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json)
|
||||
[release](https://github.com/vector-im/element-desktop/blob/develop/element.io/release/config.json)
|
||||
configs.
|
||||
|
||||
**Note:** The above will only enable the feature for https://app.element.io and official Element
|
||||
|
@ -90,18 +90,18 @@ Once we're confident that a feature is working well, we should remove or convert
|
|||
If the feature is meant to be turned off/on by the user:
|
||||
1. Remove `isFeature` from the [setting](https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/settings/Settings.ts)
|
||||
2. Change the `default` to `true` (if desired).
|
||||
3. Remove the feature from the [labs documentation](https://github.com/vector-im/riot-web/blob/develop/docs/labs.md)
|
||||
3. Remove the feature from the [labs documentation](https://github.com/vector-im/element-web/blob/develop/docs/labs.md)
|
||||
4. Celebrate! 🥳
|
||||
|
||||
If the feature is meant to be forced on (non-configurable):
|
||||
1. Remove the [setting](https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/settings/Settings.ts)
|
||||
2. Remove all `getValue` lines that test for the feature.
|
||||
3. Remove the feature from the [labs documentation](https://github.com/vector-im/riot-web/blob/develop/docs/labs.md)
|
||||
3. Remove the feature from the [labs documentation](https://github.com/vector-im/element-web/blob/develop/docs/labs.md)
|
||||
4. If applicable, remove the feature state from
|
||||
[develop](https://github.com/vector-im/riot-web/blob/develop/riot.im/develop/config.json),
|
||||
[nightly](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/nightly/config.json),
|
||||
[staging / app](https://github.com/vector-im/riot-web/blob/develop/riot.im/app/config.json),
|
||||
[develop](https://github.com/vector-im/element-web/blob/develop/element.io/develop/config.json),
|
||||
[nightly](https://github.com/vector-im/element-desktop/blob/develop/element.io/nightly/config.json),
|
||||
[staging / app](https://github.com/vector-im/element-web/blob/develop/element.io/app/config.json),
|
||||
and
|
||||
[release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json)
|
||||
[release](https://github.com/vector-im/element-desktop/blob/develop/element.io/release/config.json)
|
||||
configs
|
||||
5. Celebrate! 🥳
|
||||
|
|
|
@ -110,3 +110,8 @@ To enable message previews for reactions in DMs, enable `feature_roomlist_previe
|
|||
represent what communities v2 will look/feel like and can/will change without notice. Due to the early
|
||||
stages this feature is in and the requirement for a compatible homeserver, we will not be accepting issues
|
||||
or feedback for this functionality at this time.
|
||||
|
||||
## Dehydrated devices (`feature_dehydration`)
|
||||
|
||||
Allows users to receive encrypted messages by creating a device that is stored
|
||||
encrypted on the server, as described in [MSC2697](https://github.com/matrix-org/matrix-doc/pull/2697).
|
||||
|
|
|
@ -76,7 +76,7 @@ As it can be difficult to review design work from looking at just the changed
|
|||
files in a PR, authors should be prepared for Design and / or Product teams to
|
||||
request a link to an ad-hoc build of Element (hosted anywhere) that can be used for
|
||||
the review. In the future, we [hope to automate
|
||||
this](https://github.com/vector-im/riot-web/issues/12624) for every PR.
|
||||
this](https://github.com/vector-im/element-web/issues/12624) for every PR.
|
||||
|
||||
Before starting work on a feature, it's best to ensure your plan aligns well
|
||||
with our vision for Element. Please chat with the team in
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue