Merge branch 'develop' into develop

This commit is contained in:
J. Ryan Stinnett 2020-08-24 12:07:48 +01:00 committed by GitHub
commit a5fd3114c2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 82 additions and 83 deletions

View file

@ -1,3 +1,26 @@
Changes in [1.7.4](https://github.com/vector-im/element-web/releases/tag/v1.7.4) (2020-08-17)
=============================================================================================
[Full Changelog](https://github.com/vector-im/element-web/compare/v1.7.4-rc.1...v1.7.4)
* Upgrade to React SDK 3.2.0 and JS SDK 8.1.0
Changes in [1.7.4-rc.1](https://github.com/vector-im/element-web/releases/tag/v1.7.4-rc.1) (2020-08-13)
=======================================================================================================
[Full Changelog](https://github.com/vector-im/element-web/compare/v1.7.3...v1.7.4-rc.1)
* Upgrade to React SDK 3.2.0-rc.1 and JS SDK 8.1.0-rc.1
* Update policy links to element.io
[\#14905](https://github.com/vector-im/element-web/pull/14905)
* Update from Weblate
[\#14949](https://github.com/vector-im/element-web/pull/14949)
* Try to close notification on all platforms which support it, not just
electron
[\#14939](https://github.com/vector-im/element-web/pull/14939)
* Update bug report submission URL
[\#14903](https://github.com/vector-im/element-web/pull/14903)
* Fix arm docker build
[\#14522](https://github.com/vector-im/element-web/pull/14522)
Changes in [1.7.3](https://github.com/vector-im/element-web/releases/tag/v1.7.3) (2020-08-05) Changes in [1.7.3](https://github.com/vector-im/element-web/releases/tag/v1.7.3) (2020-08-05)
============================================================================================= =============================================================================================

View file

@ -26,11 +26,7 @@
"defaultCountryCode": "GB", "defaultCountryCode": "GB",
"showLabsSettings": false, "showLabsSettings": false,
"features": { "features": {
"feature_new_spinner": "labs", "feature_new_spinner": false
"feature_pinning": "labs",
"feature_custom_status": "labs",
"feature_custom_tags": "labs",
"feature_state_counters": "labs"
}, },
"default_federate": true, "default_federate": true,
"default_theme": "light", "default_theme": "light",

View file

@ -22,12 +22,12 @@ For a good example, see https://develop.element.io/config.json.
`default_hs_url` is specified. When multiple sources are specified, it is unclear `default_hs_url` is specified. When multiple sources are specified, it is unclear
which should take priority and therefore the application cannot continue. which should take priority and therefore the application cannot continue.
* As of Element 1.4.0, identity servers are optional. See [Identity servers](#identity-servers) below. * As of Element 1.4.0, identity servers are optional. See [Identity servers](#identity-servers) below.
1. `features`: Lookup of optional features that may be `enable`d, `disable`d, or 1. `features`: Lookup of optional features that may be force-enabled (`true`) or force-disabled (`false`).
exposed to the user in the `labs` section of settings. The available When features are not listed here, their defaults will be used, and users can turn them on/off if `showLabsSettings`
optional experimental features vary from release to release and are [documented](labs.md). The feature flag process is allows them to. The available optional experimental features vary from release to release and are
[documented](feature-flags.md) as well. [documented](labs.md). The feature flag process is [documented](feature-flags.md) as well.
1. `showLabsSettings`: Shows the "labs" tab of user settings even when no `features` are enabled 1. `showLabsSettings`: Shows the "labs" tab of user settings. Useful to allow users to turn on experimental features
or present. Useful for getting at settings which may be otherwise hidden. they might not otherwise have access to.
1. `brand`: String to pass to your homeserver when configuring email notifications, to let the 1. `brand`: String to pass to your homeserver when configuring email notifications, to let the
homeserver know what email template to use when talking to you. homeserver know what email template to use when talking to you.
1. `branding`: Configures various branding and logo details, such as: 1. `branding`: Configures various branding and logo details, such as:

View file

@ -35,7 +35,7 @@ clients commit to doing the associated clean up work once a feature stabilises.
When starting work on a feature, we should create a matching feature flag: When starting work on a feature, we should create a matching feature flag:
1. Add a new 1. Add a new
[setting](https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/settings/Settings.js) [setting](https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/settings/Settings.ts)
of the form: of the form:
```js ```js
"feature_cats": { "feature_cats": {
@ -47,17 +47,9 @@ When starting work on a feature, we should create a matching feature flag:
``` ```
2. Check whether the feature is enabled as appropriate: 2. Check whether the feature is enabled as appropriate:
```js ```js
SettingsStore.isFeatureEnabled("feature_cats") SettingsStore.getValue("feature_cats")
``` ```
3. Add the feature to the set of labs on 3. Document the feature in the [labs documentation](https://github.com/vector-im/riot-web/blob/develop/docs/labs.md)
[develop](https://github.com/vector-im/riot-web/blob/develop/riot.im/develop/config.json)
and [nightly](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/nightly/config.json):
```json
"features": {
"feature_cats": "labs"
},
```
4. Document the feature in the [labs documentation](https://github.com/vector-im/riot-web/blob/develop/docs/labs.md)
With these steps completed, the feature is disabled by default, but can be With these steps completed, the feature is disabled by default, but can be
enabled on develop and nightly by interested users for testing. enabled on develop and nightly by interested users for testing.
@ -67,7 +59,7 @@ The following lists a few common options.
## Enabling by default on develop and nightly ## Enabling by default on develop and nightly
Set the feature to `enable` in the 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/riot-web/blob/develop/riot.im/develop/config.json)
and and
[nightly](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/nightly/config.json) [nightly](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/nightly/config.json)
@ -75,34 +67,37 @@ configs:
```json ```json
"features": { "features": {
"feature_cats": "enable" "feature_cats": true
}, },
``` ```
## Enabling by default on staging, app, and release ## Enabling by default on staging, app, and release
Set the feature to `enable` in the 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/riot-web/blob/develop/riot.im/app/config.json)
and and
[release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json) [release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json)
configs. configs.
**Warning:** While this does mean the feature is enabled by default for **Note:** The above will only enable the feature for https://app.element.io and official Element
https://app.element.io and official Element Desktop builds, it will not be enabled by Desktop builds. It will not be enabled for self-hosted installed, custom desktop builds, etc. To
default for self-hosted installs, custom desktop builds, etc. To cover those cover these cases, change the setting's `default` in `Settings.ts` to `true`.
cases as well, the best options at the moment are converting to a regular
setting defaulted on or to remove the flag. Simply enabling the existing flag by
default in `Settings.js`
[does not work currently](https://github.com/vector-im/riot-web/issues/10360).
## Feature deployed successfully ## Feature deployed successfully
Once we're confident that a feature is working well, we should remove the flag: Once we're confident that a feature is working well, we should remove or convert the flag.
1. Remove the [setting](https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/settings/Settings.js) If the feature is meant to be turned off/on by the user:
2. Remove all `isFeatureEnabled` lines that test for the feature's setting 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/riot-web/blob/develop/docs/labs.md)
4. Remove feature state from 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)
4. If applicable, remove the feature state from
[develop](https://github.com/vector-im/riot-web/blob/develop/riot.im/develop/config.json), [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), [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), [staging / app](https://github.com/vector-im/riot-web/blob/develop/riot.im/app/config.json),
@ -110,26 +105,3 @@ Once we're confident that a feature is working well, we should remove the flag:
[release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json) [release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json)
configs configs
5. Celebrate! 🥳 5. Celebrate! 🥳
## Convert to a regular setting (optional)
Sometimes we decide a feature should always be user-controllable as a setting
even after it has been fully deployed. In that case, we would craft a new,
regular setting:
1. Remove the feature flag from
[settings](https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/settings/Settings.js)
and add a regular setting with the appropriate levels for your feature
2. Replace the `isFeatureEnabled` lines with `getValue` or similar calls
according to the [settings
docs](https://github.com/matrix-org/matrix-react-sdk/blob/develop/docs/settings.md)
(checking carefully, as we may want a different mix of code paths when the
feature is always present but gated by a setting)
3. Remove the feature from the [labs documentation](https://github.com/vector-im/riot-web/blob/develop/docs/labs.md)
4. Remove 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),
and
[release](https://github.com/vector-im/riot-desktop/blob/develop/riot.im/release/config.json)
configs

View file

@ -50,7 +50,22 @@ default, and you are using riot-web 1.6 or newer, set the following on your home
} }
``` ```
## Mobile app support ## Element Android
Element Android (1.0.5+) supports custom Jitsi domains, similar to Element Web above.
1:1 calls, or calls between you and one other person, do not use Jitsi. Instead, those
calls work directly between clients or via TURN servers configured on the respective
homeservers.
For rooms with more than 2 joined members, when creating a Jitsi conference via call/video buttons of the toolbar (not via integration manager), Element Android will create a widget using the [wrapper](https://github.com/vector-im/element-web/blob/develop/docs/jitsi-dev.md) hosted on `app.element.io`.
The domain used is the one specified by the `/.well-known/matrix/client` endpoint, and if not present it uses the fallback defined in `config.xml` (jitsi.riot.im)
For active Jitsi widgets in the room, a native Jitsi widget UI is created and points to the instance specified in the `domain` key of the widget content data.
Element Android manages allowed native widgets permissions a bit differently than web widgets (as the data shared are different and never shared with the widget URL). For Jitsi widgets, permissions are requested only once per domain (consent saved in account data).
## Element iOS
Currently the Element mobile apps do not support custom Jitsi servers and will instead Currently the Element mobile apps do not support custom Jitsi servers and will instead
use the default `jitsi.riot.im` server. When users on the mobile apps join the call, use the default `jitsi.riot.im` server. When users on the mobile apps join the call,

View file

@ -12,8 +12,7 @@
], ],
"hosting_signup_link": "https://element.io/matrix-services?utm_source=element-web&utm_medium=web", "hosting_signup_link": "https://element.io/matrix-services?utm_source=element-web&utm_medium=web",
"bug_report_endpoint_url": "https://element.io/bugreports/submit", "bug_report_endpoint_url": "https://element.io/bugreports/submit",
"features": { "showLabsSettings": false,
},
"piwik": { "piwik": {
"url": "https://piwik.riot.im/", "url": "https://piwik.riot.im/",
"siteId": 1, "siteId": 1,

View file

@ -12,19 +12,7 @@
], ],
"hosting_signup_link": "https://element.io/matrix-services?utm_source=element-web&utm_medium=web", "hosting_signup_link": "https://element.io/matrix-services?utm_source=element-web&utm_medium=web",
"bug_report_endpoint_url": "https://element.io/bugreports/submit", "bug_report_endpoint_url": "https://element.io/bugreports/submit",
"features": { "showLabsSettings": true,
"feature_new_spinner": "labs",
"feature_pinning": "labs",
"feature_custom_status": "labs",
"feature_custom_tags": "labs",
"feature_state_counters": "labs",
"feature_many_integration_managers": "labs",
"feature_mjolnir": "labs",
"feature_dm_verification": "labs",
"feature_bridge_state": "labs",
"feature_presence_in_room_list": "labs",
"feature_custom_themes": "labs"
},
"piwik": { "piwik": {
"url": "https://piwik.riot.im/", "url": "https://piwik.riot.im/",
"siteId": 1, "siteId": 1,

View file

@ -1,7 +1,7 @@
{ {
"name": "riot-web", "name": "riot-web",
"productName": "Riot", "productName": "Riot",
"version": "1.7.3", "version": "1.7.4",
"description": "A feature-rich client for Matrix.org", "description": "A feature-rich client for Matrix.org",
"author": "New Vector Ltd.", "author": "New Vector Ltd.",
"repository": { "repository": {

View file

@ -31,6 +31,7 @@ const INCLUDE_LANGS = [
{'value': 'it', 'label': 'Italiano'}, {'value': 'it', 'label': 'Italiano'},
{'value': 'ja', 'label': '日本語'}, {'value': 'ja', 'label': '日本語'},
{'value': 'jbo', 'label': 'banjubu\'o'}, {'value': 'jbo', 'label': 'banjubu\'o'},
{'value': 'kab', 'label': 'Taqbaylit'},
{'value': 'ko', 'label': '한국어'}, {'value': 'ko', 'label': '한국어'},
{'value': 'lt', 'label': 'Lietuvių'}, {'value': 'lt', 'label': 'Lietuvių'},
{'value': 'lv', 'label': 'Latviešu'}, {'value': 'lv', 'label': 'Latviešu'},

View file

@ -87,7 +87,7 @@ const CompatibilityView: React.FC<IProps> = ({ onAccept }) => {
className="mx_ClearDecoration"> className="mx_ClearDecoration">
<img height="48" src="themes/element/img/download/google.svg" alt="Google Play Store" /> <img height="48" src="themes/element/img/download/google.svg" alt="Google Play Store" />
</a> </a>
<a href="https://f-droid.org/repository/browse/?fdid=im.vector.alpha" target="_blank" <a href="https://f-droid.org/repository/browse/?fdid=im.vector.app" target="_blank"
className="mx_ClearDecoration"> className="mx_ClearDecoration">
<img height="48" src="themes/element/img/download/fdroid.svg" alt="F-Droid" /> <img height="48" src="themes/element/img/download/fdroid.svg" alt="F-Droid" />
</a> </a>

View file

@ -260,7 +260,7 @@ body {
</g> </g>
</g> </g>
</svg> </svg>
<a href="https://f-droid.org/repository/browse/?fdid=im.vector.alpha" target="_blank" class="mx_ClearDecoration"> <a href="https://f-droid.org/repository/browse/?fdid=im.vector.app" target="_blank" class="mx_ClearDecoration">
<svg width="164px" height="48px" viewBox="0 0 157 46" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <svg width="164px" height="48px" viewBox="0 0 157 46" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<desc>Get it on F-Droid.</desc> <desc>Get it on F-Droid.</desc>
<defs> <defs>

View file

@ -339,7 +339,7 @@
</g> </g>
</svg> </svg>
</a> </a>
<a href="https://f-droid.org/repository/browse/?fdid=im.vector.alpha" target="_blank" <a href="https://f-droid.org/repository/browse/?fdid=im.vector.app" target="_blank"
class="mx_ClearDecoration"> class="mx_ClearDecoration">
<svg width="164px" height="48px" viewBox="0 0 157 46" version="1.1" <svg width="164px" height="48px" viewBox="0 0 157 46" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

View file

@ -16,6 +16,11 @@
"node", "node",
"react", "react",
"flux" "flux"
],
"lib": [
"es2019",
"dom",
"dom.iterable"
] ]
}, },
"include": [ "include": [

View file

@ -7313,8 +7313,8 @@ mathml-tag-names@^2.1.1:
integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg== integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==
"matrix-js-sdk@github:matrix-org/matrix-js-sdk#develop": "matrix-js-sdk@github:matrix-org/matrix-js-sdk#develop":
version "8.0.1" version "8.1.0"
resolved "https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/a6fe4cdf1cbf56baeb538f071c27326fe98630d0" resolved "https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/64cdd73b93a475d10284977b69ef73138315b3be"
dependencies: dependencies:
"@babel/runtime" "^7.8.3" "@babel/runtime" "^7.8.3"
another-json "^0.2.0" another-json "^0.2.0"
@ -7335,8 +7335,8 @@ matrix-mock-request@^1.2.3:
expect "^1.20.2" expect "^1.20.2"
"matrix-react-sdk@github:matrix-org/matrix-react-sdk#develop": "matrix-react-sdk@github:matrix-org/matrix-react-sdk#develop":
version "3.1.0" version "3.2.0"
resolved "https://codeload.github.com/matrix-org/matrix-react-sdk/tar.gz/45b79a0b7c9237c6b4dbafd37c1a234ed2b7cf35" resolved "https://codeload.github.com/matrix-org/matrix-react-sdk/tar.gz/c91fc99d4bfd76808c99327979c1b7dbcb9bf093"
dependencies: dependencies:
"@babel/runtime" "^7.10.5" "@babel/runtime" "^7.10.5"
await-lock "^2.0.1" await-lock "^2.0.1"