electron-userland / electron-builder

A complete solution to package and build a ready for distribution Electron app with “auto update” support out of the box
https://www.electron.build
MIT License
13.46k stars 1.71k forks source link

refactor: builder-util-runtime, separate newError to eliminate circular dependency #8251

Closed m59peacemaker closed 3 weeks ago

m59peacemaker commented 3 weeks ago

After importing electron-updater, Rollup would log this warning:

(!) Circular dependencies
../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/index.js -> ../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/httpExecutor.js -> ../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/index.js
../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/index.js -> ../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/uuid.js -> ../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/index.js
../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/index.js -> ../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/xml.js -> ../../node_modules/.pnpm/builder-util-runtime@9.2.5-alpha.2/node_modules/builder-util-runtime/out/index.js
...and 6 more

This is because builder-util-runtime/src/index.ts exports from many other modules, and several of those modules import from it with import { newError } from './index.

This PR removes the circular dependency by extracting newError to error.ts and importing it from there.

changeset-bot[bot] commented 3 weeks ago

🦋 Changeset detected

Latest commit: 0aa5307f0ed80c2742a42da02290be5257876c6c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 12 packages | Name | Type | | --------------------------------- | ----- | | builder-util-runtime | Patch | | app-builder-lib | Patch | | builder-util | Patch | | dmg-builder | Patch | | electron-builder | Patch | | electron-publish | Patch | | electron-updater | Patch | | electron-builder-squirrel-windows | Patch | | electron-forge-maker-appimage | Patch | | electron-forge-maker-nsis-web | Patch | | electron-forge-maker-nsis | Patch | | electron-forge-maker-snap | Patch |

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

netlify[bot] commented 3 weeks ago

Deploy Preview for car-park-attendant-cleat-11576 ready!

Name Link
Latest commit 0aa5307f0ed80c2742a42da02290be5257876c6c
Latest deploy log https://app.netlify.com/sites/car-park-attendant-cleat-11576/deploys/66620b714105820008ae56d6
Deploy Preview https://deploy-preview-8251--car-park-attendant-cleat-11576.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.