[RFC] perf: use an internal module resolver to improve require performance (#14633)
* perf: use an internal module resolver instead of relative requires * perf: memoize the results of getting exported Electron properties * perf: make internal module changes consistent across sandboxed / bundled files
This commit is contained in:
parent
73d1b76b54
commit
54ef906832
32 changed files with 156 additions and 73 deletions
|
@ -15,7 +15,7 @@ process.argv.splice(1, 1)
|
|||
require('../common/reset-search-paths')
|
||||
|
||||
// Import common settings.
|
||||
require('../common/init')
|
||||
require('@electron/internal/common/init')
|
||||
|
||||
var globalPaths = Module.globalPaths
|
||||
|
||||
|
@ -94,11 +94,11 @@ if (process.platform === 'win32') {
|
|||
process.exit = app.exit
|
||||
|
||||
// Load the RPC server.
|
||||
require('./rpc-server')
|
||||
require('@electron/internal/browser/rpc-server')
|
||||
|
||||
// Load the guest view manager.
|
||||
require('./guest-view-manager')
|
||||
require('./guest-window-manager')
|
||||
require('@electron/internal/browser/guest-view-manager')
|
||||
require('@electron/internal/browser/guest-window-manager')
|
||||
|
||||
// Now we try to load app's package.json.
|
||||
let packagePath = null
|
||||
|
@ -151,16 +151,16 @@ app.setPath('userCache', path.join(app.getPath('cache'), app.getName()))
|
|||
app.setAppPath(packagePath)
|
||||
|
||||
// Load the chrome extension support.
|
||||
require('./chrome-extension')
|
||||
require('@electron/internal/browser/chrome-extension')
|
||||
|
||||
const features = process.atomBinding('features')
|
||||
if (features.isDesktopCapturerEnabled()) {
|
||||
// Load internal desktop-capturer module.
|
||||
require('./desktop-capturer')
|
||||
require('@electron/internal/browser/desktop-capturer')
|
||||
}
|
||||
|
||||
// Load protocol module to ensure it is populated on app ready
|
||||
require('./api/protocol')
|
||||
require('@electron/internal/browser/api/protocol')
|
||||
|
||||
// Set main startup script of the app.
|
||||
const mainStartupScript = packageJson.main || 'index.js'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue