зеркало из https://github.com/electron/electron.git
build: lint the npm folder (#26085)
This commit is contained in:
Родитель
22cb3cd18b
Коммит
2aa5a1f494
24
npm/cli.js
24
npm/cli.js
|
@ -1,25 +1,25 @@
|
|||
#!/usr/bin/env node
|
||||
|
||||
var electron = require('./')
|
||||
const electron = require('./');
|
||||
|
||||
var proc = require('child_process')
|
||||
const proc = require('child_process');
|
||||
|
||||
var child = proc.spawn(electron, process.argv.slice(2), { stdio: 'inherit', windowsHide: false })
|
||||
const child = proc.spawn(electron, process.argv.slice(2), { stdio: 'inherit', windowsHide: false });
|
||||
child.on('close', function (code, signal) {
|
||||
if (code === null) {
|
||||
console.error(electron, 'exited with signal', signal)
|
||||
process.exit(1)
|
||||
console.error(electron, 'exited with signal', signal);
|
||||
process.exit(1);
|
||||
}
|
||||
process.exit(code)
|
||||
})
|
||||
process.exit(code);
|
||||
});
|
||||
|
||||
const handleTerminationSignal = function (signal) {
|
||||
process.on(signal, function signalHandler () {
|
||||
if (!child.killed) {
|
||||
child.kill(signal)
|
||||
child.kill(signal);
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
handleTerminationSignal('SIGINT')
|
||||
handleTerminationSignal('SIGTERM')
|
||||
handleTerminationSignal('SIGINT');
|
||||
handleTerminationSignal('SIGTERM');
|
||||
|
|
16
npm/index.js
16
npm/index.js
|
@ -1,18 +1,18 @@
|
|||
var fs = require('fs')
|
||||
var path = require('path')
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
var pathFile = path.join(__dirname, 'path.txt')
|
||||
const pathFile = path.join(__dirname, 'path.txt');
|
||||
|
||||
function getElectronPath () {
|
||||
if (fs.existsSync(pathFile)) {
|
||||
var executablePath = fs.readFileSync(pathFile, 'utf-8')
|
||||
const executablePath = fs.readFileSync(pathFile, 'utf-8');
|
||||
if (process.env.ELECTRON_OVERRIDE_DIST_PATH) {
|
||||
return path.join(process.env.ELECTRON_OVERRIDE_DIST_PATH, executablePath)
|
||||
return path.join(process.env.ELECTRON_OVERRIDE_DIST_PATH, executablePath);
|
||||
}
|
||||
return path.join(__dirname, 'dist', executablePath)
|
||||
return path.join(__dirname, 'dist', executablePath);
|
||||
} else {
|
||||
throw new Error('Electron failed to install correctly, please delete node_modules/electron and try installing again')
|
||||
throw new Error('Electron failed to install correctly, please delete node_modules/electron and try installing again');
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = getElectronPath()
|
||||
module.exports = getElectronPath();
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
#!/usr/bin/env node
|
||||
|
||||
const {version} = require('./package')
|
||||
const { version } = require('./package');
|
||||
|
||||
const fs = require('fs')
|
||||
const os = require('os')
|
||||
const path = require('path')
|
||||
const extract = require('extract-zip')
|
||||
const { downloadArtifact } = require('@electron/get')
|
||||
const fs = require('fs');
|
||||
const os = require('os');
|
||||
const path = require('path');
|
||||
const extract = require('extract-zip');
|
||||
const { downloadArtifact } = require('@electron/get');
|
||||
|
||||
if (process.env.ELECTRON_SKIP_BINARY_DOWNLOAD) {
|
||||
process.exit(0)
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
const platformPath = getPlatformPath()
|
||||
const platformPath = getPlatformPath();
|
||||
|
||||
if (isInstalled()) {
|
||||
process.exit(0)
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
// downloads if not cached
|
||||
|
@ -27,57 +27,57 @@ downloadArtifact({
|
|||
platform: process.env.npm_config_platform || process.platform,
|
||||
arch: process.env.npm_config_arch || process.arch
|
||||
}).then(extractFile).catch(err => {
|
||||
console.error(err.stack)
|
||||
process.exit(1)
|
||||
})
|
||||
console.error(err.stack);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
function isInstalled () {
|
||||
try {
|
||||
if (fs.readFileSync(path.join(__dirname, 'dist', 'version'), 'utf-8').replace(/^v/, '') !== version) {
|
||||
return false
|
||||
return false;
|
||||
}
|
||||
|
||||
if (fs.readFileSync(path.join(__dirname, 'path.txt'), 'utf-8') !== platformPath) {
|
||||
return false
|
||||
return false;
|
||||
}
|
||||
} catch (ignored) {
|
||||
return false
|
||||
return false;
|
||||
}
|
||||
|
||||
const electronPath = process.env.ELECTRON_OVERRIDE_DIST_PATH || path.join(__dirname, 'dist', platformPath)
|
||||
|
||||
return fs.existsSync(electronPath)
|
||||
|
||||
const electronPath = process.env.ELECTRON_OVERRIDE_DIST_PATH || path.join(__dirname, 'dist', platformPath);
|
||||
|
||||
return fs.existsSync(electronPath);
|
||||
}
|
||||
|
||||
// unzips and makes path.txt point at the correct executable
|
||||
function extractFile (zipPath) {
|
||||
return new Promise((resolve, reject) => {
|
||||
extract(zipPath, { dir: path.join(__dirname, 'dist') }, err => {
|
||||
if (err) return reject(err)
|
||||
if (err) return reject(err);
|
||||
|
||||
fs.writeFile(path.join(__dirname, 'path.txt'), platformPath, err => {
|
||||
if (err) return reject(err)
|
||||
if (err) return reject(err);
|
||||
|
||||
resolve()
|
||||
})
|
||||
})
|
||||
})
|
||||
resolve();
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function getPlatformPath () {
|
||||
const platform = process.env.npm_config_platform || os.platform()
|
||||
const platform = process.env.npm_config_platform || os.platform();
|
||||
|
||||
switch (platform) {
|
||||
case 'mas':
|
||||
case 'darwin':
|
||||
return 'Electron.app/Contents/MacOS/Electron'
|
||||
return 'Electron.app/Contents/MacOS/Electron';
|
||||
case 'freebsd':
|
||||
case 'openbsd':
|
||||
case 'linux':
|
||||
return 'electron'
|
||||
return 'electron';
|
||||
case 'win32':
|
||||
return 'electron.exe'
|
||||
return 'electron.exe';
|
||||
default:
|
||||
throw new Error('Electron builds are not available on platform: ' + platform)
|
||||
throw new Error('Electron builds are not available on platform: ' + platform);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -93,7 +93,7 @@ const LINTERS = [{
|
|||
}
|
||||
}, {
|
||||
key: 'javascript',
|
||||
roots: ['lib', 'spec', 'spec-main', 'script', 'default_app', 'build'],
|
||||
roots: ['build', 'default_app', 'lib', 'npm', 'script', 'spec', 'spec-main'],
|
||||
ignoreRoots: ['spec/node_modules', 'spec-main/node_modules'],
|
||||
test: filename => filename.endsWith('.js') || filename.endsWith('.ts'),
|
||||
run: (opts, filenames) => {
|
||||
|
|
Загрузка…
Ссылка в новой задаче