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

perf: improve sort algorithm #2756

Merged
merged 7 commits into from
Feb 21, 2024
Merged

Conversation

tsctx
Copy link
Member

@tsctx tsctx commented Feb 14, 2024

Improved iterator performance in #2743 and #2706 (more than 2x faster on small arrays, more than 10x faster on large arrays).

benchmarks/sort.mjs

benchmark              time (avg)             (min … max)       p75       p99      p999
--------------------------------------------------------- -----------------------------
• sort (tiny)
--------------------------------------------------------- -----------------------------
Array#sort          3'794 ns/iter   (2'975 ns … 7'413 ns)  3'967 ns  7'376 ns  7'413 ns
sort (intro sort)   2'234 ns/iter   (1'600 ns … 4'579 µs)  2'100 ns  4'700 ns 35'900 ns
intro sort          1'830 ns/iter   (1'582 ns … 3'050 ns)  1'990 ns  3'016 ns  3'050 ns
heap sort           2'207 ns/iter     (1'700 ns … 530 µs)  2'100 ns  5'200 ns 21'200 ns

summary for sort (tiny)
  intro sort
   1.21x faster than heap sort
   1.22x faster than sort (intro sort)
   2.07x faster than Array#sort

• sort sortedArray (tiny)
--------------------------------------------------------- -----------------------------
Array#sort            941 ns/iter     (851 ns … 4'555 ns)    926 ns  1'860 ns  4'555 ns
sort (intro sort)     947 ns/iter     (875 ns … 1'924 ns)    931 ns  1'741 ns  1'924 ns
intro sort            928 ns/iter     (878 ns … 1'910 ns)    907 ns  1'384 ns  1'910 ns
heap sort           2'093 ns/iter   (1'912 ns … 3'505 ns)  2'083 ns  3'445 ns  3'505 ns

summary for sort sortedArray (tiny)
  intro sort
   1.01x faster than Array#sort
   1.02x faster than sort (intro sort)
   2.26x faster than heap sort

• sort (small)
--------------------------------------------------------- -----------------------------
Array#sort          7'732 ns/iter  (6'965 ns … 14'105 ns)  7'926 ns 12'214 ns 14'105 ns
sort (intro sort)   4'771 ns/iter     (4'300 ns … 370 µs)  4'500 ns 10'600 ns 24'700 ns
intro sort          4'540 ns/iter   (4'286 ns … 6'949 ns)  4'504 ns  6'532 ns  6'949 ns
heap sort           4'657 ns/iter   (4'417 ns … 6'772 ns)  4'658 ns  6'671 ns  6'772 ns

summary for sort (small)
  intro sort
   1.03x faster than heap sort
   1.05x faster than sort (intro sort)
   1.7x faster than Array#sort

• sort sortedArray (small)
--------------------------------------------------------- -----------------------------
Array#sort          1'836 ns/iter   (1'669 ns … 3'511 ns)  1'803 ns  3'184 ns  3'511 ns
sort (intro sort)     720 ns/iter     (659 ns … 1'479 ns)    708 ns  1'252 ns  1'479 ns
intro sort            694 ns/iter     (659 ns … 1'186 ns)    682 ns  1'104 ns  1'186 ns
heap sort           5'633 ns/iter   (5'370 ns … 8'102 ns)  5'593 ns  7'779 ns  8'102 ns

summary for sort sortedArray (small)
  intro sort
   1.04x faster than sort (intro sort)
   2.64x faster than Array#sort
   8.11x faster than heap sort

• sort (middle)
--------------------------------------------------------- -----------------------------
Array#sort         18'917 ns/iter    (17'300 ns … 472 µs) 17'800 ns 38'900 ns 86'900 ns
sort (intro sort)  14'277 ns/iter    (12'000 ns … 396 µs) 12'700 ns 33'200 ns 69'600 ns
intro sort         13'855 ns/iter    (11'900 ns … 547 µs) 12'700 ns 30'500 ns 69'600 ns
heap sort          13'326 ns/iter    (11'700 ns … 575 µs) 12'800 ns 28'400 ns 62'600 ns

summary for sort (middle)
  heap sort
   1.04x faster than intro sort
   1.07x faster than sort (intro sort)
   1.42x faster than Array#sort

• sort sortedArray (middle)
--------------------------------------------------------- -----------------------------
Array#sort          3'618 ns/iter   (3'437 ns … 5'239 ns)  3'609 ns  4'682 ns  5'239 ns
sort (intro sort)   1'333 ns/iter   (1'269 ns … 2'546 ns)  1'310 ns  2'102 ns  2'546 ns
intro sort          1'335 ns/iter   (1'269 ns … 2'333 ns)  1'309 ns  1'814 ns  2'333 ns
heap sort          15'012 ns/iter    (13'600 ns … 217 µs) 14'500 ns 29'100 ns 61'200 ns

summary for sort sortedArray (middle)
  sort (intro sort)
   1x faster than intro sort
   2.71x faster than Array#sort
   11.26x faster than heap sort

• sort (large)
--------------------------------------------------------- -----------------------------
Array#sort            123 µs/iter       (110 µs … 753 µs)    119 µs    252 µs    550 µs
sort (intro sort)     111 µs/iter       (103 µs … 535 µs)    108 µs    172 µs    264 µs
intro sort            115 µs/iter       (107 µs … 488 µs)    111 µs    209 µs    295 µs
heap sort             106 µs/iter    (98'300 ns … 516 µs)    107 µs    176 µs    232 µs

summary for sort (large)
  heap sort
   1.04x faster than sort (intro sort)
   1.09x faster than intro sort
   1.16x faster than Array#sort

• sort sortedArray (large)
--------------------------------------------------------- -----------------------------
Array#sort         17'018 ns/iter    (14'400 ns … 457 µs) 15'800 ns 33'500 ns 92'700 ns
sort (intro sort)   5'652 ns/iter   (5'406 ns … 8'727 ns)  5'639 ns  7'642 ns  8'727 ns
intro sort          5'585 ns/iter   (5'408 ns … 6'545 ns)  5'627 ns  6'493 ns  6'545 ns
heap sort          86'851 ns/iter    (82'800 ns … 537 µs) 84'700 ns    150 µs    231 µs

summary for sort sortedArray (large)
  intro sort
   1.01x faster than sort (intro sort)
   3.05x faster than Array#sort
   15.55x faster than heap sort

benchmarks/headers.mjs

main
benchmark                       time (avg)             (min … max)       p75       p99      p999
------------------------------------------------------------------ -----------------------------
• length 4 #fast-path (tiny array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            1'797 ns/iter   (1'640 ns … 3'829 ns)  1'746 ns  2'782 ns  3'829 ns
Headers@@iterator (sorted)   1'810 ns/iter   (1'611 ns … 2'693 ns)  1'907 ns  2'607 ns  2'693 ns

summary for length 4 #fast-path (tiny array)
  Headers@@iterator
   1.01x faster than Headers@@iterator (sorted)

• length 8 #fast-path (small array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            3'138 ns/iter   (2'901 ns … 4'893 ns)  3'245 ns  4'747 ns  4'893 ns
Headers@@iterator (sorted)   2'972 ns/iter   (2'739 ns … 4'540 ns)  2'917 ns  4'535 ns  4'540 ns

summary for length 8 #fast-path (small array)
  Headers@@iterator (sorted)
   1.06x faster than Headers@@iterator

• length 16 #fast-path (middle array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            4'707 ns/iter   (4'396 ns … 7'976 ns)  4'696 ns  7'037 ns  7'976 ns
Headers@@iterator (sorted)   4'390 ns/iter   (3'991 ns … 7'417 ns)  4'436 ns  6'674 ns  7'417 ns

summary for length 16 #fast-path (middle array)
  Headers@@iterator (sorted)
   1.07x faster than Headers@@iterator

• length 32 #fast-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator           13'742 ns/iter  (10'300 ns … 5'583 µs) 12'900 ns 28'500 ns    179 µs
Headers@@iterator (sorted)   9'420 ns/iter  (8'596 ns … 13'183 ns)  9'538 ns 12'826 ns 13'183 ns

summary for length 32 #fast-path
  Headers@@iterator (sorted)
   1.46x faster than Headers@@iterator

• length 64 #slow-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator           25'819 ns/iter    (22'000 ns … 512 µs) 24'400 ns 58'100 ns    188 µs
Headers@@iterator (sorted)  19'705 ns/iter    (15'800 ns … 444 µs) 19'400 ns 42'800 ns    209 µs

summary for length 64 #slow-path
  Headers@@iterator (sorted)
   1.31x faster than Headers@@iterator
this patch
benchmark                       time (avg)             (min … max)       p75       p99      p999
------------------------------------------------------------------ -----------------------------
• length 4 #fast-path (tiny array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator              513 ns/iter     (450 ns … 6'097 ns)    502 ns    899 ns  6'097 ns
Headers@@iterator (sorted)     506 ns/iter     (443 ns … 1'191 ns)    504 ns    979 ns  1'191 ns

summary for length 4 #fast-path (tiny array)
  Headers@@iterator (sorted)
   1.01x faster than Headers@@iterator

• length 8 #fast-path (small array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator              945 ns/iter     (842 ns … 1'781 ns)    939 ns  1'585 ns  1'781 ns
Headers@@iterator (sorted)     855 ns/iter     (782 ns … 2'036 ns)    843 ns  1'727 ns  2'036 ns

summary for length 8 #fast-path (small array)
  Headers@@iterator (sorted)
   1.1x faster than Headers@@iterator

• length 16 #fast-path (middle array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            1'901 ns/iter   (1'748 ns … 2'825 ns)  1'934 ns  2'602 ns  2'825 ns
Headers@@iterator (sorted)   1'676 ns/iter   (1'552 ns … 3'389 ns)  1'656 ns  2'943 ns  3'389 ns

summary for length 16 #fast-path (middle array)
  Headers@@iterator (sorted)
   1.13x faster than Headers@@iterator

• length 32 #fast-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator            4'057 ns/iter   (3'885 ns … 5'758 ns)  4'034 ns  5'651 ns  5'758 ns
Headers@@iterator (sorted)   3'442 ns/iter   (3'240 ns … 5'185 ns)  3'412 ns  4'880 ns  5'185 ns

summary for length 32 #fast-path
  Headers@@iterator (sorted)
   1.18x faster than Headers@@iterator

• length 64 #slow-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator           11'821 ns/iter    (10'200 ns … 495 µs) 10'900 ns 26'500 ns    136 µs
Headers@@iterator (sorted)   7'006 ns/iter   (6'758 ns … 9'469 ns)  7'007 ns  8'985 ns  9'469 ns

summary for length 64 #slow-path
  Headers@@iterator (sorted)
   1.69x faster than Headers@@iterator

benchmarks/headers-length32.mjs

  • main
benchmark              time (avg)             (min … max)       p75       p99      p999       
--------------------------------------------------------- -----------------------------       
Headers@@iterator  12'041 ns/iter     (9'700 ns … 905 µs) 11'400 ns 38'300 ns    150 µs
  • this patch
benchmark              time (avg)             (min … max)       p75       p99      p999
--------------------------------------------------------- -----------------------------       
Headers@@iterator   5'064 ns/iter   (3'900 ns … 1'015 µs)  4'400 ns 13'100 ns    102 µs

Copy link
Member

@ronag ronag left a comment

Choose a reason for hiding this comment

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

Can you extract the sorting into it's own function and maybe add some test & fuzzing for it?

@tsctx tsctx marked this pull request as draft February 14, 2024 12:31
@tsctx tsctx marked this pull request as ready for review February 14, 2024 12:46
@codecov-commenter
Copy link

codecov-commenter commented Feb 14, 2024

Codecov Report

Attention: 2 lines in your changes are missing coverage. Please review.

Comparison is base (e39a632) 85.54% compared to head (c6976c9) 85.60%.
Report is 328 commits behind head on main.

Files Patch % Lines
lib/fetch/headers.js 97.67% 1 Missing ⚠️
lib/fetch/sort.js 98.30% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2756      +/-   ##
==========================================
+ Coverage   85.54%   85.60%   +0.05%     
==========================================
  Files          76       87      +11     
  Lines        6858     7703     +845     
==========================================
+ Hits         5867     6594     +727     
- Misses        991     1109     +118     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@tsctx

This comment was marked as resolved.

@tsctx

This comment was marked as resolved.

lib/fetch/headers.js Outdated Show resolved Hide resolved
@ronag
Copy link
Member

ronag commented Feb 14, 2024

I think it would be good with a fuzz test, generate some random arrays and compare the result with Array.sort

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

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

lgtm

@Ethan-Arrowood
Copy link
Collaborator

This is kinda funny, thinking back to when I first implemented Headers I had implemented the underlying header list as a flat array and implemented a similar sorting algorithm that operated on a bi-index basis (as in keys were even-indexed and values were odd-indexed, and so everything had to manipulate i and i+1 simultaneously).

Happy to see we are squeezing some extra performance out of this again.

FWIW though rarely will you have more than 24 headers at any given time so while this optimization is still important, in practice it may not make a huge overall difference in actual code.

@tsctx tsctx force-pushed the perf/use-binary-insertion-sort branch from ad80667 to 90aa558 Compare February 17, 2024 10:11
@Uzlopak
Copy link
Contributor

Uzlopak commented Feb 17, 2024

Tbh i like this PR for its scientific explaination. I thought alot about further improvements but i dont think they are possible with javascript. like we instantiate the array from the iterator via spread operator and then iterate over. Probably there could be a perf improvement when we could iterate and insert the element on the right place. But i dont think we have a performant way in js to insert an element into an array at a specific place. Or atleast it is not known to me, as i assume splice is slow).

So i assume this is the max performance we probably can get out of this function.

@tsctx tsctx force-pushed the perf/use-binary-insertion-sort branch 3 times, most recently from d7a4102 to c40ab11 Compare February 19, 2024 11:55
@tsctx
Copy link
Member Author

tsctx commented Feb 19, 2024

It is still a work in progress, but so far I have been surprised by the fact that it is much faster (fastest implementation) than other implementations of the Headers.

undici (this patch)
benchmark                       time (avg)             (min … max)       p75       p99      p999
------------------------------------------------------------------ -----------------------------
• length 4 #fast-path (tiny array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator              716 ns/iter     (550 ns … 5'014 ns)    706 ns  2'647 ns  5'014 ns
Headers@@iterator (sorted)     672 ns/iter     (545 ns … 1'549 ns)    714 ns  1'245 ns  1'549 ns

summary for length 4 #fast-path (tiny array)
  Headers@@iterator (sorted)
   1.06x faster than Headers@@iterator

• length 8 #fast-path (small array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            1'165 ns/iter   (1'015 ns … 2'385 ns)  1'193 ns  2'120 ns  2'385 ns
Headers@@iterator (sorted)   1'122 ns/iter     (980 ns … 2'338 ns)  1'133 ns  1'769 ns  2'338 ns

summary for length 8 #fast-path (small array)
  Headers@@iterator (sorted)
   1.04x faster than Headers@@iterator

• length 16 #fast-path (middle array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            2'484 ns/iter   (2'081 ns … 6'930 ns)  2'423 ns  4'409 ns  6'930 ns
Headers@@iterator (sorted)   2'191 ns/iter   (1'872 ns … 3'694 ns)  2'340 ns  3'159 ns  3'694 ns

summary for length 16 #fast-path (middle array)
  Headers@@iterator (sorted)
   1.13x faster than Headers@@iterator

• length 32 #fast-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator            5'471 ns/iter   (4'698 ns … 8'869 ns)  5'623 ns  7'886 ns  8'869 ns
Headers@@iterator (sorted)   4'436 ns/iter   (4'059 ns … 6'626 ns)  4'395 ns  6'112 ns  6'626 ns

summary for length 32 #fast-path
  Headers@@iterator (sorted)
   1.23x faster than Headers@@iterator

• length 64 #slow-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator           13'342 ns/iter    (10'700 ns … 847 µs) 12'600 ns 29'700 ns    168 µs
Headers@@iterator (sorted)  10'657 ns/iter  (9'739 ns … 13'578 ns) 10'690 ns 13'551 ns 13'578 ns

summary for length 64 #slow-path
  Headers@@iterator (sorted)
   1.25x faster than Headers@@iterator
Deno
benchmark                       time (avg)             (min … max)       p75       p99      p999
------------------------------------------------------------------ -----------------------------
• length 4 #fast-path (tiny array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator           10'557 ns/iter     (7'800 ns … 559 µs)  9'700 ns 31'000 ns    122 µs
Headers@@iterator (sorted)   4'451 ns/iter   (3'294 ns … 9'146 ns)  4'575 ns  9'128 ns  9'146 ns

summary for length 4 #fast-path (tiny array)
  Headers@@iterator (sorted)
   2.37x faster than Headers@@iterator

• length 8 #fast-path (small array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator           22'477 ns/iter    (20'400 ns … 305 µs) 21'500 ns 45'400 ns    141 µs
Headers@@iterator (sorted)  13'181 ns/iter    (10'800 ns … 269 µs) 13'000 ns 27'600 ns    125 µs

summary for length 8 #fast-path (small array)
  Headers@@iterator (sorted)
   1.71x faster than Headers@@iterator

• length 16 #fast-path (middle array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator           89'463 ns/iter  (75'200 ns … 3'452 µs) 77'900 ns    245 µs    728 µs
Headers@@iterator (sorted)  39'085 ns/iter  (31'000 ns … 3'566 µs) 40'200 ns    110 µs    316 µs

summary for length 16 #fast-path (middle array)
  Headers@@iterator (sorted)
   2.29x faster than Headers@@iterator

• length 32 #fast-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator              394 µs/iter     (361 µs … 1'965 µs)    367 µs    907 µs  1'667 µs
Headers@@iterator (sorted)     172 µs/iter       (161 µs … 634 µs)    165 µs    308 µs    470 µs

summary for length 32 #fast-path
  Headers@@iterator (sorted)
   2.28x faster than Headers@@iterator

• length 64 #slow-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator            1'664 µs/iter   (1'540 µs … 4'518 µs)  1'613 µs  3'823 µs  4'518 µs
Headers@@iterator (sorted)     644 µs/iter     (581 µs … 2'589 µs)    641 µs  1'287 µs  2'589 µs

summary for length 64 #slow-path
  Headers@@iterator (sorted)
   2.58x faster than Headers@@iterator
Bun
benchmark                       time (avg)             (min … max)       p75       p99      p999
------------------------------------------------------------------ -----------------------------
• length 4 #fast-path (tiny array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            1'616 ns/iter   (1'358 ns … 4'416 ns)  1'704 ns  3'368 ns  4'416 ns
Headers@@iterator (sorted)   1'588 ns/iter   (1'349 ns … 2'585 ns)  1'759 ns  2'446 ns  2'585 ns

summary for length 4 #fast-path (tiny array)
  Headers@@iterator (sorted)
   1.02x faster than Headers@@iterator

• length 8 #fast-path (small array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            3'012 ns/iter   (2'583 ns … 6'269 ns)  3'277 ns  5'365 ns  6'269 ns
Headers@@iterator (sorted)   2'861 ns/iter   (2'575 ns … 4'737 ns)  2'926 ns  3'965 ns  4'737 ns

summary for length 8 #fast-path (small array)
  Headers@@iterator (sorted)
   1.05x faster than Headers@@iterator

• length 16 #fast-path (middle array)
------------------------------------------------------------------ -----------------------------
Headers@@iterator            6'045 ns/iter   (5'492 ns … 8'134 ns)  6'409 ns  7'478 ns  8'134 ns
Headers@@iterator (sorted)   6'161 ns/iter  (5'492 ns … 12'144 ns)  6'330 ns 10'618 ns 12'144 ns

summary for length 16 #fast-path (middle array)
  Headers@@iterator
   1.02x faster than Headers@@iterator (sorted)

• length 32 #fast-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator           13'875 ns/iter  (10'400 ns … 1'686 µs) 13'200 ns 58'100 ns 92'500 ns
Headers@@iterator (sorted)  13'591 ns/iter  (10'400 ns … 1'604 µs) 12'600 ns 55'700 ns 96'100 ns

summary for length 32 #fast-path
  Headers@@iterator (sorted)
   1.02x faster than Headers@@iterator

• length 64 #slow-path
------------------------------------------------------------------ -----------------------------
Headers@@iterator           30'968 ns/iter  (24'800 ns … 1'844 µs) 28'000 ns 79'800 ns    146 µs
Headers@@iterator (sorted)  31'067 ns/iter  (25'000 ns … 1'600 µs) 28'100 ns 80'000 ns    143 µs

summary for length 64 #slow-path
  Headers@@iterator
   1x faster than Headers@@iterator (sorted)

@tsctx tsctx force-pushed the perf/use-binary-insertion-sort branch from d8ed4ac to a16260c Compare February 21, 2024 11:29
@tsctx tsctx changed the title perf: improve sort algorithm to improve performance for large arrays perf: improve sort algorithm Feb 21, 2024
@tsctx
Copy link
Member Author

tsctx commented Feb 21, 2024

Hi @ronag @Uzlopak @KhafraDev @mcollina @metcoder95,
The work is complete. Could you do a code review?

Copy link
Contributor

@Uzlopak Uzlopak left a comment

Choose a reason for hiding this comment

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

LGTM

@ronag ronag merged commit fdbc221 into nodejs:main Feb 21, 2024
17 checks passed
@tsctx tsctx deleted the perf/use-binary-insertion-sort branch February 21, 2024 14:42
ronag pushed a commit that referenced this pull request Feb 21, 2024
* perf: improve sort algorithm

* benchmark: add headers-length32.mjs

* fix: benchmark

* fix: fix performance regression for sorted arrays

* test: add sorted test

* refactor: simplify

* refactor: remove comment
ronag pushed a commit that referenced this pull request Feb 22, 2024
* perf: improve sort algorithm

* benchmark: add headers-length32.mjs

* fix: benchmark

* fix: fix performance regression for sorted arrays

* test: add sorted test

* refactor: simplify

* refactor: remove comment
crysmags pushed a commit to crysmags/undici that referenced this pull request Feb 27, 2024
* perf: improve sort algorithm

* benchmark: add headers-length32.mjs

* fix: benchmark

* fix: fix performance regression for sorted arrays

* test: add sorted test

* refactor: simplify

* refactor: remove comment
kodiakhq bot referenced this pull request in X-oss-byte/Canary-nextjs Mar 4, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | [`6.6.2` -> `6.7.0`](https://renovatebot.com/diffs/npm/undici/6.6.2/6.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/6.6.2/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/6.6.2/6.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
-   Let's add superagent to the benchmark. closes [#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**: nodejs/undici@v6.6.2...v6.7.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Canary-nextjs).
kodiakhq bot referenced this pull request in X-oss-byte/Nextjs Mar 10, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | [`5.28.3` -> `6.7.1`](https://renovatebot.com/diffs/npm/undici/5.28.3/6.7.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.28.3/6.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.28.3/6.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1)

#### What's Changed

-   fetch: use EOL of os-module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2915](https://github.com/nodejs/undici/pull/2915)
-   ci: only send codecov from ubuntu and node by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2914](https://github.com/nodejs/undici/pull/2914)
-   tests: improve skip for unix.js tests, remove skipped tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2916](https://github.com/nodejs/undici/pull/2916)
-   chore: fix typo in isHistoryNavigation comments by [@&#8203;kachick](https://github.com/kachick) in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   fix(benchmark): set body correctly by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2918](https://github.com/nodejs/undici/pull/2918)
-   chore: increase test coverage to 100% for /lib/api/api-request.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2912](https://github.com/nodejs/undici/pull/2912)
-   fix: chunksDecode cuts off 3 characters at the end if having BOM by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2922](https://github.com/nodejs/undici/pull/2922)
-   docs: clarify URI parsing behavior of ProxyAgent constructor by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2893](https://github.com/nodejs/undici/pull/2893)
-   implement sync formdata parser by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2911](https://github.com/nodejs/undici/pull/2911)
-   Fix docs links and add examples to sidebar by [@&#8203;tastypackets](https://github.com/tastypackets) in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   doc: update diagnostics channel request headers type change by [@&#8203;jessezhang91](https://github.com/jessezhang91) in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   perf: optimize getResolveErrorBodyCallback by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2921](https://github.com/nodejs/undici/pull/2921)
-   override request dispatcher from init by [@&#8203;matthieusieben](https://github.com/matthieusieben) in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)
-   add busboy tests by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2924](https://github.com/nodejs/undici/pull/2924)
-   fix(benchmark): make it fair by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2929](https://github.com/nodejs/undici/pull/2929)
-   Revert "chore: remove no-simd wasm" by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2935](https://github.com/nodejs/undici/pull/2935)
-   build(deps): bump node from `d3271e4` to `8bf9240` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2936](https://github.com/nodejs/undici/pull/2936)
-   Flip link between docs and README by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2933](https://github.com/nodejs/undici/pull/2933)

#### New Contributors

-   [@&#8203;kachick](https://github.com/kachick) made their first contribution in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   [@&#8203;tastypackets](https://github.com/tastypackets) made their first contribution in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   [@&#8203;jessezhang91](https://github.com/jessezhang91) made their first contribution in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   [@&#8203;matthieusieben](https://github.com/matthieusieben) made their first contribution in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
-   Let's add superagent to the benchmark. closes [#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0

### [`v6.6.2`](https://github.com/nodejs/undici/releases/tag/v6.6.2)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2)

#### What's Changed

-   fix: webidl.brandcheck non strict should throw by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2683](https://github.com/nodejs/undici/pull/2683)
-   fix: expose EventSource for nodejs by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2645](https://github.com/nodejs/undici/pull/2645)
-   test: more information from debug tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2695](https://github.com/nodejs/undici/pull/2695)
-   Fix broken test on linux by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2699](https://github.com/nodejs/undici/pull/2699)
-   fix: fix the linux patch by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2703](https://github.com/nodejs/undici/pull/2703)
-   test(wpt): mark timed out tests as 'failed' by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)
-   build(deps-dev): bump borp from 0.5.0 to 0.9.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2702](https://github.com/nodejs/undici/pull/2702)
-   perf: use insertion sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2706](https://github.com/nodejs/undici/pull/2706)
-   fix: run node tests on merge by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2707](https://github.com/nodejs/undici/pull/2707)

#### New Contributors

-   [@&#8203;rossilor95](https://github.com/rossilor95) made their first contribution in [https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2

### [`v6.6.1`](https://github.com/nodejs/undici/releases/tag/v6.6.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.0...v6.6.1)

#### ⚠️ Security Release ⚠️

Details on the vulnerabilities fixed will be shared in the next couple of days.

#### What's Changed

-   fix: flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2687](https://github.com/nodejs/undici/pull/2687)
-   build(deps): bump github/codeql-action from 3.22.12 to 3.23.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2688](https://github.com/nodejs/undici/pull/2688)
-   build(deps): bump actions/dependency-review-action from 3.1.0 to 4.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2689](https://github.com/nodejs/undici/pull/2689)
-   fix: ci pipeline warnings by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2685](https://github.com/nodejs/undici/pull/2685)
-   perf: optimize Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2692](https://github.com/nodejs/undici/pull/2692)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.0...v6.6.1

### [`v6.6.0`](https://github.com/nodejs/undici/releases/tag/v6.6.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0)

#### What's Changed

-   add webSocket example by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2626](https://github.com/nodejs/undici/pull/2626)
-   chore: remove atomic-sleep as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2648](https://github.com/nodejs/undici/pull/2648)
-   chore: remove semver as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2646](https://github.com/nodejs/undici/pull/2646)
-   chore: remove table as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2649](https://github.com/nodejs/undici/pull/2649)
-   chore: remove delay as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2647](https://github.com/nodejs/undici/pull/2647)
-   chore: reduce noise in test-logs test/issue-2349.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2655](https://github.com/nodejs/undici/pull/2655)
-   chore: fix faketimer warning in test/request-timeout.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2656](https://github.com/nodejs/undici/pull/2656)
-   chore: reduce noise in test logs test/client-node-max-header-size.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2654](https://github.com/nodejs/undici/pull/2654)
-   refactor: use fromInnerResponse by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2635](https://github.com/nodejs/undici/pull/2635)
-   fix: support deflate raw responses by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2650](https://github.com/nodejs/undici/pull/2650)
-   Support building for externally shared js builtins by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2643](https://github.com/nodejs/undici/pull/2643)
-   fix: typo clampAndCoarsenConnectionTimingInfo by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2653](https://github.com/nodejs/undici/pull/2653)
-   chore: use 'node:'-prefix for requiring node core modules by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2662](https://github.com/nodejs/undici/pull/2662)
-   build(deps-dev): bump husky from 8.0.3 to 9.0.7 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2667](https://github.com/nodejs/undici/pull/2667)
-   build(deps-dev): bump cronometro from 1.2.0 to 2.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2668](https://github.com/nodejs/undici/pull/2668)
-   remove timers/promises import by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2665](https://github.com/nodejs/undici/pull/2665)
-   chore: fix various codesmells by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2669](https://github.com/nodejs/undici/pull/2669)
-   chore: remove this alias in agent.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2671](https://github.com/nodejs/undici/pull/2671)
-   chore: use optional chaining by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2666](https://github.com/nodejs/undici/pull/2666)
-   chore: small perf improvements by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2661](https://github.com/nodejs/undici/pull/2661)
-   implement spec changes from a while ago by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2676](https://github.com/nodejs/undici/pull/2676)
-   websocket: fix close when no closing code is received by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2680](https://github.com/nodejs/undici/pull/2680)
-   fix: make ci less flaky by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2684](https://github.com/nodejs/undici/pull/2684)

#### New Contributors

-   [@&#8203;mochaaP](https://github.com/mochaaP) made their first contribution in [https://github.com/nodejs/undici/pull/2643](https://github.com/nodejs/undici/pull/2643)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0

### [`v6.5.0`](https://github.com/nodejs/undici/releases/tag/v6.5.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0)

#### What's Changed

-   build(deps-dev): bump jsdom from 23.2.0 to 24.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2632](https://github.com/nodejs/undici/pull/2632)
-   feat: Implement EventSource by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2608](https://github.com/nodejs/undici/pull/2608)
-   fix: readable body by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2642](https://github.com/nodejs/undici/pull/2642)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0

### [`v6.4.0`](https://github.com/nodejs/undici/releases/tag/v6.4.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.3.0...v6.4.0)

##### What's Changed

-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2605](https://github.com/nodejs/undici/pull/2605)
-   cacheStorage: separate matchAll logic by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2599](https://github.com/nodejs/undici/pull/2599)
-   cleanup index by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2598](https://github.com/nodejs/undici/pull/2598)
-   feat: port `balanced-pool`, `ca-fingerprint`, `client-abort` tests to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2584](https://github.com/nodejs/undici/pull/2584)
-   ci: unpin nodejs workflow version by [@&#8203;dominykas](https://github.com/dominykas) in [https://github.com/nodejs/undici/pull/2434](https://github.com/nodejs/undici/pull/2434)
-   test([#&#8203;2600](https://github.com/nodejs/undici/issues/2600)): Flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2607](https://github.com/nodejs/undici/pull/2607)
-   fix: h2 hang issue with empty body by [@&#8203;timursevimli](https://github.com/timursevimli) in [https://github.com/nodejs/undici/pull/2601](https://github.com/nodejs/undici/pull/2601)
-   Fix tests for Node.js v21 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2609](https://github.com/nodejs/undici/pull/2609)
-   perf(cache): avoid Request and Response initialization by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2610](https://github.com/nodejs/undici/pull/2610)
-   Add more libraries to benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2614](https://github.com/nodejs/undici/pull/2614)
-   feat: port `client-connect`, `client-dispatch`, `client-errors` test to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2591](https://github.com/nodejs/undici/pull/2591)
-   exit with 1 if WPT runner has unexpected errors by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2621](https://github.com/nodejs/undici/pull/2621)
-   Fix tests for Node.js v20.11.0 by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2618](https://github.com/nodejs/undici/pull/2618)
-   fix(mock-agent): split set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2619](https://github.com/nodejs/undici/pull/2619)
-   feat: implement throwOnMaxRedirect option for RedirectHandler by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2563](https://github.com/nodejs/undici/pull/2563)
-   test: fix flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2613](https://github.com/nodejs/undici/pull/2613)
-   fix: hide statusOutput if empty in handleRunnerCompletion by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2624](https://github.com/nodejs/undici/pull/2624)
-   docs: Fix typo in Debug.md by [@&#8203;Skn0tt](https://github.com/Skn0tt) in [https://github.com/nodejs/undici/pull/2625](https://github.com/nodejs/undici/pull/2625)
-   fix(cache): set AbortSignal by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2612](https://github.com/nodejs/undici/pull/2612)
-   Use correct http Agent for node-fetch, axios, got and request by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2629](https://github.com/nodejs/undici/pull/2629)

##### New Contributors

-   [@&#8203;timursevimli](https://github.com/timursevimli) made their first contribution in [https://github.com/nodejs/undici/pull/2601](https://github.com/nodejs/undici/pull/2601)
-   [@&#8203;mertcanaltin](https://github.com/mertcanaltin) made their first contribution in [https://github.com/nodejs/undici/pull/2563](https://github.com/nodejs/undici/pull/2563)
-   [@&#8203;Skn0tt](https://github.com/Skn0tt) made their first contribution in [https://github.com/nodejs/undici/pull/2625](https://github.com/nodejs/undici/pull/2625)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.3.0...v6.4.0

### [`v6.3.0`](https://github.com/nodejs/undici/releases/tag/v6.3.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.2.1...v6.3.0)

#### What's Changed

-   Clear all timeout on destroy and close by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2535](https://github.com/nodejs/undici/pull/2535)
-   ConnectOptions should include 'origin' field by [@&#8203;dvoytenko](https://github.com/dvoytenko) in [https://github.com/nodejs/undici/pull/2532](https://github.com/nodejs/undici/pull/2532)
-   perf: avoid toLowerCase call by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2537](https://github.com/nodejs/undici/pull/2537)
-   revert [`a1a8136`](https://github.com/nodejs/undici/commit/a1a8136) by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2539](https://github.com/nodejs/undici/pull/2539)
-   docs: add Util to sidebar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2529](https://github.com/nodejs/undici/pull/2529)
-   fix: call explicitly unregister by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2534](https://github.com/nodejs/undici/pull/2534)
-   fix: check the content-type of invalid formData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2541](https://github.com/nodejs/undici/pull/2541)
-   Add request examples. by [@&#8203;autopulated](https://github.com/autopulated) in [https://github.com/nodejs/undici/pull/2380](https://github.com/nodejs/undici/pull/2380)
-   fix(HTTP/2): handle consumption of aborted request by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2387](https://github.com/nodejs/undici/pull/2387)
-   chore: update tst test by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2538](https://github.com/nodejs/undici/pull/2538)
-   fix(fetch): do not abort fetch on redirect by [@&#8203;angelyan](https://github.com/angelyan) in [https://github.com/nodejs/undici/pull/2545](https://github.com/nodejs/undici/pull/2545)
-   drop verifyVersion in scripts by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2549](https://github.com/nodejs/undici/pull/2549)
-   types: remove unused Client and Pool types by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in [https://github.com/nodejs/undici/pull/2557](https://github.com/nodejs/undici/pull/2557)
-   lib: fix Host header when CONNECT ProxyAgent by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in [https://github.com/nodejs/undici/pull/2556](https://github.com/nodejs/undici/pull/2556)
-   feat: port cookies tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in [https://github.com/nodejs/undici/pull/2547](https://github.com/nodejs/undici/pull/2547)
-   feat: port webidl tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2554](https://github.com/nodejs/undici/pull/2554)
-   perf: Improve percentDecode by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2562](https://github.com/nodejs/undici/pull/2562)
-   Fix parseHashWithOptions regex by [@&#8203;flapenna](https://github.com/flapenna) in [https://github.com/nodejs/undici/pull/2561](https://github.com/nodejs/undici/pull/2561)
-   feat: port diagnostic-channel tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2559](https://github.com/nodejs/undici/pull/2559)
-   feat: port websocket tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2553](https://github.com/nodejs/undici/pull/2553)
-   build(deps-dev): bump tsd from 0.29.0 to 0.30.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2551](https://github.com/nodejs/undici/pull/2551)
-   build(deps): bump actions/setup-node from 4.0.0 to 4.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2572](https://github.com/nodejs/undici/pull/2572)
-   build(deps): bump github/codeql-action from 2.22.5 to 3.22.12 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2574](https://github.com/nodejs/undici/pull/2574)
-   Update `@matteo.collina/tspl` to 0.1.1 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2576](https://github.com/nodejs/undici/pull/2576)
-   mark wpt as failing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2581](https://github.com/nodejs/undici/pull/2581)
-   feat: port `abort-controller.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2564](https://github.com/nodejs/undici/pull/2564)
-   fix data url test by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2580](https://github.com/nodejs/undici/pull/2580)
-   feat: port `async_hooks.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2568](https://github.com/nodejs/undici/pull/2568)
-   feat: port `agent.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2566](https://github.com/nodejs/undici/pull/2566)
-   feat: port `abort-event-emitter.js` tests to `node:test` runnner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2565](https://github.com/nodejs/undici/pull/2565)
-   feat: port first half of fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in [https://github.com/nodejs/undici/pull/2569](https://github.com/nodejs/undici/pull/2569)
-   perf: bypass method validation by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2583](https://github.com/nodejs/undici/pull/2583)
-   fetch: warn when using patch method by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2577](https://github.com/nodejs/undici/pull/2577)
-   feat: port `autoselectfamily.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2570](https://github.com/nodejs/undici/pull/2570)
-   feat: port remaining fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in [https://github.com/nodejs/undici/pull/2587](https://github.com/nodejs/undici/pull/2587)
-   fix: use isArrayBuffer instead of isAnyArrayBuffer by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2586](https://github.com/nodejs/undici/pull/2586)
-   Feat/migrate tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in [https://github.com/nodejs/undici/pull/2593](https://github.com/nodejs/undici/pull/2593)
-   abort request with reason if one is provided by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2592](https://github.com/nodejs/undici/pull/2592)
-   feat: port tst test to node test runner by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2595](https://github.com/nodejs/undici/pull/2595)
-   feat([#&#8203;2191](https://github.com/nodejs/undici/issues/2191)): Add support for `NODE_DEBUG` by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2585](https://github.com/nodejs/undici/pull/2585)
-   cacheStorage: fix bugs make wpts pass by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2596](https://github.com/nodejs/undici/pull/2596)
-   fix: non-object error in abort throws bad error by [@&#8203;atlowChemi](https://github.com/atlowChemi) in [https://github.com/nodejs/undici/pull/2597](https://github.com/nodejs/undici/pull/2597)
-   fix: add test helper for closing server as promise by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2604](https://github.com/nodejs/undici/pull/2604)

#### New Contributors

-   [@&#8203;dvoytenko](https://github.com/dvoytenko) made their first contribution in [https://github.com/nodejs/undici/pull/2532](https://github.com/nodejs/undici/pull/2532)
-   [@&#8203;autopulated](https://github.com/autopulated) made their first contribution in [https://github.com/nodejs/undici/pull/2380](https://github.com/nodejs/undici/pull/2380)
-   [@&#8203;angelyan](https://github.com/angelyan) made their first contribution in [https://github.com/nodejs/undici/pull/2545](https://github.com/nodejs/undici/pull/2545)
-   [@&#8203;pmarchini](https://github.com/pmarchini) made their first contribution in [https://github.com/nodejs/undici/pull/2547](https://github.com/nodejs/undici/pull/2547)
-   [@&#8203;ilteoood](https://github.com/ilteoood) made their first contribution in [https://github.com/nodejs/undici/pull/2554](https://github.com/nodejs/undici/pull/2554)
-   [@&#8203;flapenna](https://github.com/flapenna) made their first contribution in [https://github.com/nodejs/undici/pull/2561](https://github.com/nodejs/undici/pull/2561)
-   [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) made their first contribution in [https://github.com/nodejs/undici/pull/2576](https://github.com/nodejs/undici/pull/2576)
-   [@&#8203;anurag-roy](https://github.com/anurag-roy) made their first contribution in [https://github.com/nodejs/undici/pull/2569](https://github.com/nodejs/undici/pull/2569)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.2.1...v6.3.0

### [`v6.2.1`](https://github.com/nodejs/undici/releases/tag/v6.2.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1)

##### What's Changed

-   perf: use tree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2528](https://github.com/nodejs/undici/pull/2528)
-   chore: reduce dependencies by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2533](https://github.com/nodejs/undici/pull/2533)
-   Remove timers in agent.js by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2536](https://github.com/nodejs/undici/pull/2536)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1

### [`v6.2.0`](https://github.com/nodejs/undici/releases/tag/v6.2.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.1.0...v6.2.0)

#### What's Changed

-   Remove FinalizationRegistry from Agent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2530](https://github.com/nodejs/undici/pull/2530)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.1.0...v6.2.0

### [`v6.1.0`](https://github.com/nodejs/undici/releases/tag/v6.1.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.0.1...v6.1.0)

#### What's Changed

-   fix: more sensible stack trace from dump error by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2503](https://github.com/nodejs/undici/pull/2503)
-   refactor: remove some node compat by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2502](https://github.com/nodejs/undici/pull/2502)
-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2507](https://github.com/nodejs/undici/pull/2507)
-   perf(fetch): Improve fetch of detaurl by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2479](https://github.com/nodejs/undici/pull/2479)
-   feat: expose parseHeader by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2511](https://github.com/nodejs/undici/pull/2511)
-   perf(fetch): optimize call `dispatch` by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2493](https://github.com/nodejs/undici/pull/2493)
-   perf(util/parseHeaders): If the header name is buffer by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2501](https://github.com/nodejs/undici/pull/2501)
-   perf: twice faster method check by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2495](https://github.com/nodejs/undici/pull/2495)
-   refactor: remove Error.captureStackTrace by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2509](https://github.com/nodejs/undici/pull/2509)
-   perf: Improve processHeader by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2513](https://github.com/nodejs/undici/pull/2513)
-   perf: reduce `String#toLowerCase` call by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2516](https://github.com/nodejs/undici/pull/2516)
-   perf: optimize consumeEnd by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2510](https://github.com/nodejs/undici/pull/2510)
-   perf: reduce tst built time by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2517](https://github.com/nodejs/undici/pull/2517)
-   feat: allow customization of build environment by [@&#8203;khardix](https://github.com/khardix) in [https://github.com/nodejs/undici/pull/2403](https://github.com/nodejs/undici/pull/2403)
-   fix: clear cache by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2519](https://github.com/nodejs/undici/pull/2519)
-   feat: Add resource timing entries for connection, request and response by [@&#8203;ToshB](https://github.com/ToshB) in [https://github.com/nodejs/undici/pull/2481](https://github.com/nodejs/undici/pull/2481)
-   Call fg.unregister() after a dispatcher is done, adds UNDICI_NO_FG to… by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2527](https://github.com/nodejs/undici/pull/2527)
-   feat: expose headerNameToString by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2525](https://github.com/nodejs/undici/pull/2525)

#### New Contributors

-   [@&#8203;khardix](https://github.com/khardix) made their first contribution in [https://github.com/nodejs/undici/pull/2403](https://github.com/nodejs/undici/pull/2403)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.0.1...v6.1.0

### [`v6.0.1`](https://github.com/nodejs/undici/releases/tag/v6.0.1)

[Compare Source](https://github.com/nodejs/u

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Nextjs).
kodiakhq bot referenced this pull request in X-oss-byte/Nextjs Mar 13, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | [`6.7.1` -> `6.8.0`](https://renovatebot.com/diffs/npm/undici/5.28.3/6.8.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.28.3/6.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.28.3/6.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.8.0`](https://github.com/nodejs/undici/compare/v6.7.1...f84ec8087e11a26ee3553a0c601f6a73373edae6)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.1...v6.8.0)

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1)

#### What's Changed

-   fetch: use EOL of os-module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2915](https://github.com/nodejs/undici/pull/2915)
-   ci: only send codecov from ubuntu and node by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2914](https://github.com/nodejs/undici/pull/2914)
-   tests: improve skip for unix.js tests, remove skipped tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2916](https://github.com/nodejs/undici/pull/2916)
-   chore: fix typo in isHistoryNavigation comments by [@&#8203;kachick](https://github.com/kachick) in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   fix(benchmark): set body correctly by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2918](https://github.com/nodejs/undici/pull/2918)
-   chore: increase test coverage to 100% for /lib/api/api-request.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2912](https://github.com/nodejs/undici/pull/2912)
-   fix: chunksDecode cuts off 3 characters at the end if having BOM by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2922](https://github.com/nodejs/undici/pull/2922)
-   docs: clarify URI parsing behavior of ProxyAgent constructor by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2893](https://github.com/nodejs/undici/pull/2893)
-   implement sync formdata parser by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2911](https://github.com/nodejs/undici/pull/2911)
-   Fix docs links and add examples to sidebar by [@&#8203;tastypackets](https://github.com/tastypackets) in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   doc: update diagnostics channel request headers type change by [@&#8203;jessezhang91](https://github.com/jessezhang91) in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   perf: optimize getResolveErrorBodyCallback by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2921](https://github.com/nodejs/undici/pull/2921)
-   override request dispatcher from init by [@&#8203;matthieusieben](https://github.com/matthieusieben) in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)
-   add busboy tests by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2924](https://github.com/nodejs/undici/pull/2924)
-   fix(benchmark): make it fair by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2929](https://github.com/nodejs/undici/pull/2929)
-   Revert "chore: remove no-simd wasm" by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2935](https://github.com/nodejs/undici/pull/2935)
-   build(deps): bump node from `d3271e4` to `8bf9240` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2936](https://github.com/nodejs/undici/pull/2936)
-   Flip link between docs and README by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2933](https://github.com/nodejs/undici/pull/2933)

#### New Contributors

-   [@&#8203;kachick](https://github.com/kachick) made their first contribution in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   [@&#8203;tastypackets](https://github.com/tastypackets) made their first contribution in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   [@&#8203;jessezhang91](https://github.com/jessezhang91) made their first contribution in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   [@&#8203;matthieusieben](https://github.com/matthieusieben) made their first contribution in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
-   Let's add superagent to the benchmark. closes [#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0

### [`v6.6.2`](https://github.com/nodejs/undici/releases/tag/v6.6.2)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2)

#### What's Changed

-   fix: webidl.brandcheck non strict should throw by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2683](https://github.com/nodejs/undici/pull/2683)
-   fix: expose EventSource for nodejs by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2645](https://github.com/nodejs/undici/pull/2645)
-   test: more information from debug tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2695](https://github.com/nodejs/undici/pull/2695)
-   Fix broken test on linux by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2699](https://github.com/nodejs/undici/pull/2699)
-   fix: fix the linux patch by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2703](https://github.com/nodejs/undici/pull/2703)
-   test(wpt): mark timed out tests as 'failed' by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)
-   build(deps-dev): bump borp from 0.5.0 to 0.9.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2702](https://github.com/nodejs/undici/pull/2702)
-   perf: use insertion sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2706](https://github.com/nodejs/undici/pull/2706)
-   fix: run node tests on merge by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2707](https://github.com/nodejs/undici/pull/2707)

#### New Contributors

-   [@&#8203;rossilor95](https://github.com/rossilor95) made their first contribution in [https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2

### [`v6.6.1`](https://github.com/nodejs/undici/releases/tag/v6.6.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.0...v6.6.1)

#### ⚠️ Security Release ⚠️

Details on the vulnerabilities fixed will be shared in the next couple of days.

#### What's Changed

-   fix: flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2687](https://github.com/nodejs/undici/pull/2687)
-   build(deps): bump github/codeql-action from 3.22.12 to 3.23.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2688](https://github.com/nodejs/undici/pull/2688)
-   build(deps): bump actions/dependency-review-action from 3.1.0 to 4.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2689](https://github.com/nodejs/undici/pull/2689)
-   fix: ci pipeline warnings by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2685](https://github.com/nodejs/undici/pull/2685)
-   perf: optimize Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2692](https://github.com/nodejs/undici/pull/2692)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.0...v6.6.1

### [`v6.6.0`](https://github.com/nodejs/undici/releases/tag/v6.6.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0)

#### What's Changed

-   add webSocket example by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2626](https://github.com/nodejs/undici/pull/2626)
-   chore: remove atomic-sleep as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2648](https://github.com/nodejs/undici/pull/2648)
-   chore: remove semver as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2646](https://github.com/nodejs/undici/pull/2646)
-   chore: remove table as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2649](https://github.com/nodejs/undici/pull/2649)
-   chore: remove delay as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2647](https://github.com/nodejs/undici/pull/2647)
-   chore: reduce noise in test-logs test/issue-2349.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2655](https://github.com/nodejs/undici/pull/2655)
-   chore: fix faketimer warning in test/request-timeout.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2656](https://github.com/nodejs/undici/pull/2656)
-   chore: reduce noise in test logs test/client-node-max-header-size.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2654](https://github.com/nodejs/undici/pull/2654)
-   refactor: use fromInnerResponse by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2635](https://github.com/nodejs/undici/pull/2635)
-   fix: support deflate raw responses by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2650](https://github.com/nodejs/undici/pull/2650)
-   Support building for externally shared js builtins by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2643](https://github.com/nodejs/undici/pull/2643)
-   fix: typo clampAndCoarsenConnectionTimingInfo by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2653](https://github.com/nodejs/undici/pull/2653)
-   chore: use 'node:'-prefix for requiring node core modules by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2662](https://github.com/nodejs/undici/pull/2662)
-   build(deps-dev): bump husky from 8.0.3 to 9.0.7 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2667](https://github.com/nodejs/undici/pull/2667)
-   build(deps-dev): bump cronometro from 1.2.0 to 2.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2668](https://github.com/nodejs/undici/pull/2668)
-   remove timers/promises import by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2665](https://github.com/nodejs/undici/pull/2665)
-   chore: fix various codesmells by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2669](https://github.com/nodejs/undici/pull/2669)
-   chore: remove this alias in agent.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2671](https://github.com/nodejs/undici/pull/2671)
-   chore: use optional chaining by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2666](https://github.com/nodejs/undici/pull/2666)
-   chore: small perf improvements by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2661](https://github.com/nodejs/undici/pull/2661)
-   implement spec changes from a while ago by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2676](https://github.com/nodejs/undici/pull/2676)
-   websocket: fix close when no closing code is received by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2680](https://github.com/nodejs/undici/pull/2680)
-   fix: make ci less flaky by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2684](https://github.com/nodejs/undici/pull/2684)

#### New Contributors

-   [@&#8203;mochaaP](https://github.com/mochaaP) made their first contribution in [https://github.com/nodejs/undici/pull/2643](https://github.com/nodejs/undici/pull/2643)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0

### [`v6.5.0`](https://github.com/nodejs/undici/releases/tag/v6.5.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0)

#### What's Changed

-   build(deps-dev): bump jsdom from 23.2.0 to 24.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2632](https://github.com/nodejs/undici/pull/2632)
-   feat: Implement EventSource by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2608](https://github.com/nodejs/undici/pull/2608)
-   fix: readable body by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2642](https://github.com/nodejs/undici/pull/2642)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0

### [`v6.4.0`](https://github.com/nodejs/undici/releases/tag/v6.4.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.3.0...v6.4.0)

##### What's Changed

-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2605](https://github.com/nodejs/undici/pull/2605)
-   cacheStorage: separate matchAll logic by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2599](https://github.com/nodejs/undici/pull/2599)
-   cleanup index by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2598](https://github.com/nodejs/undici/pull/2598)
-   feat: port `balanced-pool`, `ca-fingerprint`, `client-abort` tests to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2584](https://github.com/nodejs/undici/pull/2584)
-   ci: unpin nodejs workflow version by [@&#8203;dominykas](https://github.com/dominykas) in [https://github.com/nodejs/undici/pull/2434](https://github.com/nodejs/undici/pull/2434)
-   test([#&#8203;2600](https://github.com/nodejs/undici/issues/2600)): Flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2607](https://github.com/nodejs/undici/pull/2607)
-   fix: h2 hang issue with empty body by [@&#8203;timursevimli](https://github.com/timursevimli) in [https://github.com/nodejs/undici/pull/2601](https://github.com/nodejs/undici/pull/2601)
-   Fix tests for Node.js v21 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2609](https://github.com/nodejs/undici/pull/2609)
-   perf(cache): avoid Request and Response initialization by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2610](https://github.com/nodejs/undici/pull/2610)
-   Add more libraries to benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2614](https://github.com/nodejs/undici/pull/2614)
-   feat: port `client-connect`, `client-dispatch`, `client-errors` test to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2591](https://github.com/nodejs/undici/pull/2591)
-   exit with 1 if WPT runner has unexpected errors by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2621](https://github.com/nodejs/undici/pull/2621)
-   Fix tests for Node.js v20.11.0 by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2618](https://github.com/nodejs/undici/pull/2618)
-   fix(mock-agent): split set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2619](https://github.com/nodejs/undici/pull/2619)
-   feat: implement throwOnMaxRedirect option for RedirectHandler by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2563](https://github.com/nodejs/undici/pull/2563)
-   test: fix flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2613](https://github.com/nodejs/undici/pull/2613)
-   fix: hide statusOutput if empty in handleRunnerCompletion by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2624](https://github.com/nodejs/undici/pull/2624)
-   docs: Fix typo in Debug.md by [@&#8203;Skn0tt](https://github.com/Skn0tt) in [https://github.com/nodejs/undici/pull/2625](https://github.com/nodejs/undici/pull/2625)
-   fix(cache): set AbortSignal by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2612](https://github.com/nodejs/undici/pull/2612)
-   Use correct http Agent for node-fetch, axios, got and request by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2629](https://github.com/nodejs/undici/pull/2629)

##### New Contributors

-   [@&#8203;timursevimli](https://github.com/timursevimli) made their first contribution in [https://github.com/nodejs/undici/pull/2601](https://github.com/nodejs/undici/pull/2601)
-   [@&#8203;mertcanaltin](https://github.com/mertcanaltin) made their first contribution in [https://github.com/nodejs/undici/pull/2563](https://github.com/nodejs/undici/pull/2563)
-   [@&#8203;Skn0tt](https://github.com/Skn0tt) made their first contribution in [https://github.com/nodejs/undici/pull/2625](https://github.com/nodejs/undici/pull/2625)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.3.0...v6.4.0

### [`v6.3.0`](https://github.com/nodejs/undici/releases/tag/v6.3.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.2.1...v6.3.0)

#### What's Changed

-   Clear all timeout on destroy and close by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2535](https://github.com/nodejs/undici/pull/2535)
-   ConnectOptions should include 'origin' field by [@&#8203;dvoytenko](https://github.com/dvoytenko) in [https://github.com/nodejs/undici/pull/2532](https://github.com/nodejs/undici/pull/2532)
-   perf: avoid toLowerCase call by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2537](https://github.com/nodejs/undici/pull/2537)
-   revert [`a1a8136`](https://github.com/nodejs/undici/commit/a1a8136) by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2539](https://github.com/nodejs/undici/pull/2539)
-   docs: add Util to sidebar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2529](https://github.com/nodejs/undici/pull/2529)
-   fix: call explicitly unregister by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2534](https://github.com/nodejs/undici/pull/2534)
-   fix: check the content-type of invalid formData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2541](https://github.com/nodejs/undici/pull/2541)
-   Add request examples. by [@&#8203;autopulated](https://github.com/autopulated) in [https://github.com/nodejs/undici/pull/2380](https://github.com/nodejs/undici/pull/2380)
-   fix(HTTP/2): handle consumption of aborted request by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2387](https://github.com/nodejs/undici/pull/2387)
-   chore: update tst test by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2538](https://github.com/nodejs/undici/pull/2538)
-   fix(fetch): do not abort fetch on redirect by [@&#8203;angelyan](https://github.com/angelyan) in [https://github.com/nodejs/undici/pull/2545](https://github.com/nodejs/undici/pull/2545)
-   drop verifyVersion in scripts by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2549](https://github.com/nodejs/undici/pull/2549)
-   types: remove unused Client and Pool types by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in [https://github.com/nodejs/undici/pull/2557](https://github.com/nodejs/undici/pull/2557)
-   lib: fix Host header when CONNECT ProxyAgent by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in [https://github.com/nodejs/undici/pull/2556](https://github.com/nodejs/undici/pull/2556)
-   feat: port cookies tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in [https://github.com/nodejs/undici/pull/2547](https://github.com/nodejs/undici/pull/2547)
-   feat: port webidl tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2554](https://github.com/nodejs/undici/pull/2554)
-   perf: Improve percentDecode by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2562](https://github.com/nodejs/undici/pull/2562)
-   Fix parseHashWithOptions regex by [@&#8203;flapenna](https://github.com/flapenna) in [https://github.com/nodejs/undici/pull/2561](https://github.com/nodejs/undici/pull/2561)
-   feat: port diagnostic-channel tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2559](https://github.com/nodejs/undici/pull/2559)
-   feat: port websocket tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2553](https://github.com/nodejs/undici/pull/2553)
-   build(deps-dev): bump tsd from 0.29.0 to 0.30.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2551](https://github.com/nodejs/undici/pull/2551)
-   build(deps): bump actions/setup-node from 4.0.0 to 4.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2572](https://github.com/nodejs/undici/pull/2572)
-   build(deps): bump github/codeql-action from 2.22.5 to 3.22.12 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2574](https://github.com/nodejs/undici/pull/2574)
-   Update `@matteo.collina/tspl` to 0.1.1 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2576](https://github.com/nodejs/undici/pull/2576)
-   mark wpt as failing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2581](https://github.com/nodejs/undici/pull/2581)
-   feat: port `abort-controller.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2564](https://github.com/nodejs/undici/pull/2564)
-   fix data url test by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2580](https://github.com/nodejs/undici/pull/2580)
-   feat: port `async_hooks.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2568](https://github.com/nodejs/undici/pull/2568)
-   feat: port `agent.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2566](https://github.com/nodejs/undici/pull/2566)
-   feat: port `abort-event-emitter.js` tests to `node:test` runnner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2565](https://github.com/nodejs/undici/pull/2565)
-   feat: port first half of fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in [https://github.com/nodejs/undici/pull/2569](https://github.com/nodejs/undici/pull/2569)
-   perf: bypass method validation by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2583](https://github.com/nodejs/undici/pull/2583)
-   fetch: warn when using patch method by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2577](https://github.com/nodejs/undici/pull/2577)
-   feat: port `autoselectfamily.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2570](https://github.com/nodejs/undici/pull/2570)
-   feat: port remaining fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in [https://github.com/nodejs/undici/pull/2587](https://github.com/nodejs/undici/pull/2587)
-   fix: use isArrayBuffer instead of isAnyArrayBuffer by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2586](https://github.com/nodejs/undici/pull/2586)
-   Feat/migrate tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in [https://github.com/nodejs/undici/pull/2593](https://github.com/nodejs/undici/pull/2593)
-   abort request with reason if one is provided by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2592](https://github.com/nodejs/undici/pull/2592)
-   feat: port tst test to node test runner by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2595](https://github.com/nodejs/undici/pull/2595)
-   feat([#&#8203;2191](https://github.com/nodejs/undici/issues/2191)): Add support for `NODE_DEBUG` by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2585](https://github.com/nodejs/undici/pull/2585)
-   cacheStorage: fix bugs make wpts pass by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2596](https://github.com/nodejs/undici/pull/2596)
-   fix: non-object error in abort throws bad error by [@&#8203;atlowChemi](https://github.com/atlowChemi) in [https://github.com/nodejs/undici/pull/2597](https://github.com/nodejs/undici/pull/2597)
-   fix: add test helper for closing server as promise by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2604](https://github.com/nodejs/undici/pull/2604)

#### New Contributors

-   [@&#8203;dvoytenko](https://github.com/dvoytenko) made their first contribution in [https://github.com/nodejs/undici/pull/2532](https://github.com/nodejs/undici/pull/2532)
-   [@&#8203;autopulated](https://github.com/autopulated) made their first contribution in [https://github.com/nodejs/undici/pull/2380](https://github.com/nodejs/undici/pull/2380)
-   [@&#8203;angelyan](https://github.com/angelyan) made their first contribution in [https://github.com/nodejs/undici/pull/2545](https://github.com/nodejs/undici/pull/2545)
-   [@&#8203;pmarchini](https://github.com/pmarchini) made their first contribution in [https://github.com/nodejs/undici/pull/2547](https://github.com/nodejs/undici/pull/2547)
-   [@&#8203;ilteoood](https://github.com/ilteoood) made their first contribution in [https://github.com/nodejs/undici/pull/2554](https://github.com/nodejs/undici/pull/2554)
-   [@&#8203;flapenna](https://github.com/flapenna) made their first contribution in [https://github.com/nodejs/undici/pull/2561](https://github.com/nodejs/undici/pull/2561)
-   [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) made their first contribution in [https://github.com/nodejs/undici/pull/2576](https://github.com/nodejs/undici/pull/2576)
-   [@&#8203;anurag-roy](https://github.com/anurag-roy) made their first contribution in [https://github.com/nodejs/undici/pull/2569](https://github.com/nodejs/undici/pull/2569)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.2.1...v6.3.0

### [`v6.2.1`](https://github.com/nodejs/undici/releases/tag/v6.2.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1)

##### What's Changed

-   perf: use tree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2528](https://github.com/nodejs/undici/pull/2528)
-   chore: reduce dependencies by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2533](https://github.com/nodejs/undici/pull/2533)
-   Remove timers in agent.js by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2536](https://github.com/nodejs/undici/pull/2536)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1

### [`v6.2.0`](https://github.com/nodejs/undici/releases/tag/v6.2.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.1.0...v6.2.0)

#### What's Changed

-   Remove FinalizationRegistry from Agent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2530](https://github.com/nodejs/undici/pull/2530)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.1.0...v6.2.0

### [`v6.1.0`](https://github.com/nodejs/undici/releases/tag/v6.1.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.0.1...v6.1.0)

#### What's Changed

-   fix: more sensible stack trace from dump error by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2503](https://github.com/nodejs/undici/pull/2503)
-   refactor: remove some node compat by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2502](https://github.com/nodejs/undici/pull/2502)
-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2507](https://github.com/nodejs/undici/pull/2507)
-   perf(fetch): Improve fetch of detaurl by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2479](https://github.com/nodejs/undici/pull/2479)
-   feat: expose parseHeader by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2511](https://github.com/nodejs/undici/pull/2511)
-   perf(fetch): optimize call `dispatch` by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2493](https://github.com/nodejs/undici/pull/2493)
-   perf(util/parseHeaders): If the header name is buffer by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2501](https://github.com/nodejs/undici/pull/2501)
-   perf: twice faster method check by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2495](https://github.com/nodejs/undici/pull/2495)
-   refactor: remove Error.captureStackTrace by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2509](https://github.com/nodejs/undici/pull/2509)
-   perf: Improve processHeader by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2513](https://github.com/nodejs/undici/pull/2513)
-   perf: reduce `String#toLowerCase` call by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2516](https://github.com/nodejs/undici/pull/2516)
-   perf: optimize consumeEnd by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2510](https://github.com/nodejs/undici/pull/2510)
-   perf: reduce tst built time by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2517](https://github.com/nodejs/undici/pull/2517)
-   feat: allow customization of build environment by [@&#8203;khardix](https://github.com/khardix) in [https://github.com/nodejs/undici/pull/2403](https://github.com/nodejs/undici/pull/2403)
-   fix: clear cache by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2519](https://github.com/nodejs/undici/pull/2519)
-   feat: Add resource timing entries for connection, request and response by [@&#8203;ToshB](https://github.com/ToshB) in [https://github.com/nodejs/undici/pull/2481](https://github.com/nodejs/undici/pull/2481)
-   Call fg.unregister() after a dispatcher is done, adds UNDICI_NO_FG to… by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2527](https://github.com/nodejs/undici/pull/2527)
-   feat: expose headerNameToString by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2525](https://github.com/nodejs/undici/pull/2525)

#### New Contributors

-   [@&#8203;khardix](https://github.com/khardix) made their first contribution in [https://github.com/nodejs/undici/pull/2403](https://github.com/nodejs/undici/pull/2403)

**Full Ch

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Nextjs).
kodiakhq bot referenced this pull request in X-oss-byte/Nextjs Mar 16, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | [`6.8.0` -> `6.9.0`](https://renovatebot.com/diffs/npm/undici/5.28.3/6.9.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.28.3/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.28.3/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.9.0`](https://github.com/nodejs/undici/releases/tag/v6.9.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.8.0...v6.9.0)

#### What's Changed

-   feat: add new dispatch compose by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2826](https://github.com/nodejs/undici/pull/2826)
-   ci: add macos-latest to test-matrix by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2952](https://github.com/nodejs/undici/pull/2952)
-   types: align RequestInit.body type with lib.dom.ts by [@&#8203;jdufresne](https://github.com/jdufresne) in [https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
-   ci: pin versions of github actions by [@&#8203;UlisesGascon](https://github.com/UlisesGascon) in [https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)
-   fetch: improve output for FormData, Response, Request by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2955](https://github.com/nodejs/undici/pull/2955)
-   perf: optimize collectASequenceOfBytes by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2958](https://github.com/nodejs/undici/pull/2958)

#### New Contributors

-   [@&#8203;jdufresne](https://github.com/jdufresne) made their first contribution in [https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
-   [@&#8203;UlisesGascon](https://github.com/UlisesGascon) made their first contribution in [https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.8.0...v6.9.0

### [`v6.8.0`](https://github.com/nodejs/undici/releases/tag/v6.8.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.1...v6.8.0)

#### What's Changed

-   fix: send correct SNI for proxy connections by [@&#8203;chrros95](https://github.com/chrros95) in [https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)
-   build(deps): bump node from `8bf9240` to `7bfef1d` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2937](https://github.com/nodejs/undici/pull/2937)
-   fetch: improve util.inspect output for web specifications by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2938](https://github.com/nodejs/undici/pull/2938)
-   ci: fix broken ci on windows and node v21 because of libuv bug by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2941](https://github.com/nodejs/undici/pull/2941)
-   perf: improve getResolveErrorBodyCallback by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2940](https://github.com/nodejs/undici/pull/2940)
-   fix: don't assign kAgent twice by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2942](https://github.com/nodejs/undici/pull/2942)
-   perf: dump immediatly if known size exceeds limit by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2882](https://github.com/nodejs/undici/pull/2882)
-   build(deps): bump node from `7bfef1d` to `4999fa1` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2946](https://github.com/nodejs/undici/pull/2946)
-   try to fix windows failure by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2950](https://github.com/nodejs/undici/pull/2950)
-   perf: improve parsing form-data by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2944](https://github.com/nodejs/undici/pull/2944)

#### New Contributors

-   [@&#8203;chrros95](https://github.com/chrros95) made their first contribution in [https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.7.1...v6.8.0

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1)

#### What's Changed

-   fetch: use EOL of os-module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2915](https://github.com/nodejs/undici/pull/2915)
-   ci: only send codecov from ubuntu and node by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2914](https://github.com/nodejs/undici/pull/2914)
-   tests: improve skip for unix.js tests, remove skipped tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2916](https://github.com/nodejs/undici/pull/2916)
-   chore: fix typo in isHistoryNavigation comments by [@&#8203;kachick](https://github.com/kachick) in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   fix(benchmark): set body correctly by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2918](https://github.com/nodejs/undici/pull/2918)
-   chore: increase test coverage to 100% for /lib/api/api-request.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2912](https://github.com/nodejs/undici/pull/2912)
-   fix: chunksDecode cuts off 3 characters at the end if having BOM by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2922](https://github.com/nodejs/undici/pull/2922)
-   docs: clarify URI parsing behavior of ProxyAgent constructor by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2893](https://github.com/nodejs/undici/pull/2893)
-   implement sync formdata parser by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2911](https://github.com/nodejs/undici/pull/2911)
-   Fix docs links and add examples to sidebar by [@&#8203;tastypackets](https://github.com/tastypackets) in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   doc: update diagnostics channel request headers type change by [@&#8203;jessezhang91](https://github.com/jessezhang91) in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   perf: optimize getResolveErrorBodyCallback by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2921](https://github.com/nodejs/undici/pull/2921)
-   override request dispatcher from init by [@&#8203;matthieusieben](https://github.com/matthieusieben) in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)
-   add busboy tests by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2924](https://github.com/nodejs/undici/pull/2924)
-   fix(benchmark): make it fair by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2929](https://github.com/nodejs/undici/pull/2929)
-   Revert "chore: remove no-simd wasm" by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2935](https://github.com/nodejs/undici/pull/2935)
-   build(deps): bump node from `d3271e4` to `8bf9240` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2936](https://github.com/nodejs/undici/pull/2936)
-   Flip link between docs and README by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2933](https://github.com/nodejs/undici/pull/2933)

#### New Contributors

-   [@&#8203;kachick](https://github.com/kachick) made their first contribution in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   [@&#8203;tastypackets](https://github.com/tastypackets) made their first contribution in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   [@&#8203;jessezhang91](https://github.com/jessezhang91) made their first contribution in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   [@&#8203;matthieusieben](https://github.com/matthieusieben) made their first contribution in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
-   Let's add superagent to the benchmark. closes [#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0

### [`v6.6.2`](https://github.com/nodejs/undici/releases/tag/v6.6.2)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2)

#### What's Changed

-   fix: webidl.brandcheck non strict should throw by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2683](https://github.com/nodejs/undici/pull/2683)
-   fix: expose EventSource for nodejs by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2645](https://github.com/nodejs/undici/pull/2645)
-   test: more information from debug tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2695](https://github.com/nodejs/undici/pull/2695)
-   Fix broken test on linux by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2699](https://github.com/nodejs/undici/pull/2699)
-   fix: fix the linux patch by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2703](https://github.com/nodejs/undici/pull/2703)
-   test(wpt): mark timed out tests as 'failed' by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)
-   build(deps-dev): bump borp from 0.5.0 to 0.9.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2702](https://github.com/nodejs/undici/pull/2702)
-   perf: use insertion sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2706](https://github.com/nodejs/undici/pull/2706)
-   fix: run node tests on merge by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2707](https://github.com/nodejs/undici/pull/2707)

#### New Contributors

-   [@&#8203;rossilor95](https://github.com/rossilor95) made their first contribution in [https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2

### [`v6.6.1`](https://github.com/nodejs/undici/releases/tag/v6.6.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.0...v6.6.1)

#### ⚠️ Security Release ⚠️

Details on the vulnerabilities fixed will be shared in the next couple of days.

#### What's Changed

-   fix: flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2687](https://github.com/nodejs/undici/pull/2687)
-   build(deps): bump github/codeql-action from 3.22.12 to 3.23.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2688](https://github.com/nodejs/undici/pull/2688)
-   build(deps): bump actions/dependency-review-action from 3.1.0 to 4.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2689](https://github.com/nodejs/undici/pull/2689)
-   fix: ci pipeline warnings by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2685](https://github.com/nodejs/undici/pull/2685)
-   perf: optimize Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2692](https://github.com/nodejs/undici/pull/2692)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.6.0...v6.6.1

### [`v6.6.0`](https://github.com/nodejs/undici/releases/tag/v6.6.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0)

#### What's Changed

-   add webSocket example by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2626](https://github.com/nodejs/undici/pull/2626)
-   chore: remove atomic-sleep as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2648](https://github.com/nodejs/undici/pull/2648)
-   chore: remove semver as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2646](https://github.com/nodejs/undici/pull/2646)
-   chore: remove table as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2649](https://github.com/nodejs/undici/pull/2649)
-   chore: remove delay as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2647](https://github.com/nodejs/undici/pull/2647)
-   chore: reduce noise in test-logs test/issue-2349.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2655](https://github.com/nodejs/undici/pull/2655)
-   chore: fix faketimer warning in test/request-timeout.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2656](https://github.com/nodejs/undici/pull/2656)
-   chore: reduce noise in test logs test/client-node-max-header-size.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2654](https://github.com/nodejs/undici/pull/2654)
-   refactor: use fromInnerResponse by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2635](https://github.com/nodejs/undici/pull/2635)
-   fix: support deflate raw responses by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2650](https://github.com/nodejs/undici/pull/2650)
-   Support building for externally shared js builtins by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2643](https://github.com/nodejs/undici/pull/2643)
-   fix: typo clampAndCoarsenConnectionTimingInfo by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2653](https://github.com/nodejs/undici/pull/2653)
-   chore: use 'node:'-prefix for requiring node core modules by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2662](https://github.com/nodejs/undici/pull/2662)
-   build(deps-dev): bump husky from 8.0.3 to 9.0.7 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2667](https://github.com/nodejs/undici/pull/2667)
-   build(deps-dev): bump cronometro from 1.2.0 to 2.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2668](https://github.com/nodejs/undici/pull/2668)
-   remove timers/promises import by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2665](https://github.com/nodejs/undici/pull/2665)
-   chore: fix various codesmells by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2669](https://github.com/nodejs/undici/pull/2669)
-   chore: remove this alias in agent.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2671](https://github.com/nodejs/undici/pull/2671)
-   chore: use optional chaining by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2666](https://github.com/nodejs/undici/pull/2666)
-   chore: small perf improvements by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2661](https://github.com/nodejs/undici/pull/2661)
-   implement spec changes from a while ago by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2676](https://github.com/nodejs/undici/pull/2676)
-   websocket: fix close when no closing code is received by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2680](https://github.com/nodejs/undici/pull/2680)
-   fix: make ci less flaky by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2684](https://github.com/nodejs/undici/pull/2684)

#### New Contributors

-   [@&#8203;mochaaP](https://github.com/mochaaP) made their first contribution in [https://github.com/nodejs/undici/pull/2643](https://github.com/nodejs/undici/pull/2643)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0

### [`v6.5.0`](https://github.com/nodejs/undici/releases/tag/v6.5.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0)

#### What's Changed

-   build(deps-dev): bump jsdom from 23.2.0 to 24.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2632](https://github.com/nodejs/undici/pull/2632)
-   feat: Implement EventSource by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2608](https://github.com/nodejs/undici/pull/2608)
-   fix: readable body by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2642](https://github.com/nodejs/undici/pull/2642)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0

### [`v6.4.0`](https://github.com/nodejs/undici/releases/tag/v6.4.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.3.0...v6.4.0)

##### What's Changed

-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2605](https://github.com/nodejs/undici/pull/2605)
-   cacheStorage: separate matchAll logic by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2599](https://github.com/nodejs/undici/pull/2599)
-   cleanup index by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2598](https://github.com/nodejs/undici/pull/2598)
-   feat: port `balanced-pool`, `ca-fingerprint`, `client-abort` tests to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2584](https://github.com/nodejs/undici/pull/2584)
-   ci: unpin nodejs workflow version by [@&#8203;dominykas](https://github.com/dominykas) in [https://github.com/nodejs/undici/pull/2434](https://github.com/nodejs/undici/pull/2434)
-   test([#&#8203;2600](https://github.com/nodejs/undici/issues/2600)): Flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2607](https://github.com/nodejs/undici/pull/2607)
-   fix: h2 hang issue with empty body by [@&#8203;timursevimli](https://github.com/timursevimli) in [https://github.com/nodejs/undici/pull/2601](https://github.com/nodejs/undici/pull/2601)
-   Fix tests for Node.js v21 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2609](https://github.com/nodejs/undici/pull/2609)
-   perf(cache): avoid Request and Response initialization by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2610](https://github.com/nodejs/undici/pull/2610)
-   Add more libraries to benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2614](https://github.com/nodejs/undici/pull/2614)
-   feat: port `client-connect`, `client-dispatch`, `client-errors` test to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2591](https://github.com/nodejs/undici/pull/2591)
-   exit with 1 if WPT runner has unexpected errors by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2621](https://github.com/nodejs/undici/pull/2621)
-   Fix tests for Node.js v20.11.0 by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2618](https://github.com/nodejs/undici/pull/2618)
-   fix(mock-agent): split set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2619](https://github.com/nodejs/undici/pull/2619)
-   feat: implement throwOnMaxRedirect option for RedirectHandler by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2563](https://github.com/nodejs/undici/pull/2563)
-   test: fix flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2613](https://github.com/nodejs/undici/pull/2613)
-   fix: hide statusOutput if empty in handleRunnerCompletion by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2624](https://github.com/nodejs/undici/pull/2624)
-   docs: Fix typo in Debug.md by [@&#8203;Skn0tt](https://github.com/Skn0tt) in [https://github.com/nodejs/undici/pull/2625](https://github.com/nodejs/undici/pull/2625)
-   fix(cache): set AbortSignal by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2612](https://github.com/nodejs/undici/pull/2612)
-   Use correct http Agent for node-fetch, axios, got and request by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2629](https://github.com/nodejs/undici/pull/2629)

##### New Contributors

-   [@&#8203;timursevimli](https://github.com/timursevimli) made their first contribution in [https://github.com/nodejs/undici/pull/2601](https://github.com/nodejs/undici/pull/2601)
-   [@&#8203;mertcanaltin](https://github.com/mertcanaltin) made their first contribution in [https://github.com/nodejs/undici/pull/2563](https://github.com/nodejs/undici/pull/2563)
-   [@&#8203;Skn0tt](https://github.com/Skn0tt) made their first contribution in [https://github.com/nodejs/undici/pull/2625](https://github.com/nodejs/undici/pull/2625)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.3.0...v6.4.0

### [`v6.3.0`](https://github.com/nodejs/undici/releases/tag/v6.3.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.2.1...v6.3.0)

#### What's Changed

-   Clear all timeout on destroy and close by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2535](https://github.com/nodejs/undici/pull/2535)
-   ConnectOptions should include 'origin' field by [@&#8203;dvoytenko](https://github.com/dvoytenko) in [https://github.com/nodejs/undici/pull/2532](https://github.com/nodejs/undici/pull/2532)
-   perf: avoid toLowerCase call by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2537](https://github.com/nodejs/undici/pull/2537)
-   revert [`a1a8136`](https://github.com/nodejs/undici/commit/a1a8136) by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2539](https://github.com/nodejs/undici/pull/2539)
-   docs: add Util to sidebar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2529](https://github.com/nodejs/undici/pull/2529)
-   fix: call explicitly unregister by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2534](https://github.com/nodejs/undici/pull/2534)
-   fix: check the content-type of invalid formData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2541](https://github.com/nodejs/undici/pull/2541)
-   Add request examples. by [@&#8203;autopulated](https://github.com/autopulated) in [https://github.com/nodejs/undici/pull/2380](https://github.com/nodejs/undici/pull/2380)
-   fix(HTTP/2): handle consumption of aborted request by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2387](https://github.com/nodejs/undici/pull/2387)
-   chore: update tst test by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2538](https://github.com/nodejs/undici/pull/2538)
-   fix(fetch): do not abort fetch on redirect by [@&#8203;angelyan](https://github.com/angelyan) in [https://github.com/nodejs/undici/pull/2545](https://github.com/nodejs/undici/pull/2545)
-   drop verifyVersion in scripts by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2549](https://github.com/nodejs/undici/pull/2549)
-   types: remove unused Client and Pool types by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in [https://github.com/nodejs/undici/pull/2557](https://github.com/nodejs/undici/pull/2557)
-   lib: fix Host header when CONNECT ProxyAgent by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in [https://github.com/nodejs/undici/pull/2556](https://github.com/nodejs/undici/pull/2556)
-   feat: port cookies tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in [https://github.com/nodejs/undici/pull/2547](https://github.com/nodejs/undici/pull/2547)
-   feat: port webidl tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2554](https://github.com/nodejs/undici/pull/2554)
-   perf: Improve percentDecode by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2562](https://github.com/nodejs/undici/pull/2562)
-   Fix parseHashWithOptions regex by [@&#8203;flapenna](https://github.com/flapenna) in [https://github.com/nodejs/undici/pull/2561](https://github.com/nodejs/undici/pull/2561)
-   feat: port diagnostic-channel tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2559](https://github.com/nodejs/undici/pull/2559)
-   feat: port websocket tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in [https://github.com/nodejs/undici/pull/2553](https://github.com/nodejs/undici/pull/2553)
-   build(deps-dev): bump tsd from 0.29.0 to 0.30.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2551](https://github.com/nodejs/undici/pull/2551)
-   build(deps): bump actions/setup-node from 4.0.0 to 4.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2572](https://github.com/nodejs/undici/pull/2572)
-   build(deps): bump github/codeql-action from 2.22.5 to 3.22.12 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2574](https://github.com/nodejs/undici/pull/2574)
-   Update `@matteo.collina/tspl` to 0.1.1 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2576](https://github.com/nodejs/undici/pull/2576)
-   mark wpt as failing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2581](https://github.com/nodejs/undici/pull/2581)
-   feat: port `abort-controller.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2564](https://github.com/nodejs/undici/pull/2564)
-   fix data url test by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2580](https://github.com/nodejs/undici/pull/2580)
-   feat: port `async_hooks.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2568](https://github.com/nodejs/undici/pull/2568)
-   feat: port `agent.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2566](https://github.com/nodejs/undici/pull/2566)
-   feat: port `abort-event-emitter.js` tests to `node:test` runnner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2565](https://github.com/nodejs/undici/pull/2565)
-   feat: port first half of fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in [https://github.com/nodejs/undici/pull/2569](https://github.com/nodejs/undici/pull/2569)
-   perf: bypass method validation by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2583](https://github.com/nodejs/undici/pull/2583)
-   fetch: warn when using patch method by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2577](https://github.com/nodejs/undici/pull/2577)
-   feat: port `autoselectfamily.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2570](https://github.com/nodejs/undici/pull/2570)
-   feat: port remaining fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in [https://github.com/nodejs/undici/pull/2587](https://github.com/nodejs/undici/pull/2587)
-   fix: use isArrayBuffer instead of isAnyArrayBuffer by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2586](https://github.com/nodejs/undici/pull/2586)
-   Feat/migrate tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in [https://github.com/nodejs/undici/pull/2593](https://github.com/nodejs/undici/pull/2593)
-   abort request with reason if one is provided by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2592](https://github.com/nodejs/undici/pull/2592)
-   feat: port tst test to node test runner by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2595](https://github.com/nodejs/undici/pull/2595)
-   feat([#&#8203;2191](https://github.com/nodejs/undici/issues/2191)): Add support for `NODE_DEBUG` by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2585](https://github.com/nodejs/undici/pull/2585)
-   cacheStorage: fix bugs make wpts pass by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2596](https://github.com/nodejs/undici/pull/2596)
-   fix: non-object error in abort throws bad error by [@&#8203;atlowChemi](https://github.com/atlowChemi) in [https://github.com/nodejs/undici/pull/2597](https://github.com/nodejs/undici/pull/2597)
-   fix: add test helper for closing server as promise by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in [https://github.com/nodejs/undici/pull/2604](https://github.com/nodejs/undici/pull/2604)

#### New Contributors

-   [@&#8203;dvoytenko](https://github.com/dvoytenko) made their first contribution in [https://github.com/nodejs/undici/pull/2532](https://github.com/nodejs/undici/pull/2532)
-   [@&#8203;autopulated](https://github.com/autopulated) made their first contribution in [https://github.com/nodejs/undici/pull/2380](https://github.com/nodejs/undici/pull/2380)
-   [@&#8203;angelyan](https://github.com/angelyan) made their first contribution in [https://github.com/nodejs/undici/pull/2545](https://github.com/nodejs/undici/pull/2545)
-   [@&#8203;pmarchini](https://github.com/pmarchini) made their first contribution in [https://github.com/nodejs/undici/pull/2547](https://github.com/nodejs/undici/pull/2547)
-   [@&#8203;ilteoood](https://github.com/ilteoood) made their first contribution in [https://github.com/nodejs/undici/pull/2554](https://github.com/nodejs/undici/pull/2554)
-   [@&#8203;flapenna](https://github.com/flapenna) made their first contribution in [https://github.com/nodejs/undici/pull/2561](https://github.com/nodejs/undici/pull/2561)
-   [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) made their first contribution in [https://github.com/nodejs/undici/pull/2576](https://github.com/nodejs/undici/pull/2576)
-   [@&#8203;anurag-roy](https://github.com/anurag-roy) made their first contribution in [https://github.com/nodejs/undici/pull/2569](https://github.com/nodejs/undici/pull/2569)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.2.1...v6.3.0

### [`v6.2.1`](https://github.com/nodejs/undici/releases/tag/v6.2.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1)

##### What's Changed

-   perf: use tree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2528](https://github.com/nodejs/undici/pull/2528)
-   chore: reduce dependencies by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2533](https://github.com/nodejs/undici/pull/2533)
-   Remove timers in agent.js by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2536](https://github.com/nodejs/undici/pull/2536)

**Full Changelog**: https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1

### [`v6.2.0`](https://github.com/nodejs/undici/releases/tag/v6.2.0)

[Compare Source](https://t

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Nextjs).
kodiakhq bot referenced this pull request in ascorbic/unpic-img Mar 19, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | [`6.6.2` -> `6.9.0`](https://renovatebot.com/diffs/npm/undici/6.6.2/6.9.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/6.6.2/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/6.6.2/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.9.0`](https://github.com/nodejs/undici/releases/tag/v6.9.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.8.0...v6.9.0)

#### What's Changed

-   feat: add new dispatch compose by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2826](https://github.com/nodejs/undici/pull/2826)
-   ci: add macos-latest to test-matrix by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2952](https://github.com/nodejs/undici/pull/2952)
-   types: align RequestInit.body type with lib.dom.ts by [@&#8203;jdufresne](https://github.com/jdufresne) in [https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
-   ci: pin versions of github actions by [@&#8203;UlisesGascon](https://github.com/UlisesGascon) in [https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)
-   fetch: improve output for FormData, Response, Request by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2955](https://github.com/nodejs/undici/pull/2955)
-   perf: optimize collectASequenceOfBytes by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2958](https://github.com/nodejs/undici/pull/2958)

#### New Contributors

-   [@&#8203;jdufresne](https://github.com/jdufresne) made their first contribution in [https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
-   [@&#8203;UlisesGascon](https://github.com/UlisesGascon) made their first contribution in [https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)

**Full Changelog**: nodejs/undici@v6.8.0...v6.9.0

### [`v6.8.0`](https://github.com/nodejs/undici/releases/tag/v6.8.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.1...v6.8.0)

#### What's Changed

-   fix: send correct SNI for proxy connections by [@&#8203;chrros95](https://github.com/chrros95) in [https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)
-   build(deps): bump node from `8bf9240` to `7bfef1d` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2937](https://github.com/nodejs/undici/pull/2937)
-   fetch: improve util.inspect output for web specifications by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2938](https://github.com/nodejs/undici/pull/2938)
-   ci: fix broken ci on windows and node v21 because of libuv bug by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2941](https://github.com/nodejs/undici/pull/2941)
-   perf: improve getResolveErrorBodyCallback by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2940](https://github.com/nodejs/undici/pull/2940)
-   fix: don't assign kAgent twice by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2942](https://github.com/nodejs/undici/pull/2942)
-   perf: dump immediatly if known size exceeds limit by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2882](https://github.com/nodejs/undici/pull/2882)
-   build(deps): bump node from `7bfef1d` to `4999fa1` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2946](https://github.com/nodejs/undici/pull/2946)
-   try to fix windows failure by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2950](https://github.com/nodejs/undici/pull/2950)
-   perf: improve parsing form-data by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2944](https://github.com/nodejs/undici/pull/2944)

#### New Contributors

-   [@&#8203;chrros95](https://github.com/chrros95) made their first contribution in [https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)

**Full Changelog**: nodejs/undici@v6.7.1...v6.8.0

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1)

#### What's Changed

-   fetch: use EOL of os-module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2915](https://github.com/nodejs/undici/pull/2915)
-   ci: only send codecov from ubuntu and node by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2914](https://github.com/nodejs/undici/pull/2914)
-   tests: improve skip for unix.js tests, remove skipped tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2916](https://github.com/nodejs/undici/pull/2916)
-   chore: fix typo in isHistoryNavigation comments by [@&#8203;kachick](https://github.com/kachick) in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   fix(benchmark): set body correctly by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2918](https://github.com/nodejs/undici/pull/2918)
-   chore: increase test coverage to 100% for /lib/api/api-request.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2912](https://github.com/nodejs/undici/pull/2912)
-   fix: chunksDecode cuts off 3 characters at the end if having BOM by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2922](https://github.com/nodejs/undici/pull/2922)
-   docs: clarify URI parsing behavior of ProxyAgent constructor by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2893](https://github.com/nodejs/undici/pull/2893)
-   implement sync formdata parser by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2911](https://github.com/nodejs/undici/pull/2911)
-   Fix docs links and add examples to sidebar by [@&#8203;tastypackets](https://github.com/tastypackets) in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   doc: update diagnostics channel request headers type change by [@&#8203;jessezhang91](https://github.com/jessezhang91) in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   perf: optimize getResolveErrorBodyCallback by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2921](https://github.com/nodejs/undici/pull/2921)
-   override request dispatcher from init by [@&#8203;matthieusieben](https://github.com/matthieusieben) in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)
-   add busboy tests by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2924](https://github.com/nodejs/undici/pull/2924)
-   fix(benchmark): make it fair by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2929](https://github.com/nodejs/undici/pull/2929)
-   Revert "chore: remove no-simd wasm" by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2935](https://github.com/nodejs/undici/pull/2935)
-   build(deps): bump node from `d3271e4` to `8bf9240` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2936](https://github.com/nodejs/undici/pull/2936)
-   Flip link between docs and README by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2933](https://github.com/nodejs/undici/pull/2933)

#### New Contributors

-   [@&#8203;kachick](https://github.com/kachick) made their first contribution in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   [@&#8203;tastypackets](https://github.com/tastypackets) made their first contribution in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   [@&#8203;jessezhang91](https://github.com/jessezhang91) made their first contribution in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   [@&#8203;matthieusieben](https://github.com/matthieusieben) made their first contribution in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)

**Full Changelog**: nodejs/undici@v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
-   Let's add superagent to the benchmark. closes [#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**: nodejs/undici@v6.6.2...v6.7.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ascorbic/unpic-img).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNDUuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI0NS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
gr2m referenced this pull request in octokit/rest.js Apr 4, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org)
([source](https://github.com/nodejs/undici)) | [`6.6.1` ->
`6.11.1`](https://renovatebot.com/diffs/npm/undici/6.6.1/6.11.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/6.6.1/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/6.6.1/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

### GitHub Vulnerability Alerts

####
[CVE-2024-30260](https://github.com/nodejs/undici/security/advisories/GHSA-m4v8-wqvr-p9f7)

### Impact

Undici cleared Authorization and Proxy-Authorization headers for
`fetch()`, but did not clear them for `undici.request()`.

### Patches

This has been patched in
nodejs/undici@6805746.
Fixes has been released in v5.28.4 and v6.11.1.

### Workarounds

use `fetch()` or disable `maxRedirections`.

### References

Linzi Shang reported this.

* https://hackerone.com/reports/2408074
*
GHSA-3787-6prv-h9w3

####
[CVE-2024-30261](https://github.com/nodejs/undici/security/advisories/GHSA-9qxr-qj54-h672)

### Impact

If an attacker can alter the `integrity` option passed to `fetch()`,
they can let `fetch()` accept requests as valid even if they have been
tampered.

### Patches

Fixed in
nodejs/undici@d542b8c.
Fixes has been released in v5.28.4 and v6.11.1.

### Workarounds

Ensure that `integrity` cannot be tampered with.

### References

https://hackerone.com/reports/2377760

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

###
[`v6.11.1`](https://github.com/nodejs/undici/compare/v6.11.0...6df3c738d03dc4014a26640316bf699950d62024)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.11.0...v6.11.1)

###
[`v6.11.0`](https://github.com/nodejs/undici/compare/v6.10.2...ee5f892f3955eaca37730ed30349153ba203e9cd)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.10.2...v6.11.0)

### [`v6.10.2`](https://github.com/nodejs/undici/releases/tag/v6.10.2)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.10.1...v6.10.2)

##### What's Changed

- Do not fail test if streams support typed arrays by
[@&#8203;mcollina](https://github.com/mcollina) in
[https://github.com/nodejs/undici/pull/2978](https://github.com/nodejs/undici/pull/2978)
- fix(fetch): properly redirect non-ascii location header url by
[@&#8203;Xvezda](https://github.com/Xvezda) in
[https://github.com/nodejs/undici/pull/2971](https://github.com/nodejs/undici/pull/2971)
- perf: Remove double-stringify in setCookie by
[@&#8203;peterver](https://github.com/peterver) in
[https://github.com/nodejs/undici/pull/2980](https://github.com/nodejs/undici/pull/2980)
- \[fix [#&#8203;2982](https://github.com/nodejs/undici/issues/2982)]
use DispatcherInterceptor type for Dispatcher#Compose by
[@&#8203;clovis-guillemot](https://github.com/clovis-guillemot) in
[https://github.com/nodejs/undici/pull/2983](https://github.com/nodejs/undici/pull/2983)
- fix: make EventSource properties enumerable by
[@&#8203;MattBidewell](https://github.com/MattBidewell) in
[https://github.com/nodejs/undici/pull/2987](https://github.com/nodejs/undici/pull/2987)
- docs: ✏️ fixed benchmark links by
[@&#8203;benhalverson](https://github.com/benhalverson) in
[https://github.com/nodejs/undici/pull/2991](https://github.com/nodejs/undici/pull/2991)
- fix([#&#8203;2986](https://github.com/nodejs/undici/issues/2986)):
bad start check by [@&#8203;metcoder95](https://github.com/metcoder95)
in
[https://github.com/nodejs/undici/pull/2992](https://github.com/nodejs/undici/pull/2992)
- fix(H2 Client): bind stream 'data' listener only after received
'response' event by [@&#8203;St3ffGv4](https://github.com/St3ffGv4) in
[https://github.com/nodejs/undici/pull/2985](https://github.com/nodejs/undici/pull/2985)
- feat: added search input by
[@&#8203;benhalverson](https://github.com/benhalverson) in
[https://github.com/nodejs/undici/pull/2993](https://github.com/nodejs/undici/pull/2993)
- chore: validate responses can be consumed without a Content-Length or…
by [@&#8203;jacob-ebey](https://github.com/jacob-ebey) in
[https://github.com/nodejs/undici/pull/2995](https://github.com/nodejs/undici/pull/2995)
- fix error message by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2998](https://github.com/nodejs/undici/pull/2998)
- Revert "perf: reuse TextDecoder instance
([#&#8203;2863](https://github.com/nodejs/undici/issues/2863))" by
[@&#8203;panva](https://github.com/panva) in
[https://github.com/nodejs/undici/pull/2999](https://github.com/nodejs/undici/pull/2999)
- test: remove only by
[@&#8203;metcoder95](https://github.com/metcoder95) in
[https://github.com/nodejs/undici/pull/3001](https://github.com/nodejs/undici/pull/3001)

##### New Contributors

- [@&#8203;Xvezda](https://github.com/Xvezda) made their first
contribution in
[https://github.com/nodejs/undici/pull/2971](https://github.com/nodejs/undici/pull/2971)
- [@&#8203;peterver](https://github.com/peterver) made their first
contribution in
[https://github.com/nodejs/undici/pull/2980](https://github.com/nodejs/undici/pull/2980)
- [@&#8203;clovis-guillemot](https://github.com/clovis-guillemot) made
their first contribution in
[https://github.com/nodejs/undici/pull/2983](https://github.com/nodejs/undici/pull/2983)
- [@&#8203;MattBidewell](https://github.com/MattBidewell) made their
first contribution in
[https://github.com/nodejs/undici/pull/2987](https://github.com/nodejs/undici/pull/2987)
- [@&#8203;benhalverson](https://github.com/benhalverson) made their
first contribution in
[https://github.com/nodejs/undici/pull/2991](https://github.com/nodejs/undici/pull/2991)
- [@&#8203;St3ffGv4](https://github.com/St3ffGv4) made their first
contribution in
[https://github.com/nodejs/undici/pull/2985](https://github.com/nodejs/undici/pull/2985)
- [@&#8203;jacob-ebey](https://github.com/jacob-ebey) made their first
contribution in
[https://github.com/nodejs/undici/pull/2995](https://github.com/nodejs/undici/pull/2995)

**Full Changelog**:
nodejs/undici@v6.10.0...v6.10.2

###
[`v6.10.1`](https://github.com/nodejs/undici/compare/v6.10.0...dd3918fee4f90e02fb93ff1bc04e707144041938)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.10.0...v6.10.1)

### [`v6.10.0`](https://github.com/nodejs/undici/releases/tag/v6.10.0)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.9.0...v6.10.0)

#### What's Changed

- test: fix flakyness of issue-803 test by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2960](https://github.com/nodejs/undici/pull/2960)
- Cleanup format by [@&#8203;KhafraDev](https://github.com/KhafraDev)
in
[https://github.com/nodejs/undici/pull/2959](https://github.com/nodejs/undici/pull/2959)
- Chore: run tests daily against node nightly by
[@&#8203;mweberxyz](https://github.com/mweberxyz) in
[https://github.com/nodejs/undici/pull/2969](https://github.com/nodejs/undici/pull/2969)
- fix: fix retry handler option by
[@&#8203;acommodari](https://github.com/acommodari) in
[https://github.com/nodejs/undici/pull/2962](https://github.com/nodejs/undici/pull/2962)
- build(deps): bump node from `4999fa1` to `577f8eb` in /build by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2974](https://github.com/nodejs/undici/pull/2974)
- feat(TS): add types for composed dispatchers by
[@&#8203;metcoder95](https://github.com/metcoder95) in
[https://github.com/nodejs/undici/pull/2967](https://github.com/nodejs/undici/pull/2967)
- fix: count for error response and network errors by
[@&#8203;metcoder95](https://github.com/metcoder95) in
[https://github.com/nodejs/undici/pull/2966](https://github.com/nodejs/undici/pull/2966)

#### New Contributors

- [@&#8203;mweberxyz](https://github.com/mweberxyz) made their first
contribution in
[https://github.com/nodejs/undici/pull/2969](https://github.com/nodejs/undici/pull/2969)
- [@&#8203;acommodari](https://github.com/acommodari) made their first
contribution in
[https://github.com/nodejs/undici/pull/2962](https://github.com/nodejs/undici/pull/2962)

**Full Changelog**:
nodejs/undici@v6.9.0...v6.10.0

### [`v6.9.0`](https://github.com/nodejs/undici/releases/tag/v6.9.0)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.8.0...v6.9.0)

#### What's Changed

- feat: add new dispatch compose by
[@&#8203;metcoder95](https://github.com/metcoder95) in
[https://github.com/nodejs/undici/pull/2826](https://github.com/nodejs/undici/pull/2826)
- ci: add macos-latest to test-matrix by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2952](https://github.com/nodejs/undici/pull/2952)
- types: align RequestInit.body type with lib.dom.ts by
[@&#8203;jdufresne](https://github.com/jdufresne) in
[https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
- ci: pin versions of github actions by
[@&#8203;UlisesGascon](https://github.com/UlisesGascon) in
[https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)
- fetch: improve output for FormData, Response, Request by
[@&#8203;mertcanaltin](https://github.com/mertcanaltin) in
[https://github.com/nodejs/undici/pull/2955](https://github.com/nodejs/undici/pull/2955)
- perf: optimize collectASequenceOfBytes by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2958](https://github.com/nodejs/undici/pull/2958)

#### New Contributors

- [@&#8203;jdufresne](https://github.com/jdufresne) made their first
contribution in
[https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
- [@&#8203;UlisesGascon](https://github.com/UlisesGascon) made their
first contribution in
[https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)

**Full Changelog**:
nodejs/undici@v6.8.0...v6.9.0

### [`v6.8.0`](https://github.com/nodejs/undici/releases/tag/v6.8.0)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.7.1...v6.8.0)

#### What's Changed

- fix: send correct SNI for proxy connections by
[@&#8203;chrros95](https://github.com/chrros95) in
[https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)
- build(deps): bump node from `8bf9240` to `7bfef1d` in /build by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2937](https://github.com/nodejs/undici/pull/2937)
- fetch: improve util.inspect output for web specifications by
[@&#8203;mertcanaltin](https://github.com/mertcanaltin) in
[https://github.com/nodejs/undici/pull/2938](https://github.com/nodejs/undici/pull/2938)
- ci: fix broken ci on windows and node v21 because of libuv bug by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2941](https://github.com/nodejs/undici/pull/2941)
- perf: improve getResolveErrorBodyCallback by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2940](https://github.com/nodejs/undici/pull/2940)
- fix: don't assign kAgent twice by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2942](https://github.com/nodejs/undici/pull/2942)
- perf: dump immediatly if known size exceeds limit by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2882](https://github.com/nodejs/undici/pull/2882)
- build(deps): bump node from `7bfef1d` to `4999fa1` in /build by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2946](https://github.com/nodejs/undici/pull/2946)
- try to fix windows failure by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2950](https://github.com/nodejs/undici/pull/2950)
- perf: improve parsing form-data by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2944](https://github.com/nodejs/undici/pull/2944)

#### New Contributors

- [@&#8203;chrros95](https://github.com/chrros95) made their first
contribution in
[https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)

**Full Changelog**:
nodejs/undici@v6.7.1...v6.8.0

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1)

#### What's Changed

- fetch: use EOL of os-module by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2915](https://github.com/nodejs/undici/pull/2915)
- ci: only send codecov from ubuntu and node by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2914](https://github.com/nodejs/undici/pull/2914)
- tests: improve skip for unix.js tests, remove skipped tests by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2916](https://github.com/nodejs/undici/pull/2916)
- chore: fix typo in isHistoryNavigation comments by
[@&#8203;kachick](https://github.com/kachick) in
[https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
- fix(benchmark): set body correctly by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2918](https://github.com/nodejs/undici/pull/2918)
- chore: increase test coverage to 100% for /lib/api/api-request.js by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2912](https://github.com/nodejs/undici/pull/2912)
- fix: chunksDecode cuts off 3 characters at the end if having BOM by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2922](https://github.com/nodejs/undici/pull/2922)
- docs: clarify URI parsing behavior of ProxyAgent constructor by
[@&#8203;rossilor95](https://github.com/rossilor95) in
[https://github.com/nodejs/undici/pull/2893](https://github.com/nodejs/undici/pull/2893)
- implement sync formdata parser by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2911](https://github.com/nodejs/undici/pull/2911)
- Fix docs links and add examples to sidebar by
[@&#8203;tastypackets](https://github.com/tastypackets) in
[https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
- doc: update diagnostics channel request headers type change by
[@&#8203;jessezhang91](https://github.com/jessezhang91) in
[https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
- perf: optimize getResolveErrorBodyCallback by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2921](https://github.com/nodejs/undici/pull/2921)
- override request dispatcher from init by
[@&#8203;matthieusieben](https://github.com/matthieusieben) in
[https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)
- add busboy tests by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2924](https://github.com/nodejs/undici/pull/2924)
- fix(benchmark): make it fair by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2929](https://github.com/nodejs/undici/pull/2929)
- Revert "chore: remove no-simd wasm" by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2935](https://github.com/nodejs/undici/pull/2935)
- build(deps): bump node from `d3271e4` to `8bf9240` in /build by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2936](https://github.com/nodejs/undici/pull/2936)
- Flip link between docs and README by
[@&#8203;mcollina](https://github.com/mcollina) in
[https://github.com/nodejs/undici/pull/2933](https://github.com/nodejs/undici/pull/2933)

#### New Contributors

- [@&#8203;kachick](https://github.com/kachick) made their first
contribution in
[https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
- [@&#8203;tastypackets](https://github.com/tastypackets) made their
first contribution in
[https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
- [@&#8203;jessezhang91](https://github.com/jessezhang91) made their
first contribution in
[https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
- [@&#8203;matthieusieben](https://github.com/matthieusieben) made
their first contribution in
[https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)

**Full Changelog**:
nodejs/undici@v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

- test: remove t.diagnostics() calls in push-dont-push.js test by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
- fix: fix flaky debug test by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
- fix: HTTP2 tweaks by
[@&#8203;metcoder95](https://github.com/metcoder95) in
[https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
- test: improve cookie tests by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
- test: response.url after redirect is set to target url by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
- chore: remove mocha and chai by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
- test: replace t.pass with t.ok by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
- perf: remove redundant operation in FormData by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
- Add support for passing iterable objects as headers by
[@&#8203;JaoodxD](https://github.com/JaoodxD) in
[https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
- chore: refine esbuild & node detection by
[@&#8203;mochaaP](https://github.com/mochaaP) in
[https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
- chore: rephrase some comments by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
- test: replace t.type with t.ok and instanceof by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
- remove useless options in web streams by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
- Let's add superagent to the benchmark. closes
[#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by
[@&#8203;eddienubes](https://github.com/eddienubes) in
[https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
- convert node build to latin1 by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
- simplify formData body parsing by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
- chore: migrate a batch of tests to node test runner no. 1 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
- chore: migrate a batch of tests to node test runner no. 2 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
- chore: migrate a batch of tests to node test runner no. 4 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
- chore: migrate a batch of tests to node test runner no. 5 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
- chore: migrate a batch of tests to node test runner no. 3 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
- chore: migrate a batch of tests to node test runner no. 6 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
- chore: migrate a batch of tests to node test runner no. 8 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
- chore: migrate a batch of tests to node test runner no. 7 by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
- build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
- perf: always use the same prototype Iterator by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
- chore: migrate a batch of tests to node test runner no. 9, remove tap
by [@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
- chore: remove usage of http-errors in proxy example by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
- fix: dont ship wasm files of llhttp via npm by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
- fix: handle request body as late as possible by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
- perf(tree): avoid recursive calls by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
- docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak)
in
[https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
- chore: use mermaid engine and mermaid in markdown by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
- chore: remove sinon dev dependency by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
- tests: skip test/node-test/debug on node 21.6.2 and windows by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
- chore: improve usage of skip in tests by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
- feat: improve mock error breadcrumbs by
[@&#8203;rossilor95](https://github.com/rossilor95) in
[https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
- expose MessageEvent in fetch bundle by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
- test: always exit with 0 when running in Node's Daily WPT Report CI
job by [@&#8203;panva](https://github.com/panva) in
[https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
- fix: add node prefix for util to fix issue in env with min version
node 18 by [@&#8203;riderx](https://github.com/riderx) in
[https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
- perf: improve perf of parseRawHeaders by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
- fix: make mock-agent.js test more resilient by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
- chore: make some test run even without internet connection by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
- mock: improve validateReplyParameters by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
- perf: improve TernarySearchTree by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
- fix: convert HeadersInit to sequence/dictionary correctly by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
- chore: improve getFieldValue by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
- Add RetryHandler to sidebar by
[@&#8203;mcollina](https://github.com/mcollina) in
[https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
- Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in
[https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
- build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
- build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
- build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
- build(deps): bump node from 20-alpine to 21-alpine in /build by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
- perf: improve sort algorithm by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
- refactor: move web stuff into their own folder by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
- `s/ dispactgher/dispatcher/` by
[@&#8203;steveluscher](https://github.com/steveluscher) in
[https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
- Use paralellelRequests instead of connections to calculate req/sec in
benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in
[https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
- Split out documentation into separate directory by
[@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in
[https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
- build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to
3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
- build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3
by [@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
- build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
- build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
- fix: move CNAME and .nojekyll to root by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
- remove all fetchParam event handlers by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
- feat: refactor ProxyAgent constructor to also accept single URL
argument by [@&#8203;rossilor95](https://github.com/rossilor95) in
[https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
- fix: isCTLExcludingHtab by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
- refactor: move files into logical folders by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
- refactor: move fixed-queeu to dispatcher and rm node folder by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
- chore: create package.json in benchmarks by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
- build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
- chore: use lts for pubish types workflow by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
- add dispatcher option to Request by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
- fix url referrer wpt by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
- refactor: remove own sort logic by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
- fix(fetch): prevent crash when `fetch` is aborted with `null` as the
`AbortSignal's` `reason` by
[@&#8203;steveluscher](https://github.com/steveluscher) in
[https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
- refactor: avoid http2 dynamic dispatch in socket handlers by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
- build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
- perf(tree): reduce overhead of build TernarySearchTree by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
- webidl: implement resizable arraybuffer checks by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
- websocket server only needs to reply with a single subprotocol by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
- unite webidl stringification by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
- fix: deflake connect-timeout test by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
- fix: coverage reporting by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
- fix: pipelining logic is not relevant for h2 by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
- processBody doesn't need to return a promise by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
- refactor: split client into client-h1/h2 by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
- ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak)
in
[https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
- perf: improve performance of isValidSubprotocol by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
- perf: reuse TextDecoder instance by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
- chore: restructure benchmarks, use kebab-case by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
- cookies: improve perf of toIMFDate by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
- cookies: fix validateCookiePath by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
- refactor: move out more h2 from core client by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
- mock: improve test coverage of buildHeadersFromArray by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
- fix: remove broken build request hack by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
- chore: filenames should use kebab-case by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
- refactor: split out last h1 specific code from core by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
- fix: make pipelining limit work for h2 by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
- fix: http2 doesn't have pipelining queue by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
- fix: minor connect cleanup by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
- Request headers types by
[@&#8203;JaoodxD](https://github.com/JaoodxD) in
[https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
- ci: remove concurrency by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
- fix: prefer queueMicrotask by
[@&#8203;ronag](https://github.com/ronag) in
[https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
- chore: remove no-simd wasm by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
- cookies: improve validateCookieValue by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
- cookies: improve validateCookieName by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
- Properly parse set-cookie header using http2 by
[@&#8203;jeanp413](https://github.com/jeanp413) in
[https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
- doc deprecate bodymixin.formData by
[@&#8203;KhafraDev](https://github.com/KhafraDev) in
[https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
- perf: optimize check invalid field-vchar by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
- build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
- fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev)
in
[https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
- tests: ignore catch block when requiring crypto module by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
- websocket: remove dead code in parseCloseBody by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
- fix: tests dont need process.exit by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
- chore: remove proxyquire by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
- chore: remove import-fresh as devDependency by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
- perf(headers): a single set-cookie by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
- websocket: improve .close() by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
- feat: add sending data benchmark by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
- ci: integrate workflows into nodejs.yml by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

- [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first
contribution in
[https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
- [@&#8203;eddienubes](https://github.com/eddienubes) made their first
contribution in
[https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
- [@&#8203;riderx](https://github.com/riderx) made their first
contribution in
[https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
- [@&#8203;steveluscher](https://github.com/steveluscher) made their
first contribution in
[https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
- [@&#8203;jeanp413](https://github.com/jeanp413) made their first
contribution in
[https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**:
nodejs/undici@v6.6.2...v6.7.0

### [`v6.6.2`](https://github.com/nodejs/undici/releases/tag/v6.6.2)

[Compare
Source](https://github.com/nodejs/undici/compare/v6.6.1...v6.6.2)

#### What's Changed

- fix: webidl.brandcheck non strict should throw by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2683](https://github.com/nodejs/undici/pull/2683)
- fix: expose EventSource for nodejs by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2645](https://github.com/nodejs/undici/pull/2645)
- test: more information from debug tests by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2695](https://github.com/nodejs/undici/pull/2695)
- Fix broken test on linux by
[@&#8203;mcollina](https://github.com/mcollina) in
[https://github.com/nodejs/undici/pull/2699](https://github.com/nodejs/undici/pull/2699)
- fix: fix the linux patch by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2703](https://github.com/nodejs/undici/pull/2703)
- test(wpt): mark timed out tests as 'failed' by
[@&#8203;rossilor95](https://github.com/rossilor95) in
[https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)
- build(deps-dev): bump borp from 0.5.0 to 0.9.1 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/nodejs/undici/pull/2702](https://github.com/nodejs/undici/pull/2702)
- perf: use insertion sort algorithm by
[@&#8203;tsctx](https://github.com/tsctx) in
[https://github.com/nodejs/undici/pull/2706](https://github.com/nodejs/undici/pull/2706)
- fix: run node tests on merge by
[@&#8203;Uzlopak](https://github.com/Uzlopak) in
[https://github.com/nodejs/undici/pull/2707](https://github.com/nodejs/undici/pull/2707)

#### New Contributors

- [@&#8203;rossilor95](https://github.com/rossilor95) made their first
contribution in
[https://github.com/nodejs/undici/pull/2644](https://github.com/nodejs/undici/pull/2644)

**Full Changelog**:
nodejs/undici@v6.6.1...v6.6.2

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/octokit/rest.js).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Brooooooklyn referenced this pull request in toeverything/AFFiNE Apr 8, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | [`6.6.2` -> `6.11.1`](https://renovatebot.com/diffs/npm/undici/6.6.2/6.11.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/6.6.2/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/6.6.2/6.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

### GitHub Vulnerability Alerts

#### [CVE-2024-30260](https://github.com/nodejs/undici/security/advisories/GHSA-m4v8-wqvr-p9f7)

### Impact

Undici cleared Authorization and Proxy-Authorization headers for `fetch()`, but did not clear them for `undici.request()`.

### Patches

This has been patched in nodejs/undici@6805746.
Fixes has been released in v5.28.4 and v6.11.1.

### Workarounds

use `fetch()` or disable `maxRedirections`.

### References

Linzi Shang reported this.

* https://hackerone.com/reports/2408074
* GHSA-3787-6prv-h9w3

#### [CVE-2024-30261](https://github.com/nodejs/undici/security/advisories/GHSA-9qxr-qj54-h672)

### Impact

If an attacker can alter the `integrity` option passed to `fetch()`, they can let `fetch()` accept requests as valid even if they have been tampered.

### Patches

Fixed in nodejs/undici@d542b8c.
Fixes has been released in v5.28.4 and v6.11.1.

### Workarounds

Ensure that `integrity` cannot be tampered with.

### References

https://hackerone.com/reports/2377760

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.11.1`](https://github.com/nodejs/undici/compare/v6.11.0...6df3c738d03dc4014a26640316bf699950d62024)

[Compare Source](https://github.com/nodejs/undici/compare/v6.11.0...v6.11.1)

### [`v6.11.0`](https://github.com/nodejs/undici/compare/v6.10.2...ee5f892f3955eaca37730ed30349153ba203e9cd)

[Compare Source](https://github.com/nodejs/undici/compare/v6.10.2...v6.11.0)

### [`v6.10.2`](https://github.com/nodejs/undici/releases/tag/v6.10.2)

[Compare Source](https://github.com/nodejs/undici/compare/v6.10.1...v6.10.2)

##### What's Changed

-   Do not fail test if streams support typed arrays by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2978](https://github.com/nodejs/undici/pull/2978)
-   fix(fetch): properly redirect non-ascii location header url by [@&#8203;Xvezda](https://github.com/Xvezda) in [https://github.com/nodejs/undici/pull/2971](https://github.com/nodejs/undici/pull/2971)
-   perf: Remove double-stringify in setCookie by [@&#8203;peterver](https://github.com/peterver) in [https://github.com/nodejs/undici/pull/2980](https://github.com/nodejs/undici/pull/2980)
-   \[fix [#&#8203;2982](https://github.com/nodejs/undici/issues/2982)] use DispatcherInterceptor type for Dispatcher#Compose by [@&#8203;clovis-guillemot](https://github.com/clovis-guillemot) in [https://github.com/nodejs/undici/pull/2983](https://github.com/nodejs/undici/pull/2983)
-   fix: make EventSource properties enumerable by [@&#8203;MattBidewell](https://github.com/MattBidewell) in [https://github.com/nodejs/undici/pull/2987](https://github.com/nodejs/undici/pull/2987)
-   docs: ✏️ fixed benchmark links by [@&#8203;benhalverson](https://github.com/benhalverson) in [https://github.com/nodejs/undici/pull/2991](https://github.com/nodejs/undici/pull/2991)
-   fix([#&#8203;2986](https://github.com/nodejs/undici/issues/2986)): bad start check by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2992](https://github.com/nodejs/undici/pull/2992)
-   fix(H2 Client): bind stream 'data' listener only after received 'response' event by [@&#8203;St3ffGv4](https://github.com/St3ffGv4) in [https://github.com/nodejs/undici/pull/2985](https://github.com/nodejs/undici/pull/2985)
-   feat:  added search input by [@&#8203;benhalverson](https://github.com/benhalverson) in [https://github.com/nodejs/undici/pull/2993](https://github.com/nodejs/undici/pull/2993)
-   chore: validate responses can be consumed without a Content-Length or… by [@&#8203;jacob-ebey](https://github.com/jacob-ebey) in [https://github.com/nodejs/undici/pull/2995](https://github.com/nodejs/undici/pull/2995)
-   fix error message by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2998](https://github.com/nodejs/undici/pull/2998)
-   Revert "perf: reuse TextDecoder instance ([#&#8203;2863](https://github.com/nodejs/undici/issues/2863))" by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2999](https://github.com/nodejs/undici/pull/2999)
-   test: remove only by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3001](https://github.com/nodejs/undici/pull/3001)

##### New Contributors

-   [@&#8203;Xvezda](https://github.com/Xvezda) made their first contribution in [https://github.com/nodejs/undici/pull/2971](https://github.com/nodejs/undici/pull/2971)
-   [@&#8203;peterver](https://github.com/peterver) made their first contribution in [https://github.com/nodejs/undici/pull/2980](https://github.com/nodejs/undici/pull/2980)
-   [@&#8203;clovis-guillemot](https://github.com/clovis-guillemot) made their first contribution in [https://github.com/nodejs/undici/pull/2983](https://github.com/nodejs/undici/pull/2983)
-   [@&#8203;MattBidewell](https://github.com/MattBidewell) made their first contribution in [https://github.com/nodejs/undici/pull/2987](https://github.com/nodejs/undici/pull/2987)
-   [@&#8203;benhalverson](https://github.com/benhalverson) made their first contribution in [https://github.com/nodejs/undici/pull/2991](https://github.com/nodejs/undici/pull/2991)
-   [@&#8203;St3ffGv4](https://github.com/St3ffGv4) made their first contribution in [https://github.com/nodejs/undici/pull/2985](https://github.com/nodejs/undici/pull/2985)
-   [@&#8203;jacob-ebey](https://github.com/jacob-ebey) made their first contribution in [https://github.com/nodejs/undici/pull/2995](https://github.com/nodejs/undici/pull/2995)

**Full Changelog**: nodejs/undici@v6.10.0...v6.10.2

### [`v6.10.1`](https://github.com/nodejs/undici/compare/v6.10.0...dd3918fee4f90e02fb93ff1bc04e707144041938)

[Compare Source](https://github.com/nodejs/undici/compare/v6.10.0...v6.10.1)

### [`v6.10.0`](https://github.com/nodejs/undici/releases/tag/v6.10.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.9.0...v6.10.0)

#### What's Changed

-   test: fix flakyness of issue-803 test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2960](https://github.com/nodejs/undici/pull/2960)
-   Cleanup format by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2959](https://github.com/nodejs/undici/pull/2959)
-   Chore: run tests daily against node nightly by [@&#8203;mweberxyz](https://github.com/mweberxyz) in [https://github.com/nodejs/undici/pull/2969](https://github.com/nodejs/undici/pull/2969)
-   fix: fix retry handler option by [@&#8203;acommodari](https://github.com/acommodari) in [https://github.com/nodejs/undici/pull/2962](https://github.com/nodejs/undici/pull/2962)
-   build(deps): bump node from `4999fa1` to `577f8eb` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2974](https://github.com/nodejs/undici/pull/2974)
-   feat(TS): add types for composed dispatchers by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2967](https://github.com/nodejs/undici/pull/2967)
-   fix: count for error response and network errors by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2966](https://github.com/nodejs/undici/pull/2966)

#### New Contributors

-   [@&#8203;mweberxyz](https://github.com/mweberxyz) made their first contribution in [https://github.com/nodejs/undici/pull/2969](https://github.com/nodejs/undici/pull/2969)
-   [@&#8203;acommodari](https://github.com/acommodari) made their first contribution in [https://github.com/nodejs/undici/pull/2962](https://github.com/nodejs/undici/pull/2962)

**Full Changelog**: nodejs/undici@v6.9.0...v6.10.0

### [`v6.9.0`](https://github.com/nodejs/undici/releases/tag/v6.9.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.8.0...v6.9.0)

#### What's Changed

-   feat: add new dispatch compose by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2826](https://github.com/nodejs/undici/pull/2826)
-   ci: add macos-latest to test-matrix by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2952](https://github.com/nodejs/undici/pull/2952)
-   types: align RequestInit.body type with lib.dom.ts by [@&#8203;jdufresne](https://github.com/jdufresne) in [https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
-   ci: pin versions of github actions by [@&#8203;UlisesGascon](https://github.com/UlisesGascon) in [https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)
-   fetch: improve output for FormData, Response, Request by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2955](https://github.com/nodejs/undici/pull/2955)
-   perf: optimize collectASequenceOfBytes by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2958](https://github.com/nodejs/undici/pull/2958)

#### New Contributors

-   [@&#8203;jdufresne](https://github.com/jdufresne) made their first contribution in [https://github.com/nodejs/undici/pull/2956](https://github.com/nodejs/undici/pull/2956)
-   [@&#8203;UlisesGascon](https://github.com/UlisesGascon) made their first contribution in [https://github.com/nodejs/undici/pull/2957](https://github.com/nodejs/undici/pull/2957)

**Full Changelog**: nodejs/undici@v6.8.0...v6.9.0

### [`v6.8.0`](https://github.com/nodejs/undici/releases/tag/v6.8.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.1...v6.8.0)

#### What's Changed

-   fix: send correct SNI for proxy connections by [@&#8203;chrros95](https://github.com/chrros95) in [https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)
-   build(deps): bump node from `8bf9240` to `7bfef1d` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2937](https://github.com/nodejs/undici/pull/2937)
-   fetch: improve util.inspect output for web specifications by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/2938](https://github.com/nodejs/undici/pull/2938)
-   ci: fix broken ci on windows and node v21 because of libuv bug by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2941](https://github.com/nodejs/undici/pull/2941)
-   perf: improve getResolveErrorBodyCallback by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2940](https://github.com/nodejs/undici/pull/2940)
-   fix: don't assign kAgent twice by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2942](https://github.com/nodejs/undici/pull/2942)
-   perf: dump immediatly if known size exceeds limit by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2882](https://github.com/nodejs/undici/pull/2882)
-   build(deps): bump node from `7bfef1d` to `4999fa1` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2946](https://github.com/nodejs/undici/pull/2946)
-   try to fix windows failure by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2950](https://github.com/nodejs/undici/pull/2950)
-   perf: improve parsing form-data by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2944](https://github.com/nodejs/undici/pull/2944)

#### New Contributors

-   [@&#8203;chrros95](https://github.com/chrros95) made their first contribution in [https://github.com/nodejs/undici/pull/2939](https://github.com/nodejs/undici/pull/2939)

**Full Changelog**: nodejs/undici@v6.7.1...v6.8.0

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare Source](https://github.com/nodejs/undici/compare/v6.7.0...v6.7.1)

#### What's Changed

-   fetch: use EOL of os-module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2915](https://github.com/nodejs/undici/pull/2915)
-   ci: only send codecov from ubuntu and node by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2914](https://github.com/nodejs/undici/pull/2914)
-   tests: improve skip for unix.js tests, remove skipped tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2916](https://github.com/nodejs/undici/pull/2916)
-   chore: fix typo in isHistoryNavigation comments by [@&#8203;kachick](https://github.com/kachick) in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   fix(benchmark): set body correctly by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2918](https://github.com/nodejs/undici/pull/2918)
-   chore: increase test coverage to 100% for /lib/api/api-request.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2912](https://github.com/nodejs/undici/pull/2912)
-   fix: chunksDecode cuts off 3 characters at the end if having BOM by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2922](https://github.com/nodejs/undici/pull/2922)
-   docs: clarify URI parsing behavior of ProxyAgent constructor by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2893](https://github.com/nodejs/undici/pull/2893)
-   implement sync formdata parser by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2911](https://github.com/nodejs/undici/pull/2911)
-   Fix docs links and add examples to sidebar by [@&#8203;tastypackets](https://github.com/tastypackets) in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   doc: update diagnostics channel request headers type change by [@&#8203;jessezhang91](https://github.com/jessezhang91) in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   perf: optimize getResolveErrorBodyCallback by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2921](https://github.com/nodejs/undici/pull/2921)
-   override request dispatcher from init by [@&#8203;matthieusieben](https://github.com/matthieusieben) in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)
-   add busboy tests by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2924](https://github.com/nodejs/undici/pull/2924)
-   fix(benchmark): make it fair by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2929](https://github.com/nodejs/undici/pull/2929)
-   Revert "chore: remove no-simd wasm" by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2935](https://github.com/nodejs/undici/pull/2935)
-   build(deps): bump node from `d3271e4` to `8bf9240` in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2936](https://github.com/nodejs/undici/pull/2936)
-   Flip link between docs and README by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2933](https://github.com/nodejs/undici/pull/2933)

#### New Contributors

-   [@&#8203;kachick](https://github.com/kachick) made their first contribution in [https://github.com/nodejs/undici/pull/2920](https://github.com/nodejs/undici/pull/2920)
-   [@&#8203;tastypackets](https://github.com/tastypackets) made their first contribution in [https://github.com/nodejs/undici/pull/2895](https://github.com/nodejs/undici/pull/2895)
-   [@&#8203;jessezhang91](https://github.com/jessezhang91) made their first contribution in [https://github.com/nodejs/undici/pull/2925](https://github.com/nodejs/undici/pull/2925)
-   [@&#8203;matthieusieben](https://github.com/matthieusieben) made their first contribution in [https://github.com/nodejs/undici/pull/2928](https://github.com/nodejs/undici/pull/2928)

**Full Changelog**: nodejs/undici@v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](https://github.com/nodejs/undici/compare/v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2715](https://github.com/nodejs/undici/pull/2715)
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2714](https://github.com/nodejs/undici/pull/2714)
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in [https://github.com/nodejs/undici/pull/2711](https://github.com/nodejs/undici/pull/2711)
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2693](https://github.com/nodejs/undici/pull/2693)
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2716](https://github.com/nodejs/undici/pull/2716)
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2696](https://github.com/nodejs/undici/pull/2696)
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2721](https://github.com/nodejs/undici/pull/2721)
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2726](https://github.com/nodejs/undici/pull/2726)
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in [https://github.com/nodejs/undici/pull/2677](https://github.com/nodejs/undici/pull/2677)
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2717](https://github.com/nodejs/undici/pull/2717)
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2720](https://github.com/nodejs/undici/pull/2720)
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2729](https://github.com/nodejs/undici/pull/2729)
-   Let's add superagent to the benchmark. closes [#&#8203;2730](https://github.com/nodejs/undici/issues/2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2673](https://github.com/nodejs/undici/pull/2673)
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2735](https://github.com/nodejs/undici/pull/2735)
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2719](https://github.com/nodejs/undici/pull/2719)
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2737](https://github.com/nodejs/undici/pull/2737)
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2739](https://github.com/nodejs/undici/pull/2739)
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2740](https://github.com/nodejs/undici/pull/2740)
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2738](https://github.com/nodejs/undici/pull/2738)
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2741](https://github.com/nodejs/undici/pull/2741)
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2744](https://github.com/nodejs/undici/pull/2744)
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2742](https://github.com/nodejs/undici/pull/2742)
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2749](https://github.com/nodejs/undici/pull/2749)
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2743](https://github.com/nodejs/undici/pull/2743)
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2746](https://github.com/nodejs/undici/pull/2746)
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2753](https://github.com/nodejs/undici/pull/2753)
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2752](https://github.com/nodejs/undici/pull/2752)
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2734](https://github.com/nodejs/undici/pull/2734)
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2755](https://github.com/nodejs/undici/pull/2755)
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2758](https://github.com/nodejs/undici/pull/2758)
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2759](https://github.com/nodejs/undici/pull/2759)
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2767](https://github.com/nodejs/undici/pull/2767)
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2765](https://github.com/nodejs/undici/pull/2765)
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2761](https://github.com/nodejs/undici/pull/2761)
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2774](https://github.com/nodejs/undici/pull/2774)
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2770](https://github.com/nodejs/undici/pull/2770)
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in [https://github.com/nodejs/undici/pull/2778](https://github.com/nodejs/undici/pull/2778)
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2781](https://github.com/nodejs/undici/pull/2781)
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2780](https://github.com/nodejs/undici/pull/2780)
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2786](https://github.com/nodejs/undici/pull/2786)
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2783](https://github.com/nodejs/undici/pull/2783)
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2782](https://github.com/nodejs/undici/pull/2782)
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2784](https://github.com/nodejs/undici/pull/2784)
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2785](https://github.com/nodejs/undici/pull/2785)
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2797](https://github.com/nodejs/undici/pull/2797)
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2798](https://github.com/nodejs/undici/pull/2798)
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2690](https://github.com/nodejs/undici/pull/2690)
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2393](https://github.com/nodejs/undici/pull/2393)
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2799](https://github.com/nodejs/undici/pull/2799)
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2803](https://github.com/nodejs/undici/pull/2803)
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2756](https://github.com/nodejs/undici/pull/2756)
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2793](https://github.com/nodejs/undici/pull/2793)
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in [https://github.com/nodejs/undici/pull/2800](https://github.com/nodejs/undici/pull/2800)
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/2788](https://github.com/nodejs/undici/pull/2788)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2820](https://github.com/nodejs/undici/pull/2820)
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2821](https://github.com/nodejs/undici/pull/2821)
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2818](https://github.com/nodejs/undici/pull/2818)
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2819](https://github.com/nodejs/undici/pull/2819)
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2822](https://github.com/nodejs/undici/pull/2822)
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2823](https://github.com/nodejs/undici/pull/2823)
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in [https://github.com/nodejs/undici/pull/2810](https://github.com/nodejs/undici/pull/2810)
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2790](https://github.com/nodejs/undici/pull/2790)
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2813](https://github.com/nodejs/undici/pull/2813)
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2827](https://github.com/nodejs/undici/pull/2827)
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2766](https://github.com/nodejs/undici/pull/2766)
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2829](https://github.com/nodejs/undici/pull/2829)
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2830](https://github.com/nodejs/undici/pull/2830)
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2831](https://github.com/nodejs/undici/pull/2831)
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2832](https://github.com/nodejs/undici/pull/2832)
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2834](https://github.com/nodejs/undici/pull/2834)
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in [https://github.com/nodejs/undici/pull/2833](https://github.com/nodejs/undici/pull/2833)
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2839](https://github.com/nodejs/undici/pull/2839)
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2137](https://github.com/nodejs/undici/pull/2137)
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2840](https://github.com/nodejs/undici/pull/2840)
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2094](https://github.com/nodejs/undici/pull/2094)
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2845](https://github.com/nodejs/undici/pull/2845)
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2843](https://github.com/nodejs/undici/pull/2843)
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2851](https://github.com/nodejs/undici/pull/2851)
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2763](https://github.com/nodejs/undici/pull/2763)
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2850](https://github.com/nodejs/undici/pull/2850)
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2858](https://github.com/nodejs/undici/pull/2858)
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2848](https://github.com/nodejs/undici/pull/2848)
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2862](https://github.com/nodejs/undici/pull/2862)
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2861](https://github.com/nodejs/undici/pull/2861)
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2863](https://github.com/nodejs/undici/pull/2863)
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2864](https://github.com/nodejs/undici/pull/2864)
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2867](https://github.com/nodejs/undici/pull/2867)
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2866](https://github.com/nodejs/undici/pull/2866)
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2860](https://github.com/nodejs/undici/pull/2860)
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2872](https://github.com/nodejs/undici/pull/2872)
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2874](https://github.com/nodejs/undici/pull/2874)
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2873](https://github.com/nodejs/undici/pull/2873)
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2876](https://github.com/nodejs/undici/pull/2876)
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2875](https://github.com/nodejs/undici/pull/2875)
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2878](https://github.com/nodejs/undici/pull/2878)
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2877](https://github.com/nodejs/undici/pull/2877)
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in [https://github.com/nodejs/undici/pull/2879](https://github.com/nodejs/undici/pull/2879)
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2880](https://github.com/nodejs/undici/pull/2880)
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in [https://github.com/nodejs/undici/pull/2881](https://github.com/nodejs/undici/pull/2881)
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2871](https://github.com/nodejs/undici/pull/2871)
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2883](https://github.com/nodejs/undici/pull/2883)
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2884](https://github.com/nodejs/undici/pull/2884)
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2892](https://github.com/nodejs/undici/pull/2892)
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2889](https://github.com/nodejs/undici/pull/2889)
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/nodejs/undici/pull/2897](https://github.com/nodejs/undici/pull/2897)
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/2900](https://github.com/nodejs/undici/pull/2900)
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2901](https://github.com/nodejs/undici/pull/2901)
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2902](https://github.com/nodejs/undici/pull/2902)
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2909](https://github.com/nodejs/undici/pull/2909)
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2906](https://github.com/nodejs/undici/pull/2906)
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2908](https://github.com/nodejs/undici/pull/2908)
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2903](https://github.com/nodejs/undici/pull/2903)
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2865](https://github.com/nodejs/undici/pull/2865)
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in [https://github.com/nodejs/undici/pull/2905](https://github.com/nodejs/undici/pull/2905)
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/2899](https://github.com/nodejs/undici/pull/2899)

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in [https://github.com/nodejs/undici/pull/2708](https://github.com/nodejs/undici/pull/2708)
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in [https://github.com/nodejs/undici/pull/2731](https://github.com/nodejs/undici/pull/2731)
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in [https://github.com/nodejs/undici/pull/2775](https://github.com/nodejs/undici/pull/2775)
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in [https://github.com/nodejs/undici/pull/2807](https://github.com/nodejs/undici/pull/2807)
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in [https://github.com/nodejs/undici/pull/2886](https://github.com/nodejs/undici/pull/2886)

**Full Changelog**: nodejs/undici@v6.6.2...v6.7.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/toeverything/AFFiNE).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5In0=-->
Vylpes pushed a commit to Vylpes/vylbot-app that referenced this pull request Apr 10, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://github.com/nodejs/undici)) | resolutions | major | [`^5.28.3` -> `^6.0.0`](https://renovatebot.com/diffs/npm/undici/5.28.3/6.9.0) |

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v6.9.0`](https://github.com/nodejs/undici/releases/tag/v6.9.0)

[Compare Source](nodejs/undici@v6.8.0...v6.9.0)

#### What's Changed

-   feat: add new dispatch compose by [@&#8203;metcoder95](https://github.com/metcoder95) in nodejs/undici#2826
-   ci: add macos-latest to test-matrix by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2952
-   types: align RequestInit.body type with lib.dom.ts by [@&#8203;jdufresne](https://github.com/jdufresne) in nodejs/undici#2956
-   ci: pin versions of github actions by [@&#8203;UlisesGascon](https://github.com/UlisesGascon) in nodejs/undici#2957
-   fetch: improve output for FormData, Response, Request by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in nodejs/undici#2955
-   perf: optimize collectASequenceOfBytes by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2958

#### New Contributors

-   [@&#8203;jdufresne](https://github.com/jdufresne) made their first contribution in nodejs/undici#2956
-   [@&#8203;UlisesGascon](https://github.com/UlisesGascon) made their first contribution in nodejs/undici#2957

**Full Changelog**: nodejs/undici@v6.8.0...v6.9.0

### [`v6.8.0`](https://github.com/nodejs/undici/releases/tag/v6.8.0)

[Compare Source](nodejs/undici@v6.7.1...v6.8.0)

#### What's Changed

-   fix: send correct SNI for proxy connections by [@&#8203;chrros95](https://github.com/chrros95) in nodejs/undici#2939
-   build(deps): bump node from `8bf9240` to `7bfef1d` in /build by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2937
-   fetch: improve util.inspect output for web specifications by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in nodejs/undici#2938
-   ci: fix broken ci on windows and node v21 because of libuv bug by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2941
-   perf: improve getResolveErrorBodyCallback by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2940
-   fix: don't assign kAgent twice by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2942
-   perf: dump immediatly if known size exceeds limit by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2882
-   build(deps): bump node from `7bfef1d` to `4999fa1` in /build by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2946
-   try to fix windows failure by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2950
-   perf: improve parsing form-data by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2944

#### New Contributors

-   [@&#8203;chrros95](https://github.com/chrros95) made their first contribution in nodejs/undici#2939

**Full Changelog**: nodejs/undici@v6.7.1...v6.8.0

### [`v6.7.1`](https://github.com/nodejs/undici/releases/tag/v6.7.1)

[Compare Source](nodejs/undici@v6.7.0...v6.7.1)

#### What's Changed

-   fetch: use EOL of os-module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2915
-   ci: only send codecov from ubuntu and node by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2914
-   tests: improve skip for unix.js tests, remove skipped tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2916
-   chore: fix typo in isHistoryNavigation comments by [@&#8203;kachick](https://github.com/kachick) in nodejs/undici#2920
-   fix(benchmark): set body correctly by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2918
-   chore: increase test coverage to 100% for /lib/api/api-request.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2912
-   fix: chunksDecode cuts off 3 characters at the end if having BOM by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2922
-   docs: clarify URI parsing behavior of ProxyAgent constructor by [@&#8203;rossilor95](https://github.com/rossilor95) in nodejs/undici#2893
-   implement sync formdata parser by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2911
-   Fix docs links and add examples to sidebar by [@&#8203;tastypackets](https://github.com/tastypackets) in nodejs/undici#2895
-   doc: update diagnostics channel request headers type change by [@&#8203;jessezhang91](https://github.com/jessezhang91) in nodejs/undici#2925
-   perf: optimize getResolveErrorBodyCallback by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2921
-   override request dispatcher from init by [@&#8203;matthieusieben](https://github.com/matthieusieben) in nodejs/undici#2928
-   add busboy tests by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2924
-   fix(benchmark): make it fair by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2929
-   Revert "chore: remove no-simd wasm" by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2935
-   build(deps): bump node from `d3271e4` to `8bf9240` in /build by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2936
-   Flip link between docs and README by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2933

#### New Contributors

-   [@&#8203;kachick](https://github.com/kachick) made their first contribution in nodejs/undici#2920
-   [@&#8203;tastypackets](https://github.com/tastypackets) made their first contribution in nodejs/undici#2895
-   [@&#8203;jessezhang91](https://github.com/jessezhang91) made their first contribution in nodejs/undici#2925
-   [@&#8203;matthieusieben](https://github.com/matthieusieben) made their first contribution in nodejs/undici#2928

**Full Changelog**: nodejs/undici@v6.7.0...v6.7.1

### [`v6.7.0`](https://github.com/nodejs/undici/releases/tag/v6.7.0)

[Compare Source](nodejs/undici@v6.6.2...v6.7.0)

#### What's Changed

-   test: remove t.diagnostics() calls in push-dont-push.js test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2715
-   fix: fix flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2714
-   fix: HTTP2 tweaks by [@&#8203;metcoder95](https://github.com/metcoder95) in nodejs/undici#2711
-   test: improve cookie tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2693
-   test: response.url after redirect is set to target url by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2716
-   chore: remove mocha and chai by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2696
-   test: replace t.pass with t.ok by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2721
-   perf: remove redundant operation in FormData by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2726
-   Add support for passing iterable objects as headers by [@&#8203;JaoodxD](https://github.com/JaoodxD) in nodejs/undici#2708
-   chore: refine esbuild & node detection by [@&#8203;mochaaP](https://github.com/mochaaP) in nodejs/undici#2677
-   chore: rephrase some comments by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2717
-   test: replace t.type with t.ok and instanceof by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2720
-   remove useless options in web streams by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2729
-   Let's add superagent to the benchmark. closes [#&#8203;2730](nodejs/undici#2730) by [@&#8203;eddienubes](https://github.com/eddienubes) in nodejs/undici#2731
-   convert node build to latin1 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2673
-   simplify formData body parsing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2735
-   chore: migrate a batch of tests to node test runner no. 1 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2719
-   chore: migrate a batch of tests to node test runner no. 2 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2737
-   chore: migrate a batch of tests to node test runner no. 4 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2739
-   chore: migrate a batch of tests to node test runner no. 5 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2740
-   chore: migrate a batch of tests to node test runner no. 3 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2738
-   chore: migrate a batch of tests to node test runner no. 6 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2741
-   chore: migrate a batch of tests to node test runner no. 8 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2744
-   chore: migrate a batch of tests to node test runner no. 7 by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2742
-   build(deps-dev): bump cronometro from 2.0.2 to 3.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2749
-   perf: always use the same prototype Iterator by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2743
-   chore: migrate a batch of tests to node test runner no. 9, remove tap by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2746
-   chore: remove usage of http-errors in proxy example by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2753
-   fix: dont ship wasm files of llhttp via npm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2752
-   fix: handle request body as late as possible by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2734
-   perf(tree): avoid recursive calls by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2755
-   docs: fix favicon by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2758
-   chore: use mermaid engine and mermaid in markdown by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2759
-   chore: remove sinon dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2767
-   tests: skip test/node-test/debug on node 21.6.2 and windows by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2765
-   chore: improve usage of skip in tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2761
-   feat: improve mock error breadcrumbs by [@&#8203;rossilor95](https://github.com/rossilor95) in nodejs/undici#2774
-   expose MessageEvent in fetch bundle by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2770
-   test: always exit with 0 when running in Node's Daily WPT Report CI job by [@&#8203;panva](https://github.com/panva) in nodejs/undici#2778
-   fix: add node prefix for util to fix issue in env with min version node 18 by [@&#8203;riderx](https://github.com/riderx) in nodejs/undici#2775
-   perf: improve perf of parseRawHeaders by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2781
-   fix: make mock-agent.js test more resilient by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2780
-   chore: make some test run even without internet connection by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2786
-   mock: improve validateReplyParameters by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2783
-   perf: improve TernarySearchTree by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2782
-   fix: convert HeadersInit to sequence/dictionary correctly by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2784
-   chore: improve getFieldValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2785
-   Add RetryHandler to sidebar by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2797
-   Add RetryAgent by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2798
-   build(deps): bump step-security/harden-runner from 2.6.0 to 2.7.0 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2690
-   build(deps): bump actions/checkout from 4.1.0 to 4.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2393
-   build(deps): bump actions/upload-artifact from 3.1.3 to 4.3.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2799
-   build(deps): bump node from 20-alpine to 21-alpine in /build by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2803
-   perf: improve sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2756
-   refactor: move web stuff into their own folder by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2793
-   `s/ dispactgher/dispatcher/` by [@&#8203;steveluscher](https://github.com/steveluscher) in nodejs/undici#2807
-   Use paralellelRequests instead of connections to calculate req/sec in benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2800
-   Split out documentation into separate directory by [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood) in nodejs/undici#2788
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.1 to 3.10.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2820
-   build(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.3 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2821
-   build(deps): bump github/codeql-action from 3.23.2 to 3.24.4 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2818
-   build(deps): bump actions/setup-node from 4.0.1 to 4.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2819
-   fix: move CNAME and .nojekyll to root by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2822
-   remove all fetchParam event handlers by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2823
-   feat: refactor ProxyAgent constructor to also accept single URL argument by [@&#8203;rossilor95](https://github.com/rossilor95) in nodejs/undici#2810
-   fix: isCTLExcludingHtab by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2790
-   refactor: move files into logical folders by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2813
-   refactor: move fixed-queeu to dispatcher and rm node folder by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2827
-   chore: create package.json in benchmarks by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2766
-   build(deps): bump github/codeql-action from 3.24.4 to 3.24.5 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2829
-   chore: use lts for pubish types workflow by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2830
-   add dispatcher option to Request by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2831
-   fix url referrer wpt by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2832
-   refactor: remove own sort logic by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2834
-   fix(fetch): prevent crash when `fetch` is aborted with `null` as the `AbortSignal's` `reason` by [@&#8203;steveluscher](https://github.com/steveluscher) in nodejs/undici#2833
-   refactor: avoid http2 dynamic dispatch in socket handlers by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2839
-   build(deps-dev): bump proxy from 1.0.2 to 2.1.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2137
-   perf(tree): reduce overhead of build TernarySearchTree by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2840
-   webidl: implement resizable arraybuffer checks by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2094
-   websocket server only needs to reply with a single subprotocol by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2845
-   unite webidl stringification by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2843
-   fix: deflake connect-timeout test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2851
-   fix: coverage reporting by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2763
-   fix: pipelining logic is not relevant for h2 by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2850
-   processBody doesn't need to return a promise by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2858
-   refactor: split client into client-h1/h2 by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2848
-   ci: fix concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2862
-   perf: improve performance of isValidSubprotocol by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2861
-   perf: reuse TextDecoder instance by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2863
-   chore: restructure benchmarks, use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2864
-   cookies: improve perf of toIMFDate by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2867
-   cookies: fix validateCookiePath by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2866
-   refactor: move out more h2 from core client by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2860
-   mock: improve test coverage of buildHeadersFromArray by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2872
-   fix: remove broken build request hack by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2874
-   chore: filenames should use kebab-case by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2873
-   refactor: split out last h1 specific code from core by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2876
-   fix: make pipelining limit work for h2 by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2875
-   fix: http2 doesn't have pipelining queue by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2878
-   fix: minor connect cleanup by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2877
-   Request headers types by [@&#8203;JaoodxD](https://github.com/JaoodxD) in nodejs/undici#2879
-   ci: remove concurrency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2880
-   fix: prefer queueMicrotask by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2881
-   chore: remove no-simd wasm by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2871
-   cookies: improve validateCookieValue by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2883
-   cookies: improve validateCookieName by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2884
-   Properly parse set-cookie header using http2 by [@&#8203;jeanp413](https://github.com/jeanp413) in nodejs/undici#2886
-   doc deprecate bodymixin.formData by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2892
-   perf: optimize check invalid field-vchar by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2889
-   build(deps): bump github/codeql-action from 3.24.5 to 3.24.6 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2897
-   fix issue 2898 by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2900
-   tests: ignore catch block when requiring crypto module by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2901
-   websocket: remove dead code in parseCloseBody by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2902
-   fix: tests dont need process.exit by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2909
-   chore: remove proxyquire by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2906
-   chore: remove import-fresh as devDependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2908
-   perf(headers): a single set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2903
-   websocket: improve .close() by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2865
-   feat: add sending data benchmark by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2905
-   ci: integrate workflows into nodejs.yml by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2899

#### New Contributors

-   [@&#8203;JaoodxD](https://github.com/JaoodxD) made their first contribution in nodejs/undici#2708
-   [@&#8203;eddienubes](https://github.com/eddienubes) made their first contribution in nodejs/undici#2731
-   [@&#8203;riderx](https://github.com/riderx) made their first contribution in nodejs/undici#2775
-   [@&#8203;steveluscher](https://github.com/steveluscher) made their first contribution in nodejs/undici#2807
-   [@&#8203;jeanp413](https://github.com/jeanp413) made their first contribution in nodejs/undici#2886

**Full Changelog**: nodejs/undici@v6.6.2...v6.7.0

### [`v6.6.2`](https://github.com/nodejs/undici/releases/tag/v6.6.2)

[Compare Source](nodejs/undici@v6.6.1...v6.6.2)

#### What's Changed

-   fix: webidl.brandcheck non strict should throw by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2683
-   fix: expose EventSource for nodejs by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2645
-   test: more information from debug tests by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2695
-   Fix broken test on linux by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2699
-   fix: fix the linux patch by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2703
-   test(wpt): mark timed out tests as 'failed' by [@&#8203;rossilor95](https://github.com/rossilor95) in nodejs/undici#2644
-   build(deps-dev): bump borp from 0.5.0 to 0.9.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2702
-   perf: use insertion sort algorithm by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2706
-   fix: run node tests on merge by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2707

#### New Contributors

-   [@&#8203;rossilor95](https://github.com/rossilor95) made their first contribution in nodejs/undici#2644

**Full Changelog**: nodejs/undici@v6.6.1...v6.6.2

### [`v6.6.1`](https://github.com/nodejs/undici/releases/tag/v6.6.1)

[Compare Source](nodejs/undici@v6.6.0...v6.6.1)

#### ⚠️ Security Release ⚠️

Fixes:

-   [CVE-2024-24750, Backpressure request ignored in fetch()](GHSA-9f24-jqhm-jfcw)
-   [CVE-2024-24758 Proxy-Authorization header not cleared on cross-origin redirect in fetch](GHSA-3787-6prv-h9w3)

#### What's Changed

-   fix: flaky debug test by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2687
-   build(deps): bump github/codeql-action from 3.22.12 to 3.23.2 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2688
-   build(deps): bump actions/dependency-review-action from 3.1.0 to 4.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2689
-   fix: ci pipeline warnings by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2685
-   perf: optimize Iterator by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2692

**Full Changelog**: nodejs/undici@v6.6.0...v6.6.1

### [`v6.6.0`](https://github.com/nodejs/undici/releases/tag/v6.6.0)

[Compare Source](nodejs/undici@v6.5.0...v6.6.0)

#### What's Changed

-   add webSocket example by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in nodejs/undici#2626
-   chore: remove atomic-sleep as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2648
-   chore: remove semver as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2646
-   chore: remove table as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2649
-   chore: remove delay as dev dependency by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2647
-   chore: reduce noise in test-logs test/issue-2349.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2655
-   chore: fix faketimer warning in test/request-timeout.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2656
-   chore: reduce noise in test logs test/client-node-max-header-size.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2654
-   refactor: use fromInnerResponse by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2635
-   fix: support deflate raw responses by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2650
-   Support building for externally shared js builtins by [@&#8203;mochaaP](https://github.com/mochaaP) in nodejs/undici#2643
-   fix: typo clampAndCoarsenConnectionTimingInfo by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2653
-   chore: use 'node:'-prefix for requiring node core modules by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2662
-   build(deps-dev): bump husky from 8.0.3 to 9.0.7 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2667
-   build(deps-dev): bump cronometro from 1.2.0 to 2.0.2 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2668
-   remove timers/promises import by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2665
-   chore: fix various codesmells by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2669
-   chore: remove this alias in agent.js by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2671
-   chore: use optional chaining by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2666
-   chore: small perf improvements by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2661
-   implement spec changes from a while ago by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2676
-   websocket: fix close when no closing code is received by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2680
-   fix: make ci less flaky by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2684

#### New Contributors

-   [@&#8203;mochaaP](https://github.com/mochaaP) made their first contribution in nodejs/undici#2643

**Full Changelog**: nodejs/undici@v6.5.0...v6.6.0

### [`v6.5.0`](https://github.com/nodejs/undici/releases/tag/v6.5.0)

[Compare Source](nodejs/undici@v6.4.0...v6.5.0)

#### What's Changed

-   build(deps-dev): bump jsdom from 23.2.0 to 24.0.0 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2632
-   feat: Implement EventSource by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2608
-   fix: readable body by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2642

**Full Changelog**: nodejs/undici@v6.4.0...v6.5.0

### [`v6.4.0`](https://github.com/nodejs/undici/releases/tag/v6.4.0)

[Compare Source](nodejs/undici@v6.3.0...v6.4.0)

#### What's Changed

-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2605
-   cacheStorage: separate matchAll logic by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2599
-   cleanup index by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2598
-   feat: port `balanced-pool`, `ca-fingerprint`, `client-abort` tests to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2584
-   ci: unpin nodejs workflow version by [@&#8203;dominykas](https://github.com/dominykas) in nodejs/undici#2434
-   test([#&#8203;2600](nodejs/undici#2600)): Flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in nodejs/undici#2607
-   fix: h2 hang issue with empty body by [@&#8203;timursevimli](https://github.com/timursevimli) in nodejs/undici#2601
-   Fix tests for Node.js v21 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2609
-   perf(cache): avoid Request and Response initialization by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2610
-   Add more libraries to benchmarks by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2614
-   feat: port `client-connect`, `client-dispatch`, `client-errors` test to `node:test` by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2591
-   exit with 1 if WPT runner has unexpected errors by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2621
-   Fix tests for Node.js v20.11.0 by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2618
-   fix(mock-agent): split set-cookie by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2619
-   feat: implement throwOnMaxRedirect option for RedirectHandler by [@&#8203;mertcanaltin](https://github.com/mertcanaltin) in nodejs/undici#2563
-   test: fix flaky debug test by [@&#8203;metcoder95](https://github.com/metcoder95) in nodejs/undici#2613
-   fix: hide statusOutput if empty in handleRunnerCompletion by [@&#8203;Uzlopak](https://github.com/Uzlopak) in nodejs/undici#2624
-   docs: Fix typo in Debug.md by [@&#8203;Skn0tt](https://github.com/Skn0tt) in nodejs/undici#2625
-   fix(cache): set AbortSignal by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2612
-   Use correct http Agent for node-fetch, axios, got and request by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2629

#### New Contributors

-   [@&#8203;timursevimli](https://github.com/timursevimli) made their first contribution in nodejs/undici#2601
-   [@&#8203;mertcanaltin](https://github.com/mertcanaltin) made their first contribution in nodejs/undici#2563
-   [@&#8203;Skn0tt](https://github.com/Skn0tt) made their first contribution in nodejs/undici#2625

**Full Changelog**: nodejs/undici@v6.3.0...v6.4.0

### [`v6.3.0`](https://github.com/nodejs/undici/releases/tag/v6.3.0)

[Compare Source](nodejs/undici@v6.2.1...v6.3.0)

#### What's Changed

-   Clear all timeout on destroy and close by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2535
-   ConnectOptions should include 'origin' field by [@&#8203;dvoytenko](https://github.com/dvoytenko) in nodejs/undici#2532
-   perf: avoid toLowerCase call by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2537
-   revert [`a1a8136`](nodejs/undici@a1a8136) by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2539
-   docs: add Util to sidebar by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2529
-   fix: call explicitly unregister by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2534
-   fix: check the content-type of invalid formData by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2541
-   Add request examples. by [@&#8203;autopulated](https://github.com/autopulated) in nodejs/undici#2380
-   fix(HTTP/2): handle consumption of aborted request by [@&#8203;metcoder95](https://github.com/metcoder95) in nodejs/undici#2387
-   chore: update tst test by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2538
-   fix(fetch): do not abort fetch on redirect by [@&#8203;angelyan](https://github.com/angelyan) in nodejs/undici#2545
-   drop verifyVersion in scripts by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2549
-   types: remove unused Client and Pool types by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in nodejs/undici#2557
-   lib: fix Host header when CONNECT ProxyAgent by [@&#8203;RafaelGSS](https://github.com/RafaelGSS) in nodejs/undici#2556
-   feat: port cookies tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in nodejs/undici#2547
-   feat: port webidl tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in nodejs/undici#2554
-   perf: Improve percentDecode by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2562
-   Fix parseHashWithOptions regex by [@&#8203;flapenna](https://github.com/flapenna) in nodejs/undici#2561
-   feat: port diagnostic-channel tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in nodejs/undici#2559
-   feat: port websocket tests to node test runner by [@&#8203;ilteoood](https://github.com/ilteoood) in nodejs/undici#2553
-   build(deps-dev): bump tsd from 0.29.0 to 0.30.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2551
-   build(deps): bump actions/setup-node from 4.0.0 to 4.0.1 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2572
-   build(deps): bump github/codeql-action from 2.22.5 to 3.22.12 by [@&#8203;dependabot](https://github.com/dependabot) in nodejs/undici#2574
-   Update `@matteo.collina/tspl` to 0.1.1 by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2576
-   mark wpt as failing by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2581
-   feat: port `abort-controller.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2564
-   fix data url test by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2580
-   feat: port `async_hooks.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2568
-   feat: port `agent.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2566
-   feat: port `abort-event-emitter.js` tests to `node:test` runnner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2565
-   feat: port first half of fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in nodejs/undici#2569
-   perf: bypass method validation by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2583
-   fetch: warn when using patch method by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2577
-   feat: port `autoselectfamily.js` tests to `node:test` runner by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2570
-   feat: port remaining fetch tests to node test runner by [@&#8203;anurag-roy](https://github.com/anurag-roy) in nodejs/undici#2587
-   fix: use isArrayBuffer instead of isAnyArrayBuffer by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2586
-   Feat/migrate tests to node runner by [@&#8203;pmarchini](https://github.com/pmarchini) in nodejs/undici#2593
-   abort request with reason if one is provided by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2592
-   feat: port tst test to node test runner by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2595
-   feat([#&#8203;2191](nodejs/undici#2191)): Add support for `NODE_DEBUG` by [@&#8203;metcoder95](https://github.com/metcoder95) in nodejs/undici#2585
-   cacheStorage: fix bugs make wpts pass by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2596
-   fix: non-object error in abort throws bad error by [@&#8203;atlowChemi](https://github.com/atlowChemi) in nodejs/undici#2597
-   fix: add test helper for closing server as promise by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) in nodejs/undici#2604

#### New Contributors

-   [@&#8203;dvoytenko](https://github.com/dvoytenko) made their first contribution in nodejs/undici#2532
-   [@&#8203;autopulated](https://github.com/autopulated) made their first contribution in nodejs/undici#2380
-   [@&#8203;angelyan](https://github.com/angelyan) made their first contribution in nodejs/undici#2545
-   [@&#8203;pmarchini](https://github.com/pmarchini) made their first contribution in nodejs/undici#2547
-   [@&#8203;ilteoood](https://github.com/ilteoood) made their first contribution in nodejs/undici#2554
-   [@&#8203;flapenna](https://github.com/flapenna) made their first contribution in nodejs/undici#2561
-   [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki) made their first contribution in nodejs/undici#2576
-   [@&#8203;anurag-roy](https://github.com/anurag-roy) made their first contribution in nodejs/undici#2569

**Full Changelog**: nodejs/undici@v6.2.1...v6.3.0

### [`v6.2.1`](https://github.com/nodejs/undici/releases/tag/v6.2.1)

[Compare Source](nodejs/undici@v6.2.0...v6.2.1)

#### What's Changed

-   perf: use tree by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2528
-   chore: reduce dependencies by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2533
-   Remove timers in agent.js by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2536

**Full Changelog**: nodejs/undici@v6.2.0...v6.2.1

### [`v6.2.0`](https://github.com/nodejs/undici/releases/tag/v6.2.0)

[Compare Source](nodejs/undici@v6.1.0...v6.2.0)

#### What's Changed

-   Remove FinalizationRegistry from Agent by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2530

**Full Changelog**: nodejs/undici@v6.1.0...v6.2.0

### [`v6.1.0`](https://github.com/nodejs/undici/releases/tag/v6.1.0)

[Compare Source](nodejs/undici@v6.0.1...v6.1.0)

#### What's Changed

-   fix: more sensible stack trace from dump error by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2503
-   refactor: remove some node compat by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2502
-   refactor: version cleanup by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2507
-   perf(fetch): Improve fetch of detaurl by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2479
-   feat: expose parseHeader by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2511
-   perf(fetch): optimize call `dispatch` by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2493
-   perf(util/parseHeaders): If the header name is buffer by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2501
-   perf: twice faster method check by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2495
-   refactor: remove Error.captureStackTrace by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2509
-   perf: Improve processHeader by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2513
-   perf: reduce `String#toLowerCase` call by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2516
-   perf: optimize consumeEnd by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2510
-   perf: reduce tst built time by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2517
-   feat: allow customization of build environment by [@&#8203;khardix](https://github.com/khardix) in nodejs/undici#2403
-   fix: clear cache by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2519
-   feat: Add resource timing entries for connection, request and response by [@&#8203;ToshB](https://github.com/ToshB) in nodejs/undici#2481
-   Call fg.unregister() after a dispatcher is done, adds UNDICI_NO_FG to… by [@&#8203;mcollina](https://github.com/mcollina) in nodejs/undici#2527
-   feat: expose headerNameToString by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2525

#### New Contributors

-   [@&#8203;khardix](https://github.com/khardix) made their first contribution in nodejs/undici#2403

**Full Changelog**: nodejs/undici@v6.0.1...v6.1.0

### [`v6.0.1`](https://github.com/nodejs/undici/releases/tag/v6.0.1)

[Compare Source](nodejs/undici@v6.0.0...v6.0.1)

#### What's Changed

-   fix: stream error timings by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2497

**Full Changelog**: nodejs/undici@v6.0.0...v6.0.1

### [`v6.0.0`](https://github.com/nodejs/undici/releases/tag/v6.0.0)

[Compare Source](nodejs/undici@v5.28.3...v6.0.0)

#### What's Changed

-   16 eol by [@&#8203;ronag](https://github.com/ronag) in nodejs/undici#2480
-   update spec & wpts by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2482
-   version cleanup by [@&#8203;KhafraDev](https://github.com/KhafraDev) in nodejs/undici#2483
-   perf: avoid Response initialization by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2489
-   perf: optimize `parseHeaders` by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2492
-   chore: fix typo by [@&#8203;tsctx](https://github.com/tsctx) in nodejs/undici#2490
-   feat: print attempted addresses on ConnectTimeoutError by [@&#8203;fengmk2](https://github.com/fengmk2) in nodejs/undici#2494
-   Expose HTTP errors that are not meant to be retried by [@&#8203;MzUgM](https://github.com/MzUgM) in nodejs/undici#2496

**Full Changelog**: nodejs/undici@v5.28.2...v6.0.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4wLjAiLCJ1cGRhdGVkSW5WZXIiOiIzNy4wLjAiLCJ0YXJnZXRCcmFuY2giOiJkZXZlbG9wIn0=-->

Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/416
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Co-committed-by: Renovate Bot <renovate@vylpes.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants