Skip to content
This repository has been archived by the owner on Sep 11, 2024. It is now read-only.

Load web workers and worklets in a way that Webpack 5 can bundle them #11869

Merged
merged 16 commits into from
Nov 20, 2023

Conversation

Johennes
Copy link
Contributor

@Johennes Johennes commented Nov 14, 2023

For: element-hq/element-web#26229

This changes the way web workers and worklets are loaded to be compatible with Webpack 5's built-in support for workers and worklets. This in turn allows us to get rid of worker-loader and worklet-loader.

Remaining issues:

  • import.meta.url causes an IDE warning: The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'.ts(1343)
  • Most unit tests fail (likely because the worker mock isn't applied anymore now that we load via URLs)
  • Some integration tests fail with the same error

Requires: element-hq/element-web#26551


This change is marked as an internal change (Task), so will not be included in the changelog.

commit 01a62b36a484d65664a641c4db2a7f3373251b47
Merge: 10edf06 74961db
Author: Johannes Marbach <[email protected]>
Date:   Mon Nov 13 19:38:47 2023 +0100

    Merge branch 'johannes/webpack5-workers' into johannes/worklet-path

commit 10edf06
Author: Johannes Marbach <[email protected]>
Date:   Sun Nov 12 12:21:43 2023 +0100

    Document syntax and use .ts

commit 4040f2c
Author: Johannes Marbach <[email protected]>
Date:   Sat Nov 11 21:38:09 2023 +0100

    Switch to URL and use syntax compatible with Webpack

commit b4f96f1
Merge: eed2ffd 9448469
Author: Johannes Marbach <[email protected]>
Date:   Thu Nov 9 21:04:06 2023 +0100

    Merge branch 'develop' into johannes/worklet-path

commit eed2ffd
Author: Johannes Marbach <[email protected]>
Date:   Thu Nov 9 21:03:45 2023 +0100

    Restore unused import to fix dead code analysis

commit 689cea2
Author: Johannes Marbach <[email protected]>
Date:   Thu Nov 9 16:50:56 2023 +0100

    Use literal path in audioWorklet.addModule for compatibility with Webpack 5
@Johennes Johennes added the T-Task Refactoring, enabling or disabling functionality, other engineering tasks label Nov 14, 2023
@Johennes Johennes marked this pull request as ready for review November 19, 2023 20:15
@Johennes Johennes requested a review from a team as a code owner November 19, 2023 20:15
@Johennes Johennes merged commit 0a03b09 into develop Nov 20, 2023
21 of 22 checks passed
@Johennes Johennes deleted the johannes/webpack-5 branch November 20, 2023 12:30
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
T-Task Refactoring, enabling or disabling functionality, other engineering tasks
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants