Repository navigation
Intl: ICU 55 to 56 bump #2917
Description
Activity
- addedi18n-apiIssues and PRs related to Node.js internationalization support.Issues and PRs related to Node.js internationalization support.
on Sep 16, 2015 @srl295 if/when you bump to 56 in the configure could you try and give us a quick summary of improvements that can go in the changelog? Is it simply just "perf"?
Yes definitely. I will expand on the changes.
There's always fresh data, latest time zone changes and such. But there are
other improvements I will note. No new features.Heads up - ICU 56 planned GA today. I'll be submitting a PR soon
Summarizing from here
- CLDR 28 5% new data, 8% corrections
Which reminds me, I will need to review the icutrim behavior - some new data categories to trim out.
This would affect string normalization, etc.
- ICU data size reduced by about 7.2% (1.8MB) via sharing string values across resource bundles.
- Support for locale key "cf" to specify currency format style, and interaction with NumberFormat values for UNumberFormatStyle: [doc: update to current V8 versions #11787]
I assume this will pass through to
Intlbut need to test. example would be localeen-us-u-cf-accountfor negative numbers like(4.56)instead of-4.56- Larger UnicodeString object
More on stack, less heap. Should reduce heap usage.
- DecimalFormat code refactored to fix bugs, improve maintainability, and improve performance
14% to 72% improvements for some cases! Usual benchmark disclaimers apply!
- Collator: first-time startup time improved 20% due to precalculated unsafe-backward table
My personal contribution to this list.
- A number of memory leaks and buffer overruns have been fixed based on static code analysis, mostly in data build tools.
And of course,
- latest time zone data
- addedwipIssues and PRs that are still a work in progress.Issues and PRs that are still a work in progress.
on Oct 7, 2015 Note that #3065 enables buildingfull-icu, not the defaultsmall-icu. Given the timing, I'll fix the remaining 56 issues in this issue instead.Looks like a false alarm / unclean local build dir. Clean build worked fine.
Looks like so far, the delta for
small-icuandfull-icufrom ICU 55 to 56 is about 700k on linux x64. May be possible to trim further but i'd probably not (at this point) unless there's a call to.perf ICU 56 makes
for(var k=0;k<10000;k++) { (123.45) .toLocaleString(); }run about twice as fast as ICU 55. ..edit and it gets better...
var nf = new Intl.NumberFormat(); for (...) { nf.format(123.45); }is more like 3x faster- Icu 56 released last night. 61d71888f14bf00cc3e8a6f2c087d367 *icu4c-56_1-src.zip
@srl295 ... when you get that PR open, please tag it
land-on-v4xand mention me in it so I can track it for the 4.2.0 release- added a commit that references this issue
on Oct 9, 2015 - added a commit that references this issue
on Jul 27, 2026
Oct 2015planned for Oct 7, 2015