Finished Proposals

March 31, 2026 · View on GitHub

Finished proposals are proposals that have reached stage 4, and are (or soon will be) included in the latest draft of the specification.

ProposalAuthorChampion(s)Meeting NotesExpected Publication Year
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
 -2025‑09
 -2024‑10
 -2024‑02
 -2023‑03
 -2022‑06
 -2021‑03
 -2020‑09
 -2018‑09
2027
UpsertDaniel Minor
Lauritz Thoresen Angeltveit
Jonas Haukenes
Sune Lianes
Vetle Larsen
Mathias Hop Ness
Daniel Minor -2026‑01
 -2025‑07
 -2025‑04
 -2024‑12
 -2024‑10
 -2020‑07
 -2019‑10
2026
JSON.parse source text accessRichard GibsonRichard Gibson -2025‑11
 -2023‑09
 -2023‑01
 -2022‑06
 -2021‑10
 -2020‑07
 -2018‑09
2026
Iterator SequencingMichael FicarraMichael Ficarra -2025‑11
 -2025‑07
 -2025‑05
 -2024‑12
 -2024‑10
 -2024‑06
 -2024‑02
 -2023‑11
 -2023‑09
2026
Uint8Array to/from Base64Kevin GibbonsKevin Gibbons -2025‑07
 -2024‑06
 -2024‑02
 -2023‑11
 -2023‑09
 -2023‑07
 -2023‑05
 -2021‑07
2026
Math.sumPreciseKevin GibbonsKevin Gibbons -2025‑07
 -2024‑10
 -2024‑04
 -2024‑02
 -2023‑11
2026
Error.isErrorJordan HarbandJordan Harband -2025‑05
 -2024‑12
 -2024‑10
 -2024‑07
 -2024‑06
 -2024‑04
 -2016‑03
2026
Array.fromAsyncJ.S. ChoiJ.S. Choi -2025‑05
 -2025‑04
 -2023‑05
 -2022‑09
 -2022‑01
 -2021‑12
 -2021‑10
 -2021‑08
2026
RegExp.escapeDomenic Denicola
Benjamin Gruenbaum
Jordan Harband
Jordan Harband
Kevin Gibbons
 -2025‑02
 -2024‑07
 -2024‑04
 -2024‑02
 -2023‑09
 -2021‑01
 -2015‑07
2025
Redeclarable global eval-introduced varsShu-yu GuoShu-yu Guo -2025‑02
 -2024‑04
2025
Float16 on TypedArrays, DataView, Math.f16roundLeo BalterLeo Balter
Kevin Gibbons
 -2025‑02
 -2023‑05
 -2023‑03
 -2017‑05
2025
Promise.tryJordan HarbandJordan Harband -2024‑10
 -2024‑06
 -2024‑04
 -2024‑02
 -2016‑11
2025
Sync Iterator helpersGus CaplanMichael Ficarra
Jonathan Keslin
Kevin Gibbons
 -2024‑10
 -2024‑12
 -2023‑11
 -2023‑07
 -2023‑05 [2]
 -2023‑03
 -2022‑11
 -2022‑09
 -2022‑07
 -2021‑08
 -2020‑07
 -2020‑06
 -2019‑01
2025
JSON ModulesMyles Borins
Sven Sauleau
Dan Clark
Daniel Ehrenberg
Myles Borins
Sven Sauleau
Dan Clark
Daniel Ehrenberg
 -2024‑10
 -2024‑06
 -2023‑07
 -2021‑01 [2]
 -2020‑11 [2]
 -2020‑09
 -2020‑07
2025
Import AttributesMyles Borins
Sven Sauleau
Dan Clark
Daniel Ehrenberg
Sven Sauleau
Dan Clark
Daniel Ehrenberg
Nicolò Ribaudo
 -2024‑10
 -2024‑07
 -2023‑09
 -2023‑07
 -2023‑03
 -2020‑06 [2]
 -2020‑02
 -2019‑12 [2]
2025
RegExp ModifiersRon BucktonRon Buckton -2024‑10
 -2023‑11
 -2023‑07
 -2022‑06
 -2021‑12
 -2021‑10
2025
New Set methodsMichał Wadas
Sathya Gunasekaran
Kevin Gibbons
Kevin Gibbons -2024‑04
 -2024‑02
 -2023‑07
 -2023‑03
 -2022‑11
 -2022‑09
 -2022‑07
 -2019‑01
 -2018‑05
2025
Duplicate named capture groupsKevin GibbonsKevin Gibbons -2024‑04
 -2023‑07
 -2022‑06 [2]
2025
ArrayBuffer transferShu-yu Guo
Jordan Harband
Yagiz Nizipli
Shu-yu Guo
Jordan Harband
Yagiz Nizipli
 -2024‑02
 -2023‑01
 -2018‑07
2024
Promise.withResolversPeter KlechaPeter Klecha -2023‑11
 -2023‑07
 -2023‑05
 -2023‑03
2024
Array GroupingJustin RidgewellJustin Ridgewell
Jordan Harband
 -2023‑11
 -2023‑01
 -2021‑07
2024
Resizable and growable ArrayBuffersShu-yu GuoShu-yu Guo -2023‑09
 -2022‑03
 -2021‑01
 -2020‑09
 -2020‑07
2024
RegExp v flag with set notation + properties of stringsMarkus Scherer
Mathias Bynens
Mathias Bynens -2023‑05
 -2022‑09
2024
Atomics.waitAsyncLars HansenShu-yu Guo
Lars Hansen
 -2023‑05
 -2020‑03
 -2019‑12
 -2017‑09
2024
Well-Formed Unicode StringsGuy Bedford
Bradley Farias
Guy Bedford
Bradley Farias
Michael Ficarra
 -2023‑05
 -2022‑09
2024
Change Array by CopyAshley Claymore
Robin Ricard
Ashley Claymore
Robin Ricard
 -2022‑03
 -2022‑07
 -2021‑10
2023
Symbols as WeakMap keysDaniel 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
 -2023‑01
 -2022‑11
 -2022‑06
 -2021‑12
2023
Hashbang GrammarBradley FariasBradley Farias -2022‑07
 -2018‑03
2023
Array find from lastWenlu WangWenlu Wang
Daniel Rosenwasser
 -2022‑06
 -2022‑03
 -2021‑01
2023
Error CauseChengzhong WuChengzhong Wu
Hemanth HM
 -2021‑10
 -2021‑03
 -2020‑09
2022
Class Static BlockRon BucktonRon Buckton -2021‑08
 -2021‑01
2022
Accessible Object.prototype.hasOwnPropertyJamie KyleTierney Cyren
Jamie Kyle
 -2021‑08
 -2021‑05
2022
.at()Shu-yu Guo
Tab Atkins
Shu-yu Guo
Tab Atkins
 -2021‑08
 -2020‑11
 -2020‑09
2022
Ergonomic brand checks for Private FieldsJordan HarbandJordan Harband -2021‑07
 -2021‑04
2022
Top-level awaitMyles Borins
Yulia Startsev
Daniel Ehrenberg
Guy Bedford
Ms2ger
Myles Borins
Yulia Startsev
 -2021‑05
 -2019‑06
2022
RegExp Match IndicesRon BucktonRon Buckton -2021‑05
 -2021‑04
2022
Class Fields (Private instance methods and accessors, Class Public Instance Fields & Private Instance Fields, Static class fields and private static methods)Daniel EhrenbergDaniel Ehrenberg
Kevin Gibbons
 -2021‑04
 -2021‑01
2022
Numeric separatorsSam Goto
Rick Waldron
Sam Goto
Rick Waldron
Leo Balter
 -2020‑07
 -2019‑12
2021
Logical Assignment OperatorsJustin RidgewellJustin Ridgewell
Hemanth HM
 -2020‑07
 -2020‑03
2021
WeakRefsDean Tribble
Sathya Gunasekaran
Dean Tribble
Mark Miller
Till Schneidereit
Sathya Gunasekaran
Daniel Ehrenberg
 -2020‑07
 -2019‑06
2021
Promise.anyMathias Bynens
Kevin Gibbons
Sergey Rubanov
Mathias Bynens -2020‑07
 -2020‑02
2021
String.prototype.replaceAllPeter Marshall
Jakob Gruber
Mathias Bynens
Mathias Bynens -2020‑06
 -2019‑10
2021
import.metaDomenic DenicolaGus Caplan -2020‑03
 -2018‑09
2020
Nullish coalescing OperatorGabriel IsenbergGabriel Isenberg
Justin Ridgewell
Daniel Rosenwasser
 -2019‑12
 -2019‑07
2020
Optional ChainingGabriel Isenberg
Claude Pache
Dustin Savery
Gabriel Isenberg
Dustin Savery
Justin Ridgewell
Daniel Rosenwasser
 -2019‑12
 -2019‑07
2020
for-in mechanicsKevin GibbonsKevin Gibbons -2019‑12
 -2019‑06
2020
globalThisJordan HarbandJordan Harband -2019‑10
 -2018‑07
2020
Promise.allSettledJason Williams
Robert Pamely
Mathias Bynens
Mathias Bynens -2019‑07
 -2019‑06
2020
BigIntDaniel EhrenbergDaniel Ehrenberg -2019‑06
 -2018‑05
2020
import()Domenic DenicolaDomenic Denicola -2019‑06
 -2018‑07
2020
String.prototype.matchAllJordan HarbandJordan Harband -2019‑03
 -2018‑05
2020
Array.prototype.{flat,flatMap}Brian Terlson
Michael Ficarra
Mathias Bynens
Brian Terlson
Michael Ficarra
 -2019‑01
 -2018‑05
2019
String.prototype.{trimStart,trimEnd}Sebastian MarkbågeSebastian Markbåge
Mathias Bynens
 -2019‑01
 -2017‑07
2019
Well-formed JSON.stringifyRichard GibsonMathias Bynens -2019‑01
 -2018‑05
2019
Object.fromEntriesDarien Maillet ValentineJordan Harband
Kevin Gibbons
 -2019‑01
 -2018‑05
2019
Function.prototype.toString revisionMichael FicarraMichael Ficarra -2018‑11
 -2017‑05
2019
Symbol.prototype.descriptionMichael FicarraMichael Ficarra -2018‑11
 -2017‑05
2019
JSON supersetRichard GibsonMark Miller
Mathias Bynens
 -2018‑05
 -2017‑09
2019
Optional catch bindingMichael FicarraMichael Ficarra -2018‑05
 -2017‑07
2019
Asynchronous IterationDomenic DenicolaDomenic Denicola -2018‑01
 -2017‑07
2018
Promise.prototype.finallyJordan HarbandJordan Harband -2018‑01
 -2017‑07
2018
RegExp Unicode Property EscapesMathias BynensBrian Terlson
Daniel Ehrenberg
Mathias Bynens
 -2018‑01
 -2017‑05
2018
RegExp Lookbehind AssertionsGorkem Yakin
Nozomu Katō
Daniel Ehrenberg
Daniel Ehrenberg
Mathias Bynens
 -2018‑01
 -2017‑01
2018
Rest/Spread PropertiesSebastian MarkbågeSebastian Markbåge -2018‑01
 -2017‑07
2018
RegExp named capture groupsGorkem Yakin
Daniel Ehrenberg
Daniel Ehrenberg
Brian Terlson
Mathias Bynens
 -2017‑11
 -2017‑05
2018
s (dotAll) flag for regular expressionsMathias BynensBrian Terlson
Mathias Bynens
 -2017‑11
 -2017‑05
2018
Lifting template literal restrictionTim DisneyTim Disney -2017‑03
 -2016‑11
2018
Shared memory and atomicsLars T HansenLars T Hansen -2017‑01
 -2016‑05
2017
Async functionsBrian TerlsonBrian Terlson -2016‑07
 -2015‑07
2017
Trailing commas in function parameter lists and callsJeff MorrisonJeff Morrison -2016‑07
 -2016‑01
2017
Object.getOwnPropertyDescriptorsJordan Harband
Andrea Giammarchi
Jordan Harband
Andrea Giammarchi
 -2016‑05
 -2015‑09
2017
String paddingJordan HarbandJordan Harband
Rick Waldron
 -2016‑05
 -2015‑07
2017
Object.values/Object.entriesJordan HarbandJordan Harband -2016‑03
 -2015‑03
2017
Exponentiation operatorRick WaldronRick Waldron -2016‑01
 -2015‑01
2016
Array.prototype.includesDomenic DenicolaDomenic Denicola
Rick Waldron
 -2015‑11
 -2015‑07
 -2014‑11
 -2014‑09
 -2014‑07
 -2014‑04
2016

See also the active proposals, stage 1 proposals, stage 0 proposals, and inactive proposals documents.