Avoid creating main window before app initialization finishes #335
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related to 8016-gh-Automattic/dotcom-forge.
Proposed Changes
activate
andsecond-instance
to avoid creating the main window before the app initialization finishes.setupWPServerFiles
into two functions to avoid delaying the app initialization. One will handle the preparation of WordPress files by copying the bundled files. Since this is needed for creating sites, it will be run synchronously during the app initialization. The other function will try to update the server files (e.g. WordPress version). Depending on the internet connection, it might incur negatively in the bootup time so it will be executed asynchronously. This will speed up app initialization and create the main window as soon as possible.Testing Instructions
macOS
npm start
.Windows
npm run make
.out/Studio-win32-x64/Studio.exe
.%APPDATA%/Studio/logs
and observe the exceptionError invoking remote method 'getAppGlobals'
is not logged.Pre-merge Checklist