Skip to content
/ proposals Public

Tracking ECMAScript Proposals

NotificationsYou must be signed in to change notification settings

tc39/proposals

Repository files navigation

ECMAScript proposals

ECMAScript Internationalization API Specification proposals

Contributing to 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

ProposalAuthorChampionTest262 Feature FlagLast Presented
Legacy RegExp features in JavaScriptClaude PacheMark Miller
Claude Pache
legacy-regexpMay 2017
TemporalPhilipp 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 testing planJuly 2024
DecoratorsDaniel Ehrenberg
Kristen Hewell Garrett
Kristen Hewell Garrettdecorators testing planMarch 2023
JSON.parse source text accessRichard GibsonRichard Gibsonjson-parse-with-source testing planJanuary 2023
Array.fromAsyncJ.S. ChoiJ.S. ChoiArray.fromAsyncMay 2023
Explicit Resource ManagementRon BucktonRon Bucktonexplicit-resource-managementMarch 2023
Decorator MetadataKristen Hewell GarrettKristen Hewell Garrettdecorator-metadataMay 2023
Source Phase ImportsLuca CasonatoGuy Bedford
Luca Casonato
source-phase-importsJuly 2023
Time Zone CanonicalizationJustin GrantJustin Grant
Richard Gibson
Temporal.TimeZoneJuly 2023
Uint8Array to/from Base64Kevin GibbonsKevin Gibbonsuint8array-base64February 2024
Dynamic Code Brand ChecksNicolò RibaudoKrzysztof Kotowicz
Mike Samuel
Nicolò Ribaudo
April 2024
Redeclarable global eval-introduced varsShu-yu GuoShu-yu GuoTesting planApril 2024
Atomics.pauseShu-yu GuoShu-yu GuoAtomics.pauseOctober 2024
Error.isErrorJordan HarbandJordan HarbandError.isErrorDecember 2024
Deferring Module EvaluationYulia Startsev
Guy Bedford
Yulia Startsev
Guy Bedford
Nicolò Ribaudo
Testing planFebruary 2025
Math.sumPreciseKevin GibbonsKevin GibbonsMath.sumPreciseOctober 2024

Stage 2.7

ProposalAuthorChampionTest262 Feature FlagLast Presented
ShadowRealmCaridy Patiño
Jean-Francois Paradis
Dave Herman
Mark Miller
Caridy Patiño
Leo Balter
Rick Waldron
Chengzhong Wu
ShadowRealmFebruary 2024
Joint IterationMichael FicarraMichael FicarraTesting planJune 2024
Iterator SequencingMichael FicarraMichael FicarraOctober 2024
ESM Phase ImportsLuca Casonato
Guy Bedford
Luca Casonato
Guy Bedford
December 2024
Immutable ArrayBuffersMark Miller
Peter Hoddie
Richard Gibson
Jack Works
Mark Miller
Peter Hoddie
Richard Gibson
Jack Works
February 2025
Non-extensible Applies to PrivateMark Miller
Shu-yu Guo
Chip Morningstar
Erik Marks
Mark Miller
Shu-yu Guo
Chip Morningstar
Erik Marks
April  2025
UpsertDaniel Minor, Lauritz Thoresen Angeltveit, Jonas Haukenes, Sune Lianes, Vetle Larsen, Mathias Hop NessDaniel MinorTesting planApril  2025

Stage 2

ProposalAuthorChampionStage 2.7 reviewersLast Presented
function.sent metapropertyAllen Wirfs-BrockHE Shi-JunJuly 2019
throw expressionsRon BucktonRon BucktonFebruary 2024
Function implementation hidingDomenic Denicola
Michael Ficarra
Michael FicarraJune 2020
collection normalizationBradley FariasBradley FariasJanuary 2019
isTemplateObjectMike Samuel, Krzysztof KotowiczDaniel Ehrenberg
Jordan Harband
April 2024
Dynamic Import Host AdjustmentMike Samuel, Krzysztof KotowiczKrzysztof KotowiczDecember 2019
Module ExpressionsSurma
Daniel Ehrenberg
Nicolò Ribaudo
Surma
Nicolò Ribaudo
November 2022
Pipeline OperatorJ. S. Choi
James DiGioia
Ron Buckton
Tab Atkins
J. S. Choi
Ron Buckton
Tab Atkins
August 2021
Destructure Private FieldsJustin RidgewellJustin RidgewellDecember 2021
RegExp Buffer Boundaries (\A, \z, \Z)Ron BucktonRon BucktonDecember 2021
String.dedentMisha Kaletsky
Hemanth HM
Justin Ridgewell
Hemanth HM
Justin Ridgewell
June 2022
JSON.parseImmutableRobin Ricard
Richard Button
Nicolò Ribaudo
Ashley Claymore
Robin Ricard
Richard Button
Nicolò Ribaudo
Ashley Claymore
July 2022
Module DeclarationsDaniel Ehrenberg
Nicolò Ribaudo
Daniel Ehrenberg
Mark Miller
Nicolò Ribaudo
November 2022
Symbol PredicatesRobin Ricard
Jordan Harband
Ashley Claymore
Jordan Harband
May 2023
Async Iterator helpersGus CaplanMichael Ficarra
Jonathan Keslin
Kevin Gibbons
June 2024
Iterator.rangeJack WorksJack WorksApril 2024
Async ContextChengzhong WuAndreu Botella
Chengzhong Wu
Justin Ridgewell
James M Snell
Mark S. Miller
April 2024
"Discard" (void) BindingsRon BucktonRon BucktonJune 2024
Propagate active ScriptOrModule with JobCallback RecordChengzhong WuChengzhong WuJuly 2024
Structs: Fixed Layout Objects and Some Synchronization PrimitivesShu-yu GuoShu-yu GuoMark Miller
Waldemar Horwat
Yulia Startsev
Nicolò Ribaudo
October 2024
ExtractorsRon BucktonRon BucktonJordan Harband
Justin Ridgewell
October 2024
iterator chunkingMichael FicarraMichael FicarraAshley Claymore
Jordan Harband
Jesse Alama
October 2024
Error Stack AccessorJordan HarbandJordan Harband
Mark Miller
Nicolò Ribaudo
Michael Ficarra
February 2025
Deferred Re-exportsNicolò RibaudoNicolò RibaudoChengzhong Wu
Ashley Claymore
April 2025

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.

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 organization for discoverability and archival purposes. To onboard a proposal:

  1. Transfer your repository to the @tc39-transfer organization
    • if you are a TC39 delegate, but not a member of that organization, please contact @LJHarb
  2. The 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 Pages redirects will be broken (please update your links!).