[PR #108] [CLOSED] Update to Webpack V5 #3023

Closed
opened 2026-02-28 20:35:10 -06:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/actualbudget/actual/pull/108
Author: @TomAFrench
Created: 6/29/2022
Status: Closed

Base: masterHead: webpack5


📝 Commits (10+)

  • 1476d8f chore: minimal migration to webpack v5
  • cc3e731 chore: update deprecated libraryTarget fields
  • 35b4820 fix: replace [hash] with [fullhash]
  • d7b35d7 chore: update terser-webpack-plugin
  • 2b8c51c fix: remove invalid webpack config entry
  • 56f0bc6 build: install polyfills
  • c364f3f build: always pass paths.appBuild as output path
  • 6829cba build: update case-sensitive-paths-webpack-plugin to support webpack v5
  • ae0a71e build: update html-webpack-plugin to support webpack v5
  • d36c975 build: install process/browser polyfill

📊 Changes

10 files changed (+2462 additions, -2269 deletions)

View changed files

📝 packages/desktop-client/config/webpack.config.js (+85 -67)
📝 packages/desktop-client/package.json (+16 -14)
📝 packages/loot-core/bin/build-browser (+2 -2)
📝 packages/loot-core/package.json (+10 -3)
📝 packages/loot-core/webpack/webpack.browser.config.js (+11 -3)
📝 packages/loot-core/webpack/webpack.desktop.config.js (+3 -1)
📝 packages/loot-core/webpack/webpack.mobile.config.js (+3 -1)
patches/eslint-config-react-app+3.0.5.patch (+0 -18)
patches/eslint-config-react-app+7.0.1.patch (+19 -0)
📝 yarn.lock (+2313 -2160)

📄 Description

This PR is a precursor to the SWC migration as SWC only supports Webpack V5. I've updated the config and updated the terser package as necessary but otherwise left things as they are.

Webpack V5 no longer automatically includes polyfills so to mimic the behaviour of V4, I've loaded full polyfills for any node package which asked for one. It's possible that we could get away without this but this felt like the safest thing to do and we can revisit later.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/actualbudget/actual/pull/108 **Author:** [@TomAFrench](https://github.com/TomAFrench) **Created:** 6/29/2022 **Status:** ❌ Closed **Base:** `master` ← **Head:** `webpack5` --- ### 📝 Commits (10+) - [`1476d8f`](https://github.com/actualbudget/actual/commit/1476d8f2cd3a5181c2a19765fc38c011f2276717) chore: minimal migration to webpack v5 - [`cc3e731`](https://github.com/actualbudget/actual/commit/cc3e73190781ba9252adeb11f3e8ba55a3e1e30d) chore: update deprecated `libraryTarget` fields - [`35b4820`](https://github.com/actualbudget/actual/commit/35b4820fc53502537f268493aab0ea5488ae0801) fix: replace [hash] with [fullhash] - [`d7b35d7`](https://github.com/actualbudget/actual/commit/d7b35d7a462449faa4ba163f574768dfca494697) chore: update `terser-webpack-plugin` - [`2b8c51c`](https://github.com/actualbudget/actual/commit/2b8c51c6db59a593d5714029386d24ccad27e524) fix: remove invalid webpack config entry - [`56f0bc6`](https://github.com/actualbudget/actual/commit/56f0bc694ecf56764ba075d9722fb6745ffca9ad) build: install polyfills - [`c364f3f`](https://github.com/actualbudget/actual/commit/c364f3f91cdf849df88653c0dd27af55e0a9ad1e) build: always pass paths.appBuild as output path - [`6829cba`](https://github.com/actualbudget/actual/commit/6829cbaf1ed126f4a1588ebc40653bd229a36819) build: update case-sensitive-paths-webpack-plugin to support webpack v5 - [`ae0a71e`](https://github.com/actualbudget/actual/commit/ae0a71eee95b9af54affb124491b3762a5a9797a) build: update html-webpack-plugin to support webpack v5 - [`d36c975`](https://github.com/actualbudget/actual/commit/d36c975b891b535b4fc20faa19885a829f584d0f) build: install process/browser polyfill ### 📊 Changes **10 files changed** (+2462 additions, -2269 deletions) <details> <summary>View changed files</summary> 📝 `packages/desktop-client/config/webpack.config.js` (+85 -67) 📝 `packages/desktop-client/package.json` (+16 -14) 📝 `packages/loot-core/bin/build-browser` (+2 -2) 📝 `packages/loot-core/package.json` (+10 -3) 📝 `packages/loot-core/webpack/webpack.browser.config.js` (+11 -3) 📝 `packages/loot-core/webpack/webpack.desktop.config.js` (+3 -1) 📝 `packages/loot-core/webpack/webpack.mobile.config.js` (+3 -1) ➖ `patches/eslint-config-react-app+3.0.5.patch` (+0 -18) ➕ `patches/eslint-config-react-app+7.0.1.patch` (+19 -0) 📝 `yarn.lock` (+2313 -2160) </details> ### 📄 Description This PR is a precursor to the SWC migration as SWC only supports Webpack V5. I've updated the config and updated the terser package as necessary but otherwise left things as they are. Webpack V5 no longer automatically includes polyfills so to mimic the behaviour of V4, I've loaded full polyfills for any node package which asked for one. It's possible that we could get away without this but this felt like the safest thing to do and we can revisit later. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-02-28 20:35:10 -06:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#3023