| ## Proposed language features | |
| # | |
| # This project accepts tests for language proposals that have reached stage 3 | |
| # in TC39's standardization process. Those tests should be annotated with a | |
| # dedicated feature flag so that consumers may more easily omit them as | |
| # necessary. | |
| # | |
| # Generally, feature flags should be per proposal, not per individual API | |
| # that a proposal adds. To filter for specific APIs, use the directory | |
| # structure. | |
| # | |
| # https://github.com/tc39/process-document | |
| # Hashbang Grammar | |
| # https://github.com/tc39/proposal-hashbang | |
| hashbang | |
| # Intl.Locale Info | |
| # https://github.com/tc39/proposal-intl-locale-info | |
| Intl.Locale-info | |
| # FinalizationRegistry#cleanupSome | |
| # https://github.com/tc39/proposal-cleanup-some | |
| FinalizationRegistry.prototype.cleanupSome | |
| # Intl.NumberFormat V3 | |
| # https://github.com/tc39/proposal-intl-numberformat-v3 | |
| Intl.NumberFormat-v3 | |
| # Legacy RegExp features | |
| # https://github.com/tc39/proposal-regexp-legacy-features | |
| legacy-regexp | |
| # Atomics.waitAsync | |
| # https://github.com/tc39/proposal-atomics-wait-async | |
| Atomics.waitAsync | |
| # Import Assertions | |
| # https://github.com/tc39/proposal-import-assertions/ | |
| import-assertions | |
| # JSON modules | |
| # https://github.com/tc39/proposal-json-modules | |
| json-modules | |
| # Resizable Arraybuffer | |
| # https://github.com/tc39/proposal-resizablearraybuffer | |
| resizable-arraybuffer | |
| # ArrayBuffer transfer | |
| # https://github.com/tc39/proposal-arraybuffer-transfer | |
| arraybuffer-transfer | |
| # Temporal | |
| # https://github.com/tc39/proposal-temporal | |
| Temporal | |
| # ShadowRealm, née Callable Boundary Realms | |
| # https://github.com/tc39/proposal-realms | |
| ShadowRealm | |
| # Array.prototype.findLast & Array.prototype.findLastIndex | |
| # https://github.com/tc39/proposal-array-find-from-last | |
| array-find-from-last | |
| # Array.groupBy & Map.groupBy | |
| # https://github.com/tc39/proposal-array-grouping | |
| array-grouping | |
| # Intl.DurationFormat | |
| # https://github.com/tc39/proposal-intl-duration-format | |
| Intl.DurationFormat | |
| # RegExp set notation + properties of strings | |
| # https://github.com/tc39/proposal-regexp-set-notation | |
| regexp-v-flag | |
| # Decorators | |
| # https://github.com/tc39/proposal-decorators | |
| decorators | |
| # Duplicate named capturing groups | |
| # https://github.com/tc39/proposal-duplicate-named-capturing-groups | |
| regexp-duplicate-named-groups | |
| # Symbols as WeakMap keys | |
| # https://github.com/tc39/proposal-symbols-as-weakmap-keys | |
| symbols-as-weakmap-keys | |
| # Array.prototype.toReversed, Array.prototype.toSorted, Array.prototype.toSpliced, | |
| # Array.prototype.with and the equivalent TypedArray methods. | |
| # https://github.com/tc39/proposal-change-array-by-copy/ | |
| change-array-by-copy | |
| # https://tc39.es/proposal-array-from-async/ | |
| Array.fromAsync | |
| # Well-formed Unicode strings | |
| # https://github.com/tc39/proposal-is-usv-string | |
| String.prototype.isWellFormed | |
| String.prototype.toWellFormed | |
| # JSON.parse with source | |
| # https://github.com/tc39/proposal-json-parse-with-source | |
| json-parse-with-source | |
| # Iterator Helpers | |
| # https://github.com/tc39/proposal-iterator-helpers | |
| iterator-helpers | |
| # Promise.withResolvers | |
| # https://github.com/tc39/proposal-promise-with-resolvers | |
| promise-with-resolvers | |
| ## Standard language features | |
| # | |
| # Language features that have been included in a published version of the | |
| # ECMA-262 specification. These flags are largely maintained for historical | |
| # reasons, though their use for relatively new features (i.e. prior to | |
| # availability across major implementations) is appreciated. | |
| AggregateError | |
| align-detached-buffer-semantics-with-web-reality # https://github.com/tc39/ecma262/pull/2164 | |
| arbitrary-module-namespace-names # https://github.com/tc39/ecma262/pull/2154 | |
| ArrayBuffer | |
| Array.prototype.at | |
| Array.prototype.flat | |
| Array.prototype.flatMap | |
| Array.prototype.includes | |
| Array.prototype.values | |
| arrow-function | |
| async-iteration | |
| async-functions | |
| Atomics | |
| BigInt | |
| caller | |
| class | |
| class-fields-private | |
| class-fields-private-in | |
| class-fields-public | |
| class-methods-private | |
| class-static-block | |
| class-static-fields-private | |
| class-static-fields-public | |
| class-static-methods-private | |
| coalesce-expression | |
| computed-property-names | |
| const | |
| cross-realm | |
| DataView | |
| DataView.prototype.getFloat32 | |
| DataView.prototype.getFloat64 | |
| DataView.prototype.getInt16 | |
| DataView.prototype.getInt32 | |
| DataView.prototype.getInt8 | |
| DataView.prototype.getUint16 | |
| DataView.prototype.getUint32 | |
| DataView.prototype.setUint8 | |
| default-parameters | |
| destructuring-assignment | |
| destructuring-binding | |
| dynamic-import | |
| error-cause | |
| exponentiation | |
| export-star-as-namespace-from-module # https://github.com/tc39/ecma262/pull/1174 | |
| FinalizationRegistry | |
| for-in-order | |
| for-of | |
| Float32Array | |
| Float64Array | |
| generators | |
| globalThis | |
| import.meta | |
| Int8Array | |
| Int16Array | |
| Int32Array | |
| Intl-enumeration | |
| intl-normative-optional # https://tc39.es/ecma402/#legacy-constructor | |
| Intl.DateTimeFormat-datetimestyle | |
| Intl.DateTimeFormat-dayPeriod # https://github.com/tc39/ecma402/pull/346 | |
| Intl.DateTimeFormat-extend-timezonename | |
| Intl.DateTimeFormat-formatRange | |
| Intl.DateTimeFormat-fractionalSecondDigits # https://github.com/tc39/ecma402/pull/347 | |
| Intl.DisplayNames | |
| Intl.DisplayNames-v2 | |
| Intl.ListFormat | |
| Intl.Locale | |
| Intl.NumberFormat-unified | |
| Intl.RelativeTimeFormat | |
| Intl.Segmenter | |
| json-superset | |
| let | |
| logical-assignment-operators | |
| Map | |
| new.target | |
| numeric-separator-literal | |
| object-rest | |
| object-spread | |
| Object.fromEntries | |
| Object.hasOwn | |
| Object.is | |
| optional-catch-binding | |
| optional-chaining | |
| Promise | |
| Promise.allSettled | |
| Promise.any | |
| Promise.prototype.finally | |
| Proxy | |
| proxy-missing-checks # https://github.com/tc39/ecma262/pull/666 | |
| Reflect | |
| Reflect.construct | |
| Reflect.set | |
| Reflect.setPrototypeOf | |
| regexp-dotall | |
| regexp-lookbehind | |
| regexp-match-indices | |
| regexp-named-groups | |
| regexp-unicode-property-escapes | |
| rest-parameters | |
| Set | |
| SharedArrayBuffer | |
| string-trimming | |
| String.fromCodePoint | |
| String.prototype.at | |
| String.prototype.endsWith | |
| String.prototype.includes | |
| String.prototype.matchAll | |
| String.prototype.replaceAll | |
| String.prototype.trimEnd | |
| String.prototype.trimStart | |
| super | |
| Symbol | |
| Symbol.asyncIterator | |
| Symbol.hasInstance | |
| Symbol.isConcatSpreadable | |
| Symbol.iterator | |
| Symbol.match | |
| Symbol.matchAll | |
| Symbol.prototype.description | |
| Symbol.replace | |
| Symbol.search | |
| Symbol.species | |
| Symbol.split | |
| Symbol.toPrimitive | |
| Symbol.toStringTag | |
| Symbol.unscopables | |
| tail-call-optimization | |
| template | |
| top-level-await | |
| TypedArray | |
| TypedArray.prototype.at | |
| u180e | |
| Uint8Array | |
| Uint16Array | |
| Uint32Array | |
| Uint8ClampedArray | |
| WeakMap | |
| WeakRef | |
| WeakSet | |
| well-formed-json-stringify | |
| __proto__ | |
| __getter__ | |
| __setter__ | |
| ## Test-Harness Features | |
| # | |
| # The rare cases where testing language functionality requires non-standard | |
| # language features, exposed through global-environment functions on the $262 | |
| # object, go here. | |
| IsHTMLDDA | |
| host-gc-required |