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

Infrastructure: Update build tooling to use webpack v5 #5792

Merged
merged 203 commits into from Mar 2, 2022

Conversation

swissspidy
Copy link
Collaborator

@swissspidy swissspidy commented Dec 22, 2020

Summary

Updates webpack from v4 to v5 which contains a ton of major changes, which means there are major changes to our build tooling as well.

On the plus side, there are significant bundle size and build performance improvements.

Many webpack plugins haven't kept up yet, so this PR is a draft for the time being.

webpack 5 migration guide: https://webpack.js.org/migrate/5/

storybook + webpack 5 migration guide: https://storybook.js.org/blog/storybook-for-webpack-5/

Relevant Technical Choices

  • Prevent stylis plugin warnings
    Stylis has been throwing warnings because the stylis RTL plugin doesn't have a "name" (anymore?). Fixed this by adding Object.defineProperty(stylisRTLPlugin, 'name', { value: 'stylisRTLPlugin' }); everywhere, which seems to be the recommended approach.

  • Replace usage of global.* with window.*
    This was split out into Don't use node globals in browser context #10487

  • Replace usage of process.env with custom variables
    This was split out into Don't use node globals in browser context #10487

  • Replaces optimize-css-assets-webpack-plugin with css-minimizer-webpack-plugin
    The former does not support webpack 5, and recommends the latter going forward.

  • Replaces url-loader and file-loader with asset modules
    This changes the way SVG imports are written.

  • Replaces expose-loader with the mangleExports option

  • Updates webpack config to remove deprecated fields and maintain existing behavior
    The webpack config schema has been updated significantly. This PR removes things like jsonpFunction (deprecated) and adds things like resolve.fullySpecified (allows importing ES modules without file extensions)

  • Changes how Karma tests are run ⚠️
    karma-webpack needed to be updated to its next major version (5.0.0) in order to support webpack 5. This meant changing the way we run tests, because the "alternative usage" option we've been following is no longer supported. This essentially reverts Karma: use a single webpack bundle for all tests #2887. However, I don't see a negative performance impact. On the plus side: this should allow running individual tests again.

  • Update storybook to use webpack 5
    Since there are still upstream issues like Webpack5 + type: module = require is not defined storybookjs/storybook#14877, this contains a couple of workarounds that we can hopefully remove soon.

  • Addresses various deprecation warnings and other minor code quality issues

To-do

  • Port some of the webpack changes to the Rollup config

User-facing changes

N/A

Testing Instructions

Verify that all tests still pass, and editor still works.

Storybook should work.

SVG icons should look fine.


Fixes #6304

@swissspidy swissspidy added Type: Infrastructure Changes impacting testing infrastructure or build tooling Pod: WP & Infra labels Dec 22, 2020
@google-cla google-cla bot added the cla: yes label Dec 22, 2020
@github-actions
Copy link
Contributor

github-actions bot commented Dec 22, 2020

Size Change: -1.33 MB (-33%) 🎉

Total Size: 2.75 MB

Filename Size Change
assets/css/vendors-chunk-getStoryPropsToSave-wp-story-editor-rtl.css 0 B -699 B (removed) 🏆
assets/css/vendors-chunk-getStoryPropsToSave-wp-story-editor.css 0 B -699 B (removed) 🏆
assets/css/web-stories-block-rtl.css 4.3 kB -201 B (-4%)
assets/css/web-stories-block.css 4.35 kB -201 B (-4%)
assets/css/web-stories-list-styles-rtl.css 2.14 kB -215 B (-9%)
assets/css/web-stories-list-styles.css 2.16 kB -209 B (-9%)
assets/css/wp-story-editor-rtl.css 1.18 kB +571 B (+94%) 🆘
assets/css/wp-story-editor.css 1.18 kB +572 B (+94%) 🆘
assets/js/carousel-view.js 3.41 kB -303 B (-8%)
assets/js/chunk-getStoryPropsToSave.js 148 kB -1.19 MB (-89%) 🏆
assets/js/generateBlurhash.worker.worker.js 1.09 kB -437 B (-29%) 🎉
assets/js/imgareaselect.js 3.77 kB -378 B (-9%)
assets/js/lightbox.js 550 B -439 B (-44%) 🎉
assets/js/tinymce-button.js 2.84 kB -313 B (-10%) 👏
assets/js/vendors-chunk-ffmpeg.js 0 B -5.6 kB (removed) 🏆
assets/js/vendors-chunk-getStoryPropsToSave-chunk-resize-observer-polyfill-wp-story-editor.js 0 B -2.54 kB (removed) 🏆
assets/js/vendors-chunk-getStoryPropsToSave-wp-story-editor.js 0 B -147 kB (removed) 🏆
assets/js/vendors-chunk-html-to-image.js 0 B -4.6 kB (removed) 🏆
assets/js/vendors-chunk-react-calendar.js 0 B -12.3 kB (removed) 🏆
assets/js/vendors-chunk-react-color.js 0 B -43 kB (removed) 🏆
assets/js/vendors-chunk-web-animations-js.js 0 B -14.6 kB (removed) 🏆
assets/js/vendors-wp-dashboard.js 0 B -151 kB (removed) 🏆
assets/js/web-stories-activation-notice.js 22.1 kB -906 B (-4%)
assets/js/web-stories-block.js 18 kB -637 B (-3%)
assets/js/web-stories-embed.js 20 B -472 B (-96%) 🏆
assets/js/web-stories-widget.js 587 B -425 B (-42%) 🎉
assets/js/wp-dashboard.js 56.5 kB -63.8 kB (-53%) 🏆
assets/js/wp-story-editor.js 165 kB -1.37 MB (-89%) 🏆
assets/css/chunk-getStoryPropsToSave-rtl.css 699 B +699 B (new file) 🆕
assets/css/chunk-getStoryPropsToSave.css 699 B +699 B (new file) 🆕
assets/js/2853.js 1.25 MB +1.25 MB (new file) 🆕
assets/js/4039.js 8.39 kB +8.39 kB (new file) 🆕
assets/js/4183.js 89.2 kB +89.2 kB (new file) 🆕
assets/js/5072.js 51.9 kB +51.9 kB (new file) 🆕
assets/js/6963.js 8 kB +8 kB (new file) 🆕
assets/js/9003.js 44.7 kB +44.7 kB (new file) 🆕
assets/js/9081.js 140 kB +140 kB (new file) 🆕
assets/js/chunk-ffmpeg.js 5.65 kB +5.65 kB (new file) 🆕
assets/js/chunk-html-to-image.js 4.6 kB +4.6 kB (new file) 🆕
assets/js/chunk-react-calendar.js 12.4 kB +12.4 kB (new file) 🆕
assets/js/chunk-react-color.js 44.3 kB +44.3 kB (new file) 🆕
assets/js/chunk-resize-observer-polyfill.js 2.57 kB +2.57 kB (new file) 🆕
assets/js/chunk-web-animations-js.js 14.6 kB +14.6 kB (new file) 🆕
ℹ️ View Unchanged
Filename Size Change
assets/css/carousel-view-rtl.css 702 B +1 B (0%)
assets/css/carousel-view.css 701 B 0 B
assets/css/web-stories-embed-rtl.css 317 B -1 B (0%)
assets/css/web-stories-embed.css 317 B 0 B
assets/css/web-stories-theme-style-twentyeleven-rtl.css 102 B 0 B
assets/css/web-stories-theme-style-twentyeleven.css 102 B 0 B
assets/css/web-stories-theme-style-twentyfifteen-rtl.css 251 B 0 B
assets/css/web-stories-theme-style-twentyfifteen.css 251 B 0 B
assets/css/web-stories-theme-style-twentyfourteen-rtl.css 287 B 0 B
assets/css/web-stories-theme-style-twentyfourteen.css 287 B 0 B
assets/css/web-stories-theme-style-twentyseventeen-rtl.css 288 B 0 B
assets/css/web-stories-theme-style-twentyseventeen.css 288 B 0 B
assets/css/web-stories-theme-style-twentysixteen-rtl.css 224 B 0 B
assets/css/web-stories-theme-style-twentysixteen.css 224 B 0 B
assets/css/web-stories-theme-style-twentyten-rtl.css 143 B 0 B
assets/css/web-stories-theme-style-twentyten.css 143 B 0 B
assets/css/web-stories-theme-style-twentytwelve-rtl.css 256 B 0 B
assets/css/web-stories-theme-style-twentytwelve.css 256 B 0 B
assets/css/web-stories-theme-style-twentytwenty-rtl.css 86 B 0 B
assets/css/web-stories-theme-style-twentytwenty.css 86 B 0 B
assets/css/web-stories-theme-style-twentytwentyone-rtl.css 326 B +1 B (0%)
assets/css/web-stories-theme-style-twentytwentyone.css 326 B 0 B
assets/css/web-stories-widget-rtl.css 482 B -3 B (-1%)
assets/css/web-stories-widget.css 482 B -3 B (-1%)
assets/css/wp-dashboard-rtl.css 657 B -1 B (0%)
assets/css/wp-dashboard.css 659 B 0 B
assets/js/chunk-colorthief.js 2.64 kB +31 B (+1%)
assets/js/chunk-focus-visible.js 1.01 kB +9 B (+1%)
assets/js/chunk-web-stories-template-0-metaData.js 546 B +17 B (+3%)
assets/js/chunk-web-stories-template-0.js 10.8 kB +58 B (+1%)
assets/js/chunk-web-stories-template-1-metaData.js 540 B +19 B (+4%)
assets/js/chunk-web-stories-template-1.js 9.04 kB +54 B (+1%)
assets/js/chunk-web-stories-template-10-metaData.js 533 B +16 B (+3%)
assets/js/chunk-web-stories-template-10.js 7.01 kB +56 B (+1%)
assets/js/chunk-web-stories-template-11-metaData.js 540 B +19 B (+4%)
assets/js/chunk-web-stories-template-11.js 8.51 kB +50 B (+1%)
assets/js/chunk-web-stories-template-12-metaData.js 496 B +16 B (+3%)
assets/js/chunk-web-stories-template-12.js 9.59 kB +41 B (0%)
assets/js/chunk-web-stories-template-13-metaData.js 525 B +18 B (+4%)
assets/js/chunk-web-stories-template-13.js 7.42 kB +35 B (0%)
assets/js/chunk-web-stories-template-14-metaData.js 582 B +16 B (+3%)
assets/js/chunk-web-stories-template-14.js 7.58 kB +49 B (+1%)
assets/js/chunk-web-stories-template-15-metaData.js 544 B +18 B (+3%)
assets/js/chunk-web-stories-template-15.js 8.27 kB +51 B (+1%)
assets/js/chunk-web-stories-template-16-metaData.js 588 B +17 B (+3%)
assets/js/chunk-web-stories-template-16.js 10.4 kB +52 B (+1%)
assets/js/chunk-web-stories-template-17-metaData.js 539 B +13 B (+2%)
assets/js/chunk-web-stories-template-17.js 8.54 kB +58 B (+1%)
assets/js/chunk-web-stories-template-18-metaData.js 585 B +16 B (+3%)
assets/js/chunk-web-stories-template-18.js 9.33 kB +50 B (+1%)
assets/js/chunk-web-stories-template-19-metaData.js 501 B +17 B (+4%)
assets/js/chunk-web-stories-template-19.js 10.1 kB +40 B (0%)
assets/js/chunk-web-stories-template-2-metaData.js 586 B +15 B (+3%)
assets/js/chunk-web-stories-template-2.js 9.2 kB +56 B (+1%)
assets/js/chunk-web-stories-template-20-metaData.js 548 B +14 B (+3%)
assets/js/chunk-web-stories-template-20.js 8.69 kB +61 B (+1%)
assets/js/chunk-web-stories-template-21-metaData.js 534 B +16 B (+3%)
assets/js/chunk-web-stories-template-21.js 9.04 kB +62 B (+1%)
assets/js/chunk-web-stories-template-22-metaData.js 525 B +18 B (+4%)
assets/js/chunk-web-stories-template-22.js 7.46 kB +38 B (+1%)
assets/js/chunk-web-stories-template-23-metaData.js 605 B +20 B (+3%)
assets/js/chunk-web-stories-template-23.js 7.13 kB +51 B (+1%)
assets/js/chunk-web-stories-template-24-metaData.js 518 B +19 B (+4%)
assets/js/chunk-web-stories-template-24.js 10.9 kB +47 B (0%)
assets/js/chunk-web-stories-template-25-metaData.js 544 B +17 B (+3%)
assets/js/chunk-web-stories-template-25.js 7.23 kB +45 B (+1%)
assets/js/chunk-web-stories-template-26-metaData.js 601 B +19 B (+3%)
assets/js/chunk-web-stories-template-26.js 6.85 kB +49 B (+1%)
assets/js/chunk-web-stories-template-27-metaData.js 543 B +16 B (+3%)
assets/js/chunk-web-stories-template-27.js 7.63 kB +36 B (0%)
assets/js/chunk-web-stories-template-28-metaData.js 532 B +15 B (+3%)
assets/js/chunk-web-stories-template-28.js 8.63 kB +45 B (+1%)
assets/js/chunk-web-stories-template-29-metaData.js 561 B +15 B (+3%)
assets/js/chunk-web-stories-template-29.js 8.57 kB +62 B (+1%)
assets/js/chunk-web-stories-template-3-metaData.js 540 B +17 B (+3%)
assets/js/chunk-web-stories-template-3.js 8.29 kB +51 B (+1%)
assets/js/chunk-web-stories-template-30-metaData.js 576 B +15 B (+3%)
assets/js/chunk-web-stories-template-30.js 7.87 kB +51 B (+1%)
assets/js/chunk-web-stories-template-31-metaData.js 503 B +19 B (+4%)
assets/js/chunk-web-stories-template-31.js 9.64 kB +30 B (0%)
assets/js/chunk-web-stories-template-32-metaData.js 551 B +15 B (+3%)
assets/js/chunk-web-stories-template-32.js 12.3 kB +46 B (0%)
assets/js/chunk-web-stories-template-33-metaData.js 492 B +14 B (+3%)
assets/js/chunk-web-stories-template-33.js 8.94 kB +33 B (0%)
assets/js/chunk-web-stories-template-34-metaData.js 571 B +16 B (+3%)
assets/js/chunk-web-stories-template-34.js 7.72 kB +34 B (0%)
assets/js/chunk-web-stories-template-35-metaData.js 565 B +19 B (+3%)
assets/js/chunk-web-stories-template-35.js 8.97 kB +49 B (+1%)
assets/js/chunk-web-stories-template-36-metaData.js 576 B +18 B (+3%)
assets/js/chunk-web-stories-template-36.js 11.7 kB +60 B (+1%)
assets/js/chunk-web-stories-template-37-metaData.js 528 B +16 B (+3%)
assets/js/chunk-web-stories-template-37.js 6.5 kB +36 B (+1%)
assets/js/chunk-web-stories-template-38-metaData.js 572 B +17 B (+3%)
assets/js/chunk-web-stories-template-38.js 8 kB +41 B (+1%)
assets/js/chunk-web-stories-template-39-metaData.js 589 B +16 B (+3%)
assets/js/chunk-web-stories-template-39.js 7.71 kB +58 B (+1%)
assets/js/chunk-web-stories-template-4-metaData.js 565 B +18 B (+3%)
assets/js/chunk-web-stories-template-4.js 11.6 kB +60 B (+1%)
assets/js/chunk-web-stories-template-40-metaData.js 556 B +15 B (+3%)
assets/js/chunk-web-stories-template-40.js 9.17 kB +47 B (+1%)
assets/js/chunk-web-stories-template-41-metaData.js 572 B +15 B (+3%)
assets/js/chunk-web-stories-template-41.js 7.86 kB +46 B (+1%)
assets/js/chunk-web-stories-template-42-metaData.js 522 B +17 B (+3%)
assets/js/chunk-web-stories-template-42.js 7.12 kB +39 B (+1%)
assets/js/chunk-web-stories-template-43-metaData.js 558 B +16 B (+3%)
assets/js/chunk-web-stories-template-43.js 8.47 kB +54 B (+1%)
assets/js/chunk-web-stories-template-44-metaData.js 582 B +14 B (+2%)
assets/js/chunk-web-stories-template-44.js 10.4 kB +45 B (0%)
assets/js/chunk-web-stories-template-45-metaData.js 564 B +17 B (+3%)
assets/js/chunk-web-stories-template-45.js 7.36 kB +45 B (+1%)
assets/js/chunk-web-stories-template-46-metaData.js 531 B +17 B (+3%)
assets/js/chunk-web-stories-template-46.js 5.05 kB +51 B (+1%)
assets/js/chunk-web-stories-template-47-metaData.js 592 B +17 B (+3%)
assets/js/chunk-web-stories-template-47.js 8.46 kB +61 B (+1%)
assets/js/chunk-web-stories-template-48-metaData.js 556 B +16 B (+3%)
assets/js/chunk-web-stories-template-48.js 8.35 kB +37 B (0%)
assets/js/chunk-web-stories-template-49-metaData.js 518 B +19 B (+4%)
assets/js/chunk-web-stories-template-49.js 9.84 kB +43 B (0%)
assets/js/chunk-web-stories-template-5-metaData.js 555 B +14 B (+3%)
assets/js/chunk-web-stories-template-5.js 9.44 kB +61 B (+1%)
assets/js/chunk-web-stories-template-50-metaData.js 504 B +20 B (+4%)
assets/js/chunk-web-stories-template-50.js 8.45 kB +52 B (+1%)
assets/js/chunk-web-stories-template-51-metaData.js 527 B +15 B (+3%)
assets/js/chunk-web-stories-template-51.js 10 kB +47 B (0%)
assets/js/chunk-web-stories-template-52-metaData.js 602 B +13 B (+2%)
assets/js/chunk-web-stories-template-52.js 10.2 kB +45 B (0%)
assets/js/chunk-web-stories-template-53-metaData.js 553 B +19 B (+4%)
assets/js/chunk-web-stories-template-53.js 5.93 kB +39 B (+1%)
assets/js/chunk-web-stories-template-54-metaData.js 547 B +16 B (+3%)
assets/js/chunk-web-stories-template-54.js 7.59 kB +38 B (+1%)
assets/js/chunk-web-stories-template-55-metaData.js 574 B +16 B (+3%)
assets/js/chunk-web-stories-template-55.js 6.79 kB +42 B (+1%)
assets/js/chunk-web-stories-template-56-metaData.js 543 B +17 B (+3%)
assets/js/chunk-web-stories-template-56.js 9.61 kB +50 B (+1%)
assets/js/chunk-web-stories-template-57-metaData.js 528 B +15 B (+3%)
assets/js/chunk-web-stories-template-57.js 14.2 kB +45 B (0%)
assets/js/chunk-web-stories-template-58-metaData.js 556 B +17 B (+3%)
assets/js/chunk-web-stories-template-58.js 5.73 kB +49 B (+1%)
assets/js/chunk-web-stories-template-59-metaData.js 588 B +13 B (+2%)
assets/js/chunk-web-stories-template-59.js 8.76 kB +41 B (0%)
assets/js/chunk-web-stories-template-6-metaData.js 569 B +17 B (+3%)
assets/js/chunk-web-stories-template-6.js 7.11 kB +38 B (+1%)
assets/js/chunk-web-stories-template-60-metaData.js 509 B +16 B (+3%)
assets/js/chunk-web-stories-template-60.js 9.09 kB +57 B (+1%)
assets/js/chunk-web-stories-template-7-metaData.js 569 B +17 B (+3%)
assets/js/chunk-web-stories-template-7.js 7.25 kB +53 B (+1%)
assets/js/chunk-web-stories-template-8-metaData.js 569 B +18 B (+3%)
assets/js/chunk-web-stories-template-8.js 8.48 kB +47 B (+1%)
assets/js/chunk-web-stories-template-9-metaData.js 581 B +15 B (+3%)
assets/js/chunk-web-stories-template-9.js 8.54 kB +60 B (+1%)
assets/js/chunk-web-stories-textset-0.js 5.28 kB +13 B (0%)
assets/js/chunk-web-stories-textset-1.js 6.78 kB +12 B (0%)
assets/js/chunk-web-stories-textset-2.js 7.89 kB +12 B (0%)
assets/js/chunk-web-stories-textset-3.js 15.4 kB +16 B (0%)
assets/js/chunk-web-stories-textset-4.js 4.38 kB +9 B (0%)
assets/js/chunk-web-stories-textset-5.js 5.69 kB +11 B (0%)
assets/js/chunk-web-stories-textset-6.js 5.5 kB +11 B (0%)
assets/js/chunk-web-stories-textset-7.js 10.4 kB +12 B (0%)

compressed-size-action

Only the 5.0.0-alpha version is compatible with webpack 5, and it does not support the alternative usage we’ve been using anymore.

Reverts #2887 because of that.
`process` is no longer defined in webpack 5
Used by React Testing Library.

Since webpack 5 does no longer polyfill `process`, we need to to that ourselves.
Needed because webpack 5 no longer polyfills `global` to be `window`.
@swissspidy swissspidy added the Status: Blocked On hold for the time being label Jan 5, 2021
@google-cla google-cla bot added cla: no and removed cla: yes labels Jan 15, 2021
@google-cla google-cla bot added cla: yes and removed cla: no labels Jan 15, 2021
@GoogleForCreators GoogleForCreators deleted a comment from google-cla bot Jan 15, 2021
@codecov

This comment has been minimized.

@samwhale
Copy link
Contributor

Added some SVG docs but lmk if there's a better place for this. Didn't see any webpack-specific docs so figured adding a new file may make sense.

@swissspidy swissspidy changed the title [Still WIP] Infrastructure: Update build tooling to use webpack v5 Infrastructure: Update build tooling to use webpack v5 Feb 25, 2022
@timarney
Copy link
Contributor

editor still works

Did a first pass locally looking good.

@samwhale

This comment was marked as resolved.

@swissspidy swissspidy removed the Status: Blocked On hold for the time being label Feb 28, 2022
@swissspidy

This comment was marked as resolved.

Copy link
Contributor

@samwhale samwhale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Storybook and editor are working. I'm seeing this warning in the logs after uploading an image in the editor.

image

Not sure why webpack is looking for the sourcemap to the worker script.

💭 Should we add the worker script as another ignored file for the sourcemap loader?

* add removed empty line in story-editor/package.json
* remove unneeded named export in svgrMock
* remove unneeded comment
@@ -124,7 +124,6 @@ module.exports = {
);

// Ensure SVGR is the only loader used for files with .svg extension.
// TODO: Figure out why this is needed; only the first-matching rule ought to be used.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@samwhale So was my assumption incorrect that webpack uses only the first-matching rule?

Copy link
Contributor

@samwhale samwhale Feb 28, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh sorry! I thought I added this line in, and I thought we didn't need it anymore so I deleted it.

webpack was matching all of the svg rules, so I grouped the svg rules together in a oneOf block: https://github.com/GoogleForCreators/web-stories-wp/pull/5792/files#diff-b724a559a3d863e949957e731407f96e486b45139afbdee10bc1082f5bd229e3R112-R117

@swissspidy
Copy link
Collaborator Author

Storybook and editor are working. I'm seeing this warning in the logs after uploading an image in the editor.

image

Not sure why webpack is looking for the sourcemap to the worker script.

💭 Should we add the worker script as another ignored file for the sourcemap loader?

Found webpack-contrib/worker-loader#245 for this. They pointed to an open Chromium bug.

So yeah sounds easiest to just ignore it & point to that ticket.

@samwhale
Copy link
Contributor

Storybook and editor are working. I'm seeing this warning in the logs after uploading an image in the editor.
image
Not sure why webpack is looking for the sourcemap to the worker script.
💭 Should we add the worker script as another ignored file for the sourcemap loader?

Found webpack-contrib/worker-loader#245 for this. They pointed to an open Chromium bug.

So yeah sounds easiest to just ignore it & point to that ticket.

Looks like it's not related to the source-map-loader! 😬 I'll take a look at possibly disabling source maps in the worker loader. Not sure if that would be possible from there since it seems to be related to the browser settings specifically.

@swissspidy
Copy link
Collaborator Author

If it's too complicated we can do it in a follow-up ticket.

@samwhale
Copy link
Contributor

If it's too complicated we can do it in a follow-up ticket.

💭 I think it won't happen when the worker is loaded in without the worker-loader. Happy to add a ticket to fix it, but maybe it wouldn't be worth it since it'll be fixed in #10687?

Copy link
Contributor

@spacedmonkey spacedmonkey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

@swissspidy swissspidy merged commit d2b8c30 into main Mar 2, 2022
@swissspidy swissspidy deleted the chore/update-webpack branch March 2, 2022 10:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Infrastructure Changes impacting testing infrastructure or build tooling
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Infrastructure: update to webpack v5
5 participants