diff --git a/index.html b/index.html index 9fbc0476e..e3861482b 100644 --- a/index.html +++ b/index.html @@ -504,8 +504,14 @@

Node.js ES2015 Support

99% complete99% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -60735,8 +60741,14 @@

Node.js ES2016 Support

18.20.4
100% complete100% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -65327,8 +65339,14 @@

Node.js ES2017 Support

18.20.4
100% complete100% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -73910,8 +73928,14 @@

Node.js ES2018 Support

18.20.4
85% complete85% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -79070,8 +79094,14 @@

Node.js ES2019 Support

18.20.4
95% complete95% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -84385,8 +84415,14 @@

Node.js ES2020 Support

18.20.4
100% complete100% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -89283,8 +89319,14 @@

Node.js ES2021 Support

18.20.4
100% complete100% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -93864,8 +93906,14 @@

Node.js ES2022 Support

18.20.4
97% complete97% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -100466,8 +100514,14 @@

Node.js ES2023 Support

18.20.4
30% complete30% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -104607,8 +104661,14 @@

Node.js ES2024 Support

18.20.4
8% complete0% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -108925,8 +108985,14 @@

Node.js ES2025 Support

18.20.4
0% complete0% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
@@ -114405,8 +114471,14 @@

Node.js ESNEXT Support

18.20.4
5% complete5% complete - 18.20.4 + 18.20.5
(these versions have identical results) + + + + + +
18.20.5v8 10.2.154.26-node.37
diff --git a/results/v8/18.20.5--harmony.json b/results/v8/18.20.5--harmony.json new file mode 100644 index 000000000..d51f7913b --- /dev/null +++ b/results/v8/18.20.5--harmony.json @@ -0,0 +1,1044 @@ +{ + "_version": "18.20.5--harmony", + "_engine": "v8 10.2.154.26-node.37", + "ESNEXT": { + "_successful": 2, + "_count": 36, + "_percent": 0.05555555555555555, + "Stage 3›Class and Property Decorators›class decorators": "Invalid or unexpected token", + "Stage 3›Legacy RegExp features in JavaScript›RegExp \"lastMatch\"": true, + "Stage 3›Legacy RegExp features in JavaScript›RegExp.$1-$9": true, + "Stage 3›RegExp Escaping": "RegExp.escape is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.toBase64()": "arr.toBase64 is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.fromBase64()": "Uint8Array.fromBase64 is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.setFromBase64()": "arr2.setFromBase64 is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.toHex()": "arr.toHex is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.fromHex()": "Uint8Array.fromHex is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.setFromHex()": "arr2.setFromHex is not a function", + "Stage 2.7›ShadowRealm": false, + "Stage 2›Generator function.sent Meta Property": "Unexpected token '.'", + "Stage 2›throw expressions›logical": "Unexpected token 'throw'", + "Stage 2›throw expressions›parameter initializers": "Unexpected token 'throw'", + "Stage 2›throw expressions›arrow function bodies": "Unexpected token 'throw'", + "Stage 2›throw expressions›conditionals": "Unexpected token 'throw'", + "Stage 2›Map.prototype.upsert›Map.prototype.upsert": "map.upsert is not a function", + "Stage 2›Map.prototype.upsert›WeakMap.prototype.upsert": "map.upsert is not a function", + "Stage 2›Array.isTemplateObject": "Array.isTemplateObject is not a function", + "Stage 2›Async Iterator Helpers›instanceof AsyncIterator": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›extends AsyncIterator": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.from, async iterable": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.from, iterable": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.from, iterator": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.drop": "(intermediate value)(...).drop is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.every": "(intermediate value)(...).every is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.filter": "(intermediate value)(...).filter is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.find": "(intermediate value)(...).find is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.flatMap": "(intermediate value)(...).flatMap is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.forEach": "(intermediate value)(...).forEach is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.map": "(intermediate value)(...).map is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.reduce": "(intermediate value)(...).reduce is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.some": "(intermediate value)(...).some is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.take": "(intermediate value)(...).take is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.toArray": "(intermediate value)(...).toArray is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype[@@toStringTag]": "AsyncIterator is not defined" + }, + "ES2025": { + "_successful": 0, + "_count": 28, + "_percent": 0, + "features›Duplicate named capturing groups": "Invalid regular expression: /(?[0-9]{4})-[0-9]{2}|[0-9]{2}-(?[0-9]{4})/: Duplicate capture group name", + "features›Set methods›Set.prototype.intersection()": "(intermediate value).intersection is not a function", + "features›Set methods›Set.prototype.union()": "(intermediate value).union is not a function", + "features›Set methods›Set.prototype.difference()": "(intermediate value).difference is not a function", + "features›Set methods›Set.prototype.symmetricDifference()": "(intermediate value).symmetricDifference is not a function", + "features›Set methods›Set.prototype.isDisjointFrom()": "(intermediate value).isDisjointFrom is not a function", + "features›Set methods›Set.prototype.isSubsetOf()": "(intermediate value).isSubsetOf is not a function", + "features›Set methods›Set.prototype.isSupersetOf()": "(intermediate value).isSupersetOf is not a function", + "features›RegExp Pattern Modifiers›i flag": "Invalid regular expression: /^[a-z](?-i:[a-z])$/: Invalid group", + "features›RegExp Pattern Modifiers›m flag": "Invalid regular expression: /^a|(?m:^b)/: Invalid group", + "features›RegExp Pattern Modifiers›s flag": "Invalid regular expression: /.(?-s:.)/: Invalid group", + "features›Iterator Helpers›instanceof Iterator": "Iterator is not defined", + "features›Iterator Helpers›extends Iterator": "Iterator is not defined", + "features›Iterator Helpers›Iterator.from, iterable": "Iterator is not defined", + "features›Iterator Helpers›Iterator.from, iterator": "Iterator is not defined", + "features›Iterator Helpers›Iterator.prototype.drop": "[1,2,3].values(...).drop is not a function", + "features›Iterator Helpers›Iterator.prototype.every": "[1,2,3].values(...).every is not a function", + "features›Iterator Helpers›Iterator.prototype.filter": "[1,2,3].values(...).filter is not a function", + "features›Iterator Helpers›Iterator.prototype.find": "[1,2,3].values(...).find is not a function", + "features›Iterator Helpers›Iterator.prototype.flatMap": "[1,2,3].values(...).flatMap is not a function", + "features›Iterator Helpers›Iterator.prototype.forEach": "[1,2,3].values(...).forEach is not a function", + "features›Iterator Helpers›Iterator.prototype.map": "[1,2,3].values(...).map is not a function", + "features›Iterator Helpers›Iterator.prototype.reduce": "[1,2,3].values(...).reduce is not a function", + "features›Iterator Helpers›Iterator.prototype.some": "[1,2,3].values(...).some is not a function", + "features›Iterator Helpers›Iterator.prototype.take": "[1,2,3].values(...).take is not a function", + "features›Iterator Helpers›Iterator.prototype.toArray": "[1,2,3].values(...).toArray is not a function", + "features›Iterator Helpers›Iterator.prototype[@@toStringTag]": "Iterator is not defined", + "features›Promise.try": "Promise.try is not a function" + }, + "ES2024": { + "_successful": 0, + "_count": 12, + "_percent": 0, + "features›RegExp `v` flag›set notations": "Invalid regular expression flags", + "features›RegExp `v` flag›properties of Strings": "Invalid regular expression flags", + "features›RegExp `v` flag›constructor supports it": "Invalid flags supplied to RegExp constructor 'v'", + "features›RegExp `v` flag›shows up in flags": false, + "features›RegExp `v` flag›Unicode 15.1": "Invalid regular expression flags", + "features›RegExp `v` flag›Unicode 16.0": "Invalid regular expression flags", + "features›ArrayBuffer.prototype.transfer›ArrayBuffer.prototype.transfer()": "buffer1.transfer is not a function", + "features›ArrayBuffer.prototype.transfer›ArrayBuffer.prototype.transferToFixedLength()": "buffer1.transferToFixedLength is not a function", + "features›ArrayBuffer.prototype.transfer›ArrayBuffer.prototype.detached": "buffer1.transfer is not a function", + "features›Promise.withResolvers": "Promise.withResolvers is not a function", + "features›Array Grouping›Object.groupBy()": "Object.groupBy is not a function", + "features›Array Grouping›Map.groupBy()": "Map.groupBy is not a function" + }, + "ES2023": { + "_successful": 3, + "_count": 10, + "_percent": 0.3, + "features›Array find from last›Array.prototype.findLast": true, + "features›Array find from last›Array.prototype.findLastIndex": true, + "features›Hashbang Grammar": true, + "features›Change Array by copy›Array.prototype.toReversed()": "arr.toReversed is not a function", + "features›Change Array by copy›Array.prototype.toSorted()": "arr.toSorted is not a function", + "features›Change Array by copy›Array.prototype.toSpliced()": "arr.toSpliced is not a function", + "features›Change Array by copy›Array.prototype.with()": "arr.with is not a function", + "features›Change Array by copy›TypedArray.prototype.toReversed()": "arr.toReversed is not a function", + "features›Change Array by copy›TypedArray.prototype.toSorted()": "arr.toSorted is not a function", + "features›Change Array by copy›TypedArray.prototype.with()": "arr.with is not a function" + }, + "ES2022": { + "_successful": 39, + "_count": 40, + "_percent": 0.975, + "features›instance class fields›public instance class fields": true, + "features›instance class fields›private instance class fields basic support": true, + "features›instance class fields›private instance class fields initializers": true, + "features›instance class fields›optional private instance class fields access": true, + "features›instance class fields›optional deep private instance class fields access": true, + "features›instance class fields›computed instance class fields": true, + "features›instance class fields›resolving identifier in parent scope": true, + "features›static class fields›public static class fields": true, + "features›static class fields›static class fields use [[Define]]": true, + "features›static class fields›private static class fields": true, + "features›static class fields›computed static class fields": true, + "features›private class methods›private instance methods": true, + "features›private class methods›private static methods": true, + "features›private class methods›private accessor properties": true, + "features›private class methods›private static accessor properties": true, + "features›Ergonomic brand checks for private fields": true, + "features›.at() method on the built-in indexables›Array.prototype.at()": true, + "features›.at() method on the built-in indexables›String.prototype.at()": true, + "features›.at() method on the built-in indexables›%TypedArray%.prototype.at()": true, + "features›Object.hasOwn›Basic functionality": true, + "features›Object.hasOwn›ToObject called before ToPropertyKey": true, + "features›Class static initialization blocks": true, + "features›Error.cause property›Error has cause": true, + "features›Error.cause property›Error.prototype lacks cause": true, + "features›Error.cause property›EvalError has cause": true, + "features›Error.cause property›EvalError.prototype lacks cause": true, + "features›Error.cause property›RangeError has cause": true, + "features›Error.cause property›RangeError.prototype lacks cause": true, + "features›Error.cause property›ReferenceError has cause": true, + "features›Error.cause property›ReferenceError.prototype lacks cause": true, + "features›Error.cause property›SyntaxError has cause": true, + "features›Error.cause property›SyntaxError.prototype lacks cause": true, + "features›Error.cause property›TypeError has cause": true, + "features›Error.cause property›TypeError.prototype lacks cause": true, + "features›Error.cause property›URIError has cause": true, + "features›Error.cause property›URIError.prototype lacks cause": true, + "features›Error.cause property›AggregateError has cause": true, + "features›Error.cause property›AggregateError.prototype lacks cause": true, + "features›RegExp Match Indices (`hasIndices` / `d` flag)›constructor supports it": true, + "features›RegExp Match Indices (`hasIndices` / `d` flag)›shows up in flags": false + }, + "ES2021": { + "_successful": 15, + "_count": 15, + "_percent": 1, + "features›String.prototype.replaceAll": true, + "features›Promise.any›fulfillment": true, + "features›Promise.any›AggregateError": true, + "features›WeakReferences›WeakRef minimal support": true, + "features›WeakReferences›FinalizationRegistry minimal support": true, + "features›Logical Assignment›||= basic support": true, + "features›Logical Assignment›||= short-circuiting behaviour": true, + "features›Logical Assignment›||= setter not unecessarily invoked": true, + "features›Logical Assignment›&&= basic support": true, + "features›Logical Assignment›&&= short-circuiting behaviour": true, + "features›Logical Assignment›&&= setter not unecessarily invoked": true, + "features›Logical Assignment›??= basic support": true, + "features›Logical Assignment›??= short-circuiting behaviour": true, + "features›Logical Assignment›??= setter not unecessarily invoked": true, + "features›numeric separators": true + }, + "ES2020": { + "_successful": 19, + "_count": 19, + "_percent": 1, + "features›String.prototype.matchAll›basic functionality": true, + "features›String.prototype.matchAll›throws on non-global regex": true, + "features›BigInt›basic functionality": true, + "features›BigInt›constructor": true, + "features›BigInt›BigInt.asUintN": true, + "features›BigInt›BigInt.asIntN": true, + "features›BigInt›BigInt64Array": true, + "features›BigInt›BigUint64Array": true, + "features›BigInt›DataView.prototype.getBigInt64": true, + "features›BigInt›DataView.prototype.getBigUint64": true, + "features›Promise.allSettled": true, + "features›globalThis›\"globalThis\" global property is global object": true, + "features›globalThis›\"globalThis\" global property has correct property descriptor": true, + "features›optional chaining operator (?.)›optional property access": true, + "features›optional chaining operator (?.)›optional bracket access": true, + "features›optional chaining operator (?.)›optional method call": true, + "features›optional chaining operator (?.)›optional function call": true, + "features›optional chaining operator (?.)›spread parameters after optional chaining": true, + "features›nullish coalescing operator (??)": true + }, + "ES2019": { + "_successful": 23, + "_count": 24, + "_percent": 0.9583333333333334, + "features›Symbol.prototype.description›basic": true, + "features›Symbol.prototype.description›empty description": true, + "features›Symbol.prototype.description›undefined description": true, + "features›Object.fromEntries": true, + "features›string trimming›String.prototype.trimLeft": true, + "features›string trimming›String.prototype.trimRight": true, + "features›string trimming›String.prototype.trimStart": true, + "features›string trimming›String.prototype.trimEnd": true, + "features›Array.prototype.{flat, flatMap}›Array.prototype.flat": true, + "features›Array.prototype.{flat, flatMap}›Array.prototype.flatMap": true, + "features›Array.prototype.{flat, flatMap}›flat and flatMap in Array.prototype[@@unscopables]": true, + "misc›optional catch binding›basic": true, + "misc›optional catch binding›await": true, + "misc›optional catch binding›yield": true, + "misc›Function.prototype.toString revision›functions created with the Function constructor": "Unexpected string", + "misc›Function.prototype.toString revision›arrows": true, + "misc›Function.prototype.toString revision›[native code]": true, + "misc›Function.prototype.toString revision›class expression with implicit constructor": true, + "misc›Function.prototype.toString revision›class expression with explicit constructor": true, + "misc›Function.prototype.toString revision›unicode escape sequences in identifiers": true, + "misc›Function.prototype.toString revision›methods and computed property names": true, + "misc›JSON superset›LINE SEPARATOR can appear in string literals": true, + "misc›JSON superset›PARAGRAPH SEPARATOR can appear in string literals": true, + "misc›Well-formed JSON.stringify": true + }, + "ES2018": { + "_successful": 20, + "_count": 21, + "_percent": 0.9523809523809523, + "features›object rest/spread properties›object rest properties": true, + "features›object rest/spread properties›object spread properties": true, + "features›Promise.prototype.finally›basic support": true, + "features›Promise.prototype.finally›don't change resolution value": true, + "features›Promise.prototype.finally›change rejection value": true, + "features›s (dotAll) flag for regular expressions": true, + "features›RegExp named capture groups": true, + "features›RegExp Lookbehind Assertions": true, + "features›RegExp Unicode Property Escapes›basic": true, + "features›RegExp Unicode Property Escapes›Unicode 11": true, + "features›RegExp Unicode Property Escapes›Unicode 12": true, + "features›RegExp Unicode Property Escapes›Unicode 12.1": true, + "features›RegExp Unicode Property Escapes›Unicode 13": true, + "features›RegExp Unicode Property Escapes›Unicode 14": true, + "features›RegExp Unicode Property Escapes›Unicode 15": true, + "features›RegExp Unicode Property Escapes›Unicode 15.1": true, + "features›RegExp Unicode Property Escapes›Unicode 16.0": "Invalid regular expression: /\\p{Script=Todhri}/: Invalid property name", + "features›Asynchronous Iterators›async generators": true, + "features›Asynchronous Iterators›for-await-of loops": true, + "misc›Proxy \"ownKeys\" handler, duplicate keys for non-extensible targets": true, + "misc›template literal revision": true + }, + "ES2017": { + "_successful": 64, + "_count": 64, + "_percent": 1, + "features›Object static methods›Object.values": true, + "features›Object static methods›Object.entries": true, + "features›Object static methods›Object.getOwnPropertyDescriptors": true, + "features›Object static methods›Object.getOwnPropertyDescriptors doesn't provide undefined descriptors": true, + "features›String padding›String.prototype.padStart": true, + "features›String padding›String.prototype.padEnd": true, + "features›trailing commas in function syntax›in parameter lists": true, + "features›trailing commas in function syntax›in argument lists": true, + "features›async functions›return": true, + "features›async functions›throw": true, + "features›async functions›no line break between async and function": true, + "features›async functions›no \"prototype\" property": true, + "features›async functions›await": true, + "features›async functions›await, rejection": true, + "features›async functions›must await a value": true, + "features›async functions›can await non-Promise values": true, + "features›async functions›cannot await in parameters": true, + "features›async functions›async methods, object literals": true, + "features›async functions›async methods, classes": true, + "features›async functions›async arrow functions in methods, classes": true, + "features›async functions›async arrow functions": true, + "features›async functions›correct prototype chain": true, + "features›async functions›async function prototype, Symbol.toStringTag": true, + "features›async functions›async function constructor": true, + "features›shared memory and atomics›SharedArrayBuffer": true, + "features›shared memory and atomics›SharedArrayBuffer[Symbol.species]": true, + "features›shared memory and atomics›SharedArrayBuffer.prototype.byteLength": true, + "features›shared memory and atomics›SharedArrayBuffer.prototype.slice": true, + "features›shared memory and atomics›SharedArrayBuffer.prototype[Symbol.toStringTag]": true, + "features›shared memory and atomics›Atomics.add": true, + "features›shared memory and atomics›Atomics.and": true, + "features›shared memory and atomics›Atomics.compareExchange": true, + "features›shared memory and atomics›Atomics.exchange": true, + "features›shared memory and atomics›Atomics.wait": true, + "features›shared memory and atomics›Atomics.notify": true, + "features›shared memory and atomics›Atomics.isLockFree": true, + "features›shared memory and atomics›Atomics.load": true, + "features›shared memory and atomics›Atomics.or": true, + "features›shared memory and atomics›Atomics.store": true, + "features›shared memory and atomics›Atomics.sub": true, + "features›shared memory and atomics›Atomics.xor": true, + "misc›RegExp \"u\" flag, case folding": true, + "misc›arguments.caller removed": true, + "annex b›Object.prototype getter/setter methods›__defineGetter__": true, + "annex b›Object.prototype getter/setter methods›__defineGetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__defineGetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__defineSetter__": true, + "annex b›Object.prototype getter/setter methods›__defineSetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__defineSetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, prototype chain": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, data properties can shadow accessors": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, prototype chain": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, data properties can shadow accessors": true, + "annex b›Proxy internal calls, getter/setter methods›__defineGetter__": true, + "annex b›Proxy internal calls, getter/setter methods›__defineSetter__": true, + "annex b›Proxy internal calls, getter/setter methods›__lookupGetter__": true, + "annex b›Proxy internal calls, getter/setter methods›__lookupSetter__": true, + "annex b›assignments allowed in for-in head in non-strict mode": true + }, + "ES2016": { + "_successful": 14, + "_count": 14, + "_percent": 1, + "features›exponentiation (**) operator›basic support": true, + "features›exponentiation (**) operator›assignment": true, + "features›exponentiation (**) operator›early syntax error for unary negation without parens": true, + "features›Array.prototype.includes›Array.prototype.includes": true, + "features›Array.prototype.includes›Array.prototype.includes handles sparse arrays": true, + "features›Array.prototype.includes›Array.prototype.includes is generic": true, + "features›Array.prototype.includes›%TypedArray%.prototype.includes": true, + "misc›generator functions can't be used with \"new\"": true, + "misc›generator throw() caught by inner generator": true, + "misc›strict fn w/ non-strict non-simple params is error": true, + "misc›nested rest destructuring, declarations": true, + "misc›nested rest destructuring, parameters": true, + "misc›Proxy, \"enumerate\" handler removed": true, + "misc›Proxy internal calls, Array.prototype.includes": true + }, + "ES2015": { + "_successful": 693, + "_count": 697, + "_percent": 0.994261119081779, + "optimisation›proper tail calls (tail call optimisation)›direct recursion": "Maximum call stack size exceeded", + "optimisation›proper tail calls (tail call optimisation)›mutual recursion": "Maximum call stack size exceeded", + "syntax›default function parameters›basic functionality": true, + "syntax›default function parameters›explicit undefined defers to the default": true, + "syntax›default function parameters›defaults can refer to previous params": true, + "syntax›default function parameters›arguments object interaction": true, + "syntax›default function parameters›temporal dead zone": true, + "syntax›default function parameters›separate scope": true, + "syntax›default function parameters›new Function() support": true, + "syntax›rest parameters›basic functionality": true, + "syntax›rest parameters›function 'length' property": true, + "syntax›rest parameters›arguments object interaction": true, + "syntax›rest parameters›can't be used in setters": true, + "syntax›rest parameters›new Function() support": true, + "syntax›spread syntax for iterable objects›with arrays, in function calls": true, + "syntax›spread syntax for iterable objects›with arrays, in array literals": true, + "syntax›spread syntax for iterable objects›with sparse arrays, in function calls": true, + "syntax›spread syntax for iterable objects›with sparse arrays, in array literals": true, + "syntax›spread syntax for iterable objects›with strings, in function calls": true, + "syntax›spread syntax for iterable objects›with strings, in array literals": true, + "syntax›spread syntax for iterable objects›with astral plane strings, in function calls": true, + "syntax›spread syntax for iterable objects›with astral plane strings, in array literals": true, + "syntax›spread syntax for iterable objects›with generator instances, in calls": true, + "syntax›spread syntax for iterable objects›with generator instances, in arrays": true, + "syntax›spread syntax for iterable objects›with generic iterables, in calls": true, + "syntax›spread syntax for iterable objects›with generic iterables, in arrays": true, + "syntax›spread syntax for iterable objects›with instances of iterables, in calls": true, + "syntax›spread syntax for iterable objects›with instances of iterables, in arrays": true, + "syntax›spread syntax for iterable objects›spreading non-iterables is a runtime error": true, + "syntax›object literal extensions›computed properties": true, + "syntax›object literal extensions›shorthand properties": true, + "syntax›object literal extensions›shorthand methods": true, + "syntax›object literal extensions›string-keyed shorthand methods": true, + "syntax›object literal extensions›computed shorthand methods": true, + "syntax›object literal extensions›computed accessors": true, + "syntax›for..of loops›with arrays": true, + "syntax›for..of loops›with sparse arrays": true, + "syntax›for..of loops›with strings": true, + "syntax›for..of loops›with astral plane strings": true, + "syntax›for..of loops›with generator instances": true, + "syntax›for..of loops›with generic iterables": true, + "syntax›for..of loops›with instances of generic iterables": true, + "syntax›for..of loops›iterator closing, break": true, + "syntax›for..of loops›iterator closing, throw": true, + "syntax›octal and binary literals›octal literals": true, + "syntax›octal and binary literals›binary literals": true, + "syntax›octal and binary literals›octal supported by Number()": true, + "syntax›octal and binary literals›binary supported by Number()": true, + "syntax›template literals›basic functionality": true, + "syntax›template literals›toString conversion": true, + "syntax›template literals›tagged template literals": true, + "syntax›template literals›passed array is frozen": true, + "syntax›template literals›line break normalisation": true, + "syntax›template literals›TemplateStrings call site caching": true, + "syntax›template literals›TemplateStrings permanent caching": true, + "syntax›RegExp \"y\" and \"u\" flags›\"y\" flag": true, + "syntax›RegExp \"y\" and \"u\" flags›\"y\" flag, lastIndex": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag, non-BMP Unicode characters": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag, Unicode code point escapes": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag, case folding": true, + "syntax›destructuring, declarations›with arrays": true, + "syntax›destructuring, declarations›with sparse arrays": true, + "syntax›destructuring, declarations›with strings": true, + "syntax›destructuring, declarations›with astral plane strings": true, + "syntax›destructuring, declarations›with generator instances": true, + "syntax›destructuring, declarations›with generic iterables": true, + "syntax›destructuring, declarations›with instances of generic iterables": true, + "syntax›destructuring, declarations›iterator closing": true, + "syntax›destructuring, declarations›trailing commas in iterable patterns": true, + "syntax›destructuring, declarations›with objects": true, + "syntax›destructuring, declarations›object destructuring with primitives": true, + "syntax›destructuring, declarations›trailing commas in object patterns": true, + "syntax›destructuring, declarations›throws on null and undefined": true, + "syntax›destructuring, declarations›computed properties": true, + "syntax›destructuring, declarations›multiples in a single var statement": true, + "syntax›destructuring, declarations›nested": true, + "syntax›destructuring, declarations›in for-in loop heads": true, + "syntax›destructuring, declarations›in for-of loop heads": true, + "syntax›destructuring, declarations›in catch heads": true, + "syntax›destructuring, declarations›rest": true, + "syntax›destructuring, declarations›defaults": true, + "syntax›destructuring, declarations›defaults, let temporal dead zone": true, + "syntax›destructuring, assignment›with arrays": true, + "syntax›destructuring, assignment›with sparse arrays": true, + "syntax›destructuring, assignment›with strings": true, + "syntax›destructuring, assignment›with astral plane strings": true, + "syntax›destructuring, assignment›with generator instances": true, + "syntax›destructuring, assignment›with generic iterables": true, + "syntax›destructuring, assignment›with instances of generic iterables": true, + "syntax›destructuring, assignment›iterator closing": true, + "syntax›destructuring, assignment›iterable destructuring expression": true, + "syntax›destructuring, assignment›chained iterable destructuring": true, + "syntax›destructuring, assignment›trailing commas in iterable patterns": true, + "syntax›destructuring, assignment›with objects": true, + "syntax›destructuring, assignment›object destructuring with primitives": true, + "syntax›destructuring, assignment›trailing commas in object patterns": true, + "syntax›destructuring, assignment›object destructuring expression": true, + "syntax›destructuring, assignment›parenthesised left-hand-side is a syntax error": true, + "syntax›destructuring, assignment›chained object destructuring": true, + "syntax›destructuring, assignment›throws on null and undefined": true, + "syntax›destructuring, assignment›computed properties": true, + "syntax›destructuring, assignment›nested": true, + "syntax›destructuring, assignment›rest": true, + "syntax›destructuring, assignment›nested rest": true, + "syntax›destructuring, assignment›empty patterns": true, + "syntax›destructuring, assignment›defaults": true, + "syntax›destructuring, parameters›with arrays": true, + "syntax›destructuring, parameters›with sparse arrays": true, + "syntax›destructuring, parameters›with strings": true, + "syntax›destructuring, parameters›with astral plane strings": true, + "syntax›destructuring, parameters›with generator instances": true, + "syntax›destructuring, parameters›with generic iterables": true, + "syntax›destructuring, parameters›with instances of generic iterables": true, + "syntax›destructuring, parameters›iterator closing": true, + "syntax›destructuring, parameters›trailing commas in iterable patterns": true, + "syntax›destructuring, parameters›with objects": true, + "syntax›destructuring, parameters›object destructuring with primitives": true, + "syntax›destructuring, parameters›trailing commas in object patterns": true, + "syntax›destructuring, parameters›throws on null and undefined": true, + "syntax›destructuring, parameters›computed properties": true, + "syntax›destructuring, parameters›nested": true, + "syntax›destructuring, parameters›'arguments' interaction": true, + "syntax›destructuring, parameters›new Function() support": true, + "syntax›destructuring, parameters›in parameters, function 'length' property": true, + "syntax›destructuring, parameters›rest": true, + "syntax›destructuring, parameters›empty patterns": true, + "syntax›destructuring, parameters›defaults": true, + "syntax›destructuring, parameters›defaults, separate scope": true, + "syntax›destructuring, parameters›defaults, new Function() support": true, + "syntax›destructuring, parameters›aliased defaults, arrow function": true, + "syntax›destructuring, parameters›shorthand defaults, arrow function": true, + "syntax›destructuring, parameters›duplicate identifier": true, + "syntax›Unicode code point escapes›in strings": true, + "syntax›Unicode code point escapes›in identifiers": true, + "syntax›Unicode code point escapes›in property key definitions": true, + "syntax›Unicode code point escapes›in property key accesses": true, + "syntax›new.target›in constructors": true, + "syntax›new.target›assignment is an early error": true, + "bindings›const›basic support": true, + "bindings›const›is block-scoped": true, + "bindings›const›scope shadow resolution": true, + "bindings›const›cannot be in statements": true, + "bindings›const›redefining a const is an error": true, + "bindings›const›for loop statement scope": true, + "bindings›const›for-in loop iteration scope": true, + "bindings›const›for-of loop iteration scope": true, + "bindings›const›temporal dead zone": true, + "bindings›const›basic support (strict mode)": true, + "bindings›const›is block-scoped (strict mode)": true, + "bindings›const›scope shadow resolution (strict mode)": true, + "bindings›const›cannot be in statements (strict mode)": true, + "bindings›const›redefining a const (strict mode)": true, + "bindings›const›for loop statement scope (strict mode)": true, + "bindings›const›for-in loop iteration scope (strict mode)": true, + "bindings›const›for-of loop iteration scope (strict mode)": true, + "bindings›const›temporal dead zone (strict mode)": true, + "bindings›let›basic support": true, + "bindings›let›is block-scoped": true, + "bindings›let›scope shadow resolution": true, + "bindings›let›cannot be in statements": true, + "bindings›let›for loop statement scope": true, + "bindings›let›temporal dead zone": true, + "bindings›let›for/for-in loop iteration scope": true, + "bindings›let›for-in loop binding shadowing parameter": true, + "bindings›let›basic support (strict mode)": true, + "bindings›let›is block-scoped (strict mode)": true, + "bindings›let›scope shadow resolution (strict mode)": true, + "bindings›let›cannot be in statements (strict mode)": true, + "bindings›let›for loop statement scope (strict mode)": true, + "bindings›let›temporal dead zone (strict mode)": true, + "bindings›let›for/for-in loop iteration scope (strict mode)": true, + "bindings›let›for-in loop binding shadowing parameter (strict mode)": true, + "bindings›block-level function declaration": true, + "functions›arrow functions›0 parameters": true, + "functions›arrow functions›1 parameter, no brackets": true, + "functions›arrow functions›multiple parameters": true, + "functions›arrow functions›lexical \"this\" binding": true, + "functions›arrow functions›\"this\" unchanged by call or apply": true, + "functions›arrow functions›can't be bound, can be curried": true, + "functions›arrow functions›lexical \"arguments\" binding": true, + "functions›arrow functions›no line break between params and =>": true, + "functions›arrow functions›correct precedence": true, + "functions›arrow functions›no \"prototype\" property": true, + "functions›arrow functions›lexical \"super\" binding in constructors": true, + "functions›arrow functions›lexical \"super\" binding in methods": true, + "functions›arrow functions›lexical \"new.target\" binding": true, + "functions›class›class statement": true, + "functions›class›is block-scoped": true, + "functions›class›class expression": true, + "functions›class›anonymous class": true, + "functions›class›constructor": true, + "functions›class›prototype methods": true, + "functions›class›string-keyed methods": true, + "functions›class›computed prototype methods": true, + "functions›class›optional semicolons": true, + "functions›class›static methods": true, + "functions›class›computed static methods": true, + "functions›class›accessor properties": true, + "functions›class›computed accessor properties": true, + "functions›class›static accessor properties": true, + "functions›class›computed static accessor properties": true, + "functions›class›class name is lexically scoped": true, + "functions›class›computed names, temporal dead zone": true, + "functions›class›methods aren't enumerable": true, + "functions›class›implicit strict mode": true, + "functions›class›constructor requires new": true, + "functions›class›extends": true, + "functions›class›extends expressions": true, + "functions›class›extends null": true, + "functions›class›new.target": true, + "functions›super›statement in constructors": true, + "functions›super›expression in constructors": true, + "functions›super›in methods, property access": true, + "functions›super›in methods, method calls": true, + "functions›super›method calls use correct \"this\" binding": true, + "functions›super›constructor calls use correct \"new.target\" binding": true, + "functions›super›is statically bound": true, + "functions›super›super() invokes the correct constructor": true, + "functions›generators›basic functionality": true, + "functions›generators›generator function expressions": true, + "functions›generators›correct \"this\" binding": true, + "functions›generators›can't use \"this\" with new": true, + "functions›generators›sending": true, + "functions›generators›%GeneratorPrototype%": true, + "functions›generators›%GeneratorPrototype% prototype chain": true, + "functions›generators›%GeneratorPrototype%.constructor": true, + "functions›generators›%GeneratorPrototype%.throw": true, + "functions›generators›%GeneratorPrototype%.return": true, + "functions›generators›yield operator precedence": true, + "functions›generators›yield *, arrays": true, + "functions›generators›yield *, sparse arrays": true, + "functions›generators›yield *, strings": true, + "functions›generators›yield *, astral plane strings": true, + "functions›generators›yield *, generator instances": true, + "functions›generators›yield *, generic iterables": true, + "functions›generators›yield *, instances of iterables": true, + "functions›generators›yield * on non-iterables is a runtime error": true, + "functions›generators›yield *, iterator closing": true, + "functions›generators›yield *, iterator closing via throw()": true, + "functions›generators›shorthand generator methods": true, + "functions›generators›string-keyed shorthand generator methods": true, + "functions›generators›computed shorthand generators": true, + "functions›generators›shorthand generator methods, classes": true, + "functions›generators›computed shorthand generators, classes": true, + "functions›generators›shorthand generators can't be constructors": true, + "built-ins›typed arrays›Int8Array": true, + "built-ins›typed arrays›Uint8Array": true, + "built-ins›typed arrays›Uint8ClampedArray": true, + "built-ins›typed arrays›Int16Array": true, + "built-ins›typed arrays›Uint16Array": true, + "built-ins›typed arrays›Int32Array": true, + "built-ins›typed arrays›Uint32Array": true, + "built-ins›typed arrays›Float32Array": true, + "built-ins›typed arrays›Float64Array": true, + "built-ins›typed arrays›DataView (Int8)": true, + "built-ins›typed arrays›DataView (Uint8)": true, + "built-ins›typed arrays›DataView (Int16)": true, + "built-ins›typed arrays›DataView (Uint16)": true, + "built-ins›typed arrays›DataView (Int32)": true, + "built-ins›typed arrays›DataView (Uint32)": true, + "built-ins›typed arrays›DataView (Float32)": true, + "built-ins›typed arrays›DataView (Float64)": true, + "built-ins›typed arrays›ArrayBuffer[Symbol.species]": true, + "built-ins›typed arrays›constructors require new": true, + "built-ins›typed arrays›constructors accept generic iterables": true, + "built-ins›typed arrays›correct prototype chains": true, + "built-ins›typed arrays›%TypedArray%.from": true, + "built-ins›typed arrays›%TypedArray%.of": true, + "built-ins›typed arrays›%TypedArray%.prototype.subarray": true, + "built-ins›typed arrays›%TypedArray%.prototype.join": true, + "built-ins›typed arrays›%TypedArray%.prototype.indexOf": true, + "built-ins›typed arrays›%TypedArray%.prototype.lastIndexOf": true, + "built-ins›typed arrays›%TypedArray%.prototype.slice": true, + "built-ins›typed arrays›%TypedArray%.prototype.every": true, + "built-ins›typed arrays›%TypedArray%.prototype.filter": true, + "built-ins›typed arrays›%TypedArray%.prototype.forEach": true, + "built-ins›typed arrays›%TypedArray%.prototype.map": true, + "built-ins›typed arrays›%TypedArray%.prototype.reduce": true, + "built-ins›typed arrays›%TypedArray%.prototype.reduceRight": true, + "built-ins›typed arrays›%TypedArray%.prototype.reverse": true, + "built-ins›typed arrays›%TypedArray%.prototype.some": true, + "built-ins›typed arrays›%TypedArray%.prototype.sort": true, + "built-ins›typed arrays›%TypedArray%.prototype.copyWithin": true, + "built-ins›typed arrays›%TypedArray%.prototype.find": true, + "built-ins›typed arrays›%TypedArray%.prototype.findIndex": true, + "built-ins›typed arrays›%TypedArray%.prototype.fill": true, + "built-ins›typed arrays›%TypedArray%.prototype.keys": true, + "built-ins›typed arrays›%TypedArray%.prototype.values": true, + "built-ins›typed arrays›%TypedArray%.prototype.entries": true, + "built-ins›typed arrays›%TypedArray%.prototype[Symbol.iterator]": true, + "built-ins›typed arrays›%TypedArray%[Symbol.species]": true, + "built-ins›Map›basic functionality": true, + "built-ins›Map›constructor arguments": true, + "built-ins›Map›constructor requires new": true, + "built-ins›Map›constructor accepts null": true, + "built-ins›Map›constructor invokes set": true, + "built-ins›Map›iterator closing": true, + "built-ins›Map›Map.prototype.set returns this": true, + "built-ins›Map›-0 key converts to +0": true, + "built-ins›Map›Map.prototype.size": true, + "built-ins›Map›Map.prototype.delete": true, + "built-ins›Map›Map.prototype.clear": true, + "built-ins›Map›Map.prototype.forEach": true, + "built-ins›Map›Map.prototype.keys": true, + "built-ins›Map›Map.prototype.values": true, + "built-ins›Map›Map.prototype.entries": true, + "built-ins›Map›Map.prototype[Symbol.iterator]": true, + "built-ins›Map›Map.prototype isn't an instance": true, + "built-ins›Map›Map iterator prototype chain": true, + "built-ins›Map›Map[Symbol.species]": true, + "built-ins›Set›basic functionality": true, + "built-ins›Set›constructor arguments": true, + "built-ins›Set›constructor requires new": true, + "built-ins›Set›constructor accepts null": true, + "built-ins›Set›constructor invokes add": true, + "built-ins›Set›iterator closing": true, + "built-ins›Set›Set.prototype.add returns this": true, + "built-ins›Set›-0 key converts to +0": true, + "built-ins›Set›Set.prototype.size": true, + "built-ins›Set›Set.prototype.delete": true, + "built-ins›Set›Set.prototype.clear": true, + "built-ins›Set›Set.prototype.forEach": true, + "built-ins›Set›Set.prototype.keys": true, + "built-ins›Set›Set.prototype.values": true, + "built-ins›Set›Set.prototype.entries": true, + "built-ins›Set›Set.prototype[Symbol.iterator]": true, + "built-ins›Set›Set.prototype isn't an instance": true, + "built-ins›Set›Set iterator prototype chain": true, + "built-ins›Set›Set[Symbol.species]": true, + "built-ins›WeakMap›basic functionality": true, + "built-ins›WeakMap›constructor arguments": true, + "built-ins›WeakMap›constructor requires new": true, + "built-ins›WeakMap›constructor accepts null": true, + "built-ins›WeakMap›constructor invokes set": true, + "built-ins›WeakMap›frozen objects as keys": true, + "built-ins›WeakMap›iterator closing": true, + "built-ins›WeakMap›WeakMap.prototype.set returns this": true, + "built-ins›WeakMap›WeakMap.prototype.delete": true, + "built-ins›WeakMap›no WeakMap.prototype.clear method": true, + "built-ins›WeakMap›.has, .get and .delete methods accept primitives": true, + "built-ins›WeakMap›WeakMap.prototype isn't an instance": true, + "built-ins›WeakSet›basic functionality": true, + "built-ins›WeakSet›constructor arguments": true, + "built-ins›WeakSet›constructor requires new": true, + "built-ins›WeakSet›constructor accepts null": true, + "built-ins›WeakSet›constructor invokes add": true, + "built-ins›WeakSet›iterator closing": true, + "built-ins›WeakSet›WeakSet.prototype.add returns this": true, + "built-ins›WeakSet›WeakSet.prototype.delete": true, + "built-ins›WeakSet›no WeakSet.prototype.clear method": true, + "built-ins›WeakSet›.has and .delete methods accept primitives": true, + "built-ins›WeakSet›WeakSet.prototype isn't an instance": true, + "built-ins›Proxy›constructor requires new": true, + "built-ins›Proxy›no \"prototype\" property": true, + "built-ins›Proxy›\"get\" handler": true, + "built-ins›Proxy›\"get\" handler, instances of proxies": true, + "built-ins›Proxy›\"get\" handler invariants": true, + "built-ins›Proxy›\"set\" handler": true, + "built-ins›Proxy›\"set\" handler, instances of proxies": true, + "built-ins›Proxy›\"set\" handler invariants": true, + "built-ins›Proxy›\"has\" handler": true, + "built-ins›Proxy›\"has\" handler, instances of proxies": true, + "built-ins›Proxy›\"has\" handler invariants": true, + "built-ins›Proxy›\"deleteProperty\" handler": true, + "built-ins›Proxy›\"deleteProperty\" handler invariant": true, + "built-ins›Proxy›\"getOwnPropertyDescriptor\" handler": true, + "built-ins›Proxy›\"getOwnPropertyDescriptor\" handler invariants": true, + "built-ins›Proxy›\"defineProperty\" handler": true, + "built-ins›Proxy›\"defineProperty\" handler invariants": true, + "built-ins›Proxy›\"getPrototypeOf\" handler": true, + "built-ins›Proxy›\"getPrototypeOf\" handler invariant": true, + "built-ins›Proxy›\"setPrototypeOf\" handler": true, + "built-ins›Proxy›\"setPrototypeOf\" handler invariant": true, + "built-ins›Proxy›\"isExtensible\" handler": true, + "built-ins›Proxy›\"isExtensible\" handler invariant": true, + "built-ins›Proxy›\"preventExtensions\" handler": true, + "built-ins›Proxy›\"preventExtensions\" handler invariant": true, + "built-ins›Proxy›\"ownKeys\" handler": true, + "built-ins›Proxy›\"ownKeys\" handler invariant": true, + "built-ins›Proxy›\"apply\" handler": true, + "built-ins›Proxy›\"apply\" handler invariant": true, + "built-ins›Proxy›\"construct\" handler": true, + "built-ins›Proxy›\"construct\" handler invariants": true, + "built-ins›Proxy›Proxy.revocable": true, + "built-ins›Proxy›Array.isArray support": true, + "built-ins›Proxy›JSON.stringify support": true, + "built-ins›Reflect›Reflect.get": true, + "built-ins›Reflect›Reflect.set": true, + "built-ins›Reflect›Reflect.has": true, + "built-ins›Reflect›Reflect.deleteProperty": true, + "built-ins›Reflect›Reflect.getOwnPropertyDescriptor": true, + "built-ins›Reflect›Reflect.defineProperty": true, + "built-ins›Reflect›Reflect.getPrototypeOf": true, + "built-ins›Reflect›Reflect.setPrototypeOf": true, + "built-ins›Reflect›Reflect.isExtensible": true, + "built-ins›Reflect›Reflect.preventExtensions": true, + "built-ins›Reflect›Reflect.ownKeys, string keys": true, + "built-ins›Reflect›Reflect.ownKeys, symbol keys": true, + "built-ins›Reflect›Reflect.apply": true, + "built-ins›Reflect›Reflect.construct": true, + "built-ins›Reflect›Reflect.construct sets new.target meta-property": true, + "built-ins›Reflect›Reflect.construct creates instances from third argument": true, + "built-ins›Reflect›Reflect.construct, Array subclassing": true, + "built-ins›Reflect›Reflect.construct, RegExp subclassing": true, + "built-ins›Reflect›Reflect.construct, Function subclassing": true, + "built-ins›Reflect›Reflect.construct, Promise subclassing": true, + "built-ins›Promise›basic functionality": true, + "built-ins›Promise›constructor requires new": true, + "built-ins›Promise›Promise.prototype isn't an instance": true, + "built-ins›Promise›Promise.all": true, + "built-ins›Promise›Promise.all, generic iterables": true, + "built-ins›Promise›Promise.race": true, + "built-ins›Promise›Promise.race, generic iterables": true, + "built-ins›Promise›Promise[Symbol.species]": true, + "built-ins›Symbol›basic functionality": true, + "built-ins›Symbol›typeof support": true, + "built-ins›Symbol›symbol keys are hidden to pre-ES6 code": true, + "built-ins›Symbol›Object.defineProperty support": true, + "built-ins›Symbol›symbols inherit from Symbol.prototype": true, + "built-ins›Symbol›cannot coerce to string or number": true, + "built-ins›Symbol›can convert with String()": true, + "built-ins›Symbol›new Symbol() throws": true, + "built-ins›Symbol›Object(symbol)": true, + "built-ins›Symbol›JSON.stringify ignores symbol primitives": true, + "built-ins›Symbol›JSON.stringify ignores symbol objects": true, + "built-ins›Symbol›global symbol registry": true, + "built-ins›well-known symbols›Symbol.hasInstance": true, + "built-ins›well-known symbols›Symbol.isConcatSpreadable, non-spreadable array": true, + "built-ins›well-known symbols›Symbol.isConcatSpreadable, spreadable object with poisoned getter": false, + "built-ins›well-known symbols›Symbol.iterator, existence": true, + "built-ins›well-known symbols›Symbol.iterator, arguments object": true, + "built-ins›well-known symbols›Symbol.species, existence": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.concat": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.filter": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.map": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.slice": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.splice": true, + "built-ins›well-known symbols›Symbol.species, RegExp.prototype[Symbol.split]": true, + "built-ins›well-known symbols›Symbol.species, Promise.prototype.then": true, + "built-ins›well-known symbols›Symbol.replace": true, + "built-ins›well-known symbols›Symbol.search": true, + "built-ins›well-known symbols›Symbol.split": true, + "built-ins›well-known symbols›Symbol.match": true, + "built-ins›well-known symbols›Symbol.match, RegExp constructor": true, + "built-ins›well-known symbols›Symbol.match, String.prototype.startsWith": true, + "built-ins›well-known symbols›Symbol.match, String.prototype.endsWith": true, + "built-ins›well-known symbols›Symbol.match, String.prototype.includes": true, + "built-ins›well-known symbols›Symbol.toPrimitive": true, + "built-ins›well-known symbols›Symbol.toStringTag": true, + "built-ins›well-known symbols›Symbol.toStringTag affects existing built-ins": true, + "built-ins›well-known symbols›Symbol.toStringTag, new built-ins": true, + "built-ins›well-known symbols›Symbol.toStringTag, misc. built-ins": true, + "built-ins›well-known symbols›Symbol.unscopables": true, + "built-in extensions›Object static methods›Object.assign": true, + "built-in extensions›Object static methods›Object.is": true, + "built-in extensions›Object static methods›Object.getOwnPropertySymbols": true, + "built-in extensions›Object static methods›Object.setPrototypeOf": true, + "built-in extensions›function \"name\" property›function statements": true, + "built-in extensions›function \"name\" property›function expressions": true, + "built-in extensions›function \"name\" property›new Function": true, + "built-in extensions›function \"name\" property›bound functions": true, + "built-in extensions›function \"name\" property›variables (function)": true, + "built-in extensions›function \"name\" property›object methods (function)": true, + "built-in extensions›function \"name\" property›accessor properties": true, + "built-in extensions›function \"name\" property›shorthand methods": true, + "built-in extensions›function \"name\" property›shorthand methods (no lexical binding)": true, + "built-in extensions›function \"name\" property›symbol-keyed methods": true, + "built-in extensions›function \"name\" property›class statements": true, + "built-in extensions›function \"name\" property›class expressions": true, + "built-in extensions›function \"name\" property›variables (class)": true, + "built-in extensions›function \"name\" property›object methods (class)": true, + "built-in extensions›function \"name\" property›class prototype methods": true, + "built-in extensions›function \"name\" property›class static methods": true, + "built-in extensions›function \"name\" property›isn't writable, is configurable": true, + "built-in extensions›String static methods›String.raw": true, + "built-in extensions›String static methods›String.fromCodePoint": true, + "built-in extensions›String.prototype methods›String.prototype.codePointAt": true, + "built-in extensions›String.prototype methods›String.prototype.normalize": true, + "built-in extensions›String.prototype methods›String.prototype.repeat": true, + "built-in extensions›String.prototype methods›String.prototype.startsWith": true, + "built-in extensions›String.prototype methods›String.prototype.startsWith throws on RegExp": true, + "built-in extensions›String.prototype methods›String.prototype.endsWith": true, + "built-in extensions›String.prototype methods›String.prototype.endsWith throws on RegExp": true, + "built-in extensions›String.prototype methods›String.prototype.includes": true, + "built-in extensions›String.prototype methods›String.prototype[Symbol.iterator]": true, + "built-in extensions›String.prototype methods›String iterator prototype chain": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype.flags": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.match]": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.replace]": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.split]": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.search]": true, + "built-in extensions›RegExp.prototype properties›RegExp[Symbol.species]": true, + "built-in extensions›Array static methods›Array.from, array-like objects": true, + "built-in extensions›Array static methods›Array.from, generator instances": true, + "built-in extensions›Array static methods›Array.from, generic iterables": true, + "built-in extensions›Array static methods›Array.from, instances of generic iterables": true, + "built-in extensions›Array static methods›Array.from map function, array-like objects": true, + "built-in extensions›Array static methods›Array.from map function, generator instances": true, + "built-in extensions›Array static methods›Array.from map function, generic iterables": true, + "built-in extensions›Array static methods›Array.from map function, instances of iterables": true, + "built-in extensions›Array static methods›Array.from, iterator closing": true, + "built-in extensions›Array static methods›Array.of": true, + "built-in extensions›Array static methods›Array[Symbol.species]": true, + "built-in extensions›Array.prototype methods›Array.prototype.copyWithin": true, + "built-in extensions›Array.prototype methods›Array.prototype.find": true, + "built-in extensions›Array.prototype methods›Array.prototype.findIndex": true, + "built-in extensions›Array.prototype methods›Array.prototype.fill": true, + "built-in extensions›Array.prototype methods›Array.prototype.keys": true, + "built-in extensions›Array.prototype methods›Array.prototype.values": true, + "built-in extensions›Array.prototype methods›Array.prototype.entries": true, + "built-in extensions›Array.prototype methods›Array.prototype.splice": true, + "built-in extensions›Array.prototype methods›Array.prototype[Symbol.iterator]": true, + "built-in extensions›Array.prototype methods›Array iterator prototype chain": true, + "built-in extensions›Array.prototype methods›Array.prototype[Symbol.unscopables]": true, + "built-in extensions›Number properties›Number.isFinite": true, + "built-in extensions›Number properties›Number.isInteger": true, + "built-in extensions›Number properties›Number.isSafeInteger": true, + "built-in extensions›Number properties›Number.isNaN": true, + "built-in extensions›Number properties›Number.parseFloat": true, + "built-in extensions›Number properties›Number.parseInt": true, + "built-in extensions›Number properties›Number.EPSILON": true, + "built-in extensions›Number properties›Number.MIN_SAFE_INTEGER": true, + "built-in extensions›Number properties›Number.MAX_SAFE_INTEGER": true, + "built-in extensions›Math methods›Math.clz32": true, + "built-in extensions›Math methods›Math.imul": true, + "built-in extensions›Math methods›Math.sign": true, + "built-in extensions›Math methods›Math.log10": true, + "built-in extensions›Math methods›Math.log2": true, + "built-in extensions›Math methods›Math.log1p": true, + "built-in extensions›Math methods›Math.expm1": true, + "built-in extensions›Math methods›Math.cosh": true, + "built-in extensions›Math methods›Math.sinh": true, + "built-in extensions›Math methods›Math.tanh": true, + "built-in extensions›Math methods›Math.acosh": true, + "built-in extensions›Math methods›Math.asinh": true, + "built-in extensions›Math methods›Math.atanh": true, + "built-in extensions›Math methods›Math.trunc": true, + "built-in extensions›Math methods›Math.fround": true, + "built-in extensions›Math methods›Math.cbrt": true, + "built-in extensions›Math methods›Math.hypot": true, + "built-in extensions›Date.prototype[Symbol.toPrimitive]": true, + "subclassing›Array is subclassable›length property (accessing)": true, + "subclassing›Array is subclassable›length property (setting)": true, + "subclassing›Array is subclassable›correct prototype chain": true, + "subclassing›Array is subclassable›Array.isArray support": true, + "subclassing›Array is subclassable›Array.prototype.concat": true, + "subclassing›Array is subclassable›Array.prototype.filter": true, + "subclassing›Array is subclassable›Array.prototype.map": true, + "subclassing›Array is subclassable›Array.prototype.slice": true, + "subclassing›Array is subclassable›Array.prototype.splice": true, + "subclassing›Array is subclassable›Array.from": true, + "subclassing›Array is subclassable›Array.of": true, + "subclassing›RegExp is subclassable›basic functionality": true, + "subclassing›RegExp is subclassable›correct prototype chain": true, + "subclassing›RegExp is subclassable›RegExp.prototype.exec": true, + "subclassing›RegExp is subclassable›RegExp.prototype.test": true, + "subclassing›Function is subclassable›can be called": true, + "subclassing›Function is subclassable›correct prototype chain": true, + "subclassing›Function is subclassable›can be used with \"new\"": true, + "subclassing›Function is subclassable›Function.prototype.call": true, + "subclassing›Function is subclassable›Function.prototype.apply": true, + "subclassing›Function is subclassable›Function.prototype.bind": true, + "subclassing›Promise is subclassable›basic functionality": true, + "subclassing›Promise is subclassable›correct prototype chain": true, + "subclassing›Promise is subclassable›Promise.all": true, + "subclassing›Promise is subclassable›Promise.race": true, + "subclassing›miscellaneous subclassables›Boolean is subclassable": true, + "subclassing›miscellaneous subclassables›Number is subclassable": true, + "subclassing›miscellaneous subclassables›String is subclassable": true, + "subclassing›miscellaneous subclassables›Error is subclassable": true, + "subclassing›miscellaneous subclassables›Map is subclassable": true, + "subclassing›miscellaneous subclassables›Set is subclassable": true, + "misc›prototype of bound functions›basic functions": true, + "misc›prototype of bound functions›generator functions": true, + "misc›prototype of bound functions›arrow functions": true, + "misc›prototype of bound functions›classes": true, + "misc›prototype of bound functions›subclasses": true, + "misc›Proxy, internal 'get' calls›ToPrimitive": true, + "misc›Proxy, internal 'get' calls›CreateListFromArrayLike": true, + "misc›Proxy, internal 'get' calls›instanceof operator": true, + "misc›Proxy, internal 'get' calls›HasBinding": true, + "misc›Proxy, internal 'get' calls›CreateDynamicFunction": true, + "misc›Proxy, internal 'get' calls›ClassDefinitionEvaluation": true, + "misc›Proxy, internal 'get' calls›IteratorComplete, IteratorValue": true, + "misc›Proxy, internal 'get' calls›ToPropertyDescriptor": true, + "misc›Proxy, internal 'get' calls›Object.assign": true, + "misc›Proxy, internal 'get' calls›Object.defineProperties": true, + "misc›Proxy, internal 'get' calls›Function.prototype.bind": true, + "misc›Proxy, internal 'get' calls›Error.prototype.toString": true, + "misc›Proxy, internal 'get' calls›String.raw": true, + "misc›Proxy, internal 'get' calls›RegExp constructor": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype.flags": false, + "misc›Proxy, internal 'get' calls›RegExp.prototype.test": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype.toString": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.match]": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.replace]": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.search]": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.split]": true, + "misc›Proxy, internal 'get' calls›Array.from": true, + "misc›Proxy, internal 'get' calls›Array.prototype.concat": true, + "misc›Proxy, internal 'get' calls›Array.prototype iteration methods": true, + "misc›Proxy, internal 'get' calls›Array.prototype.pop": true, + "misc›Proxy, internal 'get' calls›Array.prototype.reverse": true, + "misc›Proxy, internal 'get' calls›Array.prototype.shift": true, + "misc›Proxy, internal 'get' calls›Array.prototype.splice": true, + "misc›Proxy, internal 'get' calls›Array.prototype.toString": true, + "misc›Proxy, internal 'get' calls›JSON.stringify": true, + "misc›Proxy, internal 'get' calls›Promise resolve functions": true, + "misc›Proxy, internal 'get' calls›String.prototype.match": true, + "misc›Proxy, internal 'get' calls›String.prototype.replace": true, + "misc›Proxy, internal 'get' calls›String.prototype.search": true, + "misc›Proxy, internal 'get' calls›String.prototype.split": true, + "misc›Proxy, internal 'get' calls›Date.prototype.toJSON": true, + "misc›Proxy, internal 'set' calls›Object.assign": true, + "misc›Proxy, internal 'set' calls›Array.from": true, + "misc›Proxy, internal 'set' calls›Array.of": true, + "misc›Proxy, internal 'set' calls›Array.prototype.copyWithin": true, + "misc›Proxy, internal 'set' calls›Array.prototype.fill": true, + "misc›Proxy, internal 'set' calls›Array.prototype.pop": true, + "misc›Proxy, internal 'set' calls›Array.prototype.push": true, + "misc›Proxy, internal 'set' calls›Array.prototype.reverse": true, + "misc›Proxy, internal 'set' calls›Array.prototype.shift": true, + "misc›Proxy, internal 'set' calls›Array.prototype.splice": true, + "misc›Proxy, internal 'set' calls›Array.prototype.unshift": true, + "misc›Proxy, internal 'defineProperty' calls›[[Set]]": true, + "misc›Proxy, internal 'defineProperty' calls›SetIntegrityLevel": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.copyWithin": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.pop": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.reverse": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.shift": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.splice": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.unshift": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›[[Set]]": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›Object.assign": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›Object.prototype.hasOwnProperty": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›Function.prototype.bind": true, + "misc›Proxy, internal 'ownKeys' calls›SetIntegrityLevel": true, + "misc›Proxy, internal 'ownKeys' calls›TestIntegrityLevel": true, + "misc›Proxy, internal 'ownKeys' calls›SerializeJSONObject": true, + "misc›Object static methods accept primitives›Object.getPrototypeOf": true, + "misc›Object static methods accept primitives›Object.getOwnPropertyDescriptor": true, + "misc›Object static methods accept primitives›Object.getOwnPropertyNames": true, + "misc›Object static methods accept primitives›Object.seal": true, + "misc›Object static methods accept primitives›Object.freeze": true, + "misc›Object static methods accept primitives›Object.preventExtensions": true, + "misc›Object static methods accept primitives›Object.isSealed": true, + "misc›Object static methods accept primitives›Object.isFrozen": true, + "misc›Object static methods accept primitives›Object.isExtensible": true, + "misc›Object static methods accept primitives›Object.keys": true, + "misc›own property order›Object.keys": true, + "misc›own property order›Object.getOwnPropertyNames": true, + "misc›own property order›Object.assign": true, + "misc›own property order›JSON.stringify": true, + "misc›own property order›JSON.parse": true, + "misc›own property order›Reflect.ownKeys, string key order": true, + "misc›own property order›Reflect.ownKeys, symbol key order": true, + "misc›Updated identifier syntax›var ⸯ;": true, + "misc›Updated identifier syntax›var 𐋀;": true, + "misc›Updated identifier syntax›no escaped reserved words as identifiers": true, + "misc›miscellaneous›duplicate property names in strict mode": true, + "misc›miscellaneous›no semicolon needed after do-while": true, + "misc›miscellaneous›no assignments allowed in for-in head in strict mode": true, + "misc›miscellaneous›accessors aren't constructors": true, + "misc›miscellaneous›Invalid Date": true, + "misc›miscellaneous›RegExp constructor can alter flags": true, + "misc›miscellaneous›RegExp.prototype.toString generic and uses \"flags\" property": true, + "misc›miscellaneous›built-in prototypes are not instances": true, + "misc›miscellaneous›function 'length' is configurable": true, + "annex b›non-strict function semantics›hoisted block-level function declaration": true, + "annex b›non-strict function semantics›labeled function statements": true, + "annex b›non-strict function semantics›function statements in if-statement clauses": true, + "annex b›__proto__ in object literals›basic support": true, + "annex b›__proto__ in object literals›multiple __proto__ is an error": true, + "annex b›__proto__ in object literals›not a computed property": true, + "annex b›__proto__ in object literals›not a shorthand property": true, + "annex b›__proto__ in object literals›not a shorthand method": true, + "annex b›Object.prototype.__proto__›get prototype": true, + "annex b›Object.prototype.__proto__›set prototype": true, + "annex b›Object.prototype.__proto__›absent from Object.create(null)": true, + "annex b›Object.prototype.__proto__›present in hasOwnProperty()": true, + "annex b›Object.prototype.__proto__›correct property descriptor": true, + "annex b›Object.prototype.__proto__›present in Object.getOwnPropertyNames()": true, + "annex b›String.prototype HTML methods›existence": true, + "annex b›String.prototype HTML methods›tags' names are lowercase": true, + "annex b›String.prototype HTML methods›quotes in arguments are escaped": true, + "annex b›RegExp.prototype.compile›basic functionality": true, + "annex b›RegExp.prototype.compile›returns this": true, + "annex b›RegExp syntax extensions›hyphens in character sets": true, + "annex b›RegExp syntax extensions›invalid character escapes": true, + "annex b›RegExp syntax extensions›invalid control-character escapes": true, + "annex b›RegExp syntax extensions›invalid Unicode escapes": true, + "annex b›RegExp syntax extensions›invalid hexadecimal escapes": true, + "annex b›RegExp syntax extensions›incomplete patterns and quantifiers": true, + "annex b›RegExp syntax extensions›octal escape sequences": true, + "annex b›RegExp syntax extensions›invalid backreferences become octal escapes": true, + "annex b›HTML-style comments": true + } +} \ No newline at end of file diff --git a/results/v8/18.20.5.json b/results/v8/18.20.5.json new file mode 100644 index 000000000..483dab01c --- /dev/null +++ b/results/v8/18.20.5.json @@ -0,0 +1,1044 @@ +{ + "_version": "18.20.5", + "_engine": "v8 10.2.154.26-node.37", + "ESNEXT": { + "_successful": 2, + "_count": 36, + "_percent": 0.05555555555555555, + "Stage 3›Class and Property Decorators›class decorators": "Invalid or unexpected token", + "Stage 3›Legacy RegExp features in JavaScript›RegExp \"lastMatch\"": true, + "Stage 3›Legacy RegExp features in JavaScript›RegExp.$1-$9": true, + "Stage 3›RegExp Escaping": "RegExp.escape is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.toBase64()": "arr.toBase64 is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.fromBase64()": "Uint8Array.fromBase64 is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.setFromBase64()": "arr2.setFromBase64 is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.toHex()": "arr.toHex is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.fromHex()": "Uint8Array.fromHex is not a function", + "Stage 3›Uint8Array to/from base64 and hex›Uint8Array.setFromHex()": "arr2.setFromHex is not a function", + "Stage 2.7›ShadowRealm": false, + "Stage 2›Generator function.sent Meta Property": "Unexpected token '.'", + "Stage 2›throw expressions›logical": "Unexpected token 'throw'", + "Stage 2›throw expressions›parameter initializers": "Unexpected token 'throw'", + "Stage 2›throw expressions›arrow function bodies": "Unexpected token 'throw'", + "Stage 2›throw expressions›conditionals": "Unexpected token 'throw'", + "Stage 2›Map.prototype.upsert›Map.prototype.upsert": "map.upsert is not a function", + "Stage 2›Map.prototype.upsert›WeakMap.prototype.upsert": "map.upsert is not a function", + "Stage 2›Array.isTemplateObject": "Array.isTemplateObject is not a function", + "Stage 2›Async Iterator Helpers›instanceof AsyncIterator": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›extends AsyncIterator": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.from, async iterable": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.from, iterable": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.from, iterator": "AsyncIterator is not defined", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.drop": "(intermediate value)(...).drop is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.every": "(intermediate value)(...).every is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.filter": "(intermediate value)(...).filter is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.find": "(intermediate value)(...).find is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.flatMap": "(intermediate value)(...).flatMap is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.forEach": "(intermediate value)(...).forEach is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.map": "(intermediate value)(...).map is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.reduce": "(intermediate value)(...).reduce is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.some": "(intermediate value)(...).some is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.take": "(intermediate value)(...).take is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype.toArray": "(intermediate value)(...).toArray is not a function", + "Stage 2›Async Iterator Helpers›AsyncIterator.prototype[@@toStringTag]": "AsyncIterator is not defined" + }, + "ES2025": { + "_successful": 0, + "_count": 28, + "_percent": 0, + "features›Duplicate named capturing groups": "Invalid regular expression: /(?[0-9]{4})-[0-9]{2}|[0-9]{2}-(?[0-9]{4})/: Duplicate capture group name", + "features›Set methods›Set.prototype.intersection()": "(intermediate value).intersection is not a function", + "features›Set methods›Set.prototype.union()": "(intermediate value).union is not a function", + "features›Set methods›Set.prototype.difference()": "(intermediate value).difference is not a function", + "features›Set methods›Set.prototype.symmetricDifference()": "(intermediate value).symmetricDifference is not a function", + "features›Set methods›Set.prototype.isDisjointFrom()": "(intermediate value).isDisjointFrom is not a function", + "features›Set methods›Set.prototype.isSubsetOf()": "(intermediate value).isSubsetOf is not a function", + "features›Set methods›Set.prototype.isSupersetOf()": "(intermediate value).isSupersetOf is not a function", + "features›RegExp Pattern Modifiers›i flag": "Invalid regular expression: /^[a-z](?-i:[a-z])$/: Invalid group", + "features›RegExp Pattern Modifiers›m flag": "Invalid regular expression: /^a|(?m:^b)/: Invalid group", + "features›RegExp Pattern Modifiers›s flag": "Invalid regular expression: /.(?-s:.)/: Invalid group", + "features›Iterator Helpers›instanceof Iterator": "Iterator is not defined", + "features›Iterator Helpers›extends Iterator": "Iterator is not defined", + "features›Iterator Helpers›Iterator.from, iterable": "Iterator is not defined", + "features›Iterator Helpers›Iterator.from, iterator": "Iterator is not defined", + "features›Iterator Helpers›Iterator.prototype.drop": "[1,2,3].values(...).drop is not a function", + "features›Iterator Helpers›Iterator.prototype.every": "[1,2,3].values(...).every is not a function", + "features›Iterator Helpers›Iterator.prototype.filter": "[1,2,3].values(...).filter is not a function", + "features›Iterator Helpers›Iterator.prototype.find": "[1,2,3].values(...).find is not a function", + "features›Iterator Helpers›Iterator.prototype.flatMap": "[1,2,3].values(...).flatMap is not a function", + "features›Iterator Helpers›Iterator.prototype.forEach": "[1,2,3].values(...).forEach is not a function", + "features›Iterator Helpers›Iterator.prototype.map": "[1,2,3].values(...).map is not a function", + "features›Iterator Helpers›Iterator.prototype.reduce": "[1,2,3].values(...).reduce is not a function", + "features›Iterator Helpers›Iterator.prototype.some": "[1,2,3].values(...).some is not a function", + "features›Iterator Helpers›Iterator.prototype.take": "[1,2,3].values(...).take is not a function", + "features›Iterator Helpers›Iterator.prototype.toArray": "[1,2,3].values(...).toArray is not a function", + "features›Iterator Helpers›Iterator.prototype[@@toStringTag]": "Iterator is not defined", + "features›Promise.try": "Promise.try is not a function" + }, + "ES2024": { + "_successful": 0, + "_count": 12, + "_percent": 0, + "features›RegExp `v` flag›set notations": "Invalid regular expression flags", + "features›RegExp `v` flag›properties of Strings": "Invalid regular expression flags", + "features›RegExp `v` flag›constructor supports it": "Invalid flags supplied to RegExp constructor 'v'", + "features›RegExp `v` flag›shows up in flags": false, + "features›RegExp `v` flag›Unicode 15.1": "Invalid regular expression flags", + "features›RegExp `v` flag›Unicode 16.0": "Invalid regular expression flags", + "features›ArrayBuffer.prototype.transfer›ArrayBuffer.prototype.transfer()": "buffer1.transfer is not a function", + "features›ArrayBuffer.prototype.transfer›ArrayBuffer.prototype.transferToFixedLength()": "buffer1.transferToFixedLength is not a function", + "features›ArrayBuffer.prototype.transfer›ArrayBuffer.prototype.detached": "buffer1.transfer is not a function", + "features›Promise.withResolvers": "Promise.withResolvers is not a function", + "features›Array Grouping›Object.groupBy()": "Object.groupBy is not a function", + "features›Array Grouping›Map.groupBy()": "Map.groupBy is not a function" + }, + "ES2023": { + "_successful": 3, + "_count": 10, + "_percent": 0.3, + "features›Array find from last›Array.prototype.findLast": true, + "features›Array find from last›Array.prototype.findLastIndex": true, + "features›Hashbang Grammar": true, + "features›Change Array by copy›Array.prototype.toReversed()": "arr.toReversed is not a function", + "features›Change Array by copy›Array.prototype.toSorted()": "arr.toSorted is not a function", + "features›Change Array by copy›Array.prototype.toSpliced()": "arr.toSpliced is not a function", + "features›Change Array by copy›Array.prototype.with()": "arr.with is not a function", + "features›Change Array by copy›TypedArray.prototype.toReversed()": "arr.toReversed is not a function", + "features›Change Array by copy›TypedArray.prototype.toSorted()": "arr.toSorted is not a function", + "features›Change Array by copy›TypedArray.prototype.with()": "arr.with is not a function" + }, + "ES2022": { + "_successful": 39, + "_count": 40, + "_percent": 0.975, + "features›instance class fields›public instance class fields": true, + "features›instance class fields›private instance class fields basic support": true, + "features›instance class fields›private instance class fields initializers": true, + "features›instance class fields›optional private instance class fields access": true, + "features›instance class fields›optional deep private instance class fields access": true, + "features›instance class fields›computed instance class fields": true, + "features›instance class fields›resolving identifier in parent scope": true, + "features›static class fields›public static class fields": true, + "features›static class fields›static class fields use [[Define]]": true, + "features›static class fields›private static class fields": true, + "features›static class fields›computed static class fields": true, + "features›private class methods›private instance methods": true, + "features›private class methods›private static methods": true, + "features›private class methods›private accessor properties": true, + "features›private class methods›private static accessor properties": true, + "features›Ergonomic brand checks for private fields": true, + "features›.at() method on the built-in indexables›Array.prototype.at()": true, + "features›.at() method on the built-in indexables›String.prototype.at()": true, + "features›.at() method on the built-in indexables›%TypedArray%.prototype.at()": true, + "features›Object.hasOwn›Basic functionality": true, + "features›Object.hasOwn›ToObject called before ToPropertyKey": true, + "features›Class static initialization blocks": true, + "features›Error.cause property›Error has cause": true, + "features›Error.cause property›Error.prototype lacks cause": true, + "features›Error.cause property›EvalError has cause": true, + "features›Error.cause property›EvalError.prototype lacks cause": true, + "features›Error.cause property›RangeError has cause": true, + "features›Error.cause property›RangeError.prototype lacks cause": true, + "features›Error.cause property›ReferenceError has cause": true, + "features›Error.cause property›ReferenceError.prototype lacks cause": true, + "features›Error.cause property›SyntaxError has cause": true, + "features›Error.cause property›SyntaxError.prototype lacks cause": true, + "features›Error.cause property›TypeError has cause": true, + "features›Error.cause property›TypeError.prototype lacks cause": true, + "features›Error.cause property›URIError has cause": true, + "features›Error.cause property›URIError.prototype lacks cause": true, + "features›Error.cause property›AggregateError has cause": true, + "features›Error.cause property›AggregateError.prototype lacks cause": true, + "features›RegExp Match Indices (`hasIndices` / `d` flag)›constructor supports it": true, + "features›RegExp Match Indices (`hasIndices` / `d` flag)›shows up in flags": false + }, + "ES2021": { + "_successful": 15, + "_count": 15, + "_percent": 1, + "features›String.prototype.replaceAll": true, + "features›Promise.any›fulfillment": true, + "features›Promise.any›AggregateError": true, + "features›WeakReferences›WeakRef minimal support": true, + "features›WeakReferences›FinalizationRegistry minimal support": true, + "features›Logical Assignment›||= basic support": true, + "features›Logical Assignment›||= short-circuiting behaviour": true, + "features›Logical Assignment›||= setter not unecessarily invoked": true, + "features›Logical Assignment›&&= basic support": true, + "features›Logical Assignment›&&= short-circuiting behaviour": true, + "features›Logical Assignment›&&= setter not unecessarily invoked": true, + "features›Logical Assignment›??= basic support": true, + "features›Logical Assignment›??= short-circuiting behaviour": true, + "features›Logical Assignment›??= setter not unecessarily invoked": true, + "features›numeric separators": true + }, + "ES2020": { + "_successful": 19, + "_count": 19, + "_percent": 1, + "features›String.prototype.matchAll›basic functionality": true, + "features›String.prototype.matchAll›throws on non-global regex": true, + "features›BigInt›basic functionality": true, + "features›BigInt›constructor": true, + "features›BigInt›BigInt.asUintN": true, + "features›BigInt›BigInt.asIntN": true, + "features›BigInt›BigInt64Array": true, + "features›BigInt›BigUint64Array": true, + "features›BigInt›DataView.prototype.getBigInt64": true, + "features›BigInt›DataView.prototype.getBigUint64": true, + "features›Promise.allSettled": true, + "features›globalThis›\"globalThis\" global property is global object": true, + "features›globalThis›\"globalThis\" global property has correct property descriptor": true, + "features›optional chaining operator (?.)›optional property access": true, + "features›optional chaining operator (?.)›optional bracket access": true, + "features›optional chaining operator (?.)›optional method call": true, + "features›optional chaining operator (?.)›optional function call": true, + "features›optional chaining operator (?.)›spread parameters after optional chaining": true, + "features›nullish coalescing operator (??)": true + }, + "ES2019": { + "_successful": 23, + "_count": 24, + "_percent": 0.9583333333333334, + "features›Symbol.prototype.description›basic": true, + "features›Symbol.prototype.description›empty description": true, + "features›Symbol.prototype.description›undefined description": true, + "features›Object.fromEntries": true, + "features›string trimming›String.prototype.trimLeft": true, + "features›string trimming›String.prototype.trimRight": true, + "features›string trimming›String.prototype.trimStart": true, + "features›string trimming›String.prototype.trimEnd": true, + "features›Array.prototype.{flat, flatMap}›Array.prototype.flat": true, + "features›Array.prototype.{flat, flatMap}›Array.prototype.flatMap": true, + "features›Array.prototype.{flat, flatMap}›flat and flatMap in Array.prototype[@@unscopables]": true, + "misc›optional catch binding›basic": true, + "misc›optional catch binding›await": true, + "misc›optional catch binding›yield": true, + "misc›Function.prototype.toString revision›functions created with the Function constructor": "Unexpected string", + "misc›Function.prototype.toString revision›arrows": true, + "misc›Function.prototype.toString revision›[native code]": true, + "misc›Function.prototype.toString revision›class expression with implicit constructor": true, + "misc›Function.prototype.toString revision›class expression with explicit constructor": true, + "misc›Function.prototype.toString revision›unicode escape sequences in identifiers": true, + "misc›Function.prototype.toString revision›methods and computed property names": true, + "misc›JSON superset›LINE SEPARATOR can appear in string literals": true, + "misc›JSON superset›PARAGRAPH SEPARATOR can appear in string literals": true, + "misc›Well-formed JSON.stringify": true + }, + "ES2018": { + "_successful": 20, + "_count": 21, + "_percent": 0.9523809523809523, + "features›object rest/spread properties›object rest properties": true, + "features›object rest/spread properties›object spread properties": true, + "features›Promise.prototype.finally›basic support": true, + "features›Promise.prototype.finally›don't change resolution value": true, + "features›Promise.prototype.finally›change rejection value": true, + "features›s (dotAll) flag for regular expressions": true, + "features›RegExp named capture groups": true, + "features›RegExp Lookbehind Assertions": true, + "features›RegExp Unicode Property Escapes›basic": true, + "features›RegExp Unicode Property Escapes›Unicode 11": true, + "features›RegExp Unicode Property Escapes›Unicode 12": true, + "features›RegExp Unicode Property Escapes›Unicode 12.1": true, + "features›RegExp Unicode Property Escapes›Unicode 13": true, + "features›RegExp Unicode Property Escapes›Unicode 14": true, + "features›RegExp Unicode Property Escapes›Unicode 15": true, + "features›RegExp Unicode Property Escapes›Unicode 15.1": true, + "features›RegExp Unicode Property Escapes›Unicode 16.0": "Invalid regular expression: /\\p{Script=Todhri}/: Invalid property name", + "features›Asynchronous Iterators›async generators": true, + "features›Asynchronous Iterators›for-await-of loops": true, + "misc›Proxy \"ownKeys\" handler, duplicate keys for non-extensible targets": true, + "misc›template literal revision": true + }, + "ES2017": { + "_successful": 64, + "_count": 64, + "_percent": 1, + "features›Object static methods›Object.values": true, + "features›Object static methods›Object.entries": true, + "features›Object static methods›Object.getOwnPropertyDescriptors": true, + "features›Object static methods›Object.getOwnPropertyDescriptors doesn't provide undefined descriptors": true, + "features›String padding›String.prototype.padStart": true, + "features›String padding›String.prototype.padEnd": true, + "features›trailing commas in function syntax›in parameter lists": true, + "features›trailing commas in function syntax›in argument lists": true, + "features›async functions›return": true, + "features›async functions›throw": true, + "features›async functions›no line break between async and function": true, + "features›async functions›no \"prototype\" property": true, + "features›async functions›await": true, + "features›async functions›await, rejection": true, + "features›async functions›must await a value": true, + "features›async functions›can await non-Promise values": true, + "features›async functions›cannot await in parameters": true, + "features›async functions›async methods, object literals": true, + "features›async functions›async methods, classes": true, + "features›async functions›async arrow functions in methods, classes": true, + "features›async functions›async arrow functions": true, + "features›async functions›correct prototype chain": true, + "features›async functions›async function prototype, Symbol.toStringTag": true, + "features›async functions›async function constructor": true, + "features›shared memory and atomics›SharedArrayBuffer": true, + "features›shared memory and atomics›SharedArrayBuffer[Symbol.species]": true, + "features›shared memory and atomics›SharedArrayBuffer.prototype.byteLength": true, + "features›shared memory and atomics›SharedArrayBuffer.prototype.slice": true, + "features›shared memory and atomics›SharedArrayBuffer.prototype[Symbol.toStringTag]": true, + "features›shared memory and atomics›Atomics.add": true, + "features›shared memory and atomics›Atomics.and": true, + "features›shared memory and atomics›Atomics.compareExchange": true, + "features›shared memory and atomics›Atomics.exchange": true, + "features›shared memory and atomics›Atomics.wait": true, + "features›shared memory and atomics›Atomics.notify": true, + "features›shared memory and atomics›Atomics.isLockFree": true, + "features›shared memory and atomics›Atomics.load": true, + "features›shared memory and atomics›Atomics.or": true, + "features›shared memory and atomics›Atomics.store": true, + "features›shared memory and atomics›Atomics.sub": true, + "features›shared memory and atomics›Atomics.xor": true, + "misc›RegExp \"u\" flag, case folding": true, + "misc›arguments.caller removed": true, + "annex b›Object.prototype getter/setter methods›__defineGetter__": true, + "annex b›Object.prototype getter/setter methods›__defineGetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__defineGetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__defineSetter__": true, + "annex b›Object.prototype getter/setter methods›__defineSetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__defineSetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, prototype chain": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__lookupGetter__, data properties can shadow accessors": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, prototype chain": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, symbols": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, ToObject(this)": true, + "annex b›Object.prototype getter/setter methods›__lookupSetter__, data properties can shadow accessors": true, + "annex b›Proxy internal calls, getter/setter methods›__defineGetter__": true, + "annex b›Proxy internal calls, getter/setter methods›__defineSetter__": true, + "annex b›Proxy internal calls, getter/setter methods›__lookupGetter__": true, + "annex b›Proxy internal calls, getter/setter methods›__lookupSetter__": true, + "annex b›assignments allowed in for-in head in non-strict mode": true + }, + "ES2016": { + "_successful": 14, + "_count": 14, + "_percent": 1, + "features›exponentiation (**) operator›basic support": true, + "features›exponentiation (**) operator›assignment": true, + "features›exponentiation (**) operator›early syntax error for unary negation without parens": true, + "features›Array.prototype.includes›Array.prototype.includes": true, + "features›Array.prototype.includes›Array.prototype.includes handles sparse arrays": true, + "features›Array.prototype.includes›Array.prototype.includes is generic": true, + "features›Array.prototype.includes›%TypedArray%.prototype.includes": true, + "misc›generator functions can't be used with \"new\"": true, + "misc›generator throw() caught by inner generator": true, + "misc›strict fn w/ non-strict non-simple params is error": true, + "misc›nested rest destructuring, declarations": true, + "misc›nested rest destructuring, parameters": true, + "misc›Proxy, \"enumerate\" handler removed": true, + "misc›Proxy internal calls, Array.prototype.includes": true + }, + "ES2015": { + "_successful": 693, + "_count": 697, + "_percent": 0.994261119081779, + "optimisation›proper tail calls (tail call optimisation)›direct recursion": "Maximum call stack size exceeded", + "optimisation›proper tail calls (tail call optimisation)›mutual recursion": "Maximum call stack size exceeded", + "syntax›default function parameters›basic functionality": true, + "syntax›default function parameters›explicit undefined defers to the default": true, + "syntax›default function parameters›defaults can refer to previous params": true, + "syntax›default function parameters›arguments object interaction": true, + "syntax›default function parameters›temporal dead zone": true, + "syntax›default function parameters›separate scope": true, + "syntax›default function parameters›new Function() support": true, + "syntax›rest parameters›basic functionality": true, + "syntax›rest parameters›function 'length' property": true, + "syntax›rest parameters›arguments object interaction": true, + "syntax›rest parameters›can't be used in setters": true, + "syntax›rest parameters›new Function() support": true, + "syntax›spread syntax for iterable objects›with arrays, in function calls": true, + "syntax›spread syntax for iterable objects›with arrays, in array literals": true, + "syntax›spread syntax for iterable objects›with sparse arrays, in function calls": true, + "syntax›spread syntax for iterable objects›with sparse arrays, in array literals": true, + "syntax›spread syntax for iterable objects›with strings, in function calls": true, + "syntax›spread syntax for iterable objects›with strings, in array literals": true, + "syntax›spread syntax for iterable objects›with astral plane strings, in function calls": true, + "syntax›spread syntax for iterable objects›with astral plane strings, in array literals": true, + "syntax›spread syntax for iterable objects›with generator instances, in calls": true, + "syntax›spread syntax for iterable objects›with generator instances, in arrays": true, + "syntax›spread syntax for iterable objects›with generic iterables, in calls": true, + "syntax›spread syntax for iterable objects›with generic iterables, in arrays": true, + "syntax›spread syntax for iterable objects›with instances of iterables, in calls": true, + "syntax›spread syntax for iterable objects›with instances of iterables, in arrays": true, + "syntax›spread syntax for iterable objects›spreading non-iterables is a runtime error": true, + "syntax›object literal extensions›computed properties": true, + "syntax›object literal extensions›shorthand properties": true, + "syntax›object literal extensions›shorthand methods": true, + "syntax›object literal extensions›string-keyed shorthand methods": true, + "syntax›object literal extensions›computed shorthand methods": true, + "syntax›object literal extensions›computed accessors": true, + "syntax›for..of loops›with arrays": true, + "syntax›for..of loops›with sparse arrays": true, + "syntax›for..of loops›with strings": true, + "syntax›for..of loops›with astral plane strings": true, + "syntax›for..of loops›with generator instances": true, + "syntax›for..of loops›with generic iterables": true, + "syntax›for..of loops›with instances of generic iterables": true, + "syntax›for..of loops›iterator closing, break": true, + "syntax›for..of loops›iterator closing, throw": true, + "syntax›octal and binary literals›octal literals": true, + "syntax›octal and binary literals›binary literals": true, + "syntax›octal and binary literals›octal supported by Number()": true, + "syntax›octal and binary literals›binary supported by Number()": true, + "syntax›template literals›basic functionality": true, + "syntax›template literals›toString conversion": true, + "syntax›template literals›tagged template literals": true, + "syntax›template literals›passed array is frozen": true, + "syntax›template literals›line break normalisation": true, + "syntax›template literals›TemplateStrings call site caching": true, + "syntax›template literals›TemplateStrings permanent caching": true, + "syntax›RegExp \"y\" and \"u\" flags›\"y\" flag": true, + "syntax›RegExp \"y\" and \"u\" flags›\"y\" flag, lastIndex": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag, non-BMP Unicode characters": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag, Unicode code point escapes": true, + "syntax›RegExp \"y\" and \"u\" flags›\"u\" flag, case folding": true, + "syntax›destructuring, declarations›with arrays": true, + "syntax›destructuring, declarations›with sparse arrays": true, + "syntax›destructuring, declarations›with strings": true, + "syntax›destructuring, declarations›with astral plane strings": true, + "syntax›destructuring, declarations›with generator instances": true, + "syntax›destructuring, declarations›with generic iterables": true, + "syntax›destructuring, declarations›with instances of generic iterables": true, + "syntax›destructuring, declarations›iterator closing": true, + "syntax›destructuring, declarations›trailing commas in iterable patterns": true, + "syntax›destructuring, declarations›with objects": true, + "syntax›destructuring, declarations›object destructuring with primitives": true, + "syntax›destructuring, declarations›trailing commas in object patterns": true, + "syntax›destructuring, declarations›throws on null and undefined": true, + "syntax›destructuring, declarations›computed properties": true, + "syntax›destructuring, declarations›multiples in a single var statement": true, + "syntax›destructuring, declarations›nested": true, + "syntax›destructuring, declarations›in for-in loop heads": true, + "syntax›destructuring, declarations›in for-of loop heads": true, + "syntax›destructuring, declarations›in catch heads": true, + "syntax›destructuring, declarations›rest": true, + "syntax›destructuring, declarations›defaults": true, + "syntax›destructuring, declarations›defaults, let temporal dead zone": true, + "syntax›destructuring, assignment›with arrays": true, + "syntax›destructuring, assignment›with sparse arrays": true, + "syntax›destructuring, assignment›with strings": true, + "syntax›destructuring, assignment›with astral plane strings": true, + "syntax›destructuring, assignment›with generator instances": true, + "syntax›destructuring, assignment›with generic iterables": true, + "syntax›destructuring, assignment›with instances of generic iterables": true, + "syntax›destructuring, assignment›iterator closing": true, + "syntax›destructuring, assignment›iterable destructuring expression": true, + "syntax›destructuring, assignment›chained iterable destructuring": true, + "syntax›destructuring, assignment›trailing commas in iterable patterns": true, + "syntax›destructuring, assignment›with objects": true, + "syntax›destructuring, assignment›object destructuring with primitives": true, + "syntax›destructuring, assignment›trailing commas in object patterns": true, + "syntax›destructuring, assignment›object destructuring expression": true, + "syntax›destructuring, assignment›parenthesised left-hand-side is a syntax error": true, + "syntax›destructuring, assignment›chained object destructuring": true, + "syntax›destructuring, assignment›throws on null and undefined": true, + "syntax›destructuring, assignment›computed properties": true, + "syntax›destructuring, assignment›nested": true, + "syntax›destructuring, assignment›rest": true, + "syntax›destructuring, assignment›nested rest": true, + "syntax›destructuring, assignment›empty patterns": true, + "syntax›destructuring, assignment›defaults": true, + "syntax›destructuring, parameters›with arrays": true, + "syntax›destructuring, parameters›with sparse arrays": true, + "syntax›destructuring, parameters›with strings": true, + "syntax›destructuring, parameters›with astral plane strings": true, + "syntax›destructuring, parameters›with generator instances": true, + "syntax›destructuring, parameters›with generic iterables": true, + "syntax›destructuring, parameters›with instances of generic iterables": true, + "syntax›destructuring, parameters›iterator closing": true, + "syntax›destructuring, parameters›trailing commas in iterable patterns": true, + "syntax›destructuring, parameters›with objects": true, + "syntax›destructuring, parameters›object destructuring with primitives": true, + "syntax›destructuring, parameters›trailing commas in object patterns": true, + "syntax›destructuring, parameters›throws on null and undefined": true, + "syntax›destructuring, parameters›computed properties": true, + "syntax›destructuring, parameters›nested": true, + "syntax›destructuring, parameters›'arguments' interaction": true, + "syntax›destructuring, parameters›new Function() support": true, + "syntax›destructuring, parameters›in parameters, function 'length' property": true, + "syntax›destructuring, parameters›rest": true, + "syntax›destructuring, parameters›empty patterns": true, + "syntax›destructuring, parameters›defaults": true, + "syntax›destructuring, parameters›defaults, separate scope": true, + "syntax›destructuring, parameters›defaults, new Function() support": true, + "syntax›destructuring, parameters›aliased defaults, arrow function": true, + "syntax›destructuring, parameters›shorthand defaults, arrow function": true, + "syntax›destructuring, parameters›duplicate identifier": true, + "syntax›Unicode code point escapes›in strings": true, + "syntax›Unicode code point escapes›in identifiers": true, + "syntax›Unicode code point escapes›in property key definitions": true, + "syntax›Unicode code point escapes›in property key accesses": true, + "syntax›new.target›in constructors": true, + "syntax›new.target›assignment is an early error": true, + "bindings›const›basic support": true, + "bindings›const›is block-scoped": true, + "bindings›const›scope shadow resolution": true, + "bindings›const›cannot be in statements": true, + "bindings›const›redefining a const is an error": true, + "bindings›const›for loop statement scope": true, + "bindings›const›for-in loop iteration scope": true, + "bindings›const›for-of loop iteration scope": true, + "bindings›const›temporal dead zone": true, + "bindings›const›basic support (strict mode)": true, + "bindings›const›is block-scoped (strict mode)": true, + "bindings›const›scope shadow resolution (strict mode)": true, + "bindings›const›cannot be in statements (strict mode)": true, + "bindings›const›redefining a const (strict mode)": true, + "bindings›const›for loop statement scope (strict mode)": true, + "bindings›const›for-in loop iteration scope (strict mode)": true, + "bindings›const›for-of loop iteration scope (strict mode)": true, + "bindings›const›temporal dead zone (strict mode)": true, + "bindings›let›basic support": true, + "bindings›let›is block-scoped": true, + "bindings›let›scope shadow resolution": true, + "bindings›let›cannot be in statements": true, + "bindings›let›for loop statement scope": true, + "bindings›let›temporal dead zone": true, + "bindings›let›for/for-in loop iteration scope": true, + "bindings›let›for-in loop binding shadowing parameter": true, + "bindings›let›basic support (strict mode)": true, + "bindings›let›is block-scoped (strict mode)": true, + "bindings›let›scope shadow resolution (strict mode)": true, + "bindings›let›cannot be in statements (strict mode)": true, + "bindings›let›for loop statement scope (strict mode)": true, + "bindings›let›temporal dead zone (strict mode)": true, + "bindings›let›for/for-in loop iteration scope (strict mode)": true, + "bindings›let›for-in loop binding shadowing parameter (strict mode)": true, + "bindings›block-level function declaration": true, + "functions›arrow functions›0 parameters": true, + "functions›arrow functions›1 parameter, no brackets": true, + "functions›arrow functions›multiple parameters": true, + "functions›arrow functions›lexical \"this\" binding": true, + "functions›arrow functions›\"this\" unchanged by call or apply": true, + "functions›arrow functions›can't be bound, can be curried": true, + "functions›arrow functions›lexical \"arguments\" binding": true, + "functions›arrow functions›no line break between params and =>": true, + "functions›arrow functions›correct precedence": true, + "functions›arrow functions›no \"prototype\" property": true, + "functions›arrow functions›lexical \"super\" binding in constructors": true, + "functions›arrow functions›lexical \"super\" binding in methods": true, + "functions›arrow functions›lexical \"new.target\" binding": true, + "functions›class›class statement": true, + "functions›class›is block-scoped": true, + "functions›class›class expression": true, + "functions›class›anonymous class": true, + "functions›class›constructor": true, + "functions›class›prototype methods": true, + "functions›class›string-keyed methods": true, + "functions›class›computed prototype methods": true, + "functions›class›optional semicolons": true, + "functions›class›static methods": true, + "functions›class›computed static methods": true, + "functions›class›accessor properties": true, + "functions›class›computed accessor properties": true, + "functions›class›static accessor properties": true, + "functions›class›computed static accessor properties": true, + "functions›class›class name is lexically scoped": true, + "functions›class›computed names, temporal dead zone": true, + "functions›class›methods aren't enumerable": true, + "functions›class›implicit strict mode": true, + "functions›class›constructor requires new": true, + "functions›class›extends": true, + "functions›class›extends expressions": true, + "functions›class›extends null": true, + "functions›class›new.target": true, + "functions›super›statement in constructors": true, + "functions›super›expression in constructors": true, + "functions›super›in methods, property access": true, + "functions›super›in methods, method calls": true, + "functions›super›method calls use correct \"this\" binding": true, + "functions›super›constructor calls use correct \"new.target\" binding": true, + "functions›super›is statically bound": true, + "functions›super›super() invokes the correct constructor": true, + "functions›generators›basic functionality": true, + "functions›generators›generator function expressions": true, + "functions›generators›correct \"this\" binding": true, + "functions›generators›can't use \"this\" with new": true, + "functions›generators›sending": true, + "functions›generators›%GeneratorPrototype%": true, + "functions›generators›%GeneratorPrototype% prototype chain": true, + "functions›generators›%GeneratorPrototype%.constructor": true, + "functions›generators›%GeneratorPrototype%.throw": true, + "functions›generators›%GeneratorPrototype%.return": true, + "functions›generators›yield operator precedence": true, + "functions›generators›yield *, arrays": true, + "functions›generators›yield *, sparse arrays": true, + "functions›generators›yield *, strings": true, + "functions›generators›yield *, astral plane strings": true, + "functions›generators›yield *, generator instances": true, + "functions›generators›yield *, generic iterables": true, + "functions›generators›yield *, instances of iterables": true, + "functions›generators›yield * on non-iterables is a runtime error": true, + "functions›generators›yield *, iterator closing": true, + "functions›generators›yield *, iterator closing via throw()": true, + "functions›generators›shorthand generator methods": true, + "functions›generators›string-keyed shorthand generator methods": true, + "functions›generators›computed shorthand generators": true, + "functions›generators›shorthand generator methods, classes": true, + "functions›generators›computed shorthand generators, classes": true, + "functions›generators›shorthand generators can't be constructors": true, + "built-ins›typed arrays›Int8Array": true, + "built-ins›typed arrays›Uint8Array": true, + "built-ins›typed arrays›Uint8ClampedArray": true, + "built-ins›typed arrays›Int16Array": true, + "built-ins›typed arrays›Uint16Array": true, + "built-ins›typed arrays›Int32Array": true, + "built-ins›typed arrays›Uint32Array": true, + "built-ins›typed arrays›Float32Array": true, + "built-ins›typed arrays›Float64Array": true, + "built-ins›typed arrays›DataView (Int8)": true, + "built-ins›typed arrays›DataView (Uint8)": true, + "built-ins›typed arrays›DataView (Int16)": true, + "built-ins›typed arrays›DataView (Uint16)": true, + "built-ins›typed arrays›DataView (Int32)": true, + "built-ins›typed arrays›DataView (Uint32)": true, + "built-ins›typed arrays›DataView (Float32)": true, + "built-ins›typed arrays›DataView (Float64)": true, + "built-ins›typed arrays›ArrayBuffer[Symbol.species]": true, + "built-ins›typed arrays›constructors require new": true, + "built-ins›typed arrays›constructors accept generic iterables": true, + "built-ins›typed arrays›correct prototype chains": true, + "built-ins›typed arrays›%TypedArray%.from": true, + "built-ins›typed arrays›%TypedArray%.of": true, + "built-ins›typed arrays›%TypedArray%.prototype.subarray": true, + "built-ins›typed arrays›%TypedArray%.prototype.join": true, + "built-ins›typed arrays›%TypedArray%.prototype.indexOf": true, + "built-ins›typed arrays›%TypedArray%.prototype.lastIndexOf": true, + "built-ins›typed arrays›%TypedArray%.prototype.slice": true, + "built-ins›typed arrays›%TypedArray%.prototype.every": true, + "built-ins›typed arrays›%TypedArray%.prototype.filter": true, + "built-ins›typed arrays›%TypedArray%.prototype.forEach": true, + "built-ins›typed arrays›%TypedArray%.prototype.map": true, + "built-ins›typed arrays›%TypedArray%.prototype.reduce": true, + "built-ins›typed arrays›%TypedArray%.prototype.reduceRight": true, + "built-ins›typed arrays›%TypedArray%.prototype.reverse": true, + "built-ins›typed arrays›%TypedArray%.prototype.some": true, + "built-ins›typed arrays›%TypedArray%.prototype.sort": true, + "built-ins›typed arrays›%TypedArray%.prototype.copyWithin": true, + "built-ins›typed arrays›%TypedArray%.prototype.find": true, + "built-ins›typed arrays›%TypedArray%.prototype.findIndex": true, + "built-ins›typed arrays›%TypedArray%.prototype.fill": true, + "built-ins›typed arrays›%TypedArray%.prototype.keys": true, + "built-ins›typed arrays›%TypedArray%.prototype.values": true, + "built-ins›typed arrays›%TypedArray%.prototype.entries": true, + "built-ins›typed arrays›%TypedArray%.prototype[Symbol.iterator]": true, + "built-ins›typed arrays›%TypedArray%[Symbol.species]": true, + "built-ins›Map›basic functionality": true, + "built-ins›Map›constructor arguments": true, + "built-ins›Map›constructor requires new": true, + "built-ins›Map›constructor accepts null": true, + "built-ins›Map›constructor invokes set": true, + "built-ins›Map›iterator closing": true, + "built-ins›Map›Map.prototype.set returns this": true, + "built-ins›Map›-0 key converts to +0": true, + "built-ins›Map›Map.prototype.size": true, + "built-ins›Map›Map.prototype.delete": true, + "built-ins›Map›Map.prototype.clear": true, + "built-ins›Map›Map.prototype.forEach": true, + "built-ins›Map›Map.prototype.keys": true, + "built-ins›Map›Map.prototype.values": true, + "built-ins›Map›Map.prototype.entries": true, + "built-ins›Map›Map.prototype[Symbol.iterator]": true, + "built-ins›Map›Map.prototype isn't an instance": true, + "built-ins›Map›Map iterator prototype chain": true, + "built-ins›Map›Map[Symbol.species]": true, + "built-ins›Set›basic functionality": true, + "built-ins›Set›constructor arguments": true, + "built-ins›Set›constructor requires new": true, + "built-ins›Set›constructor accepts null": true, + "built-ins›Set›constructor invokes add": true, + "built-ins›Set›iterator closing": true, + "built-ins›Set›Set.prototype.add returns this": true, + "built-ins›Set›-0 key converts to +0": true, + "built-ins›Set›Set.prototype.size": true, + "built-ins›Set›Set.prototype.delete": true, + "built-ins›Set›Set.prototype.clear": true, + "built-ins›Set›Set.prototype.forEach": true, + "built-ins›Set›Set.prototype.keys": true, + "built-ins›Set›Set.prototype.values": true, + "built-ins›Set›Set.prototype.entries": true, + "built-ins›Set›Set.prototype[Symbol.iterator]": true, + "built-ins›Set›Set.prototype isn't an instance": true, + "built-ins›Set›Set iterator prototype chain": true, + "built-ins›Set›Set[Symbol.species]": true, + "built-ins›WeakMap›basic functionality": true, + "built-ins›WeakMap›constructor arguments": true, + "built-ins›WeakMap›constructor requires new": true, + "built-ins›WeakMap›constructor accepts null": true, + "built-ins›WeakMap›constructor invokes set": true, + "built-ins›WeakMap›frozen objects as keys": true, + "built-ins›WeakMap›iterator closing": true, + "built-ins›WeakMap›WeakMap.prototype.set returns this": true, + "built-ins›WeakMap›WeakMap.prototype.delete": true, + "built-ins›WeakMap›no WeakMap.prototype.clear method": true, + "built-ins›WeakMap›.has, .get and .delete methods accept primitives": true, + "built-ins›WeakMap›WeakMap.prototype isn't an instance": true, + "built-ins›WeakSet›basic functionality": true, + "built-ins›WeakSet›constructor arguments": true, + "built-ins›WeakSet›constructor requires new": true, + "built-ins›WeakSet›constructor accepts null": true, + "built-ins›WeakSet›constructor invokes add": true, + "built-ins›WeakSet›iterator closing": true, + "built-ins›WeakSet›WeakSet.prototype.add returns this": true, + "built-ins›WeakSet›WeakSet.prototype.delete": true, + "built-ins›WeakSet›no WeakSet.prototype.clear method": true, + "built-ins›WeakSet›.has and .delete methods accept primitives": true, + "built-ins›WeakSet›WeakSet.prototype isn't an instance": true, + "built-ins›Proxy›constructor requires new": true, + "built-ins›Proxy›no \"prototype\" property": true, + "built-ins›Proxy›\"get\" handler": true, + "built-ins›Proxy›\"get\" handler, instances of proxies": true, + "built-ins›Proxy›\"get\" handler invariants": true, + "built-ins›Proxy›\"set\" handler": true, + "built-ins›Proxy›\"set\" handler, instances of proxies": true, + "built-ins›Proxy›\"set\" handler invariants": true, + "built-ins›Proxy›\"has\" handler": true, + "built-ins›Proxy›\"has\" handler, instances of proxies": true, + "built-ins›Proxy›\"has\" handler invariants": true, + "built-ins›Proxy›\"deleteProperty\" handler": true, + "built-ins›Proxy›\"deleteProperty\" handler invariant": true, + "built-ins›Proxy›\"getOwnPropertyDescriptor\" handler": true, + "built-ins›Proxy›\"getOwnPropertyDescriptor\" handler invariants": true, + "built-ins›Proxy›\"defineProperty\" handler": true, + "built-ins›Proxy›\"defineProperty\" handler invariants": true, + "built-ins›Proxy›\"getPrototypeOf\" handler": true, + "built-ins›Proxy›\"getPrototypeOf\" handler invariant": true, + "built-ins›Proxy›\"setPrototypeOf\" handler": true, + "built-ins›Proxy›\"setPrototypeOf\" handler invariant": true, + "built-ins›Proxy›\"isExtensible\" handler": true, + "built-ins›Proxy›\"isExtensible\" handler invariant": true, + "built-ins›Proxy›\"preventExtensions\" handler": true, + "built-ins›Proxy›\"preventExtensions\" handler invariant": true, + "built-ins›Proxy›\"ownKeys\" handler": true, + "built-ins›Proxy›\"ownKeys\" handler invariant": true, + "built-ins›Proxy›\"apply\" handler": true, + "built-ins›Proxy›\"apply\" handler invariant": true, + "built-ins›Proxy›\"construct\" handler": true, + "built-ins›Proxy›\"construct\" handler invariants": true, + "built-ins›Proxy›Proxy.revocable": true, + "built-ins›Proxy›Array.isArray support": true, + "built-ins›Proxy›JSON.stringify support": true, + "built-ins›Reflect›Reflect.get": true, + "built-ins›Reflect›Reflect.set": true, + "built-ins›Reflect›Reflect.has": true, + "built-ins›Reflect›Reflect.deleteProperty": true, + "built-ins›Reflect›Reflect.getOwnPropertyDescriptor": true, + "built-ins›Reflect›Reflect.defineProperty": true, + "built-ins›Reflect›Reflect.getPrototypeOf": true, + "built-ins›Reflect›Reflect.setPrototypeOf": true, + "built-ins›Reflect›Reflect.isExtensible": true, + "built-ins›Reflect›Reflect.preventExtensions": true, + "built-ins›Reflect›Reflect.ownKeys, string keys": true, + "built-ins›Reflect›Reflect.ownKeys, symbol keys": true, + "built-ins›Reflect›Reflect.apply": true, + "built-ins›Reflect›Reflect.construct": true, + "built-ins›Reflect›Reflect.construct sets new.target meta-property": true, + "built-ins›Reflect›Reflect.construct creates instances from third argument": true, + "built-ins›Reflect›Reflect.construct, Array subclassing": true, + "built-ins›Reflect›Reflect.construct, RegExp subclassing": true, + "built-ins›Reflect›Reflect.construct, Function subclassing": true, + "built-ins›Reflect›Reflect.construct, Promise subclassing": true, + "built-ins›Promise›basic functionality": true, + "built-ins›Promise›constructor requires new": true, + "built-ins›Promise›Promise.prototype isn't an instance": true, + "built-ins›Promise›Promise.all": true, + "built-ins›Promise›Promise.all, generic iterables": true, + "built-ins›Promise›Promise.race": true, + "built-ins›Promise›Promise.race, generic iterables": true, + "built-ins›Promise›Promise[Symbol.species]": true, + "built-ins›Symbol›basic functionality": true, + "built-ins›Symbol›typeof support": true, + "built-ins›Symbol›symbol keys are hidden to pre-ES6 code": true, + "built-ins›Symbol›Object.defineProperty support": true, + "built-ins›Symbol›symbols inherit from Symbol.prototype": true, + "built-ins›Symbol›cannot coerce to string or number": true, + "built-ins›Symbol›can convert with String()": true, + "built-ins›Symbol›new Symbol() throws": true, + "built-ins›Symbol›Object(symbol)": true, + "built-ins›Symbol›JSON.stringify ignores symbol primitives": true, + "built-ins›Symbol›JSON.stringify ignores symbol objects": true, + "built-ins›Symbol›global symbol registry": true, + "built-ins›well-known symbols›Symbol.hasInstance": true, + "built-ins›well-known symbols›Symbol.isConcatSpreadable, non-spreadable array": true, + "built-ins›well-known symbols›Symbol.isConcatSpreadable, spreadable object with poisoned getter": false, + "built-ins›well-known symbols›Symbol.iterator, existence": true, + "built-ins›well-known symbols›Symbol.iterator, arguments object": true, + "built-ins›well-known symbols›Symbol.species, existence": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.concat": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.filter": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.map": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.slice": true, + "built-ins›well-known symbols›Symbol.species, Array.prototype.splice": true, + "built-ins›well-known symbols›Symbol.species, RegExp.prototype[Symbol.split]": true, + "built-ins›well-known symbols›Symbol.species, Promise.prototype.then": true, + "built-ins›well-known symbols›Symbol.replace": true, + "built-ins›well-known symbols›Symbol.search": true, + "built-ins›well-known symbols›Symbol.split": true, + "built-ins›well-known symbols›Symbol.match": true, + "built-ins›well-known symbols›Symbol.match, RegExp constructor": true, + "built-ins›well-known symbols›Symbol.match, String.prototype.startsWith": true, + "built-ins›well-known symbols›Symbol.match, String.prototype.endsWith": true, + "built-ins›well-known symbols›Symbol.match, String.prototype.includes": true, + "built-ins›well-known symbols›Symbol.toPrimitive": true, + "built-ins›well-known symbols›Symbol.toStringTag": true, + "built-ins›well-known symbols›Symbol.toStringTag affects existing built-ins": true, + "built-ins›well-known symbols›Symbol.toStringTag, new built-ins": true, + "built-ins›well-known symbols›Symbol.toStringTag, misc. built-ins": true, + "built-ins›well-known symbols›Symbol.unscopables": true, + "built-in extensions›Object static methods›Object.assign": true, + "built-in extensions›Object static methods›Object.is": true, + "built-in extensions›Object static methods›Object.getOwnPropertySymbols": true, + "built-in extensions›Object static methods›Object.setPrototypeOf": true, + "built-in extensions›function \"name\" property›function statements": true, + "built-in extensions›function \"name\" property›function expressions": true, + "built-in extensions›function \"name\" property›new Function": true, + "built-in extensions›function \"name\" property›bound functions": true, + "built-in extensions›function \"name\" property›variables (function)": true, + "built-in extensions›function \"name\" property›object methods (function)": true, + "built-in extensions›function \"name\" property›accessor properties": true, + "built-in extensions›function \"name\" property›shorthand methods": true, + "built-in extensions›function \"name\" property›shorthand methods (no lexical binding)": true, + "built-in extensions›function \"name\" property›symbol-keyed methods": true, + "built-in extensions›function \"name\" property›class statements": true, + "built-in extensions›function \"name\" property›class expressions": true, + "built-in extensions›function \"name\" property›variables (class)": true, + "built-in extensions›function \"name\" property›object methods (class)": true, + "built-in extensions›function \"name\" property›class prototype methods": true, + "built-in extensions›function \"name\" property›class static methods": true, + "built-in extensions›function \"name\" property›isn't writable, is configurable": true, + "built-in extensions›String static methods›String.raw": true, + "built-in extensions›String static methods›String.fromCodePoint": true, + "built-in extensions›String.prototype methods›String.prototype.codePointAt": true, + "built-in extensions›String.prototype methods›String.prototype.normalize": true, + "built-in extensions›String.prototype methods›String.prototype.repeat": true, + "built-in extensions›String.prototype methods›String.prototype.startsWith": true, + "built-in extensions›String.prototype methods›String.prototype.startsWith throws on RegExp": true, + "built-in extensions›String.prototype methods›String.prototype.endsWith": true, + "built-in extensions›String.prototype methods›String.prototype.endsWith throws on RegExp": true, + "built-in extensions›String.prototype methods›String.prototype.includes": true, + "built-in extensions›String.prototype methods›String.prototype[Symbol.iterator]": true, + "built-in extensions›String.prototype methods›String iterator prototype chain": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype.flags": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.match]": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.replace]": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.split]": true, + "built-in extensions›RegExp.prototype properties›RegExp.prototype[Symbol.search]": true, + "built-in extensions›RegExp.prototype properties›RegExp[Symbol.species]": true, + "built-in extensions›Array static methods›Array.from, array-like objects": true, + "built-in extensions›Array static methods›Array.from, generator instances": true, + "built-in extensions›Array static methods›Array.from, generic iterables": true, + "built-in extensions›Array static methods›Array.from, instances of generic iterables": true, + "built-in extensions›Array static methods›Array.from map function, array-like objects": true, + "built-in extensions›Array static methods›Array.from map function, generator instances": true, + "built-in extensions›Array static methods›Array.from map function, generic iterables": true, + "built-in extensions›Array static methods›Array.from map function, instances of iterables": true, + "built-in extensions›Array static methods›Array.from, iterator closing": true, + "built-in extensions›Array static methods›Array.of": true, + "built-in extensions›Array static methods›Array[Symbol.species]": true, + "built-in extensions›Array.prototype methods›Array.prototype.copyWithin": true, + "built-in extensions›Array.prototype methods›Array.prototype.find": true, + "built-in extensions›Array.prototype methods›Array.prototype.findIndex": true, + "built-in extensions›Array.prototype methods›Array.prototype.fill": true, + "built-in extensions›Array.prototype methods›Array.prototype.keys": true, + "built-in extensions›Array.prototype methods›Array.prototype.values": true, + "built-in extensions›Array.prototype methods›Array.prototype.entries": true, + "built-in extensions›Array.prototype methods›Array.prototype.splice": true, + "built-in extensions›Array.prototype methods›Array.prototype[Symbol.iterator]": true, + "built-in extensions›Array.prototype methods›Array iterator prototype chain": true, + "built-in extensions›Array.prototype methods›Array.prototype[Symbol.unscopables]": true, + "built-in extensions›Number properties›Number.isFinite": true, + "built-in extensions›Number properties›Number.isInteger": true, + "built-in extensions›Number properties›Number.isSafeInteger": true, + "built-in extensions›Number properties›Number.isNaN": true, + "built-in extensions›Number properties›Number.parseFloat": true, + "built-in extensions›Number properties›Number.parseInt": true, + "built-in extensions›Number properties›Number.EPSILON": true, + "built-in extensions›Number properties›Number.MIN_SAFE_INTEGER": true, + "built-in extensions›Number properties›Number.MAX_SAFE_INTEGER": true, + "built-in extensions›Math methods›Math.clz32": true, + "built-in extensions›Math methods›Math.imul": true, + "built-in extensions›Math methods›Math.sign": true, + "built-in extensions›Math methods›Math.log10": true, + "built-in extensions›Math methods›Math.log2": true, + "built-in extensions›Math methods›Math.log1p": true, + "built-in extensions›Math methods›Math.expm1": true, + "built-in extensions›Math methods›Math.cosh": true, + "built-in extensions›Math methods›Math.sinh": true, + "built-in extensions›Math methods›Math.tanh": true, + "built-in extensions›Math methods›Math.acosh": true, + "built-in extensions›Math methods›Math.asinh": true, + "built-in extensions›Math methods›Math.atanh": true, + "built-in extensions›Math methods›Math.trunc": true, + "built-in extensions›Math methods›Math.fround": true, + "built-in extensions›Math methods›Math.cbrt": true, + "built-in extensions›Math methods›Math.hypot": true, + "built-in extensions›Date.prototype[Symbol.toPrimitive]": true, + "subclassing›Array is subclassable›length property (accessing)": true, + "subclassing›Array is subclassable›length property (setting)": true, + "subclassing›Array is subclassable›correct prototype chain": true, + "subclassing›Array is subclassable›Array.isArray support": true, + "subclassing›Array is subclassable›Array.prototype.concat": true, + "subclassing›Array is subclassable›Array.prototype.filter": true, + "subclassing›Array is subclassable›Array.prototype.map": true, + "subclassing›Array is subclassable›Array.prototype.slice": true, + "subclassing›Array is subclassable›Array.prototype.splice": true, + "subclassing›Array is subclassable›Array.from": true, + "subclassing›Array is subclassable›Array.of": true, + "subclassing›RegExp is subclassable›basic functionality": true, + "subclassing›RegExp is subclassable›correct prototype chain": true, + "subclassing›RegExp is subclassable›RegExp.prototype.exec": true, + "subclassing›RegExp is subclassable›RegExp.prototype.test": true, + "subclassing›Function is subclassable›can be called": true, + "subclassing›Function is subclassable›correct prototype chain": true, + "subclassing›Function is subclassable›can be used with \"new\"": true, + "subclassing›Function is subclassable›Function.prototype.call": true, + "subclassing›Function is subclassable›Function.prototype.apply": true, + "subclassing›Function is subclassable›Function.prototype.bind": true, + "subclassing›Promise is subclassable›basic functionality": true, + "subclassing›Promise is subclassable›correct prototype chain": true, + "subclassing›Promise is subclassable›Promise.all": true, + "subclassing›Promise is subclassable›Promise.race": true, + "subclassing›miscellaneous subclassables›Boolean is subclassable": true, + "subclassing›miscellaneous subclassables›Number is subclassable": true, + "subclassing›miscellaneous subclassables›String is subclassable": true, + "subclassing›miscellaneous subclassables›Error is subclassable": true, + "subclassing›miscellaneous subclassables›Map is subclassable": true, + "subclassing›miscellaneous subclassables›Set is subclassable": true, + "misc›prototype of bound functions›basic functions": true, + "misc›prototype of bound functions›generator functions": true, + "misc›prototype of bound functions›arrow functions": true, + "misc›prototype of bound functions›classes": true, + "misc›prototype of bound functions›subclasses": true, + "misc›Proxy, internal 'get' calls›ToPrimitive": true, + "misc›Proxy, internal 'get' calls›CreateListFromArrayLike": true, + "misc›Proxy, internal 'get' calls›instanceof operator": true, + "misc›Proxy, internal 'get' calls›HasBinding": true, + "misc›Proxy, internal 'get' calls›CreateDynamicFunction": true, + "misc›Proxy, internal 'get' calls›ClassDefinitionEvaluation": true, + "misc›Proxy, internal 'get' calls›IteratorComplete, IteratorValue": true, + "misc›Proxy, internal 'get' calls›ToPropertyDescriptor": true, + "misc›Proxy, internal 'get' calls›Object.assign": true, + "misc›Proxy, internal 'get' calls›Object.defineProperties": true, + "misc›Proxy, internal 'get' calls›Function.prototype.bind": true, + "misc›Proxy, internal 'get' calls›Error.prototype.toString": true, + "misc›Proxy, internal 'get' calls›String.raw": true, + "misc›Proxy, internal 'get' calls›RegExp constructor": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype.flags": false, + "misc›Proxy, internal 'get' calls›RegExp.prototype.test": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype.toString": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.match]": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.replace]": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.search]": true, + "misc›Proxy, internal 'get' calls›RegExp.prototype[Symbol.split]": true, + "misc›Proxy, internal 'get' calls›Array.from": true, + "misc›Proxy, internal 'get' calls›Array.prototype.concat": true, + "misc›Proxy, internal 'get' calls›Array.prototype iteration methods": true, + "misc›Proxy, internal 'get' calls›Array.prototype.pop": true, + "misc›Proxy, internal 'get' calls›Array.prototype.reverse": true, + "misc›Proxy, internal 'get' calls›Array.prototype.shift": true, + "misc›Proxy, internal 'get' calls›Array.prototype.splice": true, + "misc›Proxy, internal 'get' calls›Array.prototype.toString": true, + "misc›Proxy, internal 'get' calls›JSON.stringify": true, + "misc›Proxy, internal 'get' calls›Promise resolve functions": true, + "misc›Proxy, internal 'get' calls›String.prototype.match": true, + "misc›Proxy, internal 'get' calls›String.prototype.replace": true, + "misc›Proxy, internal 'get' calls›String.prototype.search": true, + "misc›Proxy, internal 'get' calls›String.prototype.split": true, + "misc›Proxy, internal 'get' calls›Date.prototype.toJSON": true, + "misc›Proxy, internal 'set' calls›Object.assign": true, + "misc›Proxy, internal 'set' calls›Array.from": true, + "misc›Proxy, internal 'set' calls›Array.of": true, + "misc›Proxy, internal 'set' calls›Array.prototype.copyWithin": true, + "misc›Proxy, internal 'set' calls›Array.prototype.fill": true, + "misc›Proxy, internal 'set' calls›Array.prototype.pop": true, + "misc›Proxy, internal 'set' calls›Array.prototype.push": true, + "misc›Proxy, internal 'set' calls›Array.prototype.reverse": true, + "misc›Proxy, internal 'set' calls›Array.prototype.shift": true, + "misc›Proxy, internal 'set' calls›Array.prototype.splice": true, + "misc›Proxy, internal 'set' calls›Array.prototype.unshift": true, + "misc›Proxy, internal 'defineProperty' calls›[[Set]]": true, + "misc›Proxy, internal 'defineProperty' calls›SetIntegrityLevel": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.copyWithin": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.pop": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.reverse": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.shift": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.splice": true, + "misc›Proxy, internal 'deleteProperty' calls›Array.prototype.unshift": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›[[Set]]": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›Object.assign": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›Object.prototype.hasOwnProperty": true, + "misc›Proxy, internal 'getOwnPropertyDescriptor' calls›Function.prototype.bind": true, + "misc›Proxy, internal 'ownKeys' calls›SetIntegrityLevel": true, + "misc›Proxy, internal 'ownKeys' calls›TestIntegrityLevel": true, + "misc›Proxy, internal 'ownKeys' calls›SerializeJSONObject": true, + "misc›Object static methods accept primitives›Object.getPrototypeOf": true, + "misc›Object static methods accept primitives›Object.getOwnPropertyDescriptor": true, + "misc›Object static methods accept primitives›Object.getOwnPropertyNames": true, + "misc›Object static methods accept primitives›Object.seal": true, + "misc›Object static methods accept primitives›Object.freeze": true, + "misc›Object static methods accept primitives›Object.preventExtensions": true, + "misc›Object static methods accept primitives›Object.isSealed": true, + "misc›Object static methods accept primitives›Object.isFrozen": true, + "misc›Object static methods accept primitives›Object.isExtensible": true, + "misc›Object static methods accept primitives›Object.keys": true, + "misc›own property order›Object.keys": true, + "misc›own property order›Object.getOwnPropertyNames": true, + "misc›own property order›Object.assign": true, + "misc›own property order›JSON.stringify": true, + "misc›own property order›JSON.parse": true, + "misc›own property order›Reflect.ownKeys, string key order": true, + "misc›own property order›Reflect.ownKeys, symbol key order": true, + "misc›Updated identifier syntax›var ⸯ;": true, + "misc›Updated identifier syntax›var 𐋀;": true, + "misc›Updated identifier syntax›no escaped reserved words as identifiers": true, + "misc›miscellaneous›duplicate property names in strict mode": true, + "misc›miscellaneous›no semicolon needed after do-while": true, + "misc›miscellaneous›no assignments allowed in for-in head in strict mode": true, + "misc›miscellaneous›accessors aren't constructors": true, + "misc›miscellaneous›Invalid Date": true, + "misc›miscellaneous›RegExp constructor can alter flags": true, + "misc›miscellaneous›RegExp.prototype.toString generic and uses \"flags\" property": true, + "misc›miscellaneous›built-in prototypes are not instances": true, + "misc›miscellaneous›function 'length' is configurable": true, + "annex b›non-strict function semantics›hoisted block-level function declaration": true, + "annex b›non-strict function semantics›labeled function statements": true, + "annex b›non-strict function semantics›function statements in if-statement clauses": true, + "annex b›__proto__ in object literals›basic support": true, + "annex b›__proto__ in object literals›multiple __proto__ is an error": true, + "annex b›__proto__ in object literals›not a computed property": true, + "annex b›__proto__ in object literals›not a shorthand property": true, + "annex b›__proto__ in object literals›not a shorthand method": true, + "annex b›Object.prototype.__proto__›get prototype": true, + "annex b›Object.prototype.__proto__›set prototype": true, + "annex b›Object.prototype.__proto__›absent from Object.create(null)": true, + "annex b›Object.prototype.__proto__›present in hasOwnProperty()": true, + "annex b›Object.prototype.__proto__›correct property descriptor": true, + "annex b›Object.prototype.__proto__›present in Object.getOwnPropertyNames()": true, + "annex b›String.prototype HTML methods›existence": true, + "annex b›String.prototype HTML methods›tags' names are lowercase": true, + "annex b›String.prototype HTML methods›quotes in arguments are escaped": true, + "annex b›RegExp.prototype.compile›basic functionality": true, + "annex b›RegExp.prototype.compile›returns this": true, + "annex b›RegExp syntax extensions›hyphens in character sets": true, + "annex b›RegExp syntax extensions›invalid character escapes": true, + "annex b›RegExp syntax extensions›invalid control-character escapes": true, + "annex b›RegExp syntax extensions›invalid Unicode escapes": true, + "annex b›RegExp syntax extensions›invalid hexadecimal escapes": true, + "annex b›RegExp syntax extensions›incomplete patterns and quantifiers": true, + "annex b›RegExp syntax extensions›octal escape sequences": true, + "annex b›RegExp syntax extensions›invalid backreferences become octal escapes": true, + "annex b›HTML-style comments": true + } +} \ No newline at end of file diff --git a/v8.versions b/v8.versions index b084ed439..34dfe4508 100644 --- a/v8.versions +++ b/v8.versions @@ -69,6 +69,7 @@ v19.2.0 v19.1.0 v19.0.1 v19.0.0 +v18.20.5 v18.20.4 v18.20.3 v18.20.2
18.20.4