Skip to content
This repository has been archived by the owner on Jul 8, 2024. It is now read-only.

Stage 4 tracking #78

Closed
11 tasks done
bakkot opened this issue Nov 30, 2022 · 17 comments
Closed
11 tasks done

Stage 4 tracking #78

bakkot opened this issue Nov 30, 2022 · 17 comments

Comments

@bakkot
Copy link
Collaborator

bakkot commented Nov 30, 2022

This proposal achieved stage 3 at the November 2022 meeting. This is a tracking issue for getting stage 4.

  • committee consensus
  • open PR to the spec - PR
    • editors have approved the PR
  • write test262 tests - issue, PR
    • merge test262 tests
  • at least two implementations
  • significant in-the-field experience
@linusg
Copy link
Member

linusg commented Dec 2, 2022

Initial implementation in LibJS has landed: SerenityOS/serenity#16279 (thanks @IdanHo!)

@Nico314159
Copy link

Nico314159 commented Dec 22, 2023

What exactly can I do as an individual to help this proposal reach stage 4?
I ask because this proposal is (no pun intended) in the intersection of the venn diagram for "would be quite useful" and "has a good shot at eventual acceptance".
There's a lot of things like operator overloading, pipe operator, Decimal, and Records/Tuples that meet only the first and not the second, but this proposal I have a lot of hope for.

@bakkot
Copy link
Collaborator Author

bakkot commented Dec 22, 2023

@Nico314159 The thing which is needed at stage 3 is shipping implementations. There's implementations in all the major browsers, but I believe Chrome and Firefox are waiting for test262 tests before they ship. I've written tests at tc39/test262#3966 but they need review from a maintainer. So, nothing individuals can do right now except contribute to maintainership of test262.

Contributing test262 tests is often a good way to help stage 3 proposals advance. (Or proposals at the new stage 2.7.) In this case they're already written though.

@Nico314159
Copy link

@Nico314159 The thing which is needed at stage 3 is shipping implementations. There's implementations in all the major browsers, but I believe Chrome and Firefox are waiting for test262 tests before they ship. I've written tests at tc39/test262#3966 but they need review from a maintainer. So, nothing individuals can do right now except contribute to maintainership of test262.

Contributing test262 tests is often a good way to help stage 3 proposals advance. (Or proposals at the new stage 2.7.) In this case they're already written though.

Out of curiosity, why is it called stage 2.7?

@ljharb
Copy link
Member

ljharb commented Dec 24, 2023

It's later than 2, close to 3, but not quite there yet.

@Nico314159
Copy link

Nico314159 commented Dec 24, 2023

It's later than 2, close to 3, but not quite there yet.

But I why specifically .7? Does it have to do with Euler's number? Or is it just an arbitrary choice?

@ljharb
Copy link
Member

ljharb commented Dec 24, 2023

Pretty arbitrary i think.

@bakkot
Copy link
Collaborator Author

bakkot commented Dec 24, 2023

It was the outcome of an extremely tedious discussion, the dozens of pages of notes for which will be published in a couple of weeks if you need a soporific.

@Nico314159
Copy link

It was the outcome of an extremely tedious discussion, the dozens of pages of notes for which will be published in a couple of weeks if you need a soporific.

I genuinely cannot tell if this is a joke or not.

@bakkot
Copy link
Collaborator Author

bakkot commented Dec 24, 2023

Alas it is not. TC39 is as susceptible to bikeshedding as any other group. And we do publish transcripts of meetings. We had a little extra time this meeting, which probably contributed to this topic running long.

@frou
Copy link

frou commented Jan 14, 2024

Apparently the new set methods arrived in V8 a couple of days ago, so might show up in Chrome soonish?

@bakkot
Copy link
Collaborator Author

bakkot commented Jan 14, 2024

Yup, they should be in Chrome 122, which is stable on Feb 14.

@mhkeller
Copy link

Looks like this has shipped in Chrome and Safari and perhaps will come in Firefox 126, which I imagine will ship around May.

@linusg
Copy link
Member

linusg commented Apr 6, 2024

Implemented in Kiesel, thanks @sno2!

@controversial
Copy link

Shipping in Firefox 127

@Nico314159
Copy link

TypeScript has support now!

@ljharb
Copy link
Member

ljharb commented Jul 8, 2024

This has stage 4.

@ljharb ljharb closed this as completed Jul 8, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants