From f78b8dd1531b0f3b81d58613f6de0aa69d0ac23e Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Thu, 27 Mar 2025 18:22:52 +0000
Subject: [PATCH 001/222] Update dependency @vector-im/compound-design-tokens
to v4
---
package.json | 2 +-
yarn.lock | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index d3b898b2..d0a0a202 100644
--- a/package.json
+++ b/package.json
@@ -71,7 +71,7 @@
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"@use-gesture/react": "^10.2.11",
- "@vector-im/compound-design-tokens": "^3.0.0",
+ "@vector-im/compound-design-tokens": "^4.0.0",
"@vector-im/compound-web": "^7.2.0",
"@vitejs/plugin-basic-ssl": "^1.0.1",
"@vitejs/plugin-react": "^4.0.1",
diff --git a/yarn.lock b/yarn.lock
index ffc3ceca..eb8c59da 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5017,9 +5017,9 @@ __metadata:
languageName: node
linkType: hard
-"@vector-im/compound-design-tokens@npm:^3.0.0":
- version: 3.0.1
- resolution: "@vector-im/compound-design-tokens@npm:3.0.1"
+"@vector-im/compound-design-tokens@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "@vector-im/compound-design-tokens@npm:4.0.1"
peerDependencies:
"@types/react": "*"
react: ^17 || ^18 || ^19.0.0
@@ -5028,7 +5028,7 @@ __metadata:
optional: true
react:
optional: true
- checksum: 10c0/afb941fd4efc91c8ccea8751d2da401379c3ababe6326943ccef0aecfe7691ef39860bc2f877fe7fc35b7887f483d46881656da10e3deb0ee94ea32c3c3cbb31
+ checksum: 10c0/4788109e22f09f80c003913a978a0efcf45a2f2820cfa21216ebb4c15ad71ddb7f976e5c65f3b627ac44f6a759dfca9b48561a005dd76cb5891272f786c30289
languageName: node
linkType: hard
@@ -6895,7 +6895,7 @@ __metadata:
"@typescript-eslint/eslint-plugin": "npm:^8.0.0"
"@typescript-eslint/parser": "npm:^8.0.0"
"@use-gesture/react": "npm:^10.2.11"
- "@vector-im/compound-design-tokens": "npm:^3.0.0"
+ "@vector-im/compound-design-tokens": "npm:^4.0.0"
"@vector-im/compound-web": "npm:^7.2.0"
"@vitejs/plugin-basic-ssl": "npm:^1.0.1"
"@vitejs/plugin-react": "npm:^4.0.1"
From b969857583bee2dac8db8ada0c8b49adddfd1c6c Mon Sep 17 00:00:00 2001
From: fkwp
Date: Thu, 22 May 2025 12:49:37 +0200
Subject: [PATCH 002/222] Allow the jwt service to be running locallay rather
than part of the docker-compose. This helps with developing the
lk-jwt-service
---
backend/dev_nginx.conf | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/backend/dev_nginx.conf b/backend/dev_nginx.conf
index 44fef8a5..af370d2e 100644
--- a/backend/dev_nginx.conf
+++ b/backend/dev_nginx.conf
@@ -43,6 +43,11 @@ server {
# MatrixRTC reverse proxy
# - MatrixRTC Authorization Service
# - LiveKit SFU websocket signaling connection
+upstream jwt-auth-services {
+ server auth-server:8080;
+ server host.docker.internal:8080;
+}
+
server {
listen 80;
listen [::]:80;
@@ -63,7 +68,8 @@ server {
proxy_set_header X-Forwarded-Proto $scheme;
# JWT Service running at port 8080
- proxy_pass http://auth-server:8080/;
+ proxy_pass http://jwt-auth-services/;
+
}
location ^~ /livekit/sfu/ {
From d585f6232e4b530212231710f0cc2d98125221fd Mon Sep 17 00:00:00 2001
From: fkwp
Date: Tue, 27 May 2025 16:30:06 +0200
Subject: [PATCH 003/222] change JWT port ot 6080 to not conflict with the
playwright tests.
---
backend/dev_nginx.conf | 4 ++--
dev-backend-docker-compose.yml | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/backend/dev_nginx.conf b/backend/dev_nginx.conf
index 44fef8a5..ea890a30 100644
--- a/backend/dev_nginx.conf
+++ b/backend/dev_nginx.conf
@@ -62,8 +62,8 @@ server {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
- # JWT Service running at port 8080
- proxy_pass http://auth-server:8080/;
+ # JWT Service running at port 6080
+ proxy_pass http://auth-server:6080/;
}
location ^~ /livekit/sfu/ {
diff --git a/dev-backend-docker-compose.yml b/dev-backend-docker-compose.yml
index da3c3530..d711c41a 100644
--- a/dev-backend-docker-compose.yml
+++ b/dev-backend-docker-compose.yml
@@ -6,7 +6,7 @@ services:
image: ghcr.io/element-hq/lk-jwt-service:latest-ci
hostname: auth-server
environment:
- - LIVEKIT_JWT_PORT=8080
+ - LIVEKIT_JWT_PORT=6080
- LIVEKIT_URL=wss://matrix-rtc.m.localhost/livekit/sfu
- LIVEKIT_KEY=devkey
- LIVEKIT_SECRET=secret
@@ -18,7 +18,7 @@ services:
condition: on-failure
ports:
# HOST_PORT:CONTAINER_PORT
- - 8080:8080
+ - 6080:6080
networks:
- ecbackend
From 8953936d3d399bae76bed7abf1f1a627f806532a Mon Sep 17 00:00:00 2001
From: fkwp
Date: Tue, 27 May 2025 17:53:06 +0200
Subject: [PATCH 004/222] fix docker compose playwright override
---
.github/workflows/test.yaml | 2 +-
package.json | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml
index 2ef4dc04..30934f71 100644
--- a/.github/workflows/test.yaml
+++ b/.github/workflows/test.yaml
@@ -46,7 +46,7 @@ jobs:
run: yarn playwright install --with-deps
- name: Run backend components
run: |
- docker compose -f playwright-backend-docker-compose.yml up -d
+ docker compose -f playwright-backend-docker-compose.yml -f playwright-backend-docker-compose.override.yml up -d
docker ps
- name: Copy config file
run: cp config/config.devenv.json public/config.json
diff --git a/package.json b/package.json
index 97c4f737..e8ccdd95 100644
--- a/package.json
+++ b/package.json
@@ -22,6 +22,7 @@
"test": "vitest",
"test:coverage": "vitest --coverage",
"backend": "docker-compose -f dev-backend-docker-compose.yml up",
+ "backend-playwright": "docker-compose -f playwright-backend-docker-compose.yml -f playwright-backend-docker-compose.override.yml up",
"test:playwright": "playwright test",
"test:playwright:open": "yarn test:playwright --ui",
"links:enable": "mv .links.disabled.yaml .links.yaml & touch .links.yaml",
From 99fc7162e207abc73ba6f4107d2759bffcbda4fd Mon Sep 17 00:00:00 2001
From: fkwp
Date: Tue, 27 May 2025 18:04:34 +0200
Subject: [PATCH 005/222] fix widget fixture
---
playwright/fixtures/widget-user.ts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/playwright/fixtures/widget-user.ts b/playwright/fixtures/widget-user.ts
index d1412bd8..b25602eb 100644
--- a/playwright/fixtures/widget-user.ts
+++ b/playwright/fixtures/widget-user.ts
@@ -30,8 +30,8 @@ const PASSWORD = "foobarbaz1!";
const CONFIG_JSON = {
default_server_config: {
"m.homeserver": {
- base_url: "http://synapse.localhost:8008",
- server_name: "synapse.localhost",
+ base_url: "https://synapse.m.localhost",
+ server_name: "synapse.m.localhost",
},
},
From e4fd630f376faa9cd80698f491614ad236c53d23 Mon Sep 17 00:00:00 2001
From: fkwp
Date: Tue, 27 May 2025 19:03:53 +0200
Subject: [PATCH 006/222] fix element web fixture
---
playwright/fixtures/widget-user.ts | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/playwright/fixtures/widget-user.ts b/playwright/fixtures/widget-user.ts
index b25602eb..46973f83 100644
--- a/playwright/fixtures/widget-user.ts
+++ b/playwright/fixtures/widget-user.ts
@@ -99,6 +99,13 @@ export const widgetTest = test.extend({
.getByRole("textbox", { name: "Confirm password" })
.fill(PASSWORD);
await ewPage1.getByRole("button", { name: "Register" }).click();
+ await expect(
+ ewPage1.getByRole("button", { name: "Continue" }),
+ ).toBeVisible();
+ await ewPage1
+ .getByRole("textbox", { name: "Password", exact: true })
+ .fill(PASSWORD);
+ await ewPage1.getByRole("button", { name: "Continue" }).click();
await expect(
ewPage1.getByRole("heading", { name: `Welcome ${userA}` }),
).toBeVisible();
@@ -127,6 +134,13 @@ export const widgetTest = test.extend({
.getByRole("textbox", { name: "Confirm password" })
.fill(PASSWORD);
await ewPage2.getByRole("button", { name: "Register" }).click();
+ await expect(
+ ewPage2.getByRole("button", { name: "Continue" }),
+ ).toBeVisible();
+ await ewPage2
+ .getByRole("textbox", { name: "Password", exact: true })
+ .fill(PASSWORD);
+ await ewPage2.getByRole("button", { name: "Continue" }).click();
await expect(
ewPage2.getByRole("heading", { name: `Welcome ${userB}` }),
).toBeVisible();
From ebc714b73ff0813f134808e7d75305c5aea49fc7 Mon Sep 17 00:00:00 2001
From: fkwp
Date: Tue, 27 May 2025 20:06:28 +0200
Subject: [PATCH 007/222] force to pull the latest docker images
---
.github/workflows/test.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml
index 30934f71..518226fb 100644
--- a/.github/workflows/test.yaml
+++ b/.github/workflows/test.yaml
@@ -46,6 +46,7 @@ jobs:
run: yarn playwright install --with-deps
- name: Run backend components
run: |
+ docker compose -f playwright-backend-docker-compose.yml -f playwright-backend-docker-compose.override.yml pull
docker compose -f playwright-backend-docker-compose.yml -f playwright-backend-docker-compose.override.yml up -d
docker ps
- name: Copy config file
From e757f7af6b12f4165acadb5c9cb67aed20a67c64 Mon Sep 17 00:00:00 2001
From: Robin
Date: Wed, 28 May 2025 17:00:57 -0400
Subject: [PATCH 008/222] Run the 'Prevent blocked' check whenever a PR branch
is updated
Because we're now requiring the 'Prevent blocked' check to pass before merging a PR, GitHub Actions now expects it to be associated with the latest Git ref of the PR's branch whenever the branch is updated. Therefore we need to re-run the workflow on the 'synchronize' event.
---
.github/workflows/blocked.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/blocked.yaml b/.github/workflows/blocked.yaml
index e016e707..f3c99b3e 100644
--- a/.github/workflows/blocked.yaml
+++ b/.github/workflows/blocked.yaml
@@ -1,7 +1,7 @@
name: Prevent blocked
on:
pull_request_target:
- types: [opened, labeled, unlabeled]
+ types: [opened, labeled, unlabeled, synchronize]
jobs:
prevent-blocked:
name: Prevent blocked
From 07a4244c057332c61d458a17d0ee1994fe10457c Mon Sep 17 00:00:00 2001
From: Robin
Date: Wed, 28 May 2025 18:04:29 -0400
Subject: [PATCH 009/222] Upgrade Compound Web to v7.12.0
---
package.json | 2 +-
src/FullScreenView.tsx | 4 +-
src/__snapshots__/Modal.test.tsx.snap | 4 +-
src/__snapshots__/Toast.test.tsx.snap | 2 +-
.../ReactionToggleButton.test.tsx.snap | 20 +++---
src/room/GroupCallErrorBoundary.tsx | 4 +-
.../GroupCallErrorBoundary.test.tsx.snap | 62 +++++++++----------
src/tile/MediaView.tsx | 4 +-
yarn.lock | 12 ++--
9 files changed, 57 insertions(+), 57 deletions(-)
diff --git a/package.json b/package.json
index d0a0a202..48bc3044 100644
--- a/package.json
+++ b/package.json
@@ -72,7 +72,7 @@
"@typescript-eslint/parser": "^8.0.0",
"@use-gesture/react": "^10.2.11",
"@vector-im/compound-design-tokens": "^4.0.0",
- "@vector-im/compound-web": "^7.2.0",
+ "@vector-im/compound-web": "^7.12.0",
"@vitejs/plugin-basic-ssl": "^1.0.1",
"@vitejs/plugin-react": "^4.0.1",
"@vitest/coverage-v8": "^3.0.0",
diff --git a/src/FullScreenView.tsx b/src/FullScreenView.tsx
index c8655229..4f2f8f1e 100644
--- a/src/FullScreenView.tsx
+++ b/src/FullScreenView.tsx
@@ -10,7 +10,7 @@ import classNames from "classnames";
import { useTranslation } from "react-i18next";
import * as Sentry from "@sentry/react";
import { logger } from "matrix-js-sdk/src/logger";
-import { ErrorIcon } from "@vector-im/compound-design-tokens/assets/web/icons";
+import { ErrorSolidIcon } from "@vector-im/compound-design-tokens/assets/web/icons";
import { Header, HeaderLogo, LeftNav, RightNav } from "./Header";
import styles from "./FullScreenView.module.css";
@@ -67,7 +67,7 @@ export const ErrorPage = ({ error, widget }: ErrorPageProps): ReactElement => {
) : (
My modal
diff --git a/src/__snapshots__/Toast.test.tsx.snap b/src/__snapshots__/Toast.test.tsx.snap
index d1c4d075..60e8d41b 100644
--- a/src/__snapshots__/Toast.test.tsx.snap
+++ b/src/__snapshots__/Toast.test.tsx.snap
@@ -12,7 +12,7 @@ exports[`Toast > renders 1`] = `
type="button"
>
Hello world!
diff --git a/src/button/__snapshots__/ReactionToggleButton.test.tsx.snap b/src/button/__snapshots__/ReactionToggleButton.test.tsx.snap
index ff0b182c..556d6edb 100644
--- a/src/button/__snapshots__/ReactionToggleButton.test.tsx.snap
+++ b/src/button/__snapshots__/ReactionToggleButton.test.tsx.snap
@@ -10,7 +10,7 @@ exports[`Can close reaction dialog 1`] = `
aria-expanded="true"
aria-haspopup="true"
aria-labelledby=":rb5:"
- class="_button_i91xf_17 _has-icon_i91xf_66 _icon-only_i91xf_59"
+ class="_button_vczzf_8 _has-icon_vczzf_57 _icon-only_vczzf_50"
data-kind="primary"
data-size="lg"
role="button"
@@ -26,7 +26,7 @@ exports[`Can close reaction dialog 1`] = `
>
@@ -44,7 +44,7 @@ exports[`Can fully expand emoji picker 1`] = `
aria-expanded="true"
aria-haspopup="true"
aria-labelledby=":r7m:"
- class="_button_i91xf_17 _has-icon_i91xf_66 _icon-only_i91xf_59"
+ class="_button_vczzf_8 _has-icon_vczzf_57 _icon-only_vczzf_50"
data-kind="primary"
data-size="lg"
role="button"
@@ -60,7 +60,7 @@ exports[`Can fully expand emoji picker 1`] = `
>
@@ -75,7 +75,7 @@ exports[`Can lower hand 1`] = `
aria-expanded="false"
aria-haspopup="true"
aria-labelledby=":r36:"
- class="_button_i91xf_17 _has-icon_i91xf_66 _icon-only_i91xf_59"
+ class="_button_vczzf_8 _has-icon_vczzf_57 _icon-only_vczzf_50"
data-kind="secondary"
data-size="lg"
role="button"
@@ -91,7 +91,7 @@ exports[`Can lower hand 1`] = `
>
@@ -109,7 +109,7 @@ exports[`Can open menu 1`] = `
aria-expanded="true"
aria-haspopup="true"
aria-labelledby=":r0:"
- class="_button_i91xf_17 _has-icon_i91xf_66 _icon-only_i91xf_59"
+ class="_button_vczzf_8 _has-icon_vczzf_57 _icon-only_vczzf_50"
data-kind="primary"
data-size="lg"
role="button"
@@ -125,7 +125,7 @@ exports[`Can open menu 1`] = `
>
@@ -140,7 +140,7 @@ exports[`Can raise hand 1`] = `
aria-expanded="false"
aria-haspopup="true"
aria-labelledby=":r1j:"
- class="_button_i91xf_17 raisedButton _has-icon_i91xf_66 _icon-only_i91xf_59"
+ class="_button_vczzf_8 raisedButton _has-icon_vczzf_57 _icon-only_vczzf_50"
data-kind="primary"
data-size="lg"
role="button"
@@ -155,7 +155,7 @@ exports[`Can raise hand 1`] = `
xmlns="http://www.w3.org/2000/svg"
>
diff --git a/src/room/GroupCallErrorBoundary.tsx b/src/room/GroupCallErrorBoundary.tsx
index 170718d6..b5f195c1 100644
--- a/src/room/GroupCallErrorBoundary.tsx
+++ b/src/room/GroupCallErrorBoundary.tsx
@@ -16,7 +16,7 @@ import {
} from "react";
import { Trans, useTranslation } from "react-i18next";
import {
- ErrorIcon,
+ ErrorSolidIcon,
HostIcon,
OfflineIcon,
WebBrowserIcon,
@@ -63,7 +63,7 @@ const ErrorPage: FC = ({
icon = WebBrowserIcon;
break;
default:
- icon = ErrorIcon;
+ icon = ErrorSolidIcon;
}
const actions: { label: string; onClick: () => void }[] = [];
diff --git a/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap b/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap
index 5aab22a2..6fd1ab40 100644
--- a/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap
+++ b/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap
@@ -108,7 +108,7 @@ exports[`ConnectionLostError: Action handling should reset error state 1`] = `
class="error"
>
Connection lost
@@ -135,7 +135,7 @@ exports[`ConnectionLostError: Action handling should reset error state 1`] = `
Reconnect