From 306cca041cacec29971f19be14ebcd5c52b4a19e Mon Sep 17 00:00:00 2001 From: Thore Cimbal Date: Tue, 28 Jul 2026 12:00:00 +0000 Subject: [PATCH] fix: pin matrix-js-sdk to a working commit, use our own Element Call fork The floating github:matrix-org/matrix-js-sdk#develop reference was resolved to a stale commit missing src/oidc/authorize.ts (breaking the webpack build). Investigated moving to the current develop HEAD instead (191908da) - turned out to be worse, not better: that commit renamed the entire src/oidc/ module to src/oauth/ with a materially different API (generateOidcAuthorizationUrl/completeAuthorizationCodeGrant/OidcError don't exist under those names anymore). Rather than porting our OIDC login code to the new API sight-unseen, pinned to d19cb751 - the last develop commit before that rename, verified to have both the file at the expected path and the exact exports apps/web imports. Also switched the Element Call embedded widget dependency from upstream's @element-hq/element-call-embedded to our own published fork (@sorb/threadnet-call-embedded@0.19.2-threadnet.5) - a full rebuild was otherwise silently bundling the unmodified upstream widget, discarding every Element Call customization (Video-tab quality settings, German translations, codec list fix). --- apps/web/package.json | 4 +-- apps/web/webpack.config.ts | 2 +- pnpm-lock.yaml | 51 +++++++++++++++++++++++--------------- 3 files changed, 34 insertions(+), 23 deletions(-) diff --git a/apps/web/package.json b/apps/web/package.json index 93c57ef6a..86667b428 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -81,7 +81,7 @@ "lodash": "npm:lodash-es@4.18.1", "maplibre-gl": "^5.0.0", "matrix-encrypt-attachment": "^1.0.3", - "matrix-js-sdk": "github:matrix-org/matrix-js-sdk#develop", + "matrix-js-sdk": "github:matrix-org/matrix-js-sdk#d19cb751da8bbdc75c19db751fff25f21761d23a", "matrix-widget-api": "^1.16.1", "memoize-one": "^6.0.0", "mime": "^4.0.4", @@ -125,7 +125,7 @@ "@babel/preset-react": "^7.12.10", "@babel/preset-typescript": "^7.12.7", "@casualbot/jest-sonar-reporter": "2.7.0", - "@element-hq/element-call-embedded": "0.19.2", + "@sorb/threadnet-call-embedded": "0.19.2-threadnet.5", "@element-hq/element-web-playwright-common": "workspace:*", "@fetch-mock/jest": "^0.2.20", "@jest/globals": "^30.2.0", diff --git a/apps/web/webpack.config.ts b/apps/web/webpack.config.ts index c68c19e60..590033593 100644 --- a/apps/web/webpack.config.ts +++ b/apps/web/webpack.config.ts @@ -725,7 +725,7 @@ export default (env: string, argv: Record): webpack.Configuration = // Element Call embedded widget { from: "**", - context: path.join(getPackageRoot("@element-hq/element-call-embedded"), "dist"), + context: path.join(getPackageRoot("@sorb/threadnet-call-embedded"), "dist"), to: path.join(__dirname, "webapp", "widgets", "element-call"), }, // Mobile guide assets diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 854a8be2e..af6455085 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -469,8 +469,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 matrix-js-sdk: - specifier: github:matrix-org/matrix-js-sdk#develop - version: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/349e8c5023b74b7ee17b2e9a0cba6dfce6818d68 + specifier: github:matrix-org/matrix-js-sdk#d19cb751da8bbdc75c19db751fff25f21761d23a + version: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/d19cb751da8bbdc75c19db751fff25f21761d23a matrix-widget-api: specifier: ^1.17.0 version: 1.17.0 @@ -595,9 +595,6 @@ importers: '@casualbot/jest-sonar-reporter': specifier: 2.7.0 version: 2.7.0 - '@element-hq/element-call-embedded': - specifier: 0.19.2 - version: 0.19.2 '@element-hq/element-web-playwright-common': specifier: workspace:* version: link:../../packages/playwright-common @@ -619,6 +616,9 @@ importers: '@sentry/webpack-plugin': specifier: ^5.0.0 version: 5.2.1(encoding@0.1.13)(webpack@5.106.2) + '@sorb/threadnet-call-embedded': + specifier: 0.19.2-threadnet.5 + version: 0.19.2-threadnet.5 '@stylistic/eslint-plugin': specifier: ^5.0.0 version: 5.10.0(eslint@8.57.1) @@ -2036,6 +2036,9 @@ packages: resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==} engines: {node: '>=6.9.0'} + '@babel/runtime@8.0.0': + resolution: {integrity: sha512-sL6cvO2IfkSu/iU+zs2S/w01B7A8V7suXSIKEN4hPFFdZoiPGxrj5pAG0lCaqLWiEIrjKzdznIWuaLcxPR53qw==} + '@babel/template@7.28.6': resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} engines: {node: '>=6.9.0'} @@ -2525,9 +2528,6 @@ packages: engines: {node: '>=14.14'} hasBin: true - '@element-hq/element-call-embedded@0.19.2': - resolution: {integrity: sha512-HlqB/5RkWU7LAvArUJdSLsHpZJyTnGzn6LPYPAMinqShLkXa0ILeurL6G6zpTmRH+/uoJUfpHo3DQd+5Tq6/zg==} - '@emnapi/core@1.10.0': resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==} @@ -3192,8 +3192,8 @@ packages: '@matrix-org/emojibase-bindings@1.5.0': resolution: {integrity: sha512-+W9/ow2Z3iQa7ZOF698PBhwNcgGkn36B5Sr8VDPx8N8CH7+Uw+7TrtbtKPZVdgf4m/THmgmfX40jS5YDBsLaYg==} - '@matrix-org/matrix-sdk-crypto-wasm@18.2.0': - resolution: {integrity: sha512-puyZefvq6sHfqlmkri8umhA44724H2JL0YtX8wlvhGuNl8awX/Q1tZyW2Iekm9ZJP7BtuOqlNdg9oQd6iaGbNw==} + '@matrix-org/matrix-sdk-crypto-wasm@18.4.0': + resolution: {integrity: sha512-osxkU1DQ+05+anGHapjWyvZqdHUb94Id37gy54mCKn1Cq/D7iGT5oEUEhjp4oTnCLo4TOtI6ULJ/LHsapaIptQ==} engines: {node: '>= 18'} '@matrix-org/react-sdk-module-api@2.5.0': @@ -5003,6 +5003,9 @@ packages: '@sinonjs/fake-timers@15.1.1': resolution: {integrity: sha512-cO5W33JgAPbOh07tvZjUOJ7oWhtaqGHiZw+11DPbyqh2kHTBc3eF/CjJDeQ4205RLQsX6rxCuYOroFQwl7JDRw==} + '@sorb/threadnet-call-embedded@0.19.2-threadnet.5': + resolution: {integrity: sha512-u2TG7i82ibkpHSH/s6xA4Q6BTJqITdYWyrVieTiRwnm2Z+SCn/GmPK8JZIp/uSnpMrl9619yp/6vDVtpDJsKZg==, tarball: https://rohana.axion1337.de/api/packages/sorb/npm/%40sorb%2Fthreadnet-call-embedded/-/0.19.2-threadnet.5/threadnet-call-embedded-0.19.2-threadnet.5.tgz} + '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} @@ -7077,6 +7080,10 @@ packages: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} + content-type@2.0.0: + resolution: {integrity: sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==} + engines: {node: '>=18'} + convert-hrtime@5.0.0: resolution: {integrity: sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==} engines: {node: '>=12'} @@ -9941,9 +9948,9 @@ packages: matrix-events-sdk@0.0.1: resolution: {integrity: sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==} - matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/349e8c5023b74b7ee17b2e9a0cba6dfce6818d68: - resolution: {tarball: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/349e8c5023b74b7ee17b2e9a0cba6dfce6818d68} - version: 41.4.0 + matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/d19cb751da8bbdc75c19db751fff25f21761d23a: + resolution: {tarball: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/d19cb751da8bbdc75c19db751fff25f21761d23a} + version: 41.9.0 engines: {node: '>=22.0.0'} matrix-web-i18n@3.6.0: @@ -14503,6 +14510,8 @@ snapshots: '@babel/runtime@7.29.2': {} + '@babel/runtime@8.0.0': {} + '@babel/template@7.28.6': dependencies: '@babel/code-frame': 7.29.0 @@ -15056,8 +15065,6 @@ snapshots: - supports-color optional: true - '@element-hq/element-call-embedded@0.19.2': {} - '@emnapi/core@1.10.0': dependencies: '@emnapi/wasi-threads': 1.2.1 @@ -15797,7 +15804,7 @@ snapshots: emojibase: 17.0.0 emojibase-data: 17.0.0(emojibase@17.0.0) - '@matrix-org/matrix-sdk-crypto-wasm@18.2.0': {} + '@matrix-org/matrix-sdk-crypto-wasm@18.4.0': {} '@matrix-org/react-sdk-module-api@2.5.0(patch_hash=016146c9cc96e6363609d2b2ac0896ccef567882eb1d73b75a77b8a30929de96)(react@19.2.6)': dependencies: @@ -17625,6 +17632,8 @@ snapshots: dependencies: '@sinonjs/commons': 3.0.1 + '@sorb/threadnet-call-embedded@0.19.2-threadnet.5': {} + '@standard-schema/spec@1.1.0': {} '@storybook/addon-a11y@10.3.6(storybook@10.3.6(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))': @@ -20080,6 +20089,8 @@ snapshots: content-type@1.0.5: {} + content-type@2.0.0: {} + convert-hrtime@5.0.0: {} convert-source-map@2.0.0: {} @@ -23508,13 +23519,13 @@ snapshots: matrix-events-sdk@0.0.1: {} - matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/349e8c5023b74b7ee17b2e9a0cba6dfce6818d68: + matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/d19cb751da8bbdc75c19db751fff25f21761d23a: dependencies: - '@babel/runtime': 7.29.2 - '@matrix-org/matrix-sdk-crypto-wasm': 18.2.0 + '@babel/runtime': 8.0.0 + '@matrix-org/matrix-sdk-crypto-wasm': 18.4.0 another-json: 0.2.0 bs58: 6.0.0 - content-type: 1.0.5 + content-type: 2.0.0 jwt-decode: 4.0.0 loglevel: 1.9.2 matrix-events-sdk: 0.0.1