Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stage 4 tracking #78

Open
7 of 11 tasks
bakkot opened this issue Nov 30, 2022 · 14 comments
Open
7 of 11 tasks

Stage 4 tracking #78

bakkot opened this issue Nov 30, 2022 · 14 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!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants