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 | Tests | Last Presented |
---|---|---|---|---|
Legacy RegExp features in JavaScript | Claude Pache | Mark Miller Claude Pache |
✅ | May 2017 |
Atomics.waitAsync |
Lars Hansen | Shu-yu Guo Lars Hansen |
✅ | December 2019 |
Import Assertions | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
✅ | November 2020 |
JSON Modules | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg |
✅ | 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 |
✅ | March 2021 |
Resizable and growable ArrayBuffers | Shu-yu Guo | Shu-yu Guo | ✅ | May 2021 |
ShadowRealm | Caridy Patiño Jean-Francois Paradis |
Dave Herman Mark Miller Caridy Patiño Leo Balter Rick Waldron Chengzhong Wu |
✅ | December 2021 |
Array Grouping | Justin Ridgewell | Justin Ridgewell | ✅ (array-grouping feature) |
December 2021 |
Decorators | Daniel Ehrenberg Chris Garrett |
Chris Garrett | ❓ | March 2022 |
RegExp v flag with set notation + properties of strings | Markus Scherer Mathias Bynens |
Mathias Bynens | ✅ (regexp-v-flag feature) |
March 2022 |
Change Array by Copy | Ashley Claymore Robin Ricard |
Ashley Claymore Robin Ricard |
🚧 | March 2022 |
Symbols as WeakMap keys | Daniel Ehrenberg Richard Button Robin Ricard Leo Balter Rick Waldron Caridy Patiño |
Daniel Ehrenberg Richard Button Robin Ricard Leo Balter Rick Waldron Caridy Patiño |
❓ | June 2022 |
JSON.parse source text access | Richard Gibson | Richard Gibson | ❓ | June 2022 |
RegExp Modifiers | Ron Buckton | Ron Buckton | ❓ | June 2022 |
Duplicate named capture groups | Kevin Gibbons | Kevin Gibbons | ❓ | July 2022 |
Array.fromAsync |
J.S. Choi | J.S. Choi | ❓ | September 2022 |
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 |
New Set methods | Michał Wadas Sathya Gunasekaran |
Sathya Gunasekaran | January 2019 |
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 |
Iterator helpers | Gus Caplan | Michael Ficarra Jonathan Keslin |
July 2020 |
Explicit Resource Management | Ron Buckton | Ron Buckton | February 2020 |
Map.prototype.emplace |
Bradley Farias | Erica Pramer | July 2020 |
Dynamic Import Host Adjustment | Mike Samuel, Krzysztof Kotowicz | Krzysztof Kotowicz | December 2019 |
WeakRefs cleanupSome |
Yulia Startsev Daniel Ehrenberg |
Yulia Startsev Daniel Ehrenberg |
July 2020 |
Record & Tuple | Robin Ricard Richard Button |
Robin Ricard Richard Button |
December 2021 |
Module Blocks | Surma Daniel Ehrenberg |
Surma | January 2021 |
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 |
Decorator Metadata | Chris Garrett | Chris Garrett | March 2022 |
String.dedent | Misha Kaletsky Hemanth HM Justin Ridgewell |
Hemanth HM Justin Ridgewell |
June 2022 |
Import Reflection | Luca Casonato | Guy Bedford | July 2022 |
JSON.parseImmutable | Robin Ricard Richard Button Nicolò Ribaudo Ashley Claymore |
Robin Ricard Richard Button Nicolò Ribaudo Ashley Claymore |
July 2022 |
Well-Formed Unicode Strings | Guy Bedford Bradley Farias |
Guy Bedford Bradley Farias Michael Ficarra |
September 2022 |
✅ means a pull request for tests was merged.
❓ means there is no pull request for tests yet.
🚧 means a pull request for tests was created, but not merged 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
- One of the chairs (@bterlson, @gesa, @MylesBorins, or @robpalme) 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!).