rektide / tc39-proposals

Tracking ECMAScript Proposals

Home Page:https://tc39.github.io/process-document/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ECMAScript proposals

ECMAScript Internationalization API Specification proposals

Active proposals

Proposals follow this process document. This list contains only stage 1 proposals and higher that have not yet been withdrawn/rejected, or become finished.

Stage 3

🚀 Proposal Author Champion Tests
🚀 Function.prototype.toString revision Michael Ficarra Michael Ficarra
global Jordan Harband Jordan Harband
🚀 Rest/Spread Properties Sebastian Markbåge Sebastian Markbåge
Asynchronous Iteration Domenic Denicola Domenic Denicola 🚧
import() Domenic Denicola Domenic Denicola
RegExp Lookbehind Assertions Gorkem Yakin, Nozomu Katō, Daniel Ehrenberg Daniel Ehrenberg, Mathias Bynens
RegExp Unicode Property Escapes Mathias Bynens Brian Terlson, Daniel Ehrenberg, Mathias Bynens
🚀 RegExp named capture groups Gorkem Yakin, Daniel Ehrenberg Daniel Ehrenberg, Brian Terlson
Legacy RegExp features in JavaScript Claude Pache Mark Miller, Claude Pache
🚀 Promise.prototype.finally Jordan Harband Jordan Harband 🚧
BigInt Daniel Ehrenberg Daniel Ehrenberg 🚧
Optional catch binding Michael Ficarra Michael Ficarra
import.meta Domenic Denicola Domenic Denicola
Private instance methods and accessors Daniel Ehrenberg Daniel Ehrenberg, Kevin Gibbons
Array.prototype.{flatMap,flatten} Brian Terlson, Michael Ficarra Brian Terlson, Michael Ficarra
Numeric separators Sam Goto, Rick Waldron Sam Goto, Rick Waldron 🚧
Class Public Instance Fields & Private Instance Fields Daniel Ehrenberg. Kevin Gibbons Daniel Ehrenberg, Jeff Morrison, Kevin Smith, Kevin Gibbons

Stage 2

🚀 Proposal Author Champion
Static class fields and private static methods Daniel Ehrenberg, Kevin Gibbons, Jeff Morrison, Kevin Smith Daniel Ehrenberg
function.sent metaproperty Allen Wirfs-Brock Allen Wirfs-Brock
🚀 String.prototype.{trimStart,trimEnd} Sebastian Markbåge Sebastian Markbåge
Decorators Daniel Ehrenberg Yehuda Katz, Brian Terlson, Daniel Ehrenberg
throw expressions Ron Buckton Ron Buckton
🚀 String#matchAll Jordan Harband Jordan Harband
Atomics.waitAsync Lars Hansen Shu-yu Guo, Lars Hansen
JSON superset Richard Gibson Mark Miller, Mathias Bynens

Stage 1

🚀 Proposal Author Champion
Date.parse fallback semantics Morgan Phillips Morgan Phillips
export v from "mod"; statements Lee Byron Ben Newman, John-David Dalton
🚀 Observable Jafar Husain Jafar Husain, Mark Miller
WeakRefs Dean Tribble Dean Tribble
Frozen Realms Mark Miller, Chip Morningstar, Caridy Patiño Mark Miller, Chip Morningstar, Caridy Patiño
Math Extensions Rick Waldron Rick Waldron
of and from on collection constructors Leo Balter Leo Balter
Generator arrow functions (=>*) Brendan Eich, Domenic Denicola
Promise.try Jordan Harband Jordan Harband
Optional Chaining Gabriel Isenberg, Claude Pache Gabriel Isenberg
Math.signbit: IEEE-754 sign bit JF Bastien JF Bastien
Error stacks Jordan Harband Jordan Harband
do expressions Dave Herman Dave Herman
Realms Caridy Patiño, Jean-Francois Paradis Dave Herman, Mark Miller, Caridy Patiño
Temporal Maggie Pint, Matt Johnson Maggie Pint, Brian Terlson
Float16 on TypedArrays, DataView, Math.hfround Leo Balter Leo Balter
🚀 Symbol.prototype.description Michael Ficarra Michael Ficarra
Change Number.parseInt/parseFloat to not coerce null/undefined/NaN (repo link TBD) Brendan Eich
Binary AST Shu-yu Guo Shu-yu Guo
Pipeline Operator Daniel Ehrenberg Daniel Ehrenberg
Extensible numeric literals Daniel Ehrenberg Daniel Ehrenberg
First-class protocols Michael Ficarra Michael Ficarra
Nullish coalescing Operator Gabriel Isenberg Gabriel Isenberg
Partial application Ron Buckton Ron Buckton
Cancellation API Ron Buckton Ron Buckton & Brian Terlson
InterpreterDirective Bradley Farias Bradley Farias
String.prototype.replaceAll Peter Marshall, Jakob Gruber, Mathias Bynens Mathias Bynens
String.prototype.codePoints Ingvar Stepanyan Mathias Bynens
Distinguishing literal strings Mike West Adam Klein, Mike West
Object.freeze + Object.seal syntax Keith Cirkel Keith Cirkel
Block Params Sam Goto Sam Goto

🚀 means the champion thinks it's ready to advance but has not yet presented to the committee.

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.

Contributing new proposals

Please see Contributing to ECMAScript for the most up-to-date information on contributing proposals to this standard.

Onboarding existing 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 that lives outside the TC39 organization:

  1. Transfer your repository to the @tc39-transfer organization
  • if you are a TC39 delegate, but not an admin in that organization, please contact @LJHarb
  1. @bterlson or @littledan 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 - although Github Pages redirects will be broken (please update your links!).

About

Tracking ECMAScript Proposals

https://tc39.github.io/process-document/