2018-11-26 19:21:01 +01:00
|
|
|
## Proposed language features
|
2017-06-12 23:59:14 +02:00
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
#
|
2023-02-08 00:40:44 +01:00
|
|
|
# Generally, feature flags should be per proposal, not per individual API
|
|
|
|
# that a proposal adds. To filter for specific APIs, use the directory
|
|
|
|
# structure.
|
|
|
|
#
|
2017-06-12 23:59:14 +02:00
|
|
|
# https://github.com/tc39/process-document
|
|
|
|
|
2021-05-19 04:40:08 +02:00
|
|
|
# Intl.Locale Info
|
|
|
|
# https://github.com/tc39/proposal-intl-locale-info
|
|
|
|
Intl.Locale-info
|
|
|
|
|
2020-07-21 21:04:32 +02:00
|
|
|
# FinalizationRegistry#cleanupSome
|
2021-11-04 20:03:33 +01:00
|
|
|
# https://github.com/tc39/proposal-cleanup-some
|
2020-10-06 17:46:04 +02:00
|
|
|
FinalizationRegistry.prototype.cleanupSome
|
2020-07-21 21:04:32 +02:00
|
|
|
|
2021-10-13 19:38:48 +02:00
|
|
|
# Intl.NumberFormat V3
|
|
|
|
# https://github.com/tc39/proposal-intl-numberformat-v3
|
|
|
|
Intl.NumberFormat-v3
|
|
|
|
|
2020-06-10 22:10:00 +02:00
|
|
|
# Legacy RegExp features
|
|
|
|
# https://github.com/tc39/proposal-regexp-legacy-features
|
|
|
|
legacy-regexp
|
|
|
|
|
2020-03-18 21:07:22 +01:00
|
|
|
# Atomics.waitAsync
|
|
|
|
# https://github.com/tc39/proposal-atomics-wait-async
|
|
|
|
Atomics.waitAsync
|
|
|
|
|
2023-09-13 14:07:40 +02:00
|
|
|
# Import Attributes
|
|
|
|
# https://github.com/tc39/proposal-import-attributes/
|
|
|
|
import-attributes
|
|
|
|
|
|
|
|
# Import Assertions (Normative Optional, Deprecated)
|
|
|
|
# This feature should not be implemented, but if it is it must
|
|
|
|
# respect the specified behavior
|
|
|
|
# https://github.com/tc39/proposal-import-attributes/
|
2021-07-16 16:02:41 +02:00
|
|
|
import-assertions
|
|
|
|
|
|
|
|
# JSON modules
|
|
|
|
# https://github.com/tc39/proposal-json-modules
|
|
|
|
json-modules
|
|
|
|
|
|
|
|
# Resizable Arraybuffer
|
|
|
|
# https://github.com/tc39/proposal-resizablearraybuffer
|
|
|
|
resizable-arraybuffer
|
|
|
|
|
2023-01-18 22:44:45 +01:00
|
|
|
# ArrayBuffer transfer
|
|
|
|
# https://github.com/tc39/proposal-arraybuffer-transfer
|
|
|
|
arraybuffer-transfer
|
|
|
|
|
2021-07-16 16:02:41 +02:00
|
|
|
# Temporal
|
|
|
|
# https://github.com/tc39/proposal-temporal
|
|
|
|
Temporal
|
|
|
|
|
2021-09-02 16:46:33 +02:00
|
|
|
# ShadowRealm, née Callable Boundary Realms
|
2021-07-16 16:07:17 +02:00
|
|
|
# https://github.com/tc39/proposal-realms
|
2021-09-02 16:46:33 +02:00
|
|
|
ShadowRealm
|
2021-07-16 16:07:17 +02:00
|
|
|
|
2024-04-01 06:17:59 +02:00
|
|
|
# Object.groupBy & Map.groupBy
|
2022-03-06 07:56:51 +01:00
|
|
|
# https://github.com/tc39/proposal-array-grouping
|
|
|
|
array-grouping
|
|
|
|
|
2021-12-03 00:59:48 +01:00
|
|
|
# Intl.DurationFormat
|
|
|
|
# https://github.com/tc39/proposal-intl-duration-format
|
|
|
|
Intl.DurationFormat
|
|
|
|
|
2021-12-27 12:04:14 +01:00
|
|
|
# RegExp set notation + properties of strings
|
|
|
|
# https://github.com/tc39/proposal-regexp-set-notation
|
|
|
|
regexp-v-flag
|
|
|
|
|
2022-05-02 16:44:12 +02:00
|
|
|
# Decorators
|
|
|
|
# https://github.com/tc39/proposal-decorators
|
|
|
|
decorators
|
|
|
|
|
2022-08-01 04:14:10 +02:00
|
|
|
# Duplicate named capturing groups
|
|
|
|
# https://github.com/tc39/proposal-duplicate-named-capturing-groups
|
|
|
|
regexp-duplicate-named-groups
|
|
|
|
|
2022-11-04 19:57:51 +01:00
|
|
|
# https://tc39.es/proposal-array-from-async/
|
|
|
|
Array.fromAsync
|
|
|
|
|
2022-09-14 08:56:04 +02:00
|
|
|
# Well-formed Unicode strings
|
|
|
|
# https://github.com/tc39/proposal-is-usv-string
|
|
|
|
String.prototype.isWellFormed
|
|
|
|
String.prototype.toWellFormed
|
|
|
|
|
2023-03-27 22:22:04 +02:00
|
|
|
# JSON.parse with source
|
|
|
|
# https://github.com/tc39/proposal-json-parse-with-source
|
|
|
|
json-parse-with-source
|
|
|
|
|
2022-12-22 01:28:37 +01:00
|
|
|
# Regular expression modifiers
|
|
|
|
# https://github.com/tc39/proposal-regexp-modifiers
|
|
|
|
regexp-modifiers
|
|
|
|
|
2023-06-15 17:07:41 +02:00
|
|
|
# Iterator Helpers
|
|
|
|
# https://github.com/tc39/proposal-iterator-helpers
|
|
|
|
iterator-helpers
|
|
|
|
|
2023-07-05 20:47:51 +02:00
|
|
|
# Promise.withResolvers
|
2023-07-18 16:18:30 +02:00
|
|
|
# https://github.com/tc39/proposal-promise-with-resolvers
|
2023-07-05 20:47:51 +02:00
|
|
|
promise-with-resolvers
|
|
|
|
|
2024-05-02 00:27:31 +02:00
|
|
|
# Promise.try
|
|
|
|
# https://github.com/tc39/proposal-promise-try
|
|
|
|
promise-try
|
|
|
|
|
2023-11-19 04:53:46 +01:00
|
|
|
# Set methods
|
|
|
|
# https://github.com/tc39/proposal-set-methods
|
|
|
|
set-methods
|
|
|
|
|
2024-03-25 18:22:05 +01:00
|
|
|
# Explicit Resource Management
|
|
|
|
# https://github.com/tc39/proposal-explicit-resource-management
|
|
|
|
explicit-resource-management
|
|
|
|
|
2024-03-12 19:34:59 +01:00
|
|
|
# Float16Array + Math.f16round
|
|
|
|
# https://github.com/tc39/proposal-float16array
|
|
|
|
Float16Array
|
|
|
|
|
2024-07-03 17:56:34 +02:00
|
|
|
# Math.sumPrecise
|
|
|
|
# https://github.com/tc39/proposal-math-sum
|
|
|
|
Math.sumPrecise
|
|
|
|
|
2024-06-27 14:58:04 +02:00
|
|
|
# Source Phase Imports
|
|
|
|
## https://github.com/tc39/proposal-source-phase-imports
|
|
|
|
source-phase-imports
|
|
|
|
## test262 special specifier
|
|
|
|
source-phase-imports-module-source
|
|
|
|
|
2018-11-26 19:21:01 +01:00
|
|
|
## Standard language features
|
2017-06-12 23:59:14 +02:00
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
|
2023-02-07 20:48:45 +01:00
|
|
|
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
|
2017-06-12 23:59:14 +02:00
|
|
|
ArrayBuffer
|
2023-10-10 05:48:46 +02:00
|
|
|
array-find-from-last
|
2023-02-07 20:48:45 +01:00
|
|
|
Array.prototype.at
|
|
|
|
Array.prototype.flat
|
|
|
|
Array.prototype.flatMap
|
2023-03-23 10:51:08 +01:00
|
|
|
Array.prototype.includes
|
2017-06-12 23:59:14 +02:00
|
|
|
Array.prototype.values
|
|
|
|
arrow-function
|
2019-01-17 20:08:11 +01:00
|
|
|
async-iteration
|
2017-06-12 23:59:14 +02:00
|
|
|
async-functions
|
2019-01-17 20:08:11 +01:00
|
|
|
Atomics
|
2023-02-07 20:48:45 +01:00
|
|
|
BigInt
|
2017-06-12 23:59:14 +02:00
|
|
|
caller
|
2023-10-10 05:48:46 +02:00
|
|
|
change-array-by-copy
|
2017-06-12 23:59:14 +02:00
|
|
|
class
|
2023-02-07 20:48:45 +01:00
|
|
|
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
|
2017-08-23 21:21:54 +02:00
|
|
|
computed-property-names
|
2017-06-12 23:59:14 +02:00
|
|
|
const
|
2017-09-22 20:14:06 +02:00
|
|
|
cross-realm
|
2017-06-12 23:59:14 +02:00
|
|
|
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
|
2018-01-11 16:47:10 +01:00
|
|
|
destructuring-assignment
|
2017-06-12 23:59:14 +02:00
|
|
|
destructuring-binding
|
2023-02-07 20:48:45 +01:00
|
|
|
dynamic-import
|
|
|
|
error-cause
|
2023-03-23 10:51:08 +01:00
|
|
|
exponentiation
|
2023-02-07 20:48:45 +01:00
|
|
|
export-star-as-namespace-from-module # https://github.com/tc39/ecma262/pull/1174
|
|
|
|
FinalizationRegistry
|
|
|
|
for-in-order
|
2017-09-08 18:30:23 +02:00
|
|
|
for-of
|
2018-04-19 21:31:54 +02:00
|
|
|
Float32Array
|
2017-06-12 23:59:14 +02:00
|
|
|
Float64Array
|
|
|
|
generators
|
2023-02-07 20:48:45 +01:00
|
|
|
globalThis
|
2023-10-10 05:48:46 +02:00
|
|
|
hashbang
|
2023-02-07 20:48:45 +01:00
|
|
|
import.meta
|
2017-06-12 23:59:14 +02:00
|
|
|
Int8Array
|
2020-09-15 16:26:41 +02:00
|
|
|
Int16Array
|
2018-04-19 21:31:54 +02:00
|
|
|
Int32Array
|
2023-02-07 20:48:45 +01:00
|
|
|
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
|
2019-01-17 20:08:11 +01:00
|
|
|
json-superset
|
2017-06-12 23:59:14 +02:00
|
|
|
let
|
2023-02-07 20:48:45 +01:00
|
|
|
logical-assignment-operators
|
2017-06-12 23:59:14 +02:00
|
|
|
Map
|
|
|
|
new.target
|
2023-02-07 20:48:45 +01:00
|
|
|
numeric-separator-literal
|
2019-01-17 20:08:11 +01:00
|
|
|
object-rest
|
|
|
|
object-spread
|
2023-02-07 20:48:45 +01:00
|
|
|
Object.fromEntries
|
|
|
|
Object.hasOwn
|
2018-01-11 16:20:50 +01:00
|
|
|
Object.is
|
2019-01-17 20:08:11 +01:00
|
|
|
optional-catch-binding
|
2023-02-07 20:48:45 +01:00
|
|
|
optional-chaining
|
2020-09-15 16:26:41 +02:00
|
|
|
Promise
|
2023-02-07 20:48:45 +01:00
|
|
|
Promise.allSettled
|
|
|
|
Promise.any
|
2019-01-17 20:08:11 +01:00
|
|
|
Promise.prototype.finally
|
2017-06-12 23:59:14 +02:00
|
|
|
Proxy
|
2023-02-07 20:48:45 +01:00
|
|
|
proxy-missing-checks # https://github.com/tc39/ecma262/pull/666
|
2017-06-12 23:59:14 +02:00
|
|
|
Reflect
|
|
|
|
Reflect.construct
|
|
|
|
Reflect.set
|
|
|
|
Reflect.setPrototypeOf
|
2019-01-17 20:08:11 +01:00
|
|
|
regexp-dotall
|
|
|
|
regexp-lookbehind
|
2023-02-07 20:48:45 +01:00
|
|
|
regexp-match-indices
|
2019-01-17 20:08:11 +01:00
|
|
|
regexp-named-groups
|
|
|
|
regexp-unicode-property-escapes
|
2019-07-04 00:54:21 +02:00
|
|
|
rest-parameters
|
2017-06-12 23:59:14 +02:00
|
|
|
Set
|
2019-01-17 20:08:11 +01:00
|
|
|
SharedArrayBuffer
|
2023-02-07 20:48:45 +01:00
|
|
|
string-trimming
|
2018-06-21 22:03:08 +02:00
|
|
|
String.fromCodePoint
|
2023-02-07 20:48:45 +01:00
|
|
|
String.prototype.at
|
2017-10-03 23:02:29 +02:00
|
|
|
String.prototype.endsWith
|
|
|
|
String.prototype.includes
|
2023-02-07 20:48:45 +01:00
|
|
|
String.prototype.matchAll
|
|
|
|
String.prototype.replaceAll
|
|
|
|
String.prototype.trimEnd
|
|
|
|
String.prototype.trimStart
|
2017-06-12 23:59:14 +02:00
|
|
|
super
|
|
|
|
Symbol
|
2023-10-10 05:48:46 +02:00
|
|
|
symbols-as-weakmap-keys
|
2019-01-17 20:08:11 +01:00
|
|
|
Symbol.asyncIterator
|
2017-06-12 23:59:14 +02:00
|
|
|
Symbol.hasInstance
|
|
|
|
Symbol.isConcatSpreadable
|
|
|
|
Symbol.iterator
|
|
|
|
Symbol.match
|
2023-02-07 20:48:45 +01:00
|
|
|
Symbol.matchAll
|
|
|
|
Symbol.prototype.description
|
2017-06-12 23:59:14 +02:00
|
|
|
Symbol.replace
|
|
|
|
Symbol.search
|
|
|
|
Symbol.species
|
|
|
|
Symbol.split
|
|
|
|
Symbol.toPrimitive
|
|
|
|
Symbol.toStringTag
|
|
|
|
Symbol.unscopables
|
|
|
|
tail-call-optimization
|
|
|
|
template
|
2023-02-07 20:48:45 +01:00
|
|
|
top-level-await
|
2017-06-12 23:59:14 +02:00
|
|
|
TypedArray
|
2023-02-07 20:48:45 +01:00
|
|
|
TypedArray.prototype.at
|
2017-09-25 20:41:08 +02:00
|
|
|
u180e
|
2017-06-12 23:59:14 +02:00
|
|
|
Uint8Array
|
2017-11-01 15:54:05 +01:00
|
|
|
Uint16Array
|
2020-09-15 16:26:41 +02:00
|
|
|
Uint32Array
|
2018-04-19 21:31:54 +02:00
|
|
|
Uint8ClampedArray
|
2017-06-12 23:59:14 +02:00
|
|
|
WeakMap
|
2023-02-07 20:48:45 +01:00
|
|
|
WeakRef
|
2017-06-12 23:59:14 +02:00
|
|
|
WeakSet
|
2023-02-07 20:48:45 +01:00
|
|
|
well-formed-json-stringify
|
2020-10-01 00:52:36 +02:00
|
|
|
__proto__
|
|
|
|
__getter__
|
|
|
|
__setter__
|
2017-10-17 00:46:59 +02:00
|
|
|
|
2018-11-26 19:21:01 +01:00
|
|
|
## Test-Harness Features
|
2017-10-17 00:46:59 +02:00
|
|
|
#
|
|
|
|
# The rare cases where testing language functionality requires non-standard
|
|
|
|
# language features, exposed through global-environment functions on the $262
|
|
|
|
# object, go here.
|
|
|
|
|
2017-10-19 21:03:21 +02:00
|
|
|
IsHTMLDDA
|
2019-09-18 18:42:31 +02:00
|
|
|
host-gc-required
|