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

Packaging Application Spinner never goes away when building for multiple targets. #2998

Closed
3 tasks done
macdja38 opened this issue Oct 26, 2022 · 0 comments
Closed
3 tasks done
Assignees

Comments

@macdja38
Copy link
Contributor

Pre-flight checklist

  • I have read the contribution documentation for this project.
  • I agree to follow the code of conduct that this project uses.
  • I have searched the issue tracker for a bug that matches the one I want to file, without success.

Electron Forge version

6.0.0-beta.68

Electron version

20.3.0

Operating system

macOS 12.6

Last known working Electron Forge version

No response

Expected behavior

Note there's a console.log I added in, more info in additional info:

If I run with one target
npm run package staging -- --arch=arm64
The process finishes and ends with an exit code.

✔ Preparing to Package Application for arch: arm64
✔ Preparing native dependencies
Assigning packaging progress spinner [HIDDEN] darwin arm64 [Function (anonymous)]
✔ Packaging Application

Process finished with exit code 0

Actual behavior

Note there's a console.log I added, more info in additional info:

When I run with two targets
npm run package staging -- --arch=arm64,x64
The process hangs with

✔ Preparing to Package Application for arch: x64,arm64
⠋ Preparing native dependencies✔ Preparing to Package Application for arch: x64,arm64
✔ Preparing native dependencies
Assigning packaging progress spinner [HIDDEN] 20.3.3 darwin x64 [Function (anonymous)]
✔ Preparing native dependencies
Assigning packaging progress spinner [HIDDEN] 20.3.3 darwin arm64 [Function (anonymous)]
✔ Packaging Application
⠇ Packaging Application

Steps to reproduce

npx create-electron-app@latest my-app
npm run package -- --arch=arm64,x64

Additional information

The console logs have one extra line

console.log("Assigning packaging progress spinner", buildPath, electronVersion, pPlatform, pArch, done);

Inserted here: https://github.com/electron-userland/electron-forge/blob/a8b9dfc5c19b6a0021d56ca8319a69903e457b04/packages/api/core/src/api/package.ts#L126

(the line above the packageSpinner assign)

My working theory is that packageSpinner is one variable, the afterCopyHooks are called twice, once with each architecture, so first time it's assigned, second time it's overwritten, then only the second one gets cleared.

I'm going to try and make a PR soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants