Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

matrix-sdk-crypto-wasm 12 will break redeployment of element-web #28632

Closed
richvdh opened this issue Dec 4, 2024 · 1 comment · Fixed by #28718
Closed

matrix-sdk-crypto-wasm 12 will break redeployment of element-web #28632

richvdh opened this issue Dec 4, 2024 · 1 comment · Fixed by #28718
Assignees
Labels
A-E2EE A-Packaging Packaging, signing, releasing O-Frequent Affects or can be seen by most users regularly or impacts most users' first experience S-Major Severely degrades major functionality or product features, with no satisfactory workaround T-Defect

Comments

@richvdh
Copy link
Member

richvdh commented Dec 4, 2024

As of matrix-org/matrix-rust-sdk-crypto-wasm#167, the wasm build of matrix-sdk-crypto is actually shipped as a .wasm file, rather than base64-ed into Javascript. Our current webpack config then dumps it into the top level of the build directory, which will be a problem on redeployment (specifically, if you try to fetch the wasm artifact for vN after vN+1 has been deployed, you'll get a 404 and sadness).

@richvdh richvdh added S-Major Severely degrades major functionality or product features, with no satisfactory workaround A-E2EE A-Packaging Packaging, signing, releasing O-Frequent Affects or can be seen by most users regularly or impacts most users' first experience T-Defect labels Dec 4, 2024
@richvdh richvdh self-assigned this Dec 4, 2024
@richvdh
Copy link
Member Author

richvdh commented Dec 9, 2024

I'm experimenting with other approaches to this, but currently blocked on a bit of a backlog of PRs in matrix-rust-sdk-crypto-wasm

richvdh added a commit that referenced this issue Dec 11, 2024
As of matrix-org/matrix-rust-sdk-crypto-wasm#167, the
wasm build of matrix-sdk-crypto is actually shipped as a `.wasm` file, rather
than base64-ed into Javascript. Our current webpack config then dumps it into
the top level of the build directory, which will be a problem on redeployment
(specifically, if you try to fetch the wasm artifact for vN after vN+1 has been
deployed, you'll get a 404 and sadness).

So, instead we use Webpack's experimental support for WASM-as-ES-module, which
makes Webpack put the wasm file in the bundle, along with everything else.

Fixes: #28632
github-merge-queue bot pushed a commit that referenced this issue Dec 11, 2024
As of matrix-org/matrix-rust-sdk-crypto-wasm#167, the
wasm build of matrix-sdk-crypto is actually shipped as a `.wasm` file, rather
than base64-ed into Javascript. Our current webpack config then dumps it into
the top level of the build directory, which will be a problem on redeployment
(specifically, if you try to fetch the wasm artifact for vN after vN+1 has been
deployed, you'll get a 404 and sadness).

So, instead we use Webpack's experimental support for WASM-as-ES-module, which
makes Webpack put the wasm file in the bundle, along with everything else.

Fixes: #28632
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-E2EE A-Packaging Packaging, signing, releasing O-Frequent Affects or can be seen by most users regularly or impacts most users' first experience S-Major Severely degrades major functionality or product features, with no satisfactory workaround T-Defect
Projects
None yet
1 participant