node icon indicating copy to clipboard operation
node copied to clipboard

intl.datetimeformat comma removed after version 20.11.1

Open dgabrielm opened this issue 1 year ago • 7 comments

Version

20.11.2+

Platform

Darwin Darios-MacBook-Pro.local 22.6.0 Darwin Kernel Version 22.6.0: Wed Oct 4 21:25:26 PDT 2023; root:xnu-8796.141.3.701.17~4/RELEASE_X86_64 x86_64

Subsystem

intl.datetimeformate

What steps will reproduce the bug?

open terminal confirm node version is above 20.11.1 node node interface runs d = new Date(Date.now()) formatted = new Intl.DateTimeFormat('en-GB', { dateStyle: 'full', timeStyle: 'medium' }).format(d)

output will show date string e.g. 'Tuesday 21 May 2024 at 09:55:02' with missing comma

If you repeat the process with 20.11.1 or below the output will be with a comma e.g. 'Tuesday, 21 May 2024 at 09:55:02'

How often does it reproduce? Is there a required condition?

every time

What is the expected behavior? Why is that the expected behavior?

output of formatted date should be (example) 'Tuesday, 21 May 2024 at 09:55:02'

What do you see instead?

I see instead (example) 'Tuesday 21 May 2024 at 09:55:02'

Additional information

No response

dgabrielm avatar May 21 '24 10:05 dgabrielm

IIRC The I18N data is updated for every version, and compatibility isn't guaranteed

I might be wrong, cc @nodejs/i18n

avivkeller avatar May 21 '24 10:05 avivkeller

IIRC The I18N data is updated for every version, and compatibility isn't guaranteed

I might be wrong, cc @nodejs/i18n

The @nodejs/i18n team is not responsible for this; the @nodejs/i18n-api is responsible for Node.js Core i18n APIs, afaik.

ovflowd avatar May 21 '24 11:05 ovflowd

My bad, sorry. I looked for i18n in the team list.

avivkeller avatar May 21 '24 11:05 avivkeller

My bad, sorry. I looked for i18n in the team list.

All good, but I believe you're pretty on point with your explanation. I don't think this is a Node.js bug, but just a side-effect of the i18n data that comes with V8 (I believe that's where our Intl. APIs come from, including the i18n data for those APIs), I believe that the TextEncoder ones and others, come from Node.js itself.

ovflowd avatar May 22 '24 08:05 ovflowd

More specifically, the data comes from ICU (a dependency of V8).

targos avatar May 22 '24 08:05 targos

More specifically, the data comes from ICU (a dependency of V8).

even more specifically, ICU's data comes from cldr, a dependency of ICU

srl295 avatar May 23 '24 22:05 srl295

Is wontfix appropiate here? (Working as Intended)

avivkeller avatar May 24 '24 00:05 avivkeller

Thanks for issue, I'm closing this as the feature is working as intended. If you disagree, please leave a comment.

avivkeller avatar May 24 '24 18:05 avivkeller