Skip to content

Commit 887be88

Browse files
committed
Merge tag 'v1.11.15' into sc
* Make clear notifications work with threads ([\element-hq#9575](matrix-org/matrix-react-sdk#9575)). Fixes element-hq#23751. * Change "None" to "Off" in notification options ([\element-hq#9539](matrix-org/matrix-react-sdk#9539)). Contributed by @Arnei. * Advanced audio processing settings ([\element-hq#8759](matrix-org/matrix-react-sdk#8759)). Fixes element-hq#6278. Contributed by @MrAnno. * Add way to create a user notice via config.json ([\element-hq#9559](matrix-org/matrix-react-sdk#9559)). * Improve design of the rich text editor ([\element-hq#9533](matrix-org/matrix-react-sdk#9533)). Contributed by @florianduros. * Enable user to zoom beyond image size ([\element-hq#5949](matrix-org/matrix-react-sdk#5949)). Contributed by @jaiwanth-v. * Fix: Move "Leave Space" option to the bottom of space context menu ([\element-hq#9535](matrix-org/matrix-react-sdk#9535)). Contributed by @hanadi92. * Make build scripts work on NixOS ([\element-hq#23740](element-hq#23740)). * Fix integration manager `get_open_id_token` action and add E2E tests ([\element-hq#9520](matrix-org/matrix-react-sdk#9520)). * Fix links being mangled by markdown processing ([\element-hq#9570](matrix-org/matrix-react-sdk#9570)). Fixes element-hq#23743. * Fix: inline links selecting radio button ([\element-hq#9543](matrix-org/matrix-react-sdk#9543)). Contributed by @hanadi92. * Fix wrong error message in registration when phone number threepid is in use. ([\element-hq#9571](matrix-org/matrix-react-sdk#9571)). Contributed by @bagvand. * Fix missing avatar for show current profiles ([\element-hq#9563](matrix-org/matrix-react-sdk#9563)). Fixes element-hq#23733. * Fix read receipts trickling down correctly ([\element-hq#9567](matrix-org/matrix-react-sdk#9567)). Fixes element-hq#23746. * Resilience fix for homeserver without thread notification support ([\element-hq#9565](matrix-org/matrix-react-sdk#9565)). * Don't switch to the home page needlessly after leaving a room ([\element-hq#9477](matrix-org/matrix-react-sdk#9477)). * Differentiate download and decryption errors when showing images ([\element-hq#9562](matrix-org/matrix-react-sdk#9562)). Fixes element-hq#3892. * Close context menu when a modal is opened to prevent user getting stuck ([\element-hq#9560](matrix-org/matrix-react-sdk#9560)). Fixes element-hq#15610 and element-hq#10781. * Fix TimelineReset handling when no room associated ([\element-hq#9553](matrix-org/matrix-react-sdk#9553)). * Always use current profile on thread events ([\#9524](matrix-org/matrix-react-sdk#9524)). Fixes element-hq#23648. * Fix `ThreadView` tests not using thread flag ([\element-hq#9547](matrix-org/matrix-react-sdk#9547)). Contributed by @MadLittleMods. * Handle deletion of `m.call` events ([\element-hq#9540](matrix-org/matrix-react-sdk#9540)). Fixes element-hq#23663. * Fix incorrect notification count after leaving a room with notifications ([\element-hq#9518](matrix-org/matrix-react-sdk#9518)). Contributed by @Arnei.
2 parents d8d4ab1 + 8c271f3 commit 887be88

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+632
-488
lines changed

.github/cfp_headers

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/*
2+
X-XSS-Protection: 1; mode=block
3+
X-Content-Type-Options: nosniff
4+
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
5+
6+
/version
7+
Content-Type: text/plain
8+
9+
/apple-app-site-association
10+
Content-Type: application/json

.github/workflows/static_analysis.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,41 @@ jobs:
2626
- name: Typecheck
2727
run: "yarn run lint:types"
2828

29+
tsc-strict:
30+
name: Typescript Strict Error Checker
31+
if: github.event_name == 'pull_request'
32+
runs-on: ubuntu-latest
33+
permissions:
34+
pull-requests: read
35+
checks: write
36+
steps:
37+
- uses: actions/checkout@v3
38+
39+
- name: Get diff lines
40+
id: diff
41+
uses: Equip-Collaboration/[email protected]
42+
with:
43+
include: '["\\.tsx?$"]'
44+
45+
- name: Detecting files changed
46+
id: files
47+
uses: futuratrepadeira/[email protected]
48+
with:
49+
repo-token: ${{ secrets.GITHUB_TOKEN }}
50+
pattern: '^.*\.tsx?$'
51+
52+
- uses: t3chguy/typescript-check-action@main
53+
with:
54+
repo-token: ${{ secrets.GITHUB_TOKEN }}
55+
use-check: false
56+
check-fail-mode: added
57+
output-behaviour: annotate
58+
ts-extra-args: '--strict'
59+
files-changed: ${{ steps.files.outputs.files_updated }}
60+
files-added: ${{ steps.files.outputs.files_created }}
61+
files-deleted: ${{ steps.files.outputs.files_deleted }}
62+
line-numbers: ${{ steps.diff.outputs.lineNumbers }}
63+
2964
i18n_lint:
3065
name: "i18n Check"
3166
uses: matrix-org/matrix-react-sdk/.github/workflows/i18n_check.yml@develop

.github/workflows/triage-labelled.yml

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ jobs:
1818
contains(github.event.issue.labels.*.name, 'A-Tags') ||
1919
contains(github.event.issue.labels.*.name, 'A-Video-Rooms') ||
2020
contains(github.event.issue.labels.*.name, 'A-Message-Starring') ||
21-
contains(github.event.issue.labels.*.name, 'A-Rich-Text-Editor')
21+
contains(github.event.issue.labels.*.name, 'A-Rich-Text-Editor') ||
22+
contains(github.event.issue.labels.*.name, 'A-Element-Call')
2223
steps:
2324
- uses: actions/github-script@v5
2425
with:
@@ -76,12 +77,12 @@ jobs:
7677
headers: '{"GraphQL-Features": "projects_next_graphql"}'
7778
query: |
7879
mutation add_to_project($projectid:ID!,$contentid:ID!) {
79-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
80-
projectNextItem {
80+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
81+
item {
8182
id
83+
}
8284
}
8385
}
84-
}
8586
projectid: ${{ env.PROJECT_ID }}
8687
contentid: ${{ github.event.issue.node_id }}
8788
env:
@@ -100,12 +101,12 @@ jobs:
100101
headers: '{"GraphQL-Features": "projects_next_graphql"}'
101102
query: |
102103
mutation add_to_project($projectid:ID!,$contentid:ID!) {
103-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
104-
projectNextItem {
104+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
105+
item {
105106
id
107+
}
106108
}
107109
}
108-
}
109110
projectid: ${{ env.PROJECT_ID }}
110111
contentid: ${{ github.event.issue.node_id }}
111112
env:
@@ -128,12 +129,12 @@ jobs:
128129
headers: '{"GraphQL-Features": "projects_next_graphql"}'
129130
query: |
130131
mutation add_to_project($projectid:ID!,$contentid:ID!) {
131-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
132-
projectNextItem {
132+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
133+
item {
133134
id
135+
}
134136
}
135137
}
136-
}
137138
projectid: ${{ env.PROJECT_ID }}
138139
contentid: ${{ github.event.issue.node_id }}
139140
env:
@@ -151,12 +152,12 @@ jobs:
151152
headers: '{"GraphQL-Features": "projects_next_graphql"}'
152153
query: |
153154
mutation add_to_project($projectid:ID!,$contentid:ID!) {
154-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
155-
projectNextItem {
155+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
156+
item {
156157
id
158+
}
157159
}
158160
}
159-
}
160161
projectid: ${{ env.PROJECT_ID }}
161162
contentid: ${{ github.event.issue.node_id }}
162163
env:
@@ -174,12 +175,12 @@ jobs:
174175
headers: '{"GraphQL-Features": "projects_next_graphql"}'
175176
query: |
176177
mutation add_to_project($projectid:ID!,$contentid:ID!) {
177-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
178-
projectNextItem {
178+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
179+
item {
179180
id
181+
}
180182
}
181183
}
182-
}
183184
projectid: ${{ env.PROJECT_ID }}
184185
contentid: ${{ github.event.issue.node_id }}
185186
env:
@@ -197,12 +198,12 @@ jobs:
197198
headers: '{"GraphQL-Features": "projects_next_graphql"}'
198199
query: |
199200
mutation add_to_project($projectid:ID!,$contentid:ID!) {
200-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
201-
projectNextItem {
201+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
202+
item {
202203
id
204+
}
203205
}
204206
}
205-
}
206207
projectid: ${{ env.PROJECT_ID }}
207208
contentid: ${{ github.event.issue.node_id }}
208209
env:
@@ -220,12 +221,12 @@ jobs:
220221
headers: '{"GraphQL-Features": "projects_next_graphql"}'
221222
query: |
222223
mutation add_to_project($projectid:ID!,$contentid:ID!) {
223-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
224-
projectNextItem {
224+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
225+
item {
225226
id
227+
}
226228
}
227229
}
228-
}
229230
projectid: ${{ env.PROJECT_ID }}
230231
contentid: ${{ github.event.issue.node_id }}
231232
env:
@@ -243,12 +244,12 @@ jobs:
243244
headers: '{"GraphQL-Features": "projects_next_graphql"}'
244245
query: |
245246
mutation add_to_project($projectid:ID!,$contentid:ID!) {
246-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
247-
projectNextItem {
247+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
248+
item {
248249
id
250+
}
249251
}
250252
}
251-
}
252253
projectid: ${{ env.PROJECT_ID }}
253254
contentid: ${{ github.event.issue.node_id }}
254255
env:

.github/workflows/triage-move-review-requests.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ jobs:
5858
headers: '{"GraphQL-Features": "projects_next_graphql"}'
5959
query: |
6060
mutation add_to_project($projectid:ID!, $contentid:ID!) {
61-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
62-
projectNextItem {
61+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
62+
item {
6363
id
6464
}
6565
}
@@ -125,8 +125,8 @@ jobs:
125125
headers: '{"GraphQL-Features": "projects_next_graphql"}'
126126
query: |
127127
mutation add_to_project($projectid:ID!, $contentid:ID!) {
128-
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
129-
projectNextItem {
128+
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
129+
item {
130130
id
131131
}
132132
}

.github/workflows/triage-unlabelled.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,16 +48,15 @@ jobs:
4848
if: >
4949
!(contains(github.event.issue.labels.*.name, 'A-Maths') ||
5050
contains(github.event.issue.labels.*.name, 'A-Message-Pinning') ||
51-
contains(github.event.issue.labels.*.name, 'A-Threads') ||
52-
contains(github.event.issue.labels.*.name, 'A-Polls') ||
5351
contains(github.event.issue.labels.*.name, 'A-Location-Sharing') ||
54-
contains(github.event.issue.labels.*.name, 'A-Message-Bubbles') ||
5552
contains(github.event.issue.labels.*.name, 'Z-IA') ||
5653
contains(github.event.issue.labels.*.name, 'A-Themes-Custom') ||
5754
contains(github.event.issue.labels.*.name, 'A-E2EE-Dehydration') ||
5855
contains(github.event.issue.labels.*.name, 'A-Tags') ||
5956
contains(github.event.issue.labels.*.name, 'A-Video-Rooms') ||
60-
contains(github.event.issue.labels.*.name, 'A-Message-Starring')) &&
57+
contains(github.event.issue.labels.*.name, 'A-Message-Starring') ||
58+
contains(github.event.issue.labels.*.name, 'A-Rich-Text-Editor') ||
59+
contains(github.event.issue.labels.*.name, 'A-Element-Call')) &&
6160
contains(github.event.issue.labels.*.name, 'Z-Labs')
6261
steps:
6362
- uses: actions/github-script@v5

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,33 @@
1+
Changes in [1.11.15](https://github.com/vector-im/element-web/releases/tag/v1.11.15) (2022-11-22)
2+
=================================================================================================
3+
4+
## ✨ Features
5+
* Make clear notifications work with threads ([\#9575](https://github.com/matrix-org/matrix-react-sdk/pull/9575)). Fixes #23751.
6+
* Change "None" to "Off" in notification options ([\#9539](https://github.com/matrix-org/matrix-react-sdk/pull/9539)). Contributed by @Arnei.
7+
* Advanced audio processing settings ([\#8759](https://github.com/matrix-org/matrix-react-sdk/pull/8759)). Fixes #6278. Contributed by @MrAnno.
8+
* Add way to create a user notice via config.json ([\#9559](https://github.com/matrix-org/matrix-react-sdk/pull/9559)).
9+
* Improve design of the rich text editor ([\#9533](https://github.com/matrix-org/matrix-react-sdk/pull/9533)). Contributed by @florianduros.
10+
* Enable user to zoom beyond image size ([\#5949](https://github.com/matrix-org/matrix-react-sdk/pull/5949)). Contributed by @jaiwanth-v.
11+
* Fix: Move "Leave Space" option to the bottom of space context menu ([\#9535](https://github.com/matrix-org/matrix-react-sdk/pull/9535)). Contributed by @hanadi92.
12+
13+
## 🐛 Bug Fixes
14+
* Make build scripts work on NixOS ([\#23740](https://github.com/vector-im/element-web/pull/23740)).
15+
* Fix integration manager `get_open_id_token` action and add E2E tests ([\#9520](https://github.com/matrix-org/matrix-react-sdk/pull/9520)).
16+
* Fix links being mangled by markdown processing ([\#9570](https://github.com/matrix-org/matrix-react-sdk/pull/9570)). Fixes #23743.
17+
* Fix: inline links selecting radio button ([\#9543](https://github.com/matrix-org/matrix-react-sdk/pull/9543)). Contributed by @hanadi92.
18+
* Fix wrong error message in registration when phone number threepid is in use. ([\#9571](https://github.com/matrix-org/matrix-react-sdk/pull/9571)). Contributed by @bagvand.
19+
* Fix missing avatar for show current profiles ([\#9563](https://github.com/matrix-org/matrix-react-sdk/pull/9563)). Fixes #23733.
20+
* Fix read receipts trickling down correctly ([\#9567](https://github.com/matrix-org/matrix-react-sdk/pull/9567)). Fixes #23746.
21+
* Resilience fix for homeserver without thread notification support ([\#9565](https://github.com/matrix-org/matrix-react-sdk/pull/9565)).
22+
* Don't switch to the home page needlessly after leaving a room ([\#9477](https://github.com/matrix-org/matrix-react-sdk/pull/9477)).
23+
* Differentiate download and decryption errors when showing images ([\#9562](https://github.com/matrix-org/matrix-react-sdk/pull/9562)). Fixes #3892.
24+
* Close context menu when a modal is opened to prevent user getting stuck ([\#9560](https://github.com/matrix-org/matrix-react-sdk/pull/9560)). Fixes #15610 and #10781.
25+
* Fix TimelineReset handling when no room associated ([\#9553](https://github.com/matrix-org/matrix-react-sdk/pull/9553)).
26+
* Always use current profile on thread events ([\#9524](https://github.com/matrix-org/matrix-react-sdk/pull/9524)). Fixes #23648.
27+
* Fix `ThreadView` tests not using thread flag ([\#9547](https://github.com/matrix-org/matrix-react-sdk/pull/9547)). Contributed by @MadLittleMods.
28+
* Handle deletion of `m.call` events ([\#9540](https://github.com/matrix-org/matrix-react-sdk/pull/9540)). Fixes #23663.
29+
* Fix incorrect notification count after leaving a room with notifications ([\#9518](https://github.com/matrix-org/matrix-react-sdk/pull/9518)). Contributed by @Arnei.
30+
131
Changes in [1.11.14](https://github.com/vector-im/element-web/releases/tag/v1.11.14) (2022-11-08)
232
=================================================================================================
333

docs/config.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,11 @@ complete re-branding/private labeling, a more personalised experience can be ach
140140
to hide this dropdown.
141141
16. `disable_guests`: When `false` (default), **enable** guest-related functionality (peeking/previewing rooms, etc) for unregistered
142142
users. Set to `true` to disable this functionality.
143+
17. `user_notice`: Optional notice to show to the user, e.g. for sunsetting a deployment and pushing users to move in their own time.
144+
Takes a configuration object as below:
145+
1. `title`: Required. Title to show at the top of the notice.
146+
2. `description`: Required. The description to use for the notice.
147+
3. `show_once`: Optional. If true then the notice will only be shown once per device.
143148

144149
### `desktop_builds` and `mobile_builds`
145150

package.json

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "element-web",
3-
"version": "1.11.14",
3+
"version": "1.11.15",
44
"description": "A feature-rich client for Matrix.org",
55
"author": "New Vector Ltd.",
66
"repository": {
@@ -60,8 +60,8 @@
6060
"gfm.css": "^1.1.2",
6161
"jsrsasign": "^10.5.25",
6262
"katex": "^0.16.0",
63-
"matrix-js-sdk": "21.1.0",
64-
"matrix-react-sdk": "3.60.0",
63+
"matrix-js-sdk": "21.2.0",
64+
"matrix-react-sdk": "3.61.0",
6565
"matrix-widget-api": "^1.1.1",
6666
"prop-types": "^15.7.2",
6767
"react": "17.0.2",
@@ -86,6 +86,7 @@
8686
"@babel/preset-typescript": "^7.12.7",
8787
"@babel/register": "^7.12.10",
8888
"@babel/runtime": "^7.12.5",
89+
"@casualbot/jest-sonar-reporter": "^2.2.5",
8990
"@principalstudio/html-webpack-inject-preload": "^1.2.7",
9091
"@sentry/webpack-plugin": "^1.18.1",
9192
"@svgr/webpack": "^5.5.0",
@@ -114,9 +115,10 @@
114115
"eslint-config-google": "^0.14.0",
115116
"eslint-plugin-deprecate": "^0.7.0",
116117
"eslint-plugin-import": "^2.25.4",
117-
"eslint-plugin-matrix-org": "^0.6.1",
118+
"eslint-plugin-matrix-org": "^0.7.0",
118119
"eslint-plugin-react": "^7.28.0",
119120
"eslint-plugin-react-hooks": "^4.3.0",
121+
"eslint-plugin-unicorn": "^44.0.2",
120122
"extract-text-webpack-plugin": "^4.0.0-beta.0",
121123
"fake-indexeddb": "^3.1.2",
122124
"fetch-mock-jest": "^1.5.1",
@@ -128,9 +130,8 @@
128130
"jest-environment-jsdom": "^29.0.0",
129131
"jest-mock": "^29.0.0",
130132
"jest-raw-loader": "^1.0.1",
131-
"jest-sonar-reporter": "^2.0.0",
132133
"json-loader": "^0.5.7",
133-
"loader-utils": "^1.4.0",
134+
"loader-utils": "^2.0.3",
134135
"matrix-mock-request": "^2.5.0",
135136
"matrix-web-i18n": "^1.3.0",
136137
"mini-css-extract-plugin": "^1",
@@ -209,10 +210,11 @@
209210
"text-summary",
210211
"lcov"
211212
],
212-
"testResultsProcessor": "jest-sonar-reporter"
213+
"testResultsProcessor": "@casualbot/jest-sonar-reporter"
213214
},
214-
"jestSonar": {
215-
"reportPath": "coverage",
216-
"sonar56x": true
215+
"@casualbot/jest-sonar-reporter": {
216+
"outputDirectory": "coverage",
217+
"outputName": "jest-sonar-report.xml",
218+
"relativePaths": true
217219
}
218220
}

release.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/bin/bash
1+
#!/usr/bin/env bash
22
#
33
# Script to perform a release of element-web.
44

res/apple-app-site-association

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"applinks": {
3+
"apps": [],
4+
"details": [
5+
{
6+
"appID": "7J4U792NQT.im.vector.app",
7+
"paths": [
8+
"*"
9+
]
10+
}
11+
]
12+
},
13+
"webcredentials": {
14+
"apps": [
15+
"7J4U792NQT.im.vector.app"
16+
]
17+
}
18+
}

scripts/ci_package.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/bin/bash
1+
#!/usr/bin/env bash
22

33
# Runs package.sh, passing DIST_VERSION determined by git
44

scripts/copy-res.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ const INCLUDE_LANGS = [
6363
// common parents. Hence, "res/{a,b}/**": the output will be "dest/a/..." and
6464
// "dest/b/...".
6565
const COPY_LIST = [
66+
["res/apple-app-site-association", "webapp"],
6667
["res/manifest.json", "webapp"],
6768
["res/sw.js", "webapp"],
6869
["res/welcome.html", "webapp"],

scripts/docker-link-repos.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/bin/bash
1+
#!/usr/bin/env bash
22

33
set -ex
44

scripts/docker-package.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/bin/bash
1+
#!/usr/bin/env bash
22

33
set -ex
44

0 commit comments

Comments
 (0)