GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — util: improve performance of normalizeEncoding by kylo5aby · Pull Request #50721 · nodejs/node

Conversation

@kylo5aby

@kylo5aby kylo5aby commented Nov 14, 2023 •
edited by H4ad
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

Improve performance of normalizeEncoding by using primordial.

Benchmark Results:

util/normalize-encoding.js n=100000 input=''                  ***      6.93 %       ±3.29%  ±4.38%  ±5.70%
util/normalize-encoding.js n=100000 input='base64'            ***      5.35 %       ±2.57%  ±3.42%  ±4.46%
util/normalize-encoding.js n=100000 input='BASE64'              *     -2.33 %       ±2.29%  ±3.05%  ±3.98%
util/normalize-encoding.js n=100000 input='binary'                    -1.38 %       ±2.95%  ±3.92%  ±5.10%
util/normalize-encoding.js n=100000 input='BINARY'                    -1.48 %       ±1.56%  ±2.07%  ±2.70%
util/normalize-encoding.js n=100000 input='foo'                        2.08 %       ±2.23%  ±2.97%  ±3.87%
util/normalize-encoding.js n=100000 input='group_common'      ***     11.06 %       ±2.04%  ±2.71%  ±3.53%
util/normalize-encoding.js n=100000 input='group_misc'        ***     16.66 %       ±2.19%  ±2.91%  ±3.80%
util/normalize-encoding.js n=100000 input='group_uncommon'    ***      6.37 %       ±2.67%  ±3.55%  ±4.63%
util/normalize-encoding.js n=100000 input='group_upper'       ***     20.02 %       ±1.97%  ±2.62%  ±3.42%
util/normalize-encoding.js n=100000 input='hex'               ***      5.49 %       ±2.85%  ±3.79%  ±4.94%
util/normalize-encoding.js n=100000 input='HEX'                 *      3.19 %       ±2.66%  ±3.54%  ±4.61%
util/normalize-encoding.js n=100000 input='latin1'                    -0.62 %       ±2.70%  ±3.60%  ±4.69%
util/normalize-encoding.js n=100000 input='ucs2'              ***      7.78 %       ±2.40%  ±3.20%  ±4.16%
util/normalize-encoding.js n=100000 input='UCS2'               **      2.99 %       ±1.99%  ±2.66%  ±3.48%
util/normalize-encoding.js n=100000 input='undefined'                  2.42 %       ±4.90%  ±6.51%  ±8.48%
util/normalize-encoding.js n=100000 input='utf-8'                     -1.34 %       ±4.21%  ±5.60%  ±7.29%
util/normalize-encoding.js n=100000 input='UTF-8'                      0.85 %       ±2.50%  ±3.32%  ±4.33%
util/normalize-encoding.js n=100000 input='utf16le'            **      4.10 %       ±3.06%  ±4.06%  ±5.29%
util/normalize-encoding.js n=100000 input='UTF16LE'                   -0.75 %       ±2.36%  ±3.14%  ±4.09%
util/normalize-encoding.js n=100000 input='utf8'                      -1.64 %       ±3.63%  ±4.83%  ±6.29%
util/normalize-encoding.js n=100000 input='Utf8'              ***      4.40 %       ±1.65%  ±2.20%  ±2.86%
util/normalize-encoding.js n=100000 input='UTF8'              ***      7.20 %       ±2.95%  ±3.92%  ±5.10%

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

bricss and H4ad reacted with rocket emoji
All reactions
  • 🚀 2 reactions
@kylo5aby
util: improve performance of normalizeEncoding
b34f676
@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. util Issues and PRs related to the built-in util module. labels Nov 14, 2023
@marco-ippolito marco-ippolito added the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Nov 14, 2023
marco-ippolito
marco-ippolito approved these changes Nov 14, 2023
View reviewed changes
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Nov 14, 2023
@nodejs-github-bot

nodejs-github-bot commented Nov 14, 2023

Copy link
Copy Markdown
Collaborator

CI: https://ci.nodejs.org/job/node-test-pull-request/55641/

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@github-actions github-actions Bot mentioned this pull request Nov 15, 2023
CI Reliability 2023-11-15 nodejs/reliability#718
Open
26 tasks
H4ad
H4ad requested changes Nov 15, 2023
View reviewed changes

@H4ad H4ad left a comment •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

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

They are not performing the same operation, if enc is not a string, it will throw an error.

String.prototype.toLowerCase.call(undefined, [])

So we should stringify when enc is not string and then perform toLowerCase.

What you can do is add a slow path of stringify only when enc is not a string, so maybe we can keep the fast-path with these new improvements.


Also, let's wait for the Benchmark CI results:

https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/1471/

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@kylo5aby

kylo5aby commented Nov 16, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor Author

They are not performing the same operation, if enc is not a string, it will throw an error.

String.prototype.toLowerCase.call(undefined, [])

So we should stringify when enc is not string and then perform toLowerCase.

What you can do is add a slow path of stringify only when enc is not a string, so maybe we can keep the fast-path with these new improvements.

Also, let's wait for the Benchmark CI results:

https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/1471/

Thanks for your advise. But enc can't be undefined or null in the switch(enc.length) ...case... block. so in this case, if enc has a type other than string, it does the same thing as String.prototype.toLowerCase.call(${env}, []) implicitly.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@H4ad

H4ad commented Nov 16, 2023

Copy link
Copy Markdown
Member

@zhenweijin You are right, my example was wrong.

In this case, I think this change is safe to introduce.


Benchmark Result:

util/format.js type='many-%' n=100000                                                                                    2.66 %       ±8.52% ±11.34% ±14.77%
util/format.js type='no-replace-2' n=100000                                                                              2.62 %       ±6.03%  ±8.03% ±10.47%
util/format.js type='no-replace' n=100000                                                                               -0.34 %       ±6.93%  ±9.22% ±12.00%
util/format.js type='number' n=100000                                                                                    1.36 %       ±4.58%  ±6.13%  ±8.04%
util/format.js type='object-%s' n=100000                                                                                 0.14 %       ±6.63%  ±8.83% ±11.50%
util/format.js type='object-to-string' n=100000                                                                          3.12 %       ±8.93% ±11.88% ±15.46%
util/format.js type='only-objects' n=100000                                                                              4.48 %       ±5.84%  ±7.77% ±10.11%
util/format.js type='replace-object' n=100000                                                                            2.35 %      ±10.02% ±13.33% ±17.36%
util/format.js type='string-2' n=100000                                                                                 -3.77 %       ±5.92%  ±7.89% ±10.28%
util/format.js type='string' n=100000                                                                                    0.45 %       ±4.28%  ±5.70%  ±7.42%
util/format.js type='unknown' n=100000                                                                                   2.88 %       ±5.10%  ±6.78%  ±8.83%
util/inspect-array.js type='denseArray_showHidden' len=100 n=500                                                        -1.61 %       ±5.72%  ±7.62%  ±9.93%
util/inspect-array.js type='denseArray_showHidden' len=100000 n=500                                                     -5.41 %       ±7.73% ±10.29% ±13.41%
util/inspect-array.js type='denseArray' len=100 n=500                                                                   -1.63 %       ±5.25%  ±7.00%  ±9.12%
util/inspect-array.js type='denseArray' len=100000 n=500                                                                -2.92 %       ±5.09%  ±6.78%  ±8.85%
util/inspect-array.js type='mixedArray' len=100 n=500                                                                    0.01 %       ±6.01%  ±8.00% ±10.41%
util/inspect-array.js type='mixedArray' len=100000 n=500                                                                -3.08 %       ±7.29%  ±9.70% ±12.62%
util/inspect-array.js type='sparseArray' len=100 n=500                                                            *      8.48 %       ±7.28%  ±9.73% ±12.72%
util/inspect-array.js type='sparseArray' len=100000 n=500                                                                2.83 %       ±7.31%  ±9.73% ±12.66%
util/inspect-proxy.js isProxy=0 showProxy=0 n=100000                                                                     5.12 %       ±5.18%  ±6.90%  ±8.98%
util/inspect-proxy.js isProxy=0 showProxy=1 n=100000                                                                     0.83 %       ±5.22%  ±6.94%  ±9.04%
util/inspect-proxy.js isProxy=1 showProxy=0 n=100000                                                                     1.30 %       ±5.42%  ±7.21%  ±9.39%
util/inspect-proxy.js isProxy=1 showProxy=1 n=100000                                                                     0.76 %       ±4.67%  ±6.22%  ±8.09%
util/inspect.js option='colors' method='Array' n=20000                                                                  -0.17 %       ±2.33%  ±3.11%  ±4.04%
util/inspect.js option='colors' method='Date' n=20000                                                                    6.13 %       ±9.84% ±13.10% ±17.08%
util/inspect.js option='colors' method='Error' n=20000                                                                   2.99 %       ±9.01% ±11.99% ±15.61%
util/inspect.js option='colors' method='Number' n=20000                                                                 -0.74 %       ±5.61%  ±7.47%  ±9.72%
util/inspect.js option='colors' method='Object_deep_ln' n=20000                                                         -1.91 %       ±5.98%  ±7.95% ±10.35%
util/inspect.js option='colors' method='Object_empty' n=20000                                                           -2.51 %       ±4.81%  ±6.40%  ±8.34%
util/inspect.js option='colors' method='Object' n=20000                                                           *     -7.98 %       ±7.54% ±10.05% ±13.11%
util/inspect.js option='colors' method='Set' n=20000                                                                     2.28 %       ±8.60% ±11.45% ±14.91%
util/inspect.js option='colors' method='String_boxed' n=20000                                                            3.48 %       ±8.82% ±11.74% ±15.28%
util/inspect.js option='colors' method='String_complex' n=20000                                                          0.46 %       ±6.12%  ±8.14% ±10.60%
util/inspect.js option='colors' method='String' n=20000                                                                  4.75 %       ±5.53%  ±7.36%  ±9.58%
util/inspect.js option='colors' method='TypedArray_extra' n=20000                                                        0.52 %       ±2.48%  ±3.30%  ±4.29%
util/inspect.js option='colors' method='TypedArray' n=20000                                                              0.48 %       ±3.17%  ±4.21%  ±5.49%
util/inspect.js option='none' method='Array' n=20000                                                                     1.62 %       ±4.13%  ±5.50%  ±7.16%
util/inspect.js option='none' method='Date' n=20000                                                                      0.48 %       ±9.33% ±12.42% ±16.16%
util/inspect.js option='none' method='Error' n=20000                                                                     3.01 %       ±7.22%  ±9.62% ±12.54%
util/inspect.js option='none' method='Number' n=20000                                                                   -0.01 %       ±4.12%  ±5.48%  ±7.13%
util/inspect.js option='none' method='Object_deep_ln' n=20000                                                    **    -11.26 %       ±8.05% ±10.72% ±13.95%
util/inspect.js option='none' method='Object_empty' n=20000                                                              2.54 %       ±5.41%  ±7.21%  ±9.38%
util/inspect.js option='none' method='Object' n=20000                                                                   -4.24 %       ±8.93% ±11.88% ±15.46%
util/inspect.js option='none' method='Set' n=20000                                                                       3.41 %       ±7.22%  ±9.61% ±12.51%
util/inspect.js option='none' method='String_boxed' n=20000                                                              4.44 %       ±8.90% ±11.85% ±15.42%
util/inspect.js option='none' method='String_complex' n=20000                                                           -1.28 %       ±5.51%  ±7.34%  ±9.55%
util/inspect.js option='none' method='String' n=20000                                                                    2.16 %       ±5.70%  ±7.59%  ±9.88%
util/inspect.js option='none' method='TypedArray_extra' n=20000                                                         -0.40 %       ±5.19%  ±6.90%  ±8.98%
util/inspect.js option='none' method='TypedArray' n=20000                                                                1.83 %       ±7.47%  ±9.95% ±12.95%
util/inspect.js option='showHidden' method='Array' n=20000                                                               1.39 %       ±4.77%  ±6.35%  ±8.27%
util/inspect.js option='showHidden' method='Date' n=20000                                                                5.79 %       ±9.28% ±12.36% ±16.09%
util/inspect.js option='showHidden' method='Error' n=20000                                                               1.95 %       ±8.86% ±11.78% ±15.34%
util/inspect.js option='showHidden' method='Number' n=20000                                                              0.21 %       ±3.89%  ±5.18%  ±6.75%
util/inspect.js option='showHidden' method='Object_deep_ln' n=20000                                                     -3.20 %       ±8.74% ±11.63% ±15.14%
util/inspect.js option='showHidden' method='Object_empty' n=20000                                                       -0.04 %       ±5.71%  ±7.60%  ±9.90%
util/inspect.js option='showHidden' method='Object' n=20000                                                             -3.17 %       ±7.69% ±10.24% ±13.33%
util/inspect.js option='showHidden' method='Set' n=20000                                                                 5.04 %       ±7.52% ±10.02% ±13.07%
util/inspect.js option='showHidden' method='String_boxed' n=20000                                                        7.93 %       ±9.59% ±12.76% ±16.62%
util/inspect.js option='showHidden' method='String_complex' n=20000                                                     -3.04 %       ±5.36%  ±7.14%  ±9.29%
util/inspect.js option='showHidden' method='String' n=20000                                                              1.95 %       ±5.48%  ±7.29%  ±9.48%
util/inspect.js option='showHidden' method='TypedArray_extra' n=20000                                             *      6.96 %       ±6.50%  ±8.65% ±11.25%
util/inspect.js option='showHidden' method='TypedArray' n=20000                                                          2.31 %       ±6.77%  ±9.01% ±11.73%
util/normalize-encoding.js n=100000 input=''                                                                    ***      6.93 %       ±3.29%  ±4.38%  ±5.70%
util/normalize-encoding.js n=100000 input='base64'                                                              ***      5.35 %       ±2.57%  ±3.42%  ±4.46%
util/normalize-encoding.js n=100000 input='BASE64'                                                                *     -2.33 %       ±2.29%  ±3.05%  ±3.98%
util/normalize-encoding.js n=100000 input='binary'                                                                      -1.38 %       ±2.95%  ±3.92%  ±5.10%
util/normalize-encoding.js n=100000 input='BINARY'                                                                      -1.48 %       ±1.56%  ±2.07%  ±2.70%
util/normalize-encoding.js n=100000 input='foo'                                                                          2.08 %       ±2.23%  ±2.97%  ±3.87%
util/normalize-encoding.js n=100000 input='group_common'                                                        ***     11.06 %       ±2.04%  ±2.71%  ±3.53%
util/normalize-encoding.js n=100000 input='group_misc'                                                          ***     16.66 %       ±2.19%  ±2.91%  ±3.80%
util/normalize-encoding.js n=100000 input='group_uncommon'                                                      ***      6.37 %       ±2.67%  ±3.55%  ±4.63%
util/normalize-encoding.js n=100000 input='group_upper'                                                         ***     20.02 %       ±1.97%  ±2.62%  ±3.42%
util/normalize-encoding.js n=100000 input='hex'                                                                 ***      5.49 %       ±2.85%  ±3.79%  ±4.94%
util/normalize-encoding.js n=100000 input='HEX'                                                                   *      3.19 %       ±2.66%  ±3.54%  ±4.61%
util/normalize-encoding.js n=100000 input='latin1'                                                                      -0.62 %       ±2.70%  ±3.60%  ±4.69%
util/normalize-encoding.js n=100000 input='ucs2'                                                                ***      7.78 %       ±2.40%  ±3.20%  ±4.16%
util/normalize-encoding.js n=100000 input='UCS2'                                                                 **      2.99 %       ±1.99%  ±2.66%  ±3.48%
util/normalize-encoding.js n=100000 input='undefined'                                                                    2.42 %       ±4.90%  ±6.51%  ±8.48%
util/normalize-encoding.js n=100000 input='utf-8'                                                                       -1.34 %       ±4.21%  ±5.60%  ±7.29%
util/normalize-encoding.js n=100000 input='UTF-8'                                                                        0.85 %       ±2.50%  ±3.32%  ±4.33%
util/normalize-encoding.js n=100000 input='utf16le'                                                              **      4.10 %       ±3.06%  ±4.06%  ±5.29%
util/normalize-encoding.js n=100000 input='UTF16LE'                                                                     -0.75 %       ±2.36%  ±3.14%  ±4.09%
util/normalize-encoding.js n=100000 input='utf8'                                                                        -1.64 %       ±3.63%  ±4.83%  ±6.29%
util/normalize-encoding.js n=100000 input='Utf8'                                                                ***      4.40 %       ±1.65%  ±2.20%  ±2.86%
util/normalize-encoding.js n=100000 input='UTF8'                                                                ***      7.20 %       ±2.95%  ±3.92%  ±5.10%
util/priority-queue.js n=100000                                                                                         -0.09 %       ±0.85%  ±1.13%  ±1.47%
util/splice-one.js size=10 pos='end' n=100000                                                                           -1.94 %       ±3.80%  ±5.05%  ±6.58%
util/splice-one.js size=10 pos='middle' n=100000                                                                        -0.92 %       ±2.80%  ±3.73%  ±4.86%
util/splice-one.js size=10 pos='start' n=100000                                                                          1.14 %       ±2.12%  ±2.83%  ±3.68%
util/splice-one.js size=100 pos='end' n=100000                                                                          -3.11 %       ±3.96%  ±5.28%  ±6.87%
util/splice-one.js size=100 pos='middle' n=100000                                                                        1.22 %       ±2.38%  ±3.19%  ±4.18%
util/splice-one.js size=100 pos='start' n=100000                                                                         0.15 %       ±1.00%  ±1.33%  ±1.74%
util/splice-one.js size=500 pos='end' n=100000                                                                   **     -6.60 %       ±4.04%  ±5.39%  ±7.02%
util/splice-one.js size=500 pos='middle' n=100000                                                                       -1.29 %       ±5.28%  ±7.03%  ±9.16%
util/splice-one.js size=500 pos='start' n=100000                                                                         1.51 %       ±1.88%  ±2.53%  ±3.36%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                        2.88 %       ±4.20%  ±5.59%  ±7.27%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='latin1'                            2.59 %       ±4.88%  ±6.50%  ±8.48%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='utf-8'                             4.11 %       ±5.52%  ±7.35%  ±9.58%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                       -1.43 %       ±4.67%  ±6.21%  ±8.09%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='latin1'                            0.39 %       ±5.40%  ±7.18%  ±9.34%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='utf-8'                            -3.35 %       ±6.27%  ±8.35% ±10.87%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                        3.01 %       ±4.22%  ±5.62%  ±7.31%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='latin1'                            0.91 %       ±4.33%  ±5.77%  ±7.52%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='utf-8'                            -0.16 %       ±6.88%  ±9.16% ±11.93%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                       -0.51 %       ±5.09%  ±6.77%  ±8.81%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='latin1'                           -2.31 %       ±5.84%  ±7.78% ±10.12%
util/text-decoder.js type='ArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='utf-8'                            -3.07 %       ±7.11%  ±9.46% ±12.31%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                          4.56 %      ±12.31% ±16.38% ±21.33%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='latin1'                             -1.85 %      ±12.19% ±16.21% ±21.10%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='utf-8'                               6.38 %      ±11.99% ±15.96% ±20.78%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                          4.95 %      ±11.90% ±15.84% ±20.62%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='latin1'                              3.51 %      ±11.58% ±15.41% ±20.06%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='utf-8'                               7.62 %       ±9.48% ±12.69% ±16.67%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                          1.72 %      ±10.24% ±13.63% ±17.74%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='latin1'                              0.68 %      ±11.02% ±14.66% ±19.09%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='utf-8'                               4.39 %      ±11.89% ±15.82% ±20.60%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                          7.65 %      ±12.17% ±16.21% ±21.11%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='latin1'                             -3.24 %       ±8.65% ±11.53% ±15.06%
util/text-decoder.js type='ArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='utf-8'                               4.37 %       ±9.34% ±12.45% ±16.25%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                      -0.06 %       ±2.42%  ±3.22%  ±4.20%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='latin1'                          -0.44 %       ±1.46%  ±1.94%  ±2.52%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='utf-8'                            0.60 %       ±2.31%  ±3.08%  ±4.01%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                       1.05 %       ±2.48%  ±3.30%  ±4.31%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='latin1'                          -0.92 %       ±2.33%  ±3.11%  ±4.07%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='utf-8'                            0.06 %       ±2.55%  ±3.40%  ±4.42%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                *      2.32 %       ±2.04%  ±2.73%  ±3.56%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='latin1'                           1.57 %       ±3.10%  ±4.13%  ±5.38%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='utf-8'                           -2.39 %       ±2.58%  ±3.43%  ±4.46%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                       0.22 %       ±1.36%  ±1.82%  ±2.37%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='latin1'                           0.17 %       ±1.91%  ±2.55%  ±3.32%
util/text-decoder.js type='ArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='utf-8'                            0.48 %       ±2.68%  ±3.56%  ±4.64%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                             1.31 %       ±7.63% ±10.15% ±13.21%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='latin1'                                -1.47 %       ±4.79%  ±6.38%  ±8.31%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='utf-8'                                  2.48 %       ±4.62%  ±6.15%  ±8.00%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                            -2.91 %       ±8.59% ±11.44% ±14.91%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='latin1'                                -3.63 %       ±4.39%  ±5.85%  ±7.62%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='utf-8'                                 -1.35 %       ±4.34%  ±5.78%  ±7.54%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                             5.35 %      ±12.97% ±17.26% ±22.48%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='latin1'                                 0.85 %       ±5.05%  ±6.72%  ±8.75%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='utf-8'                                 -4.19 %      ±11.00% ±14.64% ±19.06%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                             1.67 %      ±12.56% ±16.72% ±21.76%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='latin1'                                -1.42 %       ±4.87%  ±6.48%  ±8.44%
util/text-decoder.js type='Buffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='utf-8'                                  1.86 %      ±11.22% ±14.93% ±19.43%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                              -0.21 %      ±12.83% ±17.06% ±22.21%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='latin1'                                   1.16 %      ±11.10% ±14.77% ±19.24%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='utf-8'                                   -1.30 %      ±11.49% ±15.29% ±19.91%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                       **    -14.95 %       ±9.46% ±12.73% ±16.86%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='latin1'                                   8.59 %      ±11.11% ±14.79% ±19.28%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='utf-8'                                   -2.07 %       ±6.12%  ±8.15% ±10.65%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                               8.23 %      ±12.32% ±16.40% ±21.38%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='latin1'                                   3.64 %      ±12.49% ±16.62% ±21.65%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='utf-8'                                   -1.71 %       ±8.37% ±11.14% ±14.50%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                              -4.67 %      ±13.44% ±17.93% ±23.42%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='latin1'                                  -1.72 %      ±12.78% ±17.01% ±22.14%
util/text-decoder.js type='Buffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='utf-8'                                   -6.56 %       ±9.01% ±11.99% ±15.62%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                            0.02 %       ±1.60%  ±2.13%  ±2.77%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='latin1'                                0.47 %       ±2.16%  ±2.88%  ±3.76%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='utf-8'                                 1.16 %       ±2.47%  ±3.29%  ±4.29%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                            0.13 %       ±1.63%  ±2.18%  ±2.84%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='latin1'                               -2.10 %       ±3.83%  ±5.15%  ±6.82%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='utf-8'                                -0.99 %       ±2.20%  ±2.92%  ±3.80%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                            0.78 %       ±2.76%  ±3.71%  ±4.88%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='latin1'                                1.27 %       ±1.32%  ±1.76%  ±2.29%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='utf-8'                                -1.02 %       ±2.53%  ±3.37%  ±4.38%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                            0.60 %       ±1.72%  ±2.30%  ±3.01%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='latin1'                               -1.05 %       ±1.82%  ±2.44%  ±3.19%
util/text-decoder.js type='Buffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='utf-8'                                 0.27 %       ±2.81%  ±3.74%  ±4.86%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                  2.97 %       ±5.27%  ±7.01%  ±9.14%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='latin1'                     -2.84 %       ±4.23%  ±5.62%  ±7.32%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=0 encoding='utf-8'                      -3.12 %       ±6.49%  ±8.63% ±11.24%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                  3.51 %       ±5.11%  ±6.81%  ±8.86%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='latin1'                     -0.16 %       ±4.61%  ±6.14%  ±8.00%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=0 ignoreBOM=1 encoding='utf-8'                       4.46 %       ±6.22%  ±8.28% ±10.80%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                  2.83 %       ±5.50%  ±7.32%  ±9.52%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='latin1'                      1.54 %       ±5.22%  ±6.96%  ±9.07%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=0 encoding='utf-8'                       0.65 %       ±7.04%  ±9.36% ±12.19%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                  0.06 %       ±5.21%  ±6.93%  ±9.02%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='latin1'                      1.54 %       ±5.27%  ±7.01%  ±9.12%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=16384 fatal=1 ignoreBOM=1 encoding='utf-8'                       4.41 %       ±6.21%  ±8.26% ±10.75%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                    8.12 %      ±11.91% ±15.86% ±20.68%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='latin1'                        6.66 %      ±10.31% ±13.74% ±17.91%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=0 encoding='utf-8'                        -1.00 %       ±7.70% ±10.24% ±13.34%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                    4.71 %      ±11.09% ±14.77% ±19.24%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='latin1'                        0.59 %      ±11.95% ±15.90% ±20.69%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=0 ignoreBOM=1 encoding='utf-8'                         6.49 %      ±11.81% ±15.73% ±20.50%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                   10.24 %      ±13.23% ±17.61% ±22.93%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='latin1'                        4.25 %      ±12.54% ±16.69% ±21.75%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=0 encoding='utf-8'                        -7.38 %      ±10.20% ±13.59% ±17.73%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                    2.06 %      ±11.34% ±15.09% ±19.64%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='latin1'                        2.34 %      ±11.11% ±14.78% ±19.25%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=256 fatal=1 ignoreBOM=1 encoding='utf-8'                         2.33 %      ±11.27% ±15.00% ±19.52%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='iso-8859-3'                -0.51 %       ±2.31%  ±3.09%  ±4.05%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='latin1'                    -0.48 %       ±1.53%  ±2.04%  ±2.65%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=0 encoding='utf-8'                     -1.20 %       ±2.76%  ±3.67%  ±4.78%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='iso-8859-3'                 0.44 %       ±1.28%  ±1.71%  ±2.22%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='latin1'                     0.68 %       ±1.74%  ±2.32%  ±3.02%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=0 ignoreBOM=1 encoding='utf-8'               *     -2.41 %       ±2.29%  ±3.04%  ±3.96%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='iso-8859-3'                -1.31 %       ±2.65%  ±3.53%  ±4.59%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='latin1'                     1.06 %       ±2.77%  ±3.72%  ±4.90%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=0 encoding='utf-8'                     -0.60 %       ±2.69%  ±3.58%  ±4.66%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='iso-8859-3'                 0.02 %       ±1.56%  ±2.08%  ±2.71%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='latin1'                     0.10 %       ±1.43%  ±1.90%  ±2.47%
util/text-decoder.js type='SharedArrayBuffer' n=100 len=524288 fatal=1 ignoreBOM=1 encoding='utf-8'               *     -2.97 %       ±2.27%  ±3.02%  ±3.94%
util/text-encoder.js op='encode' type='ascii' n=1000000 len=1024                                                         0.06 %       ±1.41%  ±1.88%  ±2.45%
util/text-encoder.js op='encode' type='ascii' n=1000000 len=256                                                          0.84 %       ±1.19%  ±1.59%  ±2.07%
util/text-encoder.js op='encode' type='ascii' n=1000000 len=32                                                          -0.68 %       ±1.60%  ±2.13%  ±2.77%
util/text-encoder.js op='encode' type='ascii' n=1000000 len=8192                                                        -0.32 %       ±0.77%  ±1.02%  ±1.33%
util/text-encoder.js op='encode' type='one-byte-string' n=1000000 len=1024                                               0.52 %       ±1.13%  ±1.50%  ±1.96%
util/text-encoder.js op='encode' type='one-byte-string' n=1000000 len=256                                               -0.73 %       ±1.37%  ±1.82%  ±2.37%
util/text-encoder.js op='encode' type='one-byte-string' n=1000000 len=32                                                 0.01 %       ±1.27%  ±1.69%  ±2.19%
util/text-encoder.js op='encode' type='one-byte-string' n=1000000 len=8192                                              -0.21 %       ±0.32%  ±0.43%  ±0.56%
util/text-encoder.js op='encode' type='two-byte-string' n=1000000 len=1024                                               0.08 %       ±0.71%  ±0.95%  ±1.24%
util/text-encoder.js op='encode' type='two-byte-string' n=1000000 len=256                                         *     -1.28 %       ±1.02%  ±1.36%  ±1.77%
util/text-encoder.js op='encode' type='two-byte-string' n=1000000 len=32                                                -0.54 %       ±1.79%  ±2.38%  ±3.10%
util/text-encoder.js op='encode' type='two-byte-string' n=1000000 len=8192                                               0.09 %       ±0.13%  ±0.18%  ±0.23%
util/text-encoder.js op='encodeInto' type='ascii' n=1000000 len=1024                                                    -0.70 %       ±4.28%  ±5.69%  ±7.41%
util/text-encoder.js op='encodeInto' type='ascii' n=1000000 len=256                                               *     -6.35 %       ±5.69%  ±7.57%  ±9.85%
util/text-encoder.js op='encodeInto' type='ascii' n=1000000 len=32                                                      -5.96 %       ±7.11%  ±9.47% ±12.33%
util/text-encoder.js op='encodeInto' type='ascii' n=1000000 len=8192                                              *      2.62 %       ±2.44%  ±3.24%  ±4.22%
util/text-encoder.js op='encodeInto' type='one-byte-string' n=1000000 len=1024                                           0.74 %       ±1.85%  ±2.46%  ±3.20%
util/text-encoder.js op='encodeInto' type='one-byte-string' n=1000000 len=256                                           -2.70 %       ±5.49%  ±7.30%  ±9.50%
util/text-encoder.js op='encodeInto' type='one-byte-string' n=1000000 len=32                                             0.24 %       ±9.44% ±12.55% ±16.34%
util/text-encoder.js op='encodeInto' type='one-byte-string' n=1000000 len=8192                                           0.05 %       ±0.32%  ±0.43%  ±0.56%
util/text-encoder.js op='encodeInto' type='two-byte-string' n=1000000 len=1024                                          -0.87 %       ±1.20%  ±1.59%  ±2.08%
util/text-encoder.js op='encodeInto' type='two-byte-string' n=1000000 len=256                                     *     -5.42 %       ±5.03%  ±6.69%  ±8.71%
util/text-encoder.js op='encodeInto' type='two-byte-string' n=1000000 len=32                                             1.38 %       ±8.25% ±10.97% ±14.28%
util/text-encoder.js op='encodeInto' type='two-byte-string' n=1000000 len=8192                                           0.11 %       ±0.19%  ±0.25%  ±0.32%
util/to-usv-string.js size=10 n=100000                                                                                   2.51 %       ±6.97%  ±9.29% ±12.10%
util/to-usv-string.js size=100 n=100000                                                                                 -4.62 %       ±7.49%  ±9.96% ±12.97%
util/to-usv-string.js size=500 n=100000                                                                                 -0.12 %       ±1.81%  ±2.41%  ±3.13%
util/type-check.js n=100000 argument='false-object' version='js' type='ArrayBufferView'                                 -0.54 %       ±8.65% ±11.51% ±14.99%
util/type-check.js n=100000 argument='false-object' version='js' type='TypedArray'                                       6.76 %       ±7.07%  ±9.42% ±12.28%
util/type-check.js n=100000 argument='false-object' version='js' type='Uint8Array'                                      -0.68 %       ±6.43%  ±8.56% ±11.15%
util/type-check.js n=100000 argument='false-object' version='native' type='ArrayBufferView'                      **    -10.46 %       ±7.00%  ±9.34% ±12.24%
util/type-check.js n=100000 argument='false-object' version='native' type='TypedArray'                                  -1.47 %       ±6.60%  ±8.78% ±11.44%
util/type-check.js n=100000 argument='false-object' version='native' type='Uint8Array'                                   2.93 %       ±7.91% ±10.52% ±13.69%
util/type-check.js n=100000 argument='false-primitive' version='js' type='ArrayBufferView'                              -3.53 %       ±8.89% ±11.82% ±15.39%
util/type-check.js n=100000 argument='false-primitive' version='js' type='TypedArray'                                    0.03 %       ±6.50%  ±8.65% ±11.26%
util/type-check.js n=100000 argument='false-primitive' version='js' type='Uint8Array'                                   -3.35 %       ±7.91% ±10.54% ±13.72%
util/type-check.js n=100000 argument='false-primitive' version='native' type='ArrayBufferView'                    *     10.39 %       ±9.93% ±13.21% ±17.19%
util/type-check.js n=100000 argument='false-primitive' version='native' type='TypedArray'                               -0.56 %       ±6.95%  ±9.24% ±12.03%
util/type-check.js n=100000 argument='false-primitive' version='native' type='Uint8Array'                                0.54 %       ±7.87% ±10.47% ±13.63%
util/type-check.js n=100000 argument='true' version='js' type='ArrayBufferView'                                         -7.91 %       ±8.17% ±10.88% ±14.20%
util/type-check.js n=100000 argument='true' version='js' type='TypedArray'                                              -0.54 %       ±6.36%  ±8.46% ±11.01%
util/type-check.js n=100000 argument='true' version='js' type='Uint8Array'                                              -0.64 %       ±7.04%  ±9.36% ±12.19%
util/type-check.js n=100000 argument='true' version='native' type='ArrayBufferView'                                      1.95 %      ±10.72% ±14.26% ±18.56%
util/type-check.js n=100000 argument='true' version='native' type='TypedArray'                                          -1.26 %       ±5.60%  ±7.45%  ±9.69%
util/type-check.js n=100000 argument='true' version='native' type='Uint8Array'                                           3.76 %       ±7.89% ±10.50% ±13.68%

Be aware that when doing many comparisons the risk of a false-positive
result increases. In this case, there are 248 comparisons, you can thus
expect the following amount of false-positive results:
  12.40 false positives, when considering a   5% risk acceptance (*, **, ***),
  2.48 false positives, when considering a   1% risk acceptance (**, ***),
  0.25 false positives, when considering a 0.1% risk acceptance (***)
kylo5aby reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

H4ad
H4ad approved these changes Nov 16, 2023
View reviewed changes
@nodejs-github-bot

nodejs-github-bot commented Nov 16, 2023

Copy link
Copy Markdown
Collaborator

CI: https://ci.nodejs.org/job/node-test-pull-request/55679/

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@H4ad H4ad added author ready PRs with CI started, the required approvals, and no outstanding review comments. commit-queue PRs queued for automated landing through the Commit Queue. and removed commit-queue PRs queued for automated landing through the Commit Queue. labels Nov 16, 2023
@H4ad

H4ad commented Nov 16, 2023

Copy link
Copy Markdown
Member

@zhenweijin Thanks for the PR, I updated the description to use the Benchmark CI Results.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@nodejs-github-bot nodejs-github-bot removed the commit-queue PRs queued for automated landing through the Commit Queue. label Nov 16, 2023
@nodejs-github-bot
nodejs-github-bot merged commit daf723a into nodejs:main Nov 16, 2023
@nodejs-github-bot

nodejs-github-bot commented Nov 16, 2023

Copy link
Copy Markdown
Collaborator

Landed in daf723a

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

targos pushed a commit that referenced this pull request Nov 23, 2023
@kylo5aby @targos
util: improve performance of normalizeEncoding
eaa4c14
PR-URL: #50721
Reviewed-By: Marco Ippolito <[email protected]>
Reviewed-By: Vinícius Lourenço Claro Cardoso <[email protected]>
@RafaelGSS RafaelGSS mentioned this pull request Nov 28, 2023
v21.3.0 proposal #50954
Merged
UlisesGascon pushed a commit that referenced this pull request Dec 11, 2023
@kylo5aby @UlisesGascon
util: improve performance of normalizeEncoding
a772b82
PR-URL: #50721
Reviewed-By: Marco Ippolito <[email protected]>
Reviewed-By: Vinícius Lourenço Claro Cardoso <[email protected]>
@UlisesGascon UlisesGascon mentioned this pull request Dec 12, 2023
v20.11.0 proposal #51124
Merged
UlisesGascon pushed a commit that referenced this pull request Dec 19, 2023
@kylo5aby @UlisesGascon
util: improve performance of normalizeEncoding
e6e7f39
PR-URL: #50721
Reviewed-By: Marco Ippolito <[email protected]>
Reviewed-By: Vinícius Lourenço Claro Cardoso <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@H4ad H4ad H4ad approved these changes
@marco-ippolito marco-ippolito marco-ippolito approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

author ready PRs with CI started, the required approvals, and no outstanding review comments. needs-ci PRs that need a full CI run. util Issues and PRs related to the built-in util module.

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@kylo5aby @nodejs-github-bot @H4ad @marco-ippolito
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.