Respect older versions in invert map
This commit is contained in:
@@ -36,6 +36,7 @@
|
||||
"firefox": 4,
|
||||
"safari": 6,
|
||||
"node": 0.12,
|
||||
"android": 4.4,
|
||||
"ios": 7
|
||||
},
|
||||
"es6.typed.int16-array": {
|
||||
@@ -118,6 +119,7 @@
|
||||
"chrome": 51,
|
||||
"firefox": 53,
|
||||
"safari": 9,
|
||||
"node": 6.5,
|
||||
"ios": 9,
|
||||
"opera": 38
|
||||
},
|
||||
@@ -126,6 +128,7 @@
|
||||
"edge": 15,
|
||||
"firefox": 53,
|
||||
"safari": 9,
|
||||
"node": 6.5,
|
||||
"ios": 9,
|
||||
"opera": 38
|
||||
},
|
||||
@@ -134,6 +137,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -142,6 +146,7 @@
|
||||
"edge": 13,
|
||||
"firefox": 45,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -150,6 +155,7 @@
|
||||
"edge": 13,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -158,6 +164,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -166,6 +173,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -174,6 +182,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -182,6 +191,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -190,6 +200,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -198,6 +209,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -206,6 +218,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -214,6 +227,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -222,6 +236,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -230,6 +245,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 42,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -246,6 +262,7 @@
|
||||
"chrome": 51,
|
||||
"firefox": 51,
|
||||
"safari": 10,
|
||||
"node": 6.5,
|
||||
"ios": 10,
|
||||
"opera": 38
|
||||
},
|
||||
@@ -273,6 +290,7 @@
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"ie": 11,
|
||||
"android": 5,
|
||||
"ios": 9,
|
||||
"opera": 21
|
||||
},
|
||||
@@ -351,6 +369,7 @@
|
||||
"chrome": 49,
|
||||
"firefox": 37,
|
||||
"safari": 9,
|
||||
"node": 6,
|
||||
"ios": 9,
|
||||
"opera": 36
|
||||
},
|
||||
@@ -400,7 +419,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 25,
|
||||
"safari": 9,
|
||||
"node": 4,
|
||||
"node": 6,
|
||||
"ios": 9,
|
||||
"opera": 32
|
||||
},
|
||||
@@ -418,7 +437,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 4,
|
||||
"node": 6,
|
||||
"ios": 9,
|
||||
"opera": 32
|
||||
},
|
||||
@@ -427,7 +446,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 4,
|
||||
"node": 6,
|
||||
"ios": 9,
|
||||
"opera": 32
|
||||
},
|
||||
@@ -436,7 +455,7 @@
|
||||
"edge": 12,
|
||||
"firefox": 31,
|
||||
"safari": 8,
|
||||
"node": 4,
|
||||
"node": 6,
|
||||
"ios": 9,
|
||||
"opera": 32
|
||||
},
|
||||
@@ -446,6 +465,7 @@
|
||||
"firefox": 28,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -464,6 +484,7 @@
|
||||
"firefox": 16,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5,
|
||||
"ios": 9,
|
||||
"opera": 21
|
||||
},
|
||||
@@ -473,6 +494,7 @@
|
||||
"firefox": 32,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5,
|
||||
"ios": 9,
|
||||
"opera": 21
|
||||
},
|
||||
@@ -491,6 +513,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5,
|
||||
"ios": 9,
|
||||
"opera": 21
|
||||
},
|
||||
@@ -500,6 +523,7 @@
|
||||
"firefox": 31,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5,
|
||||
"ios": 9,
|
||||
"opera": 21
|
||||
},
|
||||
@@ -509,6 +533,7 @@
|
||||
"firefox": 31,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5,
|
||||
"ios": 9,
|
||||
"opera": 21
|
||||
},
|
||||
@@ -518,6 +543,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -527,6 +553,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -536,6 +563,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -545,6 +573,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -554,6 +583,7 @@
|
||||
"firefox": 31,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -563,6 +593,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -572,6 +603,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -581,6 +613,7 @@
|
||||
"firefox": 26,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -590,6 +623,7 @@
|
||||
"firefox": 27,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -609,6 +643,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -618,6 +653,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -627,6 +663,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -636,6 +673,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -645,6 +683,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -654,6 +693,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -663,6 +703,7 @@
|
||||
"firefox": 25,
|
||||
"safari": 8,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -671,6 +712,7 @@
|
||||
"edge": 14,
|
||||
"firefox": 43,
|
||||
"safari": 10,
|
||||
"node": 6,
|
||||
"ios": 10,
|
||||
"opera": 34
|
||||
},
|
||||
@@ -678,6 +720,7 @@
|
||||
"chrome": 54,
|
||||
"edge": 14,
|
||||
"firefox": 47,
|
||||
"safari": 10.1,
|
||||
"node": 7,
|
||||
"opera": 41
|
||||
},
|
||||
@@ -685,6 +728,7 @@
|
||||
"chrome": 54,
|
||||
"edge": 14,
|
||||
"firefox": 47,
|
||||
"safari": 10.1,
|
||||
"node": 7,
|
||||
"opera": 41
|
||||
},
|
||||
@@ -692,7 +736,7 @@
|
||||
"chrome": 54,
|
||||
"edge": 15,
|
||||
"firefox": 50,
|
||||
"safari": 10,
|
||||
"safari": 10.1,
|
||||
"node": 7,
|
||||
"opera": 41
|
||||
},
|
||||
|
||||
@@ -146,6 +146,7 @@
|
||||
"firefox": 36,
|
||||
"safari": 9,
|
||||
"node": 0.12,
|
||||
"android": 5.1,
|
||||
"ios": 9,
|
||||
"opera": 25
|
||||
},
|
||||
@@ -171,11 +172,14 @@
|
||||
"chrome": 52,
|
||||
"edge": 14,
|
||||
"firefox": 52,
|
||||
"safari": 10.1,
|
||||
"node": 7,
|
||||
"opera": 39
|
||||
},
|
||||
"transform-async-to-generator": {
|
||||
"chrome": 55,
|
||||
"firefox": 52,
|
||||
"safari": 10.1,
|
||||
"node": 7.6,
|
||||
"opera": 42
|
||||
},
|
||||
|
||||
@@ -16,36 +16,6 @@ const es6Data = require("compat-table/data-es6");
|
||||
const es6PlusData = require("compat-table/data-es2016plus");
|
||||
const envs = require("compat-table/environments");
|
||||
|
||||
const invertedEqualsEnv = Object.keys(envs)
|
||||
.filter((b) => envs[b].equals)
|
||||
.reduce((a, b) => {
|
||||
if (!a[envs[b].equals]) {
|
||||
a[envs[b].equals] = [b];
|
||||
} else {
|
||||
a[envs[b].equals].push(b);
|
||||
}
|
||||
return a;
|
||||
}, {});
|
||||
|
||||
invertedEqualsEnv.safari5 = ["ios6"];
|
||||
if (Array.isArray(invertedEqualsEnv.safari6)) {
|
||||
invertedEqualsEnv.safari6.push("ios7");
|
||||
} else {
|
||||
invertedEqualsEnv.safari6 = ["ios7"];
|
||||
}
|
||||
invertedEqualsEnv.safari8 = ["ios9"];
|
||||
|
||||
const compatibilityTests = flattenDeep([
|
||||
es6Data,
|
||||
es6PlusData,
|
||||
].map((data) =>
|
||||
data.tests.map((test) => {
|
||||
return test.subtests ?
|
||||
[test, renameTests(test.subtests, (name) => test.name + " / " + name)] :
|
||||
test;
|
||||
})
|
||||
));
|
||||
|
||||
const environments = [
|
||||
"chrome",
|
||||
"opera",
|
||||
@@ -62,6 +32,7 @@ const environments = [
|
||||
const envMap = {
|
||||
safari51: "safari5",
|
||||
safari71_8: "safari8",
|
||||
safari10_1: "safari10.1",
|
||||
firefox3_5: "firefox3",
|
||||
firefox3_6: "firefox3",
|
||||
node010: "node0.10",
|
||||
@@ -80,6 +51,42 @@ const envMap = {
|
||||
ios51: "ios5.1",
|
||||
};
|
||||
|
||||
const invertedEqualsEnv = Object.keys(envs)
|
||||
.filter((b) => envs[b].equals)
|
||||
.reduce((a, b) => {
|
||||
const checkEnv = envMap[envs[b].equals] || envs[b].equals;
|
||||
environments.some((env) => {
|
||||
const version = parseInt(checkEnv.replace(env, ""), 10);
|
||||
if (!isNaN(version)) {
|
||||
Object.keys(envs).forEach((equals) => {
|
||||
const equalsVersion = parseInt(equals.replace(env, ""), 10);
|
||||
if (equalsVersion <= version) {
|
||||
if (!a[equals]) a[equals] = [];
|
||||
a[equals].push(b);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
return a;
|
||||
}, {});
|
||||
|
||||
invertedEqualsEnv.safari8 = ["ios9"];
|
||||
|
||||
const compatibilityTests = flattenDeep([
|
||||
es6Data,
|
||||
es6PlusData,
|
||||
].map((data) =>
|
||||
data.tests.map((test) => {
|
||||
return test.subtests ?
|
||||
[test, renameTests(test.subtests, (name) => test.name + " / " + name)] :
|
||||
test;
|
||||
})
|
||||
));
|
||||
|
||||
console.log(invertedEqualsEnv);
|
||||
|
||||
const getLowestImplementedVersion = ({ features }, env) => {
|
||||
const tests = flatten(compatibilityTests
|
||||
.filter((test) => {
|
||||
|
||||
Reference in New Issue
Block a user