You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#44006 is a breaking change. We previously accidentally had Intl attributes for currencyDisplay and currencySign on a formatter in es5 which meant they would show up in environments where it wasn't necessarily supported as they were added to browsers in 2020. To fix it, update your target to es2020 (or use lib to set up your environment)
#39662 is a breaking change. To re-use an identifier we brought it back to when it was first introduced in the specs. If someone has a target of es2015 but used es2020.intl in lib and used the type Intl.UnicodeBCP47LocaleIdentifier then it is now available back in es2016.intl.
Overall what's the tolerance for breaking changes for this type of fixes? I haven't gone through all the type defs for ecma402 but tbh I suspect there will be quite a few breaking changes since it hasn't been very accurate?
Kinda tough to give an exact opinion, my somewhat biased view on breakages is roughly "would it break code in the TypeScript website" which doesn't do anything too clever with the Intl APIs and I think generally can be used as an internal metric for what an average web project using the Intl APIs looks like. ( E.g. a quick search show I use mostly APIs for ListFormat/DateTimeFormat/RelativeTimeFormat )
If it's tightening from string to "a" | "b" those are pretty much always OK for me
I'm sorry, but what is the reason not to include Intl.ListFormat? It's already been on Stage 4 for almost a year and a half yet the latest TS doesn't recognises it :(
Reacted by Guilherme Tod, Victor Magalhães, Benjamin Cooper, Andrii Oriekhov and Emil Costinea
Activity
orta commentedon Aug 30, 2021
#44006 is a breaking change. We previously accidentally had
Intlattributes forcurrencyDisplayandcurrencySignon a formatter ines5which meant they would show up in environments where it wasn't necessarily supported as they were added to browsers in 2020. To fix it, update your target toes2020(or uselibto set up your environment)orta commentedon Aug 30, 2021
#39662 is a breaking change. To re-use an identifier we brought it back to when it was first introduced in the specs. If someone has a target of
es2015but usedes2020.intlin lib and used the typeIntl.UnicodeBCP47LocaleIdentifierthen it is now available back ines2016.intl.longlho commentedon Sep 4, 2021
Overall what's the tolerance for breaking changes for this type of fixes? I haven't gone through all the type defs for ecma402 but tbh I suspect there will be quite a few breaking changes since it hasn't been very accurate?
orta commentedon Sep 8, 2021
Kinda tough to give an exact opinion, my somewhat biased view on breakages is roughly "would it break code in the TypeScript website" which doesn't do anything too clever with the Intl APIs and I think generally can be used as an internal metric for what an average web project using the Intl APIs looks like. ( E.g. a quick search show I use mostly APIs for ListFormat/DateTimeFormat/RelativeTimeFormat )
If it's tightening from
stringto"a" | "b"those are pretty much always OK for meAlexsey commentedon Nov 6, 2021
I'm sorry, but what is the reason not to include
Intl.ListFormat? It's already been on Stage 4 for almost a year and a half yet the latest TS doesn't recognises it :(