ECMAScript proposals
ECMAScript Internationalization API Specification proposals
Please see Contributing to ECMAScript for the most up-to-date information on contributing proposals to this standard.
Proposals follow this process document. This list contains only stage 2 proposals and higher that have not yet been withdrawn/rejected, or become finished. Stage 2 indicates that the committee expects these features to be developed and eventually included in the standard.
Proposal | Author | Champion | Test262 Feature Flag | Last Presented |
---|---|---|---|---|
Legacy RegExp features in JavaScript | Claude Pache | Mark Miller Claude Pache |
legacy-regexp | May 2017 |
JSON Modules | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
json-modules | January 2021 |
Temporal | Philipp Dunkel Maggie Johnson-Pint Matt Johnson-Pint Brian Terlson Shane Carr Ujjwal Sharma Philip Chimento Jason Williams Justin Grant |
Philipp Dunkel Maggie Johnson-Pint Matt Johnson-Pint Brian Terlson Shane Carr Ujjwal Sharma Philip Chimento Jason Williams Justin Grant |
Temporal | March 2021 |
ShadowRealm | Caridy Patiño Jean-Francois Paradis |
Dave Herman Mark Miller Caridy Patiño Leo Balter Rick Waldron Chengzhong Wu |
ShadowRealm | December 2022 |
Decorators | Daniel Ehrenberg Kristen Hewell Garrett |
Kristen Hewell Garrett | decorators | March 2023 |
JSON.parse source text access | Richard Gibson | Richard Gibson | json-parse-with-source | January 2023 |
RegExp Modifiers | Ron Buckton | Ron Buckton | regexp-modifiers | June 2022 |
Duplicate named capture groups | Kevin Gibbons | Kevin Gibbons | regexp-duplicate-named-groups | July 2022 |
Array.fromAsync |
J.S. Choi | J.S. Choi | Array.fromAsync | May 2023 |
New Set methods | Michał Wadas Sathya Gunasekaran Kevin Gibbons |
Kevin Gibbons | set-methods | November 2022 |
Sync Iterator helpers | Gus Caplan | Michael Ficarra Jonathan Keslin Kevin Gibbons |
iterator-helpers | November 2022 |
Explicit Resource Management | Ron Buckton | Ron Buckton | explicit-resource-management | March 2023 |
ArrayBuffer transfer | Shu-yu Guo Jordan Harband Yagiz Nizipli |
Shu-yu Guo Jordan Harband Yagiz Nizipli |
arraybuffer-transfer | January 2023 |
Float16 on TypedArrays, DataView, Math.f16round |
Leo Balter | Leo Balter Kevin Gibbons |
❓ | May 2023 |
Decorator Metadata | Kristen Hewell Garrett | Kristen Hewell Garrett | ❓ | May 2023 |
Import Attributes | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
Sven Sauleau Dan Clark Daniel Ehrenberg Nicolò Ribaudo |
import-attributes | March 2023 |
Source Phase Imports | Luca Casonato | Guy Bedford Luca Casonato |
❓ | July 2023 |
Proposal | Author | Champion | Last Presented |
---|---|---|---|
function.sent metaproperty |
Allen Wirfs-Brock | HE Shi-Jun | July 2019 |
throw expressions |
Ron Buckton | Ron Buckton | January 2018 |
Function implementation hiding | Domenic Denicola Michael Ficarra |
Michael Ficarra | June 2020 |
Sequence properties in Unicode property escapes | Mathias Bynens | Mathias Bynens | October 2019 |
collection normalization | Bradley Farias | Bradley Farias | January 2019 |
Array.isTemplateObject | Mike Samuel, Krzysztof Kotowicz | Krzysztof Kotowicz | December 2019 |
Map.prototype.emplace |
Bradley Farias | Erica Pramer | July 2020 |
Dynamic Import Host Adjustment | Mike Samuel, Krzysztof Kotowicz | Krzysztof Kotowicz | December 2019 |
Record & Tuple | Robin Ricard Richard Button |
Robin Ricard Richard Button |
December 2021 |
Module Expressions | Surma Daniel Ehrenberg Nicolò Ribaudo |
Surma Nicolò Ribaudo |
November 2022 |
Pipeline Operator | J. S. Choi James DiGioia Ron Buckton Tab Atkins |
J. S. Choi Ron Buckton Tab Atkins |
August 2021 |
Destructure Private Fields | Justin Ridgewell | Justin Ridgewell | December 2021 |
RegExp Buffer Boundaries (\A , \z , \Z ) |
Ron Buckton | Ron Buckton | December 2021 |
String.dedent | Misha Kaletsky Hemanth HM Justin Ridgewell |
Hemanth HM Justin Ridgewell |
June 2022 |
JSON.parseImmutable | Robin Ricard Richard Button Nicolò Ribaudo Ashley Claymore |
Robin Ricard Richard Button Nicolò Ribaudo Ashley Claymore |
July 2022 |
Module Declarations | Daniel Ehrenberg Nicolò Ribaudo |
Daniel Ehrenberg Mark Miller Nicolò Ribaudo |
November 2022 |
Symbol Predicates | Robin Ricard Jordan Harband |
Ashley Claymore Jordan Harband |
January 2023 |
Async Iterator helpers | Gus Caplan | Michael Ficarra Jonathan Keslin Kevin Gibbons |
January 2023 |
Iterator.range | Jack Works | Jack Works | March 2023 |
Async Context | Chengzhong Wu | Chengzhong Wu Justin Ridgewell |
March 2023 |
Time Zone Canonicalization | Justin Grant | Justin Grant Richard Gibson |
May 2023 |
Deferring Module Evaluation | Yulia Startsev Guy Bedford |
Yulia Startsev Guy Bedford Nicolò Ribaudo |
July 2023 |
RegExp.escape |
Domenic Denicola Benjamin Gruenbaum Jordan Harband |
Jordan Harband | September 2023 |
Uint8Array to/from Base64 | Kevin Gibbons | Kevin Gibbons | July 2023 September 2023 |
The test262 feature flag links to a code search of tests using that feature flag, which may constitute complete or partial coverage. The ❓ means there is no feature flag for tests yet.
Proposals that are Stage 1 and above must be transferred to the TC39 GitHub organization for discoverability and archival purposes. To onboard a proposal that lives outside the TC39 organization:
- Transfer your repository to the @tc39-transfer organization
- if you are a TC39 delegate, but not a member of that organization, please contact @LJHarb
- The Github Administrator, or One of the chairs, will transfer your repository to the TC39 organization the next chance they get.
Note that as part of the onboarding process your repository name may be normalized. Don't worry, repo redirects will continue to work as long as you never create a fork, or a new repository, with the same name - although Github Pages redirects will be broken (please update your links!).