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: Add new numbering system "tnsa" #614

Merged
merged 1 commit into from
Feb 15, 2022

Conversation

anba
Copy link
Contributor

@anba anba commented Sep 28, 2021

Add "tnsa" to the table of numbering systems with simple digit mappings. The
Tangsa script ("Tnsa") is a new addition in Unicode 14.

Also see: unicode-org/cldr#1326

Add "tnsa" to the table of numbering systems with simple digit mappings. The
Tangsa script ("Tnsa") is a new addition in Unicode 14.

Also see: <unicode-org/cldr#1326>
@sffc sffc requested a review from ryzokuken September 28, 2021 16:49
@FrankYFTang FrankYFTang self-requested a review October 7, 2021 17:18
@Constellation
Copy link
Member

I have one comment. This "tnsa" is just added at 08/18 and not shipped yet in ICU. Requiring this explicitly in the spec means that only engines shipping trunk ICU can fully implement ECMA 402. Isn't it too restrictive as a spec?

@srl295
Copy link
Member

srl295 commented Oct 7, 2021 via email

@anba
Copy link
Contributor Author

anba commented Oct 8, 2021

ECMA-262 also requires to always use the latest Unicode standard (emphasis mine):

A conforming implementation of ECMAScript must interpret source text input in conformance with the latest version of the Unicode Standard and ISO/IEC 10646.

The PR for updating related properties to Unicode 14 is tc39/ecma262#2515.

And ECMA-402 requires to use the latest UTS 35 version (emphasis mine):

The following referenced documents are required for the application of this document. For dated references, only the edition cited applies. For undated references, the latest edition of the referenced document (including any amendments) applies.

[...]

  • Unicode Technical Standard 35
    • Unicode Locale Data Markup Language
    • Unicode BCP 47 Locale Identifiers

ECMA-402 hasn't yet fully formalised the update process for UTS 35 changes → #584.


Names and Keywords has this text (emphasis mine):

The Unicode code points in the specified categories in the latest version of the Unicode standard must be treated as in those categories by all conforming ECMAScript implementations. ECMAScript implementations may recognize identifier code points defined in later editions of the Unicode Standard.

Is that really "later than the latest edition" or am I misreading this? So, it's okay to use future, unreleased Unicode versions?! 😄

(This paragraph was referring to specific Unicode versions in older ECMAScript versions, cf. tc39/ecma262#620.)

@srl295
Copy link
Member

srl295 commented Oct 8, 2021

Probably "later than the one supported by this edition of 402"? But probably need a separate issue for this.

@FrankYFTang
Copy link
Contributor

I have one comment. This "tnsa" is just added at 08/18 and not shipped yet in ICU. Requiring this explicitly in the spec means that only engines shipping trunk ICU can fully implement ECMA 402. Isn't it too restrictive as a spec?

ICU 70.1 which scheduled to release in Oct 27, 2021 will have such support as well as ICU 71.1 which scheduled to be ship in April 2022.
IF we merge this PR in Oct 8 2021, the first ever edition of ECMA402 will be "shipped" would be in Sumer 2022, which then will be 8+ months after the first version ICU released and ~10 months after Unicode 14 published, isn't that giving the engine implementation enough time to act?

@FrankYFTang
Copy link
Contributor

I am supporting this PR but prefer we hold it unmerged until Nov 2021- after ICU 70.1 public released. The deadline for the 2022 version of ECMA402 is after Feb 2022 anyway.

@srl295
Copy link
Member

srl295 commented Oct 8, 2021

I am supporting this PR but prefer we hold it unmerged until Nov 2021- after ICU 70.1 public released. The deadline for the 2022 version of ECMA402 is after Feb 2022 anyway.

Should you set the "ES 2022" milestone on this then?

I think that's probably what the "later than latest" wordage means above, @anba - say ES2022 has U14, then an ES2022 compliant imp could support U15 (which will be out in 2022 :)

@srl295
Copy link
Member

srl295 commented Oct 8, 2021

maybe we even want a branch for es2022. dunno

@sffc
Copy link
Contributor

sffc commented Nov 4, 2021

@ryzokuken Can you follow up on the feedback from last month's meeting?

@srl295
Copy link
Member

srl295 commented Nov 4, 2021

ICU 70.1 has been released

@sffc sffc added this to the ES 2022 milestone Nov 4, 2021
@ryzokuken
Copy link
Member

@litherum said they'd post a comment on the thread after talking to their release engineering team. Any updates Myles?

@litherum
Copy link

litherum commented Nov 8, 2021

Yes I'll comment later today.

moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Nov 17, 2021
Add the new numbering system "tnsa" and then update numbering systems by
by running `./make_intl_data.py numbering`.

Adding "tnsa" to ECMA-402 is tracked at <tc39/ecma402#614>.
ECMA-402 allows to support additional numbering systems, so even before that PR,
it's okay to support "tnsa". (<https://tc39.es/ecma402/#annex-implementation-dependent-behaviour>)

Depends on D129927

Differential Revision: https://phabricator.services.mozilla.com/D129928
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Nov 18, 2021
Add the new numbering system "tnsa" and then update numbering systems by
by running `./make_intl_data.py numbering`.

Adding "tnsa" to ECMA-402 is tracked at <tc39/ecma402#614>.
ECMA-402 allows to support additional numbering systems, so even before that PR,
it's okay to support "tnsa". (<https://tc39.es/ecma402/#annex-implementation-dependent-behaviour>)

Depends on D129927

Differential Revision: https://phabricator.services.mozilla.com/D129928
@ryzokuken
Copy link
Member

@litherum are you still on this?

@ryzokuken
Copy link
Member

@sffc can we put this on the agenda for next week? I'd love to hear the JSC team's thoughts on this before we move ahead.

@sffc
Copy link
Contributor

sffc commented Jan 13, 2022

@litherum
Copy link

@litherum said they'd post a comment on the thread after talking to their release engineering team. Any updates Myles?

We're comfortable adding tnsa to the spec.

@ryzokuken
Copy link
Member

I'll present it to plenary during this meeting, after which it can be merged.

@ryzokuken
Copy link
Member

2022-01-24: Approved by TC39-TG1.

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

Successfully merging this pull request may close these issues.

7 participants