Merge pull request #13050 from electron/3.0.0-deprecations
chore: removal of 3.0.0 deprecations
This commit is contained in:
		
				commit
				
					
						b89fe86fa1
					
				
			
		
					 32 changed files with 76 additions and 421 deletions
				
			
		| 
						 | 
				
			
			@ -1,169 +1,3 @@
 | 
			
		|||
# Planned Breaking API Changes (3.0)
 | 
			
		||||
 | 
			
		||||
The following list includes the APIs that will be removed in Electron 3.0.
 | 
			
		||||
 | 
			
		||||
There is no timetable for when this release will occur but deprecation
 | 
			
		||||
warnings will be added at least [one major version](electron-versioning.md#semver) beforehand.
 | 
			
		||||
 | 
			
		||||
## `app`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
app.getAppMemoryInfo()
 | 
			
		||||
// Replace with
 | 
			
		||||
app.getAppMetrics()
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `BrowserWindow`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
let optionsA = {webPreferences: {blinkFeatures: ''}}
 | 
			
		||||
let windowA = new BrowserWindow(optionsA)
 | 
			
		||||
// Replace with
 | 
			
		||||
let optionsB = {webPreferences: {enableBlinkFeatures: ''}}
 | 
			
		||||
let windowB = new BrowserWindow(optionsB)
 | 
			
		||||
 | 
			
		||||
// Deprecated
 | 
			
		||||
window.on('app-command', (e, cmd) => {
 | 
			
		||||
  if (cmd === 'media-play_pause') {
 | 
			
		||||
    // do something
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
// Replace with
 | 
			
		||||
window.on('app-command', (e, cmd) => {
 | 
			
		||||
  if (cmd === 'media-play-pause') {
 | 
			
		||||
    // do something
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `clipboard`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
clipboard.readRtf()
 | 
			
		||||
// Replace with
 | 
			
		||||
clipboard.readRTF()
 | 
			
		||||
 | 
			
		||||
// Deprecated
 | 
			
		||||
clipboard.writeRtf()
 | 
			
		||||
// Replace with
 | 
			
		||||
clipboard.writeRTF()
 | 
			
		||||
 | 
			
		||||
// Deprecated
 | 
			
		||||
clipboard.readHtml()
 | 
			
		||||
// Replace with
 | 
			
		||||
clipboard.readHTML()
 | 
			
		||||
 | 
			
		||||
// Deprecated
 | 
			
		||||
clipboard.writeHtml()
 | 
			
		||||
// Replace with
 | 
			
		||||
clipboard.writeHTML()
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `crashReporter`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
crashReporter.start({
 | 
			
		||||
  companyName: 'Crashly',
 | 
			
		||||
  submitURL: 'https://crash.server.com',
 | 
			
		||||
  autoSubmit: true
 | 
			
		||||
})
 | 
			
		||||
// Replace with
 | 
			
		||||
crashReporter.start({
 | 
			
		||||
  companyName: 'Crashly',
 | 
			
		||||
  submitURL: 'https://crash.server.com',
 | 
			
		||||
  uploadToServer: true
 | 
			
		||||
})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `nativeImage`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
nativeImage.createFromBuffer(buffer, 1.0)
 | 
			
		||||
// Replace with
 | 
			
		||||
nativeImage.createFromBuffer(buffer, {
 | 
			
		||||
  scaleFactor: 1.0
 | 
			
		||||
})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `screen`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
screen.getMenuBarHeight()
 | 
			
		||||
// Replace with
 | 
			
		||||
screen.getPrimaryDisplay().workArea
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `session`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
ses.setCertificateVerifyProc(function (hostname, certificate, callback) {
 | 
			
		||||
  callback(true)
 | 
			
		||||
})
 | 
			
		||||
// Replace with
 | 
			
		||||
ses.setCertificateVerifyProc(function (request, callback) {
 | 
			
		||||
  callback(0)
 | 
			
		||||
})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `Tray`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
tray.setHighlightMode(true)
 | 
			
		||||
// Replace with
 | 
			
		||||
tray.setHighlightMode('on')
 | 
			
		||||
 | 
			
		||||
// Deprecated
 | 
			
		||||
tray.setHighlightMode(false)
 | 
			
		||||
// Replace with
 | 
			
		||||
tray.setHighlightMode('off')
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `webContents`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
webContents.openDevTools({detach: true})
 | 
			
		||||
// Replace with
 | 
			
		||||
webContents.openDevTools({mode: 'detach'})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `webFrame`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
webFrame.registerURLSchemeAsSecure('app')
 | 
			
		||||
// Replace with
 | 
			
		||||
protocol.registerStandardSchemes(['app'], {secure: true})
 | 
			
		||||
 | 
			
		||||
// Deprecated
 | 
			
		||||
webFrame.registerURLSchemeAsPrivileged('app', {secure: true})
 | 
			
		||||
// Replace with
 | 
			
		||||
protocol.registerStandardSchemes(['app'], {secure: true})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Node Headers URL
 | 
			
		||||
 | 
			
		||||
This is the URL specified as `disturl` in a `.npmrc` file or as the `--dist-url`
 | 
			
		||||
command line flag when building native Node modules.
 | 
			
		||||
 | 
			
		||||
Deprecated: https://atom.io/download/atom-shell
 | 
			
		||||
 | 
			
		||||
Replace with: https://atom.io/download/electron
 | 
			
		||||
 | 
			
		||||
## `FIXME` comments
 | 
			
		||||
 | 
			
		||||
The `FIXME` string is used in code comments to denote things that should be
 | 
			
		||||
fixed for the 3.0 release. See
 | 
			
		||||
https://github.com/electron/electron/search?q=fixme
 | 
			
		||||
 | 
			
		||||
# Planned Breaking API Changes (4.0)
 | 
			
		||||
 | 
			
		||||
The following list includes the APIs that will be removed in Electron 4.0.
 | 
			
		||||
| 
						 | 
				
			
			@ -171,6 +5,17 @@ The following list includes the APIs that will be removed in Electron 4.0.
 | 
			
		|||
There is no timetable for when this release will occur but deprecation
 | 
			
		||||
warnings will be added at least [one major version](electron-versioning.md#semver) beforehand.
 | 
			
		||||
 | 
			
		||||
## `webFrame`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
// Deprecated
 | 
			
		||||
webFrame.registerURLSchemeAsPrivileged('app', {secure: true})
 | 
			
		||||
// Replace with
 | 
			
		||||
protocol.registerStandardSchemes(['app'], {secure: true})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
*Nota Bene:* Before we can remove this we need to update all of the relevant specs to `protocol.registerStandardSchemes(['app'], {secure: true})`.
 | 
			
		||||
 | 
			
		||||
## `app.makeSingleInstance`
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
| 
						 | 
				
			
			@ -192,4 +37,10 @@ app.on('second-instance', function (argv, cwd) {
 | 
			
		|||
app.releaseSingleInstance()
 | 
			
		||||
// Replace with
 | 
			
		||||
app.releaseSingleInstanceLock()
 | 
			
		||||
```
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## `FIXME` comments
 | 
			
		||||
 | 
			
		||||
The `FIXME` string is used in code comments to denote things that should be
 | 
			
		||||
fixed for the 3.0 release. See
 | 
			
		||||
https://github.com/electron/electron/search?q=fixme
 | 
			
		||||
| 
						 | 
				
			
			@ -78,7 +78,7 @@ improve the security of your application.
 | 
			
		|||
7. [Override and disable `eval`](#7-override-and-disable-eval), which allows strings to be executed as code.
 | 
			
		||||
8. [Do not set `allowRunningInsecureContent` to `true`](#8-do-not-set-allowrunninginsecurecontent-to-true)
 | 
			
		||||
9. [Do not enable experimental features](#9-do-not-enable-experimental-features)
 | 
			
		||||
10. [Do not use `blinkFeatures`](#10-do-not-use-blinkfeatures)
 | 
			
		||||
10. [Do not use `enableBlinkFeatures`](#10-do-not-use-enableblinkfeatures)
 | 
			
		||||
11. [WebViews: Do not use `allowpopups`](#11-do-not-use-allowpopups)
 | 
			
		||||
12. [WebViews: Verify the options and params of all `<webview>` tags](#12-verify-webview-options-before-creation)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -452,12 +452,12 @@ const mainWindow = new BrowserWindow({})
 | 
			
		|||
```
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## 10) Do Not Use `blinkFeatures`
 | 
			
		||||
## 10) Do Not Use `enableBlinkFeatures`
 | 
			
		||||
 | 
			
		||||
_Recommendation is Electron's default_
 | 
			
		||||
 | 
			
		||||
Blink is the name of the rendering engine behind Chromium. As with
 | 
			
		||||
`experimentalFeatures`, the `blinkFeatures` property allows developers to
 | 
			
		||||
`experimentalFeatures`, the `enableBlinkFeatures` property allows developers to
 | 
			
		||||
enable features that have been disabled by default.
 | 
			
		||||
 | 
			
		||||
### Why?
 | 
			
		||||
| 
						 | 
				
			
			@ -473,7 +473,7 @@ no circumstances should you enable features speculatively.
 | 
			
		|||
// Bad
 | 
			
		||||
const mainWindow = new BrowserWindow({
 | 
			
		||||
  webPreferences: {
 | 
			
		||||
    blinkFeatures: ['ExecCommandInJavaScript']
 | 
			
		||||
    enableBlinkFeatures: ['ExecCommandInJavaScript']
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
```
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue