ba57e1d991
* feat: promisify contentTracing.startRecording() * feat: promisify contentTracing.stopRecording() * test: convert specs for new promisified apis * chore: deprecate and ensure legacy tests work
6.7 KiB
6.7 KiB
Promisification
The Electron team is currently undergoing an initiative to convert callback-based functions in Electron to return Promises. During this transition period, both the callback and Promise-based versions of these functions will work correctly, and will both be documented.
To enable deprecation warnings for these updated functions, use the process.enablePromiseAPI
runtime flag.
When a majority of affected functions are migrated, this flag will be enabled by default and all developers will be able to see these deprecation warnings. At that time, the callback-based versions will also be removed from documentation. This document will be continuously updated as more functions are converted.
Candidate Functions
- app.importCertificate(options, callback)
- request.write(chunk[, encoding][, callback])
- request.end([chunk][, encoding][, callback])
- contentTracing.getTraceBufferUsage(callback)
- debugger.sendCommand(method[, commandParams, callback])
- dialog.showOpenDialog([browserWindow, ]options[, callback])
- dialog.showSaveDialog([browserWindow, ]options[, callback])
- dialog.showMessageBox([browserWindow, ]options[, callback])
- dialog.showCertificateTrustDialog([browserWindow, ]options, callback)
- inAppPurchase.purchaseProduct(productID, quantity, callback)
- inAppPurchase.getProducts(productIDs, callback)
- netLog.stopLogging([callback])
- ses.getCacheSize(callback)
- ses.clearCache(callback)
- ses.clearStorageData([options, callback])
- ses.setProxy(config, callback)
- ses.resolveProxy(url, callback)
- ses.clearHostResolverCache([callback])
- ses.getBlobData(identifier, callback)
- ses.clearAuthCache(options[, callback])
- contents.executeJavaScript(code[, userGesture, callback])
- contents.unregisterServiceWorker(callback)
- contents.print([options], [callback])
- contents.printToPDF(options, callback)
- contents.savePage(fullPath, saveType, callback)
- webFrame.executeJavaScript(code[, userGesture, callback])
- webFrame.executeJavaScriptInIsolatedWorld(worldId, scripts[, userGesture, callback])
- webviewTag.executeJavaScript(code[, userGesture, callback])
- webviewTag.printToPDF(options, callback)
Converted Functions
- app.getFileIcon(path[, options], callback)
- contents.capturePage([rect, ]callback)
- contentTracing.getCategories(callback)
- contentTracing.startRecording(options, callback)
- contentTracing.stopRecording(resultFilePath, callback)
- cookies.flushStore(callback)
- cookies.get(filter, callback)
- cookies.remove(url, name, callback)
- cookies.set(details, callback)
- desktopCapturer.getSources(options, callback)
- protocol.isProtocolHandled(scheme, callback)
- shell.openExternal(url[, options, callback])
- webviewTag.capturePage([rect, ]callback)
- win.capturePage([rect, ]callback)
- desktopCapturer.getSources(options, callback)
- contents.hasServiceWorker(callback)