ECMAScript proposals
ECMAScript Internationalization API Specification proposals
Active proposals
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.
Stage 3
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][json-modules] | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg | [json-modules][json-modules-tests] | [January 2021][json-modules-notes] |
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 | July 2024 |
Decorators | Daniel Ehrenberg Kristen Hewell Garrett | Kristen Hewell Garrett | decorators | March 2023 |
[JSON.parse source text access][json-parse-source] | Richard Gibson | Richard Gibson | [json-parse-with-source][json-parse-source-tests] | [January 2023][json-parse-source-notes] |
[RegExp Modifiers][regexp-modifiers] | Ron Buckton | Ron Buckton | [regexp-modifiers][regexp-modifiers-tests] | [June 2022][regexp-modifiers-notes] |
[Array.fromAsync ][from-async] | J.S. Choi | J.S. Choi | [Array.fromAsync][from-async-tests] | [May 2023][from-async-notes] |
[Sync Iterator helpers][iterator-helpers] | Gus Caplan | Michael Ficarra Jonathan Keslin Kevin Gibbons | [iterator-helpers][iterator-helpers-tests] | [November 2022][iterator-helpers-notes] |
Explicit Resource Management | Ron Buckton | Ron Buckton | [explicit-resource-management][resource-management-tests] | [March 2023][resource-management-notes] |
[Float16 on TypedArrays, DataView, Math.f16round ][float16s] | Leo Balter | Leo Balter Kevin Gibbons | [Float16Array][float16s-tests] | [May 2023][float16s-notes] |
[Decorator Metadata][decorator-metadata] | Kristen Hewell Garrett | Kristen Hewell Garrett | [decorator-metadata][decorator-metadata-tests] | [May 2023][decorator-metadata-notes] |
[Import Attributes][import-attributes] | Myles Borins Sven Sauleau Dan Clark Daniel Ehrenberg | Sven Sauleau Dan Clark Daniel Ehrenberg Nicolò Ribaudo | [import-attributes][import-attributes-tests] | July 2024 |
[Source Phase Imports][source-phase-imports] | Luca Casonato | Guy Bedford Luca Casonato | [source-phase-imports][source-phase-imports-tests] | [July 2023][source-phase-imports-notes] |
[Time Zone Canonicalization][time-zone-canon] | Justin Grant | Justin Grant Richard Gibson | :question: | [July 2023][time-zone-canon-notes] |
[Uint8Array to/from Base64][uint8array-base64] | Kevin Gibbons | Kevin Gibbons | [uint8array-base64][uint8array-base64-tests] | [February 2024][uint8array-base64-notes] |
[Dynamic Code Brand Checks][dynamic-code-brand-checks] | Nicolo Ribaudo | Krzysztof Kotowicz Mike Samuel Nicolo Ribaudo | :question: | April 2024 |
[Redeclarable global eval -introduced var s][redeclarable-global-eval-vars] | Shu-yu Guo | Shu-yu Guo | :question: | [April 2024][redeclarable-global-eval-vars-notes] |
[Promise.try ][try] | Jordan Harband | Jordan Harband | [promise-try][try-tests] | [June 2024][try-notes] |
[RegExp.escape ][escape] | Domenic Denicola Benjamin Gruenbaum Jordan Harband | Jordan Harband Kevin Gibbons | [Testing plan][escape-testplan] | July 2024 |
Stage 2.7
Proposal | Author | Champion | Test262 Feature Flag | Last Presented |
---|---|---|---|---|
ShadowRealm | Caridy Patiño Jean-Francois Paradis | Dave Herman Mark Miller Caridy Patiño Leo Balter Rick Waldron Chengzhong Wu | ShadowRealm | February 2024 |
[Math.sumPrecise ][math-sum] | Kevin Gibbons | Kevin Gibbons | [Math.sumPrecise][math-sum-tests] | [April 2024][math-sum-notes] |
[Deferring Module Evaluation][lazy-import] | Yulia Startsev Guy Bedford | Yulia Startsev Guy Bedford Nicolò Ribaudo | [Testing plan][lazy-import-testplan] | [June 2024][lazy-import-notes] |
[Joint Iteration][joint] | Michael Ficarra | Michael Ficarra | [Testing plan][joint-testplan] | [June 2024][joint-notes] |
[Atomics.pause ][atomics-pause] | Shu-yu Guo | Shu-yu Guo | :question: | [June 2024][atomics-pause-notes] |
Stage 2
Proposal | Author | Champion | Last Presented |
---|---|---|---|
function.sent metaproperty | Allen Wirfs-Brock | HE Shi-Jun | July 2019 |
throw expressions | Ron Buckton | Ron Buckton | February 2024 |
Function implementation hiding | Domenic Denicola Michael Ficarra | Michael Ficarra | June 2020 |
[collection normalization][collection-rekey] | Bradley Farias | Bradley Farias | January 2019 |
[isTemplateObject][isTemplateObject] | Mike Samuel, Krzysztof Kotowicz | Daniel Ehrenberg Jordan Harband | [April 2024][isTemplateObject-notes] |
[Map.prototype.emplace ][map-emplace] | Bradley Farias | Erica Pramer | [July 2020][map-emplace-notes] |
[Dynamic Import Host Adjustment][] | Mike Samuel, Krzysztof Kotowicz | Krzysztof Kotowicz | [December 2019][Dynamic Import Host Adjustment notes] |
[Record & Tuple][record-tuple] | Robin Ricard Richard Button | Robin Ricard Richard Button | [April 2024][record-tuple-notes] |
[Module Expressions][module-expressions] | Surma Daniel Ehrenberg Nicolò Ribaudo | Surma Nicolò Ribaudo | [November 2022][module-expressions-notes] |
[Pipeline Operator][pipeline] | J. S. Choi James DiGioia Ron Buckton Tab Atkins | J. S. Choi Ron Buckton Tab Atkins | [August 2021][pipe-notes] |
[Destructure Private Fields][destructure-private] | Justin Ridgewell | Justin Ridgewell | [December 2021][destructure-private-notes] |
[RegExp Buffer Boundaries (\A , \z , \Z )][regexp-buffer-boundaries] | Ron Buckton | Ron Buckton | [December 2021][regexp-buffer-boundaries-notes] |
[String.dedent][string.dedent] | Misha Kaletsky Hemanth HM Justin Ridgewell | Hemanth HM Justin Ridgewell | [June 2022][string.dedent-notes] |
[JSON.parseImmutable][json-parse-immutable] | Robin Ricard Richard Button Nicolò Ribaudo Ashley Claymore | Robin Ricard Richard Button Nicolò Ribaudo Ashley Claymore | [July 2022][json-parse-source-notes] |
[Module Declarations][module-declarations] | Daniel Ehrenberg Nicolò Ribaudo | Daniel Ehrenberg Mark Miller Nicolò Ribaudo | [November 2022][module-declarations-notes] |
[Symbol Predicates][symbol-predicates] | Robin Ricard Jordan Harband | Ashley Claymore Jordan Harband | [January 2023][symbol-predicates-notes] |
[Async Iterator helpers][async-iterator-helpers] | Gus Caplan | Michael Ficarra Jonathan Keslin Kevin Gibbons | [June 2024][async-it-helper-notes] |
[Iterator.range][iterator-range] | Jack Works | Jack Works | [April 2024][iterator-range-notes] |
[Async Context][async-context] | Chengzhong Wu | Andreu Botella Chengzhong Wu Justin Ridgewell | [April 2024][async-context-notes] |
[Iterator Sequencing][sequencing] | Michael Ficarra | Michael Ficarra | [June 2024][sequencing-notes] |
[Error.isError ][is-error] | Jordan Harband | Jordan Harband | [June 2024][is-error-notes] |
[ESM Phase Imports][esm-phase] | Luca Casonato Guy Bedford | Luca Casonato Guy Bedford | [June 2024][esm-phase-notes] |
["Discard" (void ) Bindings][discards] | Ron Buckton | Ron Buckton | [June 2024][discards-notes] |
[Propagate active ScriptOrModule with JobCallback Record][scriptormodule] | Chengzhong Wu | Chengzhong Wu | July 2024 |
The test262 feature flag links to a code search of tests using that feature flag, which may constitute complete or partial coverage. The :question: means there is no feature flag for tests yet.
Contributing to proposals
See Contributing to ECMAScript and How We Work for the most up-to-date information on contributing to proposals to TC39 standards and how proposals advance.
Onboarding proposals
Proposals that are Stage 1 and above must be transferred to the TC39 GitHub organization for discoverability and archival purposes. To onboard a proposal:
- 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!).
[resource-management-notes]: