Map Electron versions to Chromium ones

This commit is contained in:
Paul Betts 2016-12-01 17:54:55 -08:00 committed by Henry Zhu
parent b44949025a
commit a38f07181d
2 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,10 @@
module.exports = {
"1.5": 54,
"1.4": 53,
"1.3": 52,
"1.2": 51,
"1.1": 50,
"1.0": 50,
"0.37": 49,
"0.36": 47,
};

View File

@ -2,6 +2,7 @@ import pluginList from "../data/plugins.json";
import builtInsList from "../data/builtIns.json";
import browserslist from "browserslist";
import transformPolyfillRequirePlugin from "./transformPolyfillRequirePlugin";
import electronToChromium from "../data/electronToChromium";
export const MODULE_TRANSFORMATIONS = {
"amd": "transform-es2015-modules-amd",
@ -81,11 +82,31 @@ export const getCurrentNodeVersion = () => {
return parseFloat(process.versions.node);
};
export const electronVersionToChromeVersion = (semverVer) => {
const m = semverVer.match(/^(\d+\.\d+)/);
if (!m) {
throw new Error("Electron version must be a semver version");
}
let result = electronToChromium[m[1]];
if (!result) {
throw new Error(`Electron version ${m[1]} is either too old or too new`);
}
return result;
};
export const getTargets = (targetOpts = {}) => {
if (targetOpts.node === true || targetOpts.node === "current") {
targetOpts.node = getCurrentNodeVersion();
}
// Rewrite Electron versions to their Chrome equivalents
if (targetOpts.electron) {
targetOpts.chrome = electronVersionToChromeVersion(targetOpts.electron);
delete targetOpts.electron;
}
const browserOpts = targetOpts.browsers;
if (isBrowsersQueryValid(browserOpts)) {
const queryBrowsers = getLowestVersions(browserslist(browserOpts));