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

Normative: Make @@toStringTag values more meaningful #430

Merged
merged 2 commits into from
Jun 1, 2020

Conversation

shvaikalesh
Copy link
Member

Resolves #176.

If this reaches consensus, I will proceed with test262 coverage and WebKit implementation.

cc @littledan @Ms2ger

@Ms2ger
Copy link
Contributor

Ms2ger commented Apr 28, 2020

This seems fine to me in theory, but the main question is if implementers will implement it.

@shvaikalesh
Copy link
Member Author

shvaikalesh commented Apr 28, 2020

V8, JSC, and SpiderMonkey follow the current spec (except Intl.PluralRules.prototype[Symbol.toStringTag] is not defined in Firefox 75).

I am sure that with a few failing tests that are easy to fix, implementations will come.

@sffc sffc requested review from anba and leobalter April 28, 2020 20:08
@sffc
Copy link
Contributor

sffc commented Apr 28, 2020

Thanks for this; I think browsers will implement it. I added it to the agenda to discuss at the next TG2 call, and then we can have it approved at the June TC39.

@littledan
Copy link
Member

I'm in favor of this; I bet it'll be web-compatible, but we could roll it back if needed.

@sffc sffc added this to the ES 2021 milestone May 2, 2020
@sffc sffc added c: meta Component: intl-wide issues s: discuss Status: TG2 must discuss to move forward labels May 2, 2020
@leobalter
Copy link
Member

@shvaikalesh I believe this will be well accepted. It would be very helpful if you could add the respective coverage in Test262. This way we have a good status of matching conformance and perhaps a vision of (non) breaking challenges.

@sffc sffc added has consensus Has consensus from TC39-TG2 s: in progress Status: the issue has an active proposal and removed s: discuss Status: TG2 must discuss to move forward labels May 21, 2020
@FrankYFTang FrankYFTang self-requested a review May 21, 2020 21:25
Copy link
Contributor

@FrankYFTang FrankYFTang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@FrankYFTang
Copy link
Contributor

We need to update the following test262 tests right after we land this PR

intl402/Collator/instance-class.js
intl402/Collator/prototype/builtin.js
intl402/DateTimeFormat/prototype/builtin.js
intl402/DateTimeFormat/instance-class.js
intl402/NumberFormat/prototype/builtin.js
intl402/NumberFormat/instance-class.js
intl402/NumberFormat/prototype/toStringTag/configurable.js
intl402/NumberFormat/prototype/toStringTag/prop-desc.js
intl402/PluralRules/prototype/builtins.js

@shvaikalesh
Copy link
Member Author

shvaikalesh commented May 21, 2020

@FrankYFTang Thank you for extensive list, I will make sure to update them all in tc39/test262#2634.

@FrankYFTang
Copy link
Contributor

FYI - bug for v8 to sync with this PR https://bugs.chromium.org/p/v8/issues/detail?id=10554

Copy link
Contributor

@anba anba left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@leobalter
Copy link
Member

Is this a thing we want to document in Annex B - Additions and Changes That Introduce Incompatibilities with Prior Editions?

yes, we need to add that.

@shvaikalesh would you mind adding it?

@FrankYFTang
Copy link
Contributor

TC39 reach consensus this morning.

Copy link
Member

@leobalter leobalter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

gibson042 pushed a commit to tc39/proposal-intl-segmenter that referenced this pull request Jun 2, 2020
pull bot pushed a commit to Alan-love/v8 that referenced this pull request Jun 2, 2020
Implement the spec changes in tc39/ecma402#430

Bug: v8:10554
Change-Id: I421d6feb94810027cf17ff58a4ec5357940ef44a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2212889
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#68119}
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Jun 4, 2020
xeonchen pushed a commit to xeonchen/gecko that referenced this pull request Jun 4, 2020
caiolima pushed a commit to caiolima/webkit that referenced this pull request Jun 8, 2020
https://bugs.webkit.org/show_bug.cgi?id=212769

Reviewed by Yusuke Suzuki.

JSTests:

* test262/expectations.yaml:
Mark 16 test cases as passing.

* stress/intl-collator.js:
* stress/intl-datetimeformat.js:
* stress/intl-numberformat.js:
* stress/intl-pluralrules.js:
Update stress tests.

Source/JavaScriptCore:

Implementation of tc39/ecma402#430, which achieved consensus this week.
This ensures we get "[object Intl.Collator]" (etc.) instead "[object Object]" for older Intl classes.

* runtime/IntlCollatorPrototype.cpp:
* runtime/IntlDateTimeFormatPrototype.cpp:
* runtime/IntlNumberFormatPrototype.cpp:
* runtime/IntlPluralRulesPrototype.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@262568 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ryanhaddad pushed a commit to WebKit/WebKit that referenced this pull request Dec 22, 2020
https://bugs.webkit.org/show_bug.cgi?id=212769

Reviewed by Yusuke Suzuki.

JSTests:

* test262/expectations.yaml:
Mark 16 test cases as passing.

* stress/intl-collator.js:
* stress/intl-datetimeformat.js:
* stress/intl-numberformat.js:
* stress/intl-pluralrules.js:
Update stress tests.

Source/JavaScriptCore:

Implementation of tc39/ecma402#430, which achieved consensus this week.
This ensures we get "[object Intl.Collator]" (etc.) instead "[object Object]" for older Intl classes.

* runtime/IntlCollatorPrototype.cpp:
* runtime/IntlDateTimeFormatPrototype.cpp:
* runtime/IntlNumberFormatPrototype.cpp:
* runtime/IntlPluralRulesPrototype.cpp:


Canonical link: https://commits.webkit.org/225582@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@262568 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c: meta Component: intl-wide issues has consensus Has consensus from TC39-TG2 s: in progress Status: the issue has an active proposal
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Why are the toStringTag values "Object"?
7 participants