mirror of https://github.com/tc39/test262.git
365 lines
8.5 KiB
Plaintext
365 lines
8.5 KiB
Plaintext
## 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.
|
|
#
|
|
# https://github.com/tc39/process-document
|
|
|
|
# Missing checks in Proxy internal methods
|
|
# https://github.com/tc39/ecma262/pull/666
|
|
proxy-missing-checks
|
|
|
|
# Promise.allSettled
|
|
# https://github.com/tc39/proposal-promise-allSettled
|
|
Promise.allSettled
|
|
|
|
# Hashbang Grammar
|
|
# https://github.com/tc39/proposal-hashbang
|
|
hashbang
|
|
|
|
# Object.fromEntries
|
|
# https://github.com/tc39/proposal-object-from-entries
|
|
Object.fromEntries
|
|
|
|
# BigInt
|
|
# https://github.com/tc39/proposal-bigint
|
|
BigInt
|
|
|
|
# Class Fields
|
|
# https://github.com/tc39/proposal-class-fields
|
|
class-fields-public
|
|
class-fields-private
|
|
|
|
# Class Static Fields & Methods
|
|
# https://github.com/tc39/proposal-static-class-features/
|
|
class-static-fields-public
|
|
class-static-fields-private
|
|
class-static-methods-private
|
|
|
|
# Class Private methods and getter/setters
|
|
# https://github.com/tc39/proposal-private-methods
|
|
class-methods-private
|
|
|
|
# Dynamic Import
|
|
# https://github.com/tc39/proposal-dynamic-import
|
|
dynamic-import
|
|
|
|
# Array.prototype.flat and Array.prototype.flatMap
|
|
# https://github.com/tc39/proposal-flatMap
|
|
Array.prototype.flat
|
|
Array.prototype.flatMap
|
|
|
|
# String Trimming
|
|
# https://github.com/tc39/proposal-string-left-right-trim
|
|
# Includes all tests for:
|
|
# String.prototype.{trimStart, trimEnd, trimLeft, trimRight}
|
|
string-trimming
|
|
String.prototype.trimEnd
|
|
String.prototype.trimStart
|
|
|
|
# Numeric Separator Literal
|
|
# https://github.com/tc39/proposal-numeric-separator
|
|
numeric-separator-literal
|
|
|
|
# String.prototype.matchAll
|
|
# https://github.com/tc39/proposal-string-matchall
|
|
String.prototype.matchAll
|
|
Symbol.matchAll
|
|
|
|
# Symbol.prototype.description
|
|
# https://github.com/tc39/proposal-symbol-description
|
|
Symbol.prototype.description
|
|
|
|
# Well-formed JSON.stringify
|
|
# https://github.com/tc39/proposal-well-formed-stringify
|
|
well-formed-json-stringify
|
|
|
|
# Intl.ListFormat
|
|
# https://github.com/tc39/proposal-intl-list-format
|
|
Intl.ListFormat
|
|
|
|
# Intl.Locale
|
|
# https://github.com/tc39/proposal-intl-locale
|
|
Intl.Locale
|
|
|
|
# Intl.Locale Info
|
|
# https://github.com/tc39/proposal-intl-locale-info
|
|
Intl.Locale-info
|
|
|
|
# Intl.RelativeTimeFormat
|
|
# https://github.com/tc39/proposal-intl-relative-time
|
|
Intl.RelativeTimeFormat
|
|
|
|
# Intl.Segmenter
|
|
# https://github.com/tc39/proposal-intl-segmenter
|
|
Intl.Segmenter
|
|
|
|
# Intl.NumberFormat unified proposal
|
|
# https://github.com/sffc/proposal-unified-intl-numberformat
|
|
Intl.NumberFormat-unified
|
|
|
|
# Intl.DateTimeFormat: dateStyle and timeStyle options
|
|
# https://github.com/tc39/proposal-intl-datetime-style
|
|
Intl.DateTimeFormat-datetimestyle
|
|
|
|
# Intl.DateTimeFormat: formatRange and formatRangeToParts functions
|
|
# https://github.com/tc39/proposal-intl-DateTimeFormat-formatRange
|
|
Intl.DateTimeFormat-formatRange
|
|
|
|
# Intl.DateTimeFormat: add 'dayPeriod' option
|
|
# https://github.com/tc39/ecma402/pull/346
|
|
Intl.DateTimeFormat-dayPeriod
|
|
|
|
# Intl.DateTimeFormat: add 'quarter' option
|
|
# https://github.com/tc39/ecma402/pull/346
|
|
Intl.DateTimeFormat-quarter
|
|
|
|
# Intl.DateTimeFormat: add 'fractionalSecondDigits' option
|
|
# https://github.com/tc39/ecma402/pull/347
|
|
Intl.DateTimeFormat-fractionalSecondDigits
|
|
|
|
# Intl "normative optional"
|
|
# https://tc39.es/ecma402/#legacy-constructor
|
|
intl-normative-optional
|
|
|
|
# Intl "Intl.DisplayNames v2"
|
|
# https://github.com/tc39/intl-displaynames-v2
|
|
Intl.DisplayNames-v2
|
|
|
|
# Intl "Extend TimeZoneName Option Proposal"
|
|
# https://github.com/tc39/proposal-intl-extend-timezonename
|
|
Intl.DateTimeFormat-extend-timezonename
|
|
|
|
# Intl "Enumeration API"
|
|
# https://github.com/tc39/proposal-intl-enumeration
|
|
Intl-enumeration
|
|
|
|
# Global
|
|
# https://github.com/tc39/proposal-global
|
|
globalThis
|
|
|
|
# `export * as namespace from module`
|
|
# https://github.com/tc39/ecma262/pull/1174
|
|
export-star-as-namespace-from-module
|
|
|
|
# import.meta
|
|
# https://github.com/tc39/proposal-import-meta
|
|
import.meta
|
|
|
|
# WeakRef
|
|
# https://github.com/tc39/proposal-weakref
|
|
WeakRef
|
|
FinalizationRegistry
|
|
|
|
# FinalizationRegistry#cleanupSome
|
|
# https://github.com/tc39/proposal-cleanup-some
|
|
FinalizationRegistry.prototype.cleanupSome
|
|
|
|
# Optional Chaining
|
|
# https://github.com/tc39/proposal-optional-chaining
|
|
optional-chaining
|
|
|
|
# Top Level Await
|
|
# https://github.com/tc39/proposal-top-level-await
|
|
top-level-await
|
|
|
|
# RegExp Match Array Indices
|
|
# https://github.com/tc39/proposal-regexp-match-indices
|
|
regexp-match-indices
|
|
|
|
# Nullish Coalesce Expression
|
|
# https://github.com/tc39/proposal-nullish-coalescing
|
|
coalesce-expression
|
|
|
|
# Intl.DisplayNames
|
|
# https://github.com/tc39-transfer/proposal-intl-displaynames
|
|
Intl.DisplayNames
|
|
|
|
# Intl.NumberFormat V3
|
|
# https://github.com/tc39/proposal-intl-numberformat-v3
|
|
Intl.NumberFormat-v3
|
|
|
|
# Promise.any
|
|
# https://github.com/tc39/proposal-promise-any
|
|
Promise.any
|
|
AggregateError
|
|
|
|
# String.prototype.replaceAll
|
|
# https://github.com/tc39/proposal-string-replaceall
|
|
String.prototype.replaceAll
|
|
|
|
# Enumeration order for for-in
|
|
# https://github.com/tc39/proposal-for-in-order
|
|
for-in-order
|
|
|
|
# Legacy RegExp features
|
|
# https://github.com/tc39/proposal-regexp-legacy-features
|
|
legacy-regexp
|
|
|
|
# Logical Assignment Operators
|
|
# https://github.com/tc39/proposal-logical-assignment
|
|
logical-assignment-operators
|
|
|
|
# Atomics.waitAsync
|
|
# https://github.com/tc39/proposal-atomics-wait-async
|
|
Atomics.waitAsync
|
|
|
|
# Item Method
|
|
# https://github.com/tc39/proposal-item-method
|
|
Array.prototype.at
|
|
String.prototype.at
|
|
TypedArray.prototype.at
|
|
|
|
# Arbitrary module namespace names
|
|
# https://github.com/tc39/ecma262/pull/2154
|
|
arbitrary-module-namespace-names
|
|
|
|
# Align detached buffer semantics with web reality
|
|
# https://github.com/tc39/ecma262/pull/2164
|
|
align-detached-buffer-semantics-with-web-reality
|
|
|
|
# Object.hasOwn
|
|
# https://github.com/tc39/proposal-accessible-object-hasownproperty
|
|
Object.hasOwn
|
|
|
|
# Class static initialization blocks
|
|
# https://github.com/tc39/proposal-class-static-block
|
|
class-static-block
|
|
|
|
# Ergonomic brand checks for Private Fields
|
|
# https://github.com/tc39/proposal-private-fields-in-in
|
|
class-fields-private-in
|
|
|
|
# Error cause
|
|
# https://github.com/tc39/proposal-error-cause
|
|
error-cause
|
|
|
|
# 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
|
|
|
|
# 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
|
|
|
|
# Intl.DurationFormat
|
|
# https://github.com/tc39/proposal-intl-duration-format
|
|
Intl.DurationFormat
|
|
|
|
## 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.
|
|
|
|
ArrayBuffer
|
|
Array.prototype.values
|
|
arrow-function
|
|
async-iteration
|
|
async-functions
|
|
Atomics
|
|
caller
|
|
class
|
|
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
|
|
for-of
|
|
Float32Array
|
|
Float64Array
|
|
generators
|
|
Int8Array
|
|
Int16Array
|
|
Int32Array
|
|
json-superset
|
|
let
|
|
Map
|
|
new.target
|
|
object-rest
|
|
object-spread
|
|
Object.is
|
|
optional-catch-binding
|
|
Promise
|
|
Promise.prototype.finally
|
|
Proxy
|
|
Reflect
|
|
Reflect.construct
|
|
Reflect.set
|
|
Reflect.setPrototypeOf
|
|
regexp-dotall
|
|
regexp-lookbehind
|
|
regexp-named-groups
|
|
regexp-unicode-property-escapes
|
|
rest-parameters
|
|
Set
|
|
SharedArrayBuffer
|
|
String.fromCodePoint
|
|
String.prototype.endsWith
|
|
String.prototype.includes
|
|
super
|
|
Symbol
|
|
Symbol.asyncIterator
|
|
Symbol.hasInstance
|
|
Symbol.isConcatSpreadable
|
|
Symbol.iterator
|
|
Symbol.match
|
|
Symbol.replace
|
|
Symbol.search
|
|
Symbol.species
|
|
Symbol.split
|
|
Symbol.toPrimitive
|
|
Symbol.toStringTag
|
|
Symbol.unscopables
|
|
tail-call-optimization
|
|
template
|
|
TypedArray
|
|
u180e
|
|
Uint8Array
|
|
Uint16Array
|
|
Uint32Array
|
|
Uint8ClampedArray
|
|
WeakMap
|
|
WeakSet
|
|
__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
|