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

feat: Add H2 support #2061

Merged
merged 58 commits into from Sep 8, 2023
Merged

feat: Add H2 support #2061

merged 58 commits into from Sep 8, 2023

Conversation

metcoder95
Copy link
Member

@metcoder95 metcoder95 commented Apr 12, 2023

Superseeds #1014
Closes #399

Checklist - APIs

  • Support for Client#Connect
  • Support for Client#Dispatch
  • Support for Client#Request
  • Support for Client#Stream
  • Support for Client#Pipeline
  • Support for Client#Destroy
  • Support for Client#Close
  • Support for H2 settings when creating a stream at the different APIs
  • Support for disabling H2 whenever ALPN says is available
  • Internal stream management (max concurrent, and usage of them)
  • Documentation
  • Experimental warning
  • Calculate content-length before triggering the request

Checklist - HTTP2

  • 100 continue
  • SETTINGS - Client
    • Not planned
  • SETTINGS - Server (triggered by)
    • Does not needed, as is automatically applied to the session
  • GOAWAY - Client
  • GOAWAY - Server (triggered by)
  • PING - Client
  • PING - Server (triggered by)

@codecov-commenter
Copy link

codecov-commenter commented Apr 12, 2023

Codecov Report

Patch coverage: 74.90% and project coverage change: -0.49% ⚠️

Comparison is base (ea4f257) 86.00% compared to head (1433624) 85.51%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2061      +/-   ##
==========================================
- Coverage   86.00%   85.51%   -0.49%     
==========================================
  Files          76       76              
  Lines        6637     6856     +219     
==========================================
+ Hits         5708     5863     +155     
- Misses        929      993      +64     
Files Changed Coverage Δ
lib/api/api-request.js 98.86% <ø> (ø)
lib/core/symbols.js 100.00% <ø> (ø)
lib/core/request.js 87.01% <44.44%> (-8.99%) ⬇️
lib/client.js 93.11% <78.43%> (-3.58%) ⬇️
lib/fetch/index.js 85.20% <88.23%> (-0.13%) ⬇️
lib/api/api-connect.js 97.87% <100.00%> (+0.09%) ⬆️
lib/core/connect.js 80.00% <100.00%> (-1.02%) ⬇️
lib/core/util.js 95.78% <100.00%> (+0.02%) ⬆️

... and 1 file with indirect coverage changes

☔ View full report in Codecov by Sentry.

📢 Have feedback on the report? Share it here.

lib/client.js Outdated Show resolved Hide resolved
lib/client.js Outdated Show resolved Hide resolved
lib/core/connect.js Outdated Show resolved Hide resolved
@metcoder95
Copy link
Member Author

Hi!
I just started the work by rebasing and adjusting the set of changes made previously with the current state of the main, this allowed me to understand in deep the changes related to that enabled the support of the H2 protocol.

I just left a couple of questions on some of the topics, as well I would like to understand more or less what other expectations are outside of the comments and just plain h2 support.
This includes UPGRADE requests with a positive response from the server, and other aspects (I'll create a checklist for readiness and keeping track of the features).

As well, there was a concern from @ronag about better use of the branch from @jasnell on QUIC, but not sure if this is really wanted, but is still something to check.

Let me know your thoughts and I'll come back to this later this week 🙂

cc: @mcollina

@ronag
Copy link
Member

ronag commented Apr 14, 2023

I'm not a fan of the node core http2 module. I won't block, but I will discourage its usage. I am a fan of the quic/http3 work though.

@metcoder95
Copy link
Member Author

metcoder95 commented Apr 17, 2023

I'm not a fan of the node core http2 module. I won't block, but I will discourage its usage. I am a fan of the quic/http3 work though.

I don't have a strong opinion on this one, so I opened it again to refresh my ideas and thoughts about it 🙂

Is this still something we want to do?

Maybe would be better to target @jasnell's node http3/quic branch? I'm not too comfortable with node core http2. nodejs/node#38233

Note: Superseeded by nodejs/node#44325

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.

I think the best way to implement this is to only modify connect to set a socket:like object on the client. Any further changes than that seems to me like complicating things. But maybe I'm missing something.

@metcoder95
Copy link
Member Author

I think the best way to implement this is to only modify connect to set a socket:like object on the client. Any further changes than that seems to me like complicating things. But maybe I'm missing something.

Now that you mention it, I think we can point in that direction. Though, the writeH2 basically reuses the biggest portion of the normal write one with some tweaks.
The key differentiators are:

  1. The parser (llhttp for H1, HTTP2ClientSession for H2), for response body and headers, as well as requests ones.
  2. Session events adjustments, including some weird behaviors of one stream compared to the other

I'll try to bring support for the bare basics of the H2, and do cleanup either here or in another PR. But so far, I think we can consolidate them into a single set of adjustments to mimic the socket shape expected by undici

@metcoder95
Copy link
Member Author

Update
I'm afraid already reach the most extent that can be done for H2 independently. As suggested by @ronag, I'll start working on an abstraction on top of H2 Node.js module that plays compatibility with Undici interface expectations.
I might require to also adjust some of the parts that undici already has to cope with the different scenarios, but at least String/Buffer and Streams are fully supported. For instance, the bare basics are there, good enough to start the abstraction.

Please @KhafraDev, @mcollina , if there's feedback at the way the things for the next steps, please let me know 🙂

@mkaufmaner
Copy link
Contributor

Update I'm afraid already reach the most extent that can be done for H2 independently. As suggested by @ronag, I'll start working on an abstraction on top of H2 Node.js module that plays compatibility with Undici interface expectations. I might require to also adjust some of the parts that undici already has to cope with the different scenarios, but at least String/Buffer and Streams are fully supported. For instance, the bare basics are there, good enough to start the abstraction.

Please @KhafraDev, @mcollina , if there's feedback at the way the things for the next steps, please let me know 🙂

@metcoder95 Thank you for your hard work on supporting http/2. Keep it up!

I know the interfaces are completely different for undici and the node http/http2 modules but have you considered leveraging other http2 wrappers as a basis?

For example;
https://github.com/szmarczak/http2-wrapper
https://github.com/grantila/fetch-h2

@metcoder95
Copy link
Member Author

Hi @mkaufmaner, thanks for the kind words! 🙇

The interface "struggles" mainly were how undici handles TCP/HTTP connections.

TL;DR It does not use node:http but writes directly against the TCP socket, handling the parsing itself (on top of llhttp).

Though, in the end, wasn't that complicated, and found a small way to do it. I'll clean up in the next few days and set the PR ready for review

@mkaufmaner
Copy link
Contributor

Hi @mkaufmaner, thanks for the kind words! 🙇

The interface "struggles" mainly were how undici handles TCP/HTTP connections.

TL;DR It does not use node:http but writes directly against the TCP socket, handling the parsing itself (on top of llhttp).

Though, in the end, wasn't that complicated, and found a small way to do it. I'll clean up in the next few days and set the PR ready for review

Amazing, really looking forward to seeing the PR when it is ready for review!

I know undici doesn't use node:http (the whole reason undici is fast) but guess I haven't really comprehended the intricacies of interfacing with llhttp. I'll spend some time myself reading through undici source code to improve my comprehension.

Thanks again!

@mateus4k
Copy link

mateus4k commented May 23, 2023

@metcoder95, do you need some help with this? I'm not an undici contributor, but I'd like to use H2 and I can try to contribute with it

@metcoder95
Copy link
Member Author

@metcoder95, do you need some help with this? I'm not an undici contributor, but I'd like to use H2 and I can try to contribute with it

Hi @mateus4k, thanks for volunteering for it!
It would actually will be nice, but for this work I’ll be wrapping up the work for initial review. I would say that I won’t cover all the corner cases so quite few things will pop-up out of it 👍

@metcoder95 metcoder95 marked this pull request as ready for review May 24, 2023 08:59
@metcoder95
Copy link
Member Author

I think the PR is in a reviewable state. Please let me know your thoughts 🙂

I tried to make the H2 implementation match Undici expectations of streams/sockets, but the implementation is heavily tight to H1 that making an effort and trying to do so will require several rewrites that might be better to have them done in a separate PR, or maybe not at all.

There are several other pieces of H2 support that might be worth it to chat about it to evaluate whether to add it or not (maybe even create its own issues for others to contribute).

Note: On the testing, it seems something is failing over async-hooks on 20 and 19, couldn't narrow them down, but maybe you have a better idea of what can I do to fix it 🙂

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.

Good work. This is a completely different implementation to what I would have done. I have a few questions:

  1. how many concurrent requests are possible for a given Client?
  2. could you add a test with a HTTPS+HTTP2 server, showing that the connection uses HTTP2?

@@ -95,7 +95,7 @@ class RequestHandler extends AsyncResource {

this.callback = null
this.res = body

// console.log('called', callback !== null)
Copy link
Member

Choose a reason for hiding this comment

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

remove this

@mkaufmaner
Copy link
Contributor

  1. could you add a test with a HTTPS+HTTP2 server, showing that the connection uses HTTP2?

@mcollina Hopefully you wouldn't mind if we used fastify for this since writing a one off ALPN negotiator seems a little redundant.

@metcoder95 if @mcollina doesn't mind using fastify, I have taken care of this and opened a PR into your branch. See metcoder95#34

@KhafraDev
Copy link
Member

I'm a strong -1 on adding more dependencies.

@metcoder95
Copy link
Member Author

Good work. This is a completely different implementation to what I would have done. I have a >few questions:

  • how many concurrent requests are possible for a given Client?
  • could you add a test with a HTTPS+HTTP2 server, showing that the connection uses HTTP2?

Thanks!
Going one by one:

  • Haven't made that check yet, so far is not limited and we are under the limits of the node:http2 module. Let me test that out.
    • This leads me to this comment, how do we handle stream concurrency?
  • Not yet, but saw that @mkaufmaner did already some research and showed good results. Based on @KhafraDev comments, I think we can adjust it to use native node:http(2) to construct a bare basic server that does the ALPN negotiation

Copy link
Contributor

@mkaufmaner mkaufmaner left a comment

Choose a reason for hiding this comment

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

Added some thoughts about concurrency and performance.

lib/client.js Outdated Show resolved Hide resolved
lib/client.js Outdated
Comment on lines 1120 to 1225
const session = http2.connect(client[kUrl], {
createConnection: () => socket
})

session[kError] = null
session[kClient] = client
session.on('error', onHttp2SessionError)
session.on('close', onSocketClose)
session.unref()

client[kHTTP2Session] = session
Copy link
Contributor

Choose a reason for hiding this comment

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

I think concurrency should be handled through an LRU cache scoped to the Client class. This approach would be very similar to @szmarczak https://github.com/szmarczak/http2-wrapper library.

Public Interface

First I think the addition of http2 should expose the http2.connect options to whomever is instantiating the Client class through an http2 constructor option. Maybe even possibly omitting the createConnection option?

Performance

One key aspect of performant http2 is setting the appropriate window sizing. That being said the default http2 window sizing should be resolved at some point. See nodejs/node#38426

Until the default window sizing issue is resolved the initial window size should be set;

const session = http2.connect(client[kUrl], {
  createConnection: () => socket,
  initialWindowSize: 1024 * 1024 * 32
})

Concurrency Events

If the LRU cache for concurrency approach is taken, the session events for remoteSettings and goaway need to be handled.

Remote Settings

Once the session receives a remoteSettings settings event, the session should set aClient class kMaxConcurrentStreams limit and set the local window size of the session.

// See https://github.com/nodejs/node/issues/38426
if (session.setLocalWindowSize) {
  session.setLocalWindowSize(1024 * 1024 * 4); // 4 MB
}

Within the handler for once the session receives a remoteSettings settings event, another listener should be created for on remoteSettings as the session session.remoteSettings.maxConcurrentStreams needs to update the value for the kMaxConcurrentStreams.

Goaway

If concurrency is implemented through an LRU cache, once a goaway event is received from the remote the session should be removed from the LRU cache so it won't be reused.

Copy link
Contributor

Choose a reason for hiding this comment

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

Ah, I see, the client instances are maintained in the Pool class. Thus the remote settings and http2 connection state just needs to be bubbled up to the pool.

Copy link
Member Author

Choose a reason for hiding this comment

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

Thanks for all the feedback, incredibly insightful 🙇

Going one by one:

First I think the addition of http2 should expose the http2.connect options to whomever is instantiating the Client class through an http2 constructor option.

I would love to hear @mcollina, @ronag, and @KhafraDev thoughts to see which options would be ok to move to the public interface, and based on that expose the one required (at least the bare minium). It is also worth it to say that Undici already exposes configs required to manipulate the Socket connection

Maybe even possibly omitting the createConnection option?

Not so sure about this one. By the nature of Undici, the initial connection is made through a socket assuming an H1 connection. If then, the server negotiates and serves a H2, is when this feature comes into play.

One key aspect of performant http2 is setting the appropriate window sizing. That being said the default http2 window sizing should be resolved at some point. See nodejs/node#38426

Good catch, seems is already approved. I'll update it then 👍

For parallel streams
Though I agree with your points, I didn't start yet with the parallel streams supports, even tho is something that should be treated with care as you suggest.
But this requires also come with a good default, in combination with an API to update several settings accordingly for concurrency.
I would like to hear thoughts from the team, in the meanwhile I'll implement the smaller pieces already pointed out and kick-off benchmarks as well 😄

@mkaufmaner
Copy link
Contributor

@metcoder95 @KhafraDev @mcollina I created some simple benchmarks against the http/2 implementation and opened a PR metcoder95#35 into the http2 branch.

The http/2 benchmark results are promising! However, there are certainly some bugs that need to be worked through as the benchmark only seems to work sporadically.

Initial Results;

│ Tests             │ Samples │          Result │ Tolerance │ Difference with slowest │
|───────────────────|─────────|─────────────────|───────────|─────────────────────────|
│ http2 - request   │       1 │  438.80 req/sec │  ± 0.00 % │                       - │
|───────────────────|─────────|─────────────────|───────────|─────────────────────────|
│ undici - fetch    │       1 │  486.82 req/sec │  ± 0.00 % │               + 10.94 % │
|───────────────────|─────────|─────────────────|───────────|─────────────────────────|
│ undici - pipeline │       1 │ 1114.42 req/sec │  ± 0.00 % │              + 153.97 % │
|───────────────────|─────────|─────────────────|───────────|─────────────────────────|
│ undici - stream   │       1 │ 1319.30 req/sec │  ± 0.00 % │              + 200.66 % │
|───────────────────|─────────|─────────────────|───────────|─────────────────────────|
│ undici - request  │       1 │ 1482.31 req/sec │  ± 0.00 % │              + 237.81 % │

@metcoder95
Copy link
Member Author

Nice work @mkaufmaner 🚀
Thanks for the support on the benchmarks. I have a rough idea of what might be missing. I'll go through them later on 👍


test(
'Request should fail if allowH2 is false and server advertises h1 only',
{ skip: isGreaterThanv20 },
Copy link
Member Author

Choose a reason for hiding this comment

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

It seems the behaviour changed between v18 and v20. On v18 we receive a 403 while on v20 now it throws that the initial handshake (the ALPN negotiation step) failed before upgrading to TLS

@KhafraDev
Copy link
Member

           compare: ===
          at:
            line: 126
            column: 5
            file: test/fetch/http2.js
            type: Test
          stack: |
            Test.<anonymous> (test/fetch/http2.js:126:5)
          source: "  t.equal(responseBody, 'hello h2!')\r
          
            \  t.equal(Buffer.concat(requestChunks).toString('utf-8'), expectedBody)\r
          
            ----^
          
            })\r
          
            test('Should handle h2 request with body (Blob)', { skip: !Blob }, async t
            => {\n"
          ...
        
        # failed 1 of 8 tests
    not ok 2 - [Fetch] Should handle h2 request with body (stream) # time=47.939ms

https://github.com/nodejs/undici/actions/runs/6022709926/job/16342298970?pr=2061#step:14:13589

@metcoder95
Copy link
Member Author

           compare: ===
          at:
            line: 126
            column: 5
            file: test/fetch/http2.js
            type: Test
          stack: |
            Test.<anonymous> (test/fetch/http2.js:126:5)
          source: "  t.equal(responseBody, 'hello h2!')\r
          
            \  t.equal(Buffer.concat(requestChunks).toString('utf-8'), expectedBody)\r
          
            ----^
          
            })\r
          
            test('Should handle h2 request with body (Blob)', { skip: !Blob }, async t
            => {\n"
          ...
        
        # failed 1 of 8 tests
    not ok 2 - [Fetch] Should handle h2 request with body (stream) # time=47.939ms

nodejs/undici/actions/runs/6022709926/job/16342298970?pr=2061#step:14:13589

Is this still happening? I'm seeing the test green.
Although I faced it several times only when running all the tests in the band, while running the test individually it passed; even through several runs. I tried to simplify its consumption so is less "susceptible" to race conditions but stears just appear sporadically.

@KhafraDev
Copy link
Member

a few tests are still failing, on the most recent ubuntu v20 ci run

@metcoder95
Copy link
Member Author

I was checking it out and for some unknown reason this test on test/fetch/blob-uri.js seems failing:

  t.test('a normal fetch request works', async (t) => {
    const res = await fetch(objectURL)

    t.plan(3)
    t.equal(blobContents, await res.text())
    t.equal(blob.type, res.headers.get('Content-Type'))
    t.equal(`${blob.size}`, res.headers.get('Content-Length'))
  })

I've tried to narrow down the possible cause of the issue but so far couldn't fully determine the problem. While debugging the issue directed me to readAllBytes in lib/fetch/util.js.
This one uses a while loop to iterate over the blob stream until fully consumed; although in two iterations should be fully consumed given its size, it seems that something cuts the processing in the middle and does not allow it to fully finish the last iteration.

async function readAllBytes (reader) {
  const bytes = []
  let byteLength = 0

  while (true) { // Enters the loop, it gets called once
    const { done, value: chunk } = await reader.read() // This is not read at the second iteration

    if (done) { // This is never true as its processing gets cut at the end of the first iteration
      // 1. Call successSteps with bytes.
      return Buffer.concat(bytes, byteLength)
    }

    // 1. If chunk is not a Uint8Array object, call failureSteps
    //    with a TypeError and abort these steps.
    if (!isUint8Array(chunk)) {
      throw new TypeError('Received non-Uint8Array chunk')
    }

    // 2. Append the bytes represented by chunk to bytes.
    bytes.push(chunk)
    byteLength += chunk.length

    // 3. Read-loop given reader, bytes, successSteps, and failureSteps.
  }
}

I'm not sure at what extent this has to do with H2 as only the header parsing was altered 🤔

@KhafraDev
Copy link
Member

it's a node bug, fixed by nodejs/node#48935 which hasn't landed yet

@metcoder95
Copy link
Member Author

Nice, thanks! Wasn't aware of that. Then, waiting for its approval to land 👍

@mcollina
Copy link
Member

mcollina commented Sep 1, 2023

@KhafraDev could we skip that test for now? It won't work in Node 18 for a while anyway.

@KhafraDev
Copy link
Member

It seems to work in node 18, I guess whatever commit broke it never got back ported. I don't love the idea of skipping it completely because it's a very basic test that should work. Plus we would probably also have to disable a bunch of WPTs to get v20 to pass... is there something keeping v20.6.0 from releasing? If there is it's fine to skip them since it'd be unfair to keep this pr in review for weeks while waiting for an unrelated fix

@mcollina
Copy link
Member

mcollina commented Sep 1, 2023

Let's wait then ;)

@metcoder95
Copy link
Member Author

metcoder95 commented Sep 1, 2023

Perfect! SGTM 👍

@metcoder95 metcoder95 mentioned this pull request Sep 2, 2023
7 tasks
@01101sam
Copy link

01101sam commented Sep 2, 2023

tested on prod, works very great 👍🏻
I've uninstalled fetch-h2 and node-fetch and replaced with this PR

@KhafraDev
Copy link
Member

@metcoder95 can u push an empty commit so we can rerun the ci? Blob issue should be fixed now that v20.6.0 landed

@mcollina mcollina merged commit a8a5d0a into nodejs:main Sep 8, 2023
17 of 18 checks passed
@metcoder95 metcoder95 deleted the http2 branch September 8, 2023 13:45
@nickmccurdy nickmccurdy mentioned this pull request Sep 8, 2023
3 tasks
@metcoder95 metcoder95 mentioned this pull request Sep 8, 2023
7 tasks
kodiakhq bot pushed a commit to ascorbic/unpic-img that referenced this pull request Sep 11, 2023
[![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://togithub.com/nodejs/undici)) | [`5.23.0` -> `5.24.0`](https://renovatebot.com/diffs/npm/undici/5.23.0/5.24.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/5.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/5.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.23.0/5.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.23.0/5.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

### [`v5.24.0`](https://togithub.com/nodejs/undici/releases/tag/v5.24.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.23.0...v5.24.0)

#### Notable Changes

-   feat: Add H2 support by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2061

#### What's Changed

-   build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2203
-   better stack trace for body.json by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2215
-   allow http & https websocket urls by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2218
-   build(deps-dev): bump [@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers) from 10.3.0 to 11.1.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2221
-   fix: pass ProxyAgent proxy status code error by [@&#8203;NBNGaming](https://togithub.com/NBNGaming) in [nodejs/undici#2162
-   fix failing test by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2223
-   docs: update MockPool.md intercept method description by [@&#8203;capaj](https://togithub.com/capaj) in [nodejs/undici#2220
-   Update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2226
-   build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2240
-   build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2237
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.0 to 3.9.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2236
-   build(deps): bump actions/checkout from 3.5.3 to 3.6.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2241
-   build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2238
-   fix: aborting request with non-object error by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2243
-   fix: preserve file path when parsing formdata by [@&#8203;jimmywarting](https://togithub.com/jimmywarting) in [nodejs/undici#2245
-   build(deps-dev): bump tsd from 0.28.1 to 0.29.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2246
-   Updated benchmarks by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2250
-   Fix fetch in node v20.6.0 by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2251
-   Maybe fix v20 by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2252
-   feat: Add H2 support by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2061
-   docs: fix tables in README by [@&#8203;regseb](https://togithub.com/regseb) in [nodejs/undici#2254
-   Fix http2 fetch test by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2253

#### New Contributors

-   [@&#8203;NBNGaming](https://togithub.com/NBNGaming) made their first contribution in [nodejs/undici#2162
-   [@&#8203;capaj](https://togithub.com/capaj) made their first contribution in [nodejs/undici#2220
-   [@&#8203;regseb](https://togithub.com/regseb) made their first contribution in [nodejs/undici#2254

**Full Changelog**: nodejs/undici@v5.23.0...v5.24.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 9pm on sunday" (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:eyJjcmVhdGVkSW5WZXIiOiIzNi44My4wIiwidXBkYXRlZEluVmVyIjoiMzYuODMuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
kodiakhq bot pushed a commit to X-oss-byte/Canary-nextjs that referenced this pull request Oct 1, 2023
[![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://togithub.com/nodejs/undici)) | [`5.19.1` -> `5.25.2`](https://renovatebot.com/diffs/npm/undici/5.19.1/5.25.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/5.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/5.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.19.1/5.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.19.1/5.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### ⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the Dependency Dashboard for more information.

---

### Release Notes

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

### [`v5.25.2`](https://togithub.com/nodejs/undici/releases/tag/v5.25.2)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.25.1...v5.25.2)

#### What's Changed

-   Add Khaf to releasers by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2276
-   fix: fix request with readable mode is object by [@&#8203;killagu](https://togithub.com/killagu) in [nodejs/undici#2279
-   fix loading websockets when node is built w/ --without-ssl by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2282

#### New Contributors

-   [@&#8203;killagu](https://togithub.com/killagu) made their first contribution in [nodejs/undici#2279

**Full Changelog**: nodejs/undici@v5.25.1...v5.25.2

### [`v5.25.1`](https://togithub.com/nodejs/undici/releases/tag/v5.25.1)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.25.0...v5.25.1)

#### What's Changed

-   Add publish types script by [@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in [nodejs/undici#2273

**Full Changelog**: nodejs/undici@v5.25.0...v5.25.1

### [`v5.25.0`](https://togithub.com/nodejs/undici/releases/tag/v5.25.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.24.0...v5.25.0)

#### What's Changed

-   fix: h2 without body by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2258
-   ci: remove duplicated runs by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2265
-   improve documentation of timeouts by making the units clear in all places by [@&#8203;mcfedr](https://togithub.com/mcfedr) in [nodejs/undici#2266
-   expose websocket in node bundle by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2217
-   test: fix Fetch/HTTP2 tests by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2263
-   fix undici when node is built with --without-ssl by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2272
-   fix: Fix type definition for Client Interceptors by [@&#8203;ComradeCow](https://togithub.com/ComradeCow) in [nodejs/undici#2269
-   Fix http2 agent by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2275

#### New Contributors

-   [@&#8203;ComradeCow](https://togithub.com/ComradeCow) made their first contribution in [nodejs/undici#2269

**Full Changelog**: nodejs/undici@v5.24.0...v5.25.0

### [`v5.24.0`](https://togithub.com/nodejs/undici/releases/tag/v5.24.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.23.0...v5.24.0)

#### Notable Changes

-   feat: Add H2 support by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2061

#### What's Changed

-   build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2203
-   better stack trace for body.json by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2215
-   allow http & https websocket urls by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2218
-   build(deps-dev): bump [@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers) from 10.3.0 to 11.1.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2221
-   fix: pass ProxyAgent proxy status code error by [@&#8203;NBNGaming](https://togithub.com/NBNGaming) in [nodejs/undici#2162
-   fix failing test by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2223
-   docs: update MockPool.md intercept method description by [@&#8203;capaj](https://togithub.com/capaj) in [nodejs/undici#2220
-   Update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2226
-   build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2240
-   build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2237
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.0 to 3.9.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2236
-   build(deps): bump actions/checkout from 3.5.3 to 3.6.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2241
-   build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2238
-   fix: aborting request with non-object error by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2243
-   fix: preserve file path when parsing formdata by [@&#8203;jimmywarting](https://togithub.com/jimmywarting) in [nodejs/undici#2245
-   build(deps-dev): bump tsd from 0.28.1 to 0.29.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2246
-   Updated benchmarks by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2250
-   Fix fetch in node v20.6.0 by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2251
-   Maybe fix v20 by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2252
-   feat: Add H2 support by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2061
-   docs: fix tables in README by [@&#8203;regseb](https://togithub.com/regseb) in [nodejs/undici#2254
-   Fix http2 fetch test by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2253

#### New Contributors

-   [@&#8203;NBNGaming](https://togithub.com/NBNGaming) made their first contribution in [nodejs/undici#2162
-   [@&#8203;capaj](https://togithub.com/capaj) made their first contribution in [nodejs/undici#2220
-   [@&#8203;regseb](https://togithub.com/regseb) made their first contribution in [nodejs/undici#2254

**Full Changelog**: nodejs/undici@v5.23.0...v5.24.0

### [`v5.23.0`](https://togithub.com/nodejs/undici/releases/tag/v5.23.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.22.1...v5.23.0)

#### What's Changed

-   bump engines to node >= 16 by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2119
-   Revert "bump engines to node >= 16 ([#&#8203;2119](https://togithub.com/nodejs/undici/issues/2119))" by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2121
-   fetch: set referrer properly by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2125
-   fix: support truncated gzip by [@&#8203;jimmywarting](https://togithub.com/jimmywarting) in [nodejs/undici#2126
-   workflow: apply security best practices by [@&#8203;step-security-bot](https://togithub.com/step-security-bot) in [nodejs/undici#2130
-   build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2135
-   build(deps): bump actions/dependency-review-action from 2.5.1 to 3.0.4 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2133
-   build(deps): bump node from 18-alpine to 20-alpine in /build by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2131
-   build(deps): bump pkgjs/action from 0.1.6 to 0.1.7 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2136
-   build(deps): bump actions/checkout from 3.1.0 to 3.5.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2132
-   build(deps-dev): bump jsdom from 21.1.2 to 22.1.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2142
-   build(deps): bump fastify/github-action-merge-dependabot from 3.7.0 to 3.8.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2148
-   fix(pr): use correct pr template file by [@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) in [nodejs/undici#2141
-   Additional WebSocket send tests to cover all payload size categories by [@&#8203;jawj](https://togithub.com/jawj) in [nodejs/undici#2149
-   fix: reverse decompression order of "Content-Encoding" encodings (fixes [#&#8203;2158](https://togithub.com/nodejs/undici/issues/2158)) by [@&#8203;rychkog](https://togithub.com/rychkog) in [nodejs/undici#2159
-   fix: keep running WPTs if a test times out by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2165
-   feat: add build environment info by [@&#8203;mhdawson](https://togithub.com/mhdawson) in [nodejs/undici#2168
-   fix: forward error reason to fetch controller by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2172
-   stricter types for bodymixin.json by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2181
-   chore: Renable autoSelectFamily tests. by [@&#8203;ShogunPanda](https://togithub.com/ShogunPanda) in [nodejs/undici#2180
-   build(deps): bump actions/dependency-review-action from 3.0.4 to 3.0.6 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2147
-   build(deps): bump github/codeql-action from 2.3.2 to 2.20.3 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2185
-   fix: fetch resource timing performance entry names should be strings by [@&#8203;GaryWilber](https://togithub.com/GaryWilber) in [nodejs/undici#2188
-   build(deps): bump actions/checkout from 3.5.2 to 3.5.3 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2176
-   build(deps): bump fastify/github-action-merge-dependabot from 3.8.0 to 3.9.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2177
-   build(deps): bump ossf/scorecard-action from 2.1.3 to 2.2.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2178
-   build(deps): bump step-security/harden-runner from 2.4.0 to 2.4.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2175
-   test: fix `autoselectfamily` on platforms without IPv6 support by [@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in [nodejs/undici#2197
-   fix: make multipart/form-data boundary string more consistent by [@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in [nodejs/undici#2196
-   docs: add proxy agent options docs by [@&#8203;dancastillo](https://togithub.com/dancastillo) in [nodejs/undici#2193
-   build(deps): bump github/codeql-action from 2.20.3 to 2.21.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2205
-   feat: make use of `addAbortListener` where applicable by [@&#8203;atlowChemi](https://togithub.com/atlowChemi) in [nodejs/undici#2195

#### New Contributors

-   [@&#8203;step-security-bot](https://togithub.com/step-security-bot) made their first contribution in [nodejs/undici#2130
-   [@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) made their first contribution in [nodejs/undici#2141
-   [@&#8203;rychkog](https://togithub.com/rychkog) made their first contribution in [nodejs/undici#2159
-   [@&#8203;mhdawson](https://togithub.com/mhdawson) made their first contribution in [nodejs/undici#2168
-   [@&#8203;GaryWilber](https://togithub.com/GaryWilber) made their first contribution in [nodejs/undici#2188
-   [@&#8203;atlowChemi](https://togithub.com/atlowChemi) made their first contribution in [nodejs/undici#2195

**Full Changelog**: nodejs/undici@v5.22.1...v5.23.0

### [`v5.22.1`](https://togithub.com/nodejs/undici/releases/tag/v5.22.1)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.22.0...v5.22.1)

#### What's Changed

-   Cache storage by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2076
-   test: skip content-disposition test in node 18 by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2081
-   Cache storage cleanup by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2082
-   Cache storage fixes by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2083
-   test: improve test coverage for ErrorEvent and MessageEvent by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2085
-   test: remove --experimental-wasm-simd by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2087
-   websocket: add websocketinit by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2088
-   feat(websocket): allow setting custom headers by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2089
-   test: fix tests failing only on node v20 by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2096
-   fix: skip set content-length when FormData value is stream by [@&#8203;fengmk2](https://togithub.com/fengmk2) in [nodejs/undici#2091
-   doc: update outdated command in contributing.md by [@&#8203;jazelly](https://togithub.com/jazelly) in [nodejs/undici#2099
-   cache: fix most failing WPTs by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2100
-   feat: allow build:wasm to auto detect platform by [@&#8203;jazelly](https://togithub.com/jazelly) in [nodejs/undici#2102
-   docs: updated Error documentation (fixes [#&#8203;2090](https://togithub.com/nodejs/undici/issues/2090)) by [@&#8203;titanism](https://togithub.com/titanism) in [nodejs/undici#2092
-   mimesniff: fix many broken tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2103
-   test: fix failing tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2097
-   build(deps): bump github/codeql-action from 2.2.9 to 2.3.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2105
-   fix: more informative error message to tell that the server doesn't match http/1.1 protocol by [@&#8203;Songkeys](https://togithub.com/Songkeys) in [nodejs/undici#2055
-   Fix bug in 16-bit frame length when buffer is a subarray by [@&#8203;jawj](https://togithub.com/jawj) in [nodejs/undici#2106
-   update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2108
-   fix: update error definitions by [@&#8203;dfilatov](https://togithub.com/dfilatov) in [nodejs/undici#2112
-   fix: make assertion a noop by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2111

#### New Contributors

-   [@&#8203;jazelly](https://togithub.com/jazelly) made their first contribution in [nodejs/undici#2099
-   [@&#8203;titanism](https://togithub.com/titanism) made their first contribution in [nodejs/undici#2092
-   [@&#8203;Songkeys](https://togithub.com/Songkeys) made their first contribution in [nodejs/undici#2055
-   [@&#8203;jawj](https://togithub.com/jawj) made their first contribution in [nodejs/undici#2106
-   [@&#8203;dfilatov](https://togithub.com/dfilatov) made their first contribution in [nodejs/undici#2112

**Full Changelog**: nodejs/undici@v5.22.0...v5.22.1

### [`v5.22.0`](https://togithub.com/nodejs/undici/releases/tag/v5.22.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.21.2...v5.22.0)

#### What's Changed

-   build(deps-dev): bump tsd from 0.27.0 to 0.28.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2042
-   build(deps): bump ossf/scorecard-action from 2.1.2 to 2.1.3 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2040
-   fix: handle opaque origin in sameOrigin by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2053
-   test: add typescript import test back by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2054
-   fix: use getMaxListeners when available by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2063
-   feat: allow overriding hwm by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2057
-   fix: there is no sync connector by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2059
-   fix: rename .wasm to -wasm to appease jest by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2064
-   fix: set content-length when using FormData body w/ request by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2066
-   refactor: unify error body handling by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2060
-   fix: close and destroy overlap by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2068
-   remove node 12 from test matrix by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2069
-   fix: don't leak socket if client is destroyed while connecting by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2058
-   fix: flaky leak test by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2070
-   test: update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2073
-   perf: latin1 by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2075
-   fix: mock fetch headers shouldn't be an array  by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2080

**Full Changelog**: nodejs/undici@v5.21.2...v5.22.0

### [`v5.21.2`](https://togithub.com/nodejs/undici/releases/tag/v5.21.2)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.21.1...v5.21.2)

#### What's Changed

-   Content disposition parsing by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2051
-   fix: clear set-cookie headers by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2052

**Full Changelog**: nodejs/undici@v5.21.1...v5.21.2

### [`v5.21.1`](https://togithub.com/nodejs/undici/releases/tag/v5.21.1)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.21.0...v5.21.1)

#### What's Changed

-   Fix typo in kPipelining symbol by [@&#8203;andrewfecenko](https://togithub.com/andrewfecenko) in [nodejs/undici#2005
-   fix(fetch): remove `undefined` error cause by [@&#8203;aduh95](https://togithub.com/aduh95) in [nodejs/undici#2006
-   chore(deps-dev): bump tsd from 0.25.0 to 0.27.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2007
-   build(deps-dev): bump wait-on from 6.0.1 to 7.0.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#1820
-   fix(wpt): set global META_TITLE for the runner by [@&#8203;panva](https://togithub.com/panva) in [nodejs/undici#2008
-   fix: issue 2009 by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2013
-   build(deps-dev): bump typescript from 4.9.5 to 5.0.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2018
-   added descriptive error messages for URL parser by [@&#8203;RishabhKodes](https://togithub.com/RishabhKodes) in [nodejs/undici#2016
-   fix(fetch): remove content-length header on redirect by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2022
-   fix(fetch): remove assertion on request.body.source on redirect ([#&#8203;2027](https://togithub.com/nodejs/undici/issues/2027)) by [@&#8203;macno](https://togithub.com/macno) in [nodejs/undici#2028
-   fix: skip failing test in node >= v19.8 by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2034
-   fetch: treat content-encoding as case-insensitive & remove x-deflate by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2037
-   perf(fetch): use string comparisons for url schemes by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2038
-   util: replace util.toUSVString with String.prototype.toWellFormed by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2036
-   build(deps): bump github/codeql-action from 2.2.4 to 2.2.9 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2039
-   build(deps-dev): bump concurrently from 7.6.0 to 8.0.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2041
-   Small performance improvements by [@&#8203;anonrig](https://togithub.com/anonrig) in [nodejs/undici#2044
-   fix(types): Add missing Blob import by [@&#8203;dpogue](https://togithub.com/dpogue) in [nodejs/undici#2047
-   fix: set window option properly by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2048
-   fetch: fix leak by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2049

#### New Contributors

-   [@&#8203;aduh95](https://togithub.com/aduh95) made their first contribution in [nodejs/undici#2006
-   [@&#8203;RishabhKodes](https://togithub.com/RishabhKodes) made their first contribution in [nodejs/undici#2016
-   [@&#8203;macno](https://togithub.com/macno) made their first contribution in [nodejs/undici#2028
-   [@&#8203;dpogue](https://togithub.com/dpogue) made their first contribution in [nodejs/undici#2047

**Full Changelog**: nodejs/undici@v5.21.0...v5.21.1

### [`v5.21.0`](https://togithub.com/nodejs/undici/releases/tag/v5.21.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.20.0...v5.21.0)

##### What's Changed

-   workflow: add scorecard.yml by [@&#8203;RafaelGSS](https://togithub.com/RafaelGSS) in [nodejs/undici#1942
-   ci: timeout CI jobs after 15 minutes by [@&#8203;dominykas](https://togithub.com/dominykas) in [nodejs/undici#1946
-   test(wpt): respect variants by [@&#8203;panva](https://togithub.com/panva) in [nodejs/undici#1951
-   fix: improve isFormDataLike compat by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#1953
-   fix: flaky fetch tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1956
-   test(wpt): include all testing files by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1954
-   fix: remove unneeded fetch tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1960
-   fix: use normal timers for delays < 1s by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#1961
-   perf: optimize happy path by [@&#8203;anonrig](https://togithub.com/anonrig) in [nodejs/undici#1955
-   fix: 🐛 add URL upstream variations in BalancedPool types by [@&#8203;jimmy-guzman](https://togithub.com/jimmy-guzman) in [nodejs/undici#1966
-   test(wpt): handle uncaught exceptions by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1965
-   Fix failing wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1967
-   test(wpt): add results to an existing WPT Report by [@&#8203;panva](https://togithub.com/panva) in [nodejs/undici#1944
-   fix: strengthen isStream condition checking by [@&#8203;debadree25](https://togithub.com/debadree25) in [nodejs/undici#1969
-   fix: implement basic policy container by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1970
-   TypeScript type fixes, for [#&#8203;1949](https://togithub.com/nodejs/undici/issues/1949) by [@&#8203;joshxyzhimself](https://togithub.com/joshxyzhimself) in [nodejs/undici#1968
-   websocket: separate connection logic from websocket by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1973
-   README: h3 not showing ### as a header by [@&#8203;hilleer](https://togithub.com/hilleer) in [nodejs/undici#1975
-   wptrunner: expose gc by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1974
-   perf: cork socket before writing by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#1982
-   fix: fast timers and event loop lag by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#1977
-   fix: correctly calculate resource timing duration by [@&#8203;amilajack](https://togithub.com/amilajack) in [nodejs/undici#1988
-   wpt: update tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1984
-   fix: undici stream throwOnError by [@&#8203;dancastillo](https://togithub.com/dancastillo) in [nodejs/undici#1995
-   fix: remove unnecessary WeakRef by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2000
-   Fix: websocket.d.ts - error TS2304: Cannot find name 'MessagePort' by [@&#8203;ZaBlazzingZephyrus](https://togithub.com/ZaBlazzingZephyrus) in [nodejs/undici#1997
-   feat: add abort signal to body.dump() by [@&#8203;debadree25](https://togithub.com/debadree25) in [nodejs/undici#1993
-   fix(fetch): third party abortcontrollers throwing errors by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2002
-   Improve ProxyAgent example with autentication by [@&#8203;egmen](https://togithub.com/egmen) in [nodejs/undici#2004
-   Add clientFactory option to ProxyAgent by [@&#8203;andrewfecenko](https://togithub.com/andrewfecenko) in [nodejs/undici#2003

##### New Contributors

-   [@&#8203;jimmy-guzman](https://togithub.com/jimmy-guzman) made their first contribution in [nodejs/undici#1966
-   [@&#8203;hilleer](https://togithub.com/hilleer) made their first contribution in [nodejs/undici#1975
-   [@&#8203;amilajack](https://togithub.com/amilajack) made their first contribution in [nodejs/undici#1988
-   [@&#8203;ZaBlazzingZephyrus](https://togithub.com/ZaBlazzingZephyrus) made their first contribution in [nodejs/undici#1997
-   [@&#8203;egmen](https://togithub.com/egmen) made their first contribution in [nodejs/undici#2004
-   [@&#8203;andrewfecenko](https://togithub.com/andrewfecenko) made their first contribution in [nodejs/undici#2003

**Full Changelog**: nodejs/undici@v5.20.0...v5.21.0

### [`v5.20.0`](https://togithub.com/nodejs/undici/releases/tag/v5.20.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.19.1...v5.20.0)

#### What's Changed

-   perf: improve cookie parsing performance by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1931
-   fix: disable websocket wpts in ci :( by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1932
-   fix: Allow “undefined“ as value in headers by [@&#8203;pan93412](https://togithub.com/pan93412) in [nodejs/undici#1929
-   feat: Support autoSelectFamily when connecting. by [@&#8203;ShogunPanda](https://togithub.com/ShogunPanda) in [nodejs/undici#1914
-   fix: copy cookies when cloning haders by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1936
-   test: more logs in wpt runner by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#1933
-   feat: change headersTimeout and bodyTimeout to 300s by [@&#8203;kyrylkov](https://togithub.com/kyrylkov) in [nodejs/undici#1937

**Full Changelog**: nodejs/undici@v5.19.1...v5.20.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 pushed a commit to X-oss-byte/Nextjs that referenced this pull request Oct 6, 2023
[![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://togithub.com/nodejs/undici)) | [`5.22.0` -> `5.25.4`](https://renovatebot.com/diffs/npm/undici/5.22.0/5.25.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/5.25.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/5.25.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.22.0/5.25.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.22.0/5.25.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

### [`v5.25.4`](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

### [`v5.25.3`](https://togithub.com/nodejs/undici/releases/tag/v5.25.3)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.25.2...v5.25.3)

#### What's Changed

-   perf: improve parse-url implementation by [@&#8203;anonrig](https://togithub.com/anonrig) in [nodejs/undici#2286
-   test: enable websockets inclusion in WPTReport by [@&#8203;panva](https://togithub.com/panva) in [nodejs/undici#2284
-   remove npm run test from pre-commit hook by [@&#8203;dancastillo](https://togithub.com/dancastillo) in [nodejs/undici#2296
-   perf: use [@&#8203;fastify/busboy](https://togithub.com/fastify/busboy) by [@&#8203;gurgunday](https://togithub.com/gurgunday) in [nodejs/undici#2211
-   Disable finalizationregistry if node code cov by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2298

#### New Contributors

-   [@&#8203;gurgunday](https://togithub.com/gurgunday) made their first contribution in [nodejs/undici#2211

**Full Changelog**: nodejs/undici@v5.25.2...v5.25.3

### [`v5.25.2`](https://togithub.com/nodejs/undici/releases/tag/v5.25.2)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.25.1...v5.25.2)

#### What's Changed

-   Add Khaf to releasers by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2276
-   fix: fix request with readable mode is object by [@&#8203;killagu](https://togithub.com/killagu) in [nodejs/undici#2279
-   fix loading websockets when node is built w/ --without-ssl by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2282

#### New Contributors

-   [@&#8203;killagu](https://togithub.com/killagu) made their first contribution in [nodejs/undici#2279

**Full Changelog**: nodejs/undici@v5.25.1...v5.25.2

### [`v5.25.1`](https://togithub.com/nodejs/undici/releases/tag/v5.25.1)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.25.0...v5.25.1)

#### What's Changed

-   Add publish types script by [@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in [nodejs/undici#2273

**Full Changelog**: nodejs/undici@v5.25.0...v5.25.1

### [`v5.25.0`](https://togithub.com/nodejs/undici/releases/tag/v5.25.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.24.0...v5.25.0)

#### What's Changed

-   fix: h2 without body by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2258
-   ci: remove duplicated runs by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2265
-   improve documentation of timeouts by making the units clear in all places by [@&#8203;mcfedr](https://togithub.com/mcfedr) in [nodejs/undici#2266
-   expose websocket in node bundle by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2217
-   test: fix Fetch/HTTP2 tests by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2263
-   fix undici when node is built with --without-ssl by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2272
-   fix: Fix type definition for Client Interceptors by [@&#8203;ComradeCow](https://togithub.com/ComradeCow) in [nodejs/undici#2269
-   Fix http2 agent by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2275

#### New Contributors

-   [@&#8203;ComradeCow](https://togithub.com/ComradeCow) made their first contribution in [nodejs/undici#2269

**Full Changelog**: nodejs/undici@v5.24.0...v5.25.0

### [`v5.24.0`](https://togithub.com/nodejs/undici/releases/tag/v5.24.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.23.0...v5.24.0)

#### Notable Changes

-   feat: Add H2 support by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2061

#### What's Changed

-   build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2203
-   better stack trace for body.json by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2215
-   allow http & https websocket urls by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2218
-   build(deps-dev): bump [@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers) from 10.3.0 to 11.1.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2221
-   fix: pass ProxyAgent proxy status code error by [@&#8203;NBNGaming](https://togithub.com/NBNGaming) in [nodejs/undici#2162
-   fix failing test by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2223
-   docs: update MockPool.md intercept method description by [@&#8203;capaj](https://togithub.com/capaj) in [nodejs/undici#2220
-   Update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2226
-   build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2240
-   build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2237
-   build(deps): bump fastify/github-action-merge-dependabot from 3.9.0 to 3.9.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2236
-   build(deps): bump actions/checkout from 3.5.3 to 3.6.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2241
-   build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2238
-   fix: aborting request with non-object error by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2243
-   fix: preserve file path when parsing formdata by [@&#8203;jimmywarting](https://togithub.com/jimmywarting) in [nodejs/undici#2245
-   build(deps-dev): bump tsd from 0.28.1 to 0.29.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2246
-   Updated benchmarks by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2250
-   Fix fetch in node v20.6.0 by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2251
-   Maybe fix v20 by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2252
-   feat: Add H2 support by [@&#8203;metcoder95](https://togithub.com/metcoder95) in [nodejs/undici#2061
-   docs: fix tables in README by [@&#8203;regseb](https://togithub.com/regseb) in [nodejs/undici#2254
-   Fix http2 fetch test by [@&#8203;mcollina](https://togithub.com/mcollina) in [nodejs/undici#2253

#### New Contributors

-   [@&#8203;NBNGaming](https://togithub.com/NBNGaming) made their first contribution in [nodejs/undici#2162
-   [@&#8203;capaj](https://togithub.com/capaj) made their first contribution in [nodejs/undici#2220
-   [@&#8203;regseb](https://togithub.com/regseb) made their first contribution in [nodejs/undici#2254

**Full Changelog**: nodejs/undici@v5.23.0...v5.24.0

### [`v5.23.0`](https://togithub.com/nodejs/undici/releases/tag/v5.23.0)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.22.1...v5.23.0)

#### What's Changed

-   bump engines to node >= 16 by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2119
-   Revert "bump engines to node >= 16 ([#&#8203;2119](https://togithub.com/nodejs/undici/issues/2119))" by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2121
-   fetch: set referrer properly by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2125
-   fix: support truncated gzip by [@&#8203;jimmywarting](https://togithub.com/jimmywarting) in [nodejs/undici#2126
-   workflow: apply security best practices by [@&#8203;step-security-bot](https://togithub.com/step-security-bot) in [nodejs/undici#2130
-   build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2135
-   build(deps): bump actions/dependency-review-action from 2.5.1 to 3.0.4 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2133
-   build(deps): bump node from 18-alpine to 20-alpine in /build by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2131
-   build(deps): bump pkgjs/action from 0.1.6 to 0.1.7 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2136
-   build(deps): bump actions/checkout from 3.1.0 to 3.5.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2132
-   build(deps-dev): bump jsdom from 21.1.2 to 22.1.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2142
-   build(deps): bump fastify/github-action-merge-dependabot from 3.7.0 to 3.8.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2148
-   fix(pr): use correct pr template file by [@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) in [nodejs/undici#2141
-   Additional WebSocket send tests to cover all payload size categories by [@&#8203;jawj](https://togithub.com/jawj) in [nodejs/undici#2149
-   fix: reverse decompression order of "Content-Encoding" encodings (fixes [#&#8203;2158](https://togithub.com/nodejs/undici/issues/2158)) by [@&#8203;rychkog](https://togithub.com/rychkog) in [nodejs/undici#2159
-   fix: keep running WPTs if a test times out by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2165
-   feat: add build environment info by [@&#8203;mhdawson](https://togithub.com/mhdawson) in [nodejs/undici#2168
-   fix: forward error reason to fetch controller by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2172
-   stricter types for bodymixin.json by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2181
-   chore: Renable autoSelectFamily tests. by [@&#8203;ShogunPanda](https://togithub.com/ShogunPanda) in [nodejs/undici#2180
-   build(deps): bump actions/dependency-review-action from 3.0.4 to 3.0.6 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2147
-   build(deps): bump github/codeql-action from 2.3.2 to 2.20.3 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2185
-   fix: fetch resource timing performance entry names should be strings by [@&#8203;GaryWilber](https://togithub.com/GaryWilber) in [nodejs/undici#2188
-   build(deps): bump actions/checkout from 3.5.2 to 3.5.3 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2176
-   build(deps): bump fastify/github-action-merge-dependabot from 3.8.0 to 3.9.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2177
-   build(deps): bump ossf/scorecard-action from 2.1.3 to 2.2.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2178
-   build(deps): bump step-security/harden-runner from 2.4.0 to 2.4.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2175
-   test: fix `autoselectfamily` on platforms without IPv6 support by [@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in [nodejs/undici#2197
-   fix: make multipart/form-data boundary string more consistent by [@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in [nodejs/undici#2196
-   docs: add proxy agent options docs by [@&#8203;dancastillo](https://togithub.com/dancastillo) in [nodejs/undici#2193
-   build(deps): bump github/codeql-action from 2.20.3 to 2.21.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2205
-   feat: make use of `addAbortListener` where applicable by [@&#8203;atlowChemi](https://togithub.com/atlowChemi) in [nodejs/undici#2195

#### New Contributors

-   [@&#8203;step-security-bot](https://togithub.com/step-security-bot) made their first contribution in [nodejs/undici#2130
-   [@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) made their first contribution in [nodejs/undici#2141
-   [@&#8203;rychkog](https://togithub.com/rychkog) made their first contribution in [nodejs/undici#2159
-   [@&#8203;mhdawson](https://togithub.com/mhdawson) made their first contribution in [nodejs/undici#2168
-   [@&#8203;GaryWilber](https://togithub.com/GaryWilber) made their first contribution in [nodejs/undici#2188
-   [@&#8203;atlowChemi](https://togithub.com/atlowChemi) made their first contribution in [nodejs/undici#2195

**Full Changelog**: nodejs/undici@v5.22.1...v5.23.0

### [`v5.22.1`](https://togithub.com/nodejs/undici/releases/tag/v5.22.1)

[Compare Source](https://togithub.com/nodejs/undici/compare/v5.22.0...v5.22.1)

#### What's Changed

-   Cache storage by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2076
-   test: skip content-disposition test in node 18 by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2081
-   Cache storage cleanup by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2082
-   Cache storage fixes by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2083
-   test: improve test coverage for ErrorEvent and MessageEvent by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2085
-   test: remove --experimental-wasm-simd by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2087
-   websocket: add websocketinit by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2088
-   feat(websocket): allow setting custom headers by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2089
-   test: fix tests failing only on node v20 by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2096
-   fix: skip set content-length when FormData value is stream by [@&#8203;fengmk2](https://togithub.com/fengmk2) in [nodejs/undici#2091
-   doc: update outdated command in contributing.md by [@&#8203;jazelly](https://togithub.com/jazelly) in [nodejs/undici#2099
-   cache: fix most failing WPTs by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2100
-   feat: allow build:wasm to auto detect platform by [@&#8203;jazelly](https://togithub.com/jazelly) in [nodejs/undici#2102
-   docs: updated Error documentation (fixes [#&#8203;2090](https://togithub.com/nodejs/undici/issues/2090)) by [@&#8203;titanism](https://togithub.com/titanism) in [nodejs/undici#2092
-   mimesniff: fix many broken tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2103
-   test: fix failing tests by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2097
-   build(deps): bump github/codeql-action from 2.2.9 to 2.3.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in [nodejs/undici#2105
-   fix: more informative error message to tell that the server doesn't match http/1.1 protocol by [@&#8203;Songkeys](https://togithub.com/Songkeys) in [nodejs/undici#2055
-   Fix bug in 16-bit frame length when buffer is a subarray by [@&#8203;jawj](https://togithub.com/jawj) in [nodejs/undici#2106
-   update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in [nodejs/undici#2108
-   fix: update error definitions by [@&#8203;dfilatov](https://togithub.com/dfilatov) in [nodejs/undici#2112
-   fix: make assertion a noop by [@&#8203;ronag](https://togithub.com/ronag) in [nodejs/undici#2111

#### New Contributors

-   [@&#8203;jazelly](https://togithub.com/jazelly) made their first contribution in [nodejs/undici#2099
-   [@&#8203;titanism](https://togithub.com/titanism) made their first contribution in [nodejs/undici#2092
-   [@&#8203;Songkeys](https://togithub.com/Songkeys) made their first contribution in [nodejs/undici#2055
-   [@&#8203;jawj](https://togithub.com/jawj) made their first contribution in [nodejs/undici#2106
-   [@&#8203;dfilatov](https://togithub.com/dfilatov) made their first contribution in [nodejs/undici#2112

**Full Changelog**: nodejs/undici@v5.22.0...v5.22.1

</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).
kfcampbell pushed a commit to octokit/rest.js that referenced this pull request Oct 16, 2023
[![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://togithub.com/nodejs/undici)) | [`5.22.1` ->
`5.26.2`](https://renovatebot.com/diffs/npm/undici/5.22.1/5.26.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/undici/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.22.1/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.22.1/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

### GitHub Vulnerability Alerts

####
[CVE-2023-45143](https://togithub.com/nodejs/undici/security/advisories/GHSA-q768-x9m6-m9qp)

### Impact

Undici clears Authorization headers on cross-origin redirects, but does
not clear `Cookie` headers. By design, `cookie` headers are [forbidden
request
headers](https://fetch.spec.whatwg.org/#forbidden-request-header),
disallowing them to be set in `RequestInit.headers` in browser
environments. Since Undici handles headers more liberally than the
specification, there was a disconnect from the assumptions the spec
made, and Undici's implementation of fetch.

As such this may lead to accidental leakage of cookie to a 3rd-party
site or a malicious attacker who can control the redirection target (ie.
an open redirector) to leak the cookie to the 3rd party site.

### Patches

This was patched in
[e041de359221ebeae04c469e8aff4145764e6d76](https://togithub.com/nodejs/undici/commit/e041de359221ebeae04c469e8aff4145764e6d76),
which is included in version 5.26.2.

---

### Release Notes

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

### [`v5.26.2`](https://togithub.com/nodejs/undici/releases/tag/v5.26.2)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.26.1...v5.26.2)

Security Release, CVE-2023-45143.

### [`v5.26.1`](https://togithub.com/nodejs/undici/releases/tag/v5.26.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.26.0...v5.26.1)

#### What's Changed

- Fix publish undici-types once and for all! by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2338
- Fix node detection omfg by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2341

**Full Changelog**:
nodejs/undici@v5.26.0...v5.26.1

### [`v5.26.0`](https://togithub.com/nodejs/undici/releases/tag/v5.26.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/5e654f351a9a813fed3e9feff4388b5c4fbda787...v5.26.0)

#### What's Changed

- use npm install instead of npm ci by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2309
- change default header to `node` by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2310
- chore: change order of the pseudo-headers by
[@&#8203;kyrylodolynskyi](https://togithub.com/kyrylodolynskyi) in
[nodejs/undici#2308
- fix: Agent.Options.factory should accept URL object or string as
parameter by [@&#8203;nicole0707](https://togithub.com/nicole0707) in
[nodejs/undici#2295
- build(deps-dev): bump sinon from 15.2.0 to 16.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2312
- test: handle npm ignore-scripts settings by
[@&#8203;panva](https://togithub.com/panva) in
[nodejs/undici#2313
- feat: respect `--max-http-header-size` Node.js flag by
[@&#8203;balazsorban44](https://togithub.com/balazsorban44) in
[nodejs/undici#2234
- fix([#&#8203;2311](https://togithub.com/nodejs/undici/issues/2311)):
End stream after body sent by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2314
- disallow setting host header in fetch by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2322
- \[StepSecurity] ci: Harden GitHub Actions by
[@&#8203;step-security-bot](https://togithub.com/step-security-bot) in
[nodejs/undici#2325
- fix fetch with coverage enabled by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2330
- Fix stuck when using http2 POST Buffer by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2336
- fix: 🏷️ add allowH2 to BuildOptions by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2334
- fix: 🐛 fix process http2 header by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2332

#### New Contributors

- [@&#8203;kyrylodolynskyi](https://togithub.com/kyrylodolynskyi) made
their first contribution in
[nodejs/undici#2308
- [@&#8203;nicole0707](https://togithub.com/nicole0707) made their first
contribution in
[nodejs/undici#2295
- [@&#8203;balazsorban44](https://togithub.com/balazsorban44) made their
first contribution in
[nodejs/undici#2234
- [@&#8203;binsee](https://togithub.com/binsee) made their first
contribution in
[nodejs/undici#2336

**Full Changelog**:
nodejs/undici@v5.23.4...v5.26.0

###
[`v5.25.4`](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

### [`v5.25.3`](https://togithub.com/nodejs/undici/releases/tag/v5.25.3)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.2...v5.25.3)

#### What's Changed

- perf: improve parse-url implementation by
[@&#8203;anonrig](https://togithub.com/anonrig) in
[nodejs/undici#2286
- test: enable websockets inclusion in WPTReport by
[@&#8203;panva](https://togithub.com/panva) in
[nodejs/undici#2284
- remove npm run test from pre-commit hook by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[nodejs/undici#2296
- perf: use
[@&#8203;fastify/busboy](https://togithub.com/fastify/busboy) by
[@&#8203;gurgunday](https://togithub.com/gurgunday) in
[nodejs/undici#2211
- Disable finalizationregistry if node code cov by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2298

#### New Contributors

- [@&#8203;gurgunday](https://togithub.com/gurgunday) made their first
contribution in
[nodejs/undici#2211

**Full Changelog**:
nodejs/undici@v5.25.2...v5.25.3

### [`v5.25.2`](https://togithub.com/nodejs/undici/releases/tag/v5.25.2)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.1...v5.25.2)

#### What's Changed

- Add Khaf to releasers by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2276
- fix: fix request with readable mode is object by
[@&#8203;killagu](https://togithub.com/killagu) in
[nodejs/undici#2279
- fix loading websockets when node is built w/ --without-ssl by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2282

#### New Contributors

- [@&#8203;killagu](https://togithub.com/killagu) made their first
contribution in
[nodejs/undici#2279

**Full Changelog**:
nodejs/undici@v5.25.1...v5.25.2

### [`v5.25.1`](https://togithub.com/nodejs/undici/releases/tag/v5.25.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.0...v5.25.1)

#### What's Changed

- Add publish types script by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2273

**Full Changelog**:
nodejs/undici@v5.25.0...v5.25.1

### [`v5.25.0`](https://togithub.com/nodejs/undici/releases/tag/v5.25.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.24.0...v5.25.0)

#### What's Changed

- fix: h2 without body by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2258
- ci: remove duplicated runs by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2265
- improve documentation of timeouts by making the units clear in all
places by [@&#8203;mcfedr](https://togithub.com/mcfedr) in
[nodejs/undici#2266
- expose websocket in node bundle by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2217
- test: fix Fetch/HTTP2 tests by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2263
- fix undici when node is built with --without-ssl by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2272
- fix: Fix type definition for Client Interceptors by
[@&#8203;ComradeCow](https://togithub.com/ComradeCow) in
[nodejs/undici#2269
- Fix http2 agent by [@&#8203;mcollina](https://togithub.com/mcollina)
in
[nodejs/undici#2275

#### New Contributors

- [@&#8203;ComradeCow](https://togithub.com/ComradeCow) made their first
contribution in
[nodejs/undici#2269

**Full Changelog**:
nodejs/undici@v5.24.0...v5.25.0

### [`v5.24.0`](https://togithub.com/nodejs/undici/releases/tag/v5.24.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.23.0...v5.24.0)

#### Notable Changes

- feat: Add H2 support by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2061

#### What's Changed

- build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2203
- better stack trace for body.json by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2215
- allow http & https websocket urls by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2218
- build(deps-dev): bump
[@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers)
from 10.3.0 to 11.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2221
- fix: pass ProxyAgent proxy status code error by
[@&#8203;NBNGaming](https://togithub.com/NBNGaming) in
[nodejs/undici#2162
- fix failing test by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2223
- docs: update MockPool.md intercept method description by
[@&#8203;capaj](https://togithub.com/capaj) in
[nodejs/undici#2220
- Update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2226
- build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2240
- build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2237
- build(deps): bump fastify/github-action-merge-dependabot from 3.9.0 to
3.9.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2236
- build(deps): bump actions/checkout from 3.5.3 to 3.6.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2241
- build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2238
- fix: aborting request with non-object error by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2243
- fix: preserve file path when parsing formdata by
[@&#8203;jimmywarting](https://togithub.com/jimmywarting) in
[nodejs/undici#2245
- build(deps-dev): bump tsd from 0.28.1 to 0.29.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2246
- Updated benchmarks by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2250
- Fix fetch in node v20.6.0 by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2251
- Maybe fix v20 by [@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2252
- feat: Add H2 support by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2061
- docs: fix tables in README by
[@&#8203;regseb](https://togithub.com/regseb) in
[nodejs/undici#2254
- Fix http2 fetch test by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2253

#### New Contributors

- [@&#8203;NBNGaming](https://togithub.com/NBNGaming) made their first
contribution in
[nodejs/undici#2162
- [@&#8203;capaj](https://togithub.com/capaj) made their first
contribution in
[nodejs/undici#2220
- [@&#8203;regseb](https://togithub.com/regseb) made their first
contribution in
[nodejs/undici#2254

**Full Changelog**:
nodejs/undici@v5.23.0...v5.24.0

### [`v5.23.0`](https://togithub.com/nodejs/undici/releases/tag/v5.23.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.22.1...v5.23.0)

#### What's Changed

- bump engines to node >= 16 by
[@&#8203;ronag](https://togithub.com/ronag) in
[nodejs/undici#2119
- Revert "bump engines to node >= 16
([#&#8203;2119](https://togithub.com/nodejs/undici/issues/2119))" by
[@&#8203;ronag](https://togithub.com/ronag) in
[nodejs/undici#2121
- fetch: set referrer properly by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2125
- fix: support truncated gzip by
[@&#8203;jimmywarting](https://togithub.com/jimmywarting) in
[nodejs/undici#2126
- workflow: apply security best practices by
[@&#8203;step-security-bot](https://togithub.com/step-security-bot) in
[nodejs/undici#2130
- build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2135
- build(deps): bump actions/dependency-review-action from 2.5.1 to 3.0.4
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2133
- build(deps): bump node from 18-alpine to 20-alpine in /build by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2131
- build(deps): bump pkgjs/action from 0.1.6 to 0.1.7 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2136
- build(deps): bump actions/checkout from 3.1.0 to 3.5.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2132
- build(deps-dev): bump jsdom from 21.1.2 to 22.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2142
- build(deps): bump fastify/github-action-merge-dependabot from 3.7.0 to
3.8.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2148
- fix(pr): use correct pr template file by
[@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) in
[nodejs/undici#2141
- Additional WebSocket send tests to cover all payload size categories
by [@&#8203;jawj](https://togithub.com/jawj) in
[nodejs/undici#2149
- fix: reverse decompression order of "Content-Encoding" encodings
(fixes [#&#8203;2158](https://togithub.com/nodejs/undici/issues/2158))
by [@&#8203;rychkog](https://togithub.com/rychkog) in
[nodejs/undici#2159
- fix: keep running WPTs if a test times out by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2165
- feat: add build environment info by
[@&#8203;mhdawson](https://togithub.com/mhdawson) in
[nodejs/undici#2168
- fix: forward error reason to fetch controller by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2172
- stricter types for bodymixin.json by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2181
- chore: Renable autoSelectFamily tests. by
[@&#8203;ShogunPanda](https://togithub.com/ShogunPanda) in
[nodejs/undici#2180
- build(deps): bump actions/dependency-review-action from 3.0.4 to 3.0.6
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2147
- build(deps): bump github/codeql-action from 2.3.2 to 2.20.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2185
- fix: fetch resource timing performance entry names should be strings
by [@&#8203;GaryWilber](https://togithub.com/GaryWilber) in
[nodejs/undici#2188
- build(deps): bump actions/checkout from 3.5.2 to 3.5.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2176
- build(deps): bump fastify/github-action-merge-dependabot from 3.8.0 to
3.9.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2177
- build(deps): bump ossf/scorecard-action from 2.1.3 to 2.2.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2178
- build(deps): bump step-security/harden-runner from 2.4.0 to 2.4.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2175
- test: fix `autoselectfamily` on platforms without IPv6 support by
[@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in
[nodejs/undici#2197
- fix: make multipart/form-data boundary string more consistent by
[@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in
[nodejs/undici#2196
- docs: add proxy agent options docs by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[nodejs/undici#2193
- build(deps): bump github/codeql-action from 2.20.3 to 2.21.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2205
- feat: make use of `addAbortListener` where applicable by
[@&#8203;atlowChemi](https://togithub.com/atlowChemi) in
[nodejs/undici#2195

#### New Contributors

- [@&#8203;step-security-bot](https://togithub.com/step-security-bot)
made their first contribution in
[nodejs/undici#2130
- [@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) made
their first contribution in
[nodejs/undici#2141
- [@&#8203;rychkog](https://togithub.com/rychkog) made their first
contribution in
[nodejs/undici#2159
- [@&#8203;mhdawson](https://togithub.com/mhdawson) made their first
contribution in
[nodejs/undici#2168
- [@&#8203;GaryWilber](https://togithub.com/GaryWilber) made their first
contribution in
[nodejs/undici#2188
- [@&#8203;atlowChemi](https://togithub.com/atlowChemi) made their first
contribution in
[nodejs/undici#2195

**Full Changelog**:
nodejs/undici@v5.22.1...v5.23.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 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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to specfy/specfy that referenced this pull request Oct 16, 2023
[![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://togithub.com/nodejs/undici)) | [`5.23.0` ->
`5.26.2`](https://renovatebot.com/diffs/npm/undici/5.23.0/5.26.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/undici/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.23.0/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.23.0/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

### GitHub Vulnerability Alerts

####
[CVE-2023-45143](https://togithub.com/nodejs/undici/security/advisories/GHSA-q768-x9m6-m9qp)

### Impact

Undici clears Authorization headers on cross-origin redirects, but does
not clear `Cookie` headers. By design, `cookie` headers are [forbidden
request
headers](https://fetch.spec.whatwg.org/#forbidden-request-header),
disallowing them to be set in `RequestInit.headers` in browser
environments. Since Undici handles headers more liberally than the
specification, there was a disconnect from the assumptions the spec
made, and Undici's implementation of fetch.

As such this may lead to accidental leakage of cookie to a 3rd-party
site or a malicious attacker who can control the redirection target (ie.
an open redirector) to leak the cookie to the 3rd party site.

### Patches

This was patched in
[e041de359221ebeae04c469e8aff4145764e6d76](https://togithub.com/nodejs/undici/commit/e041de359221ebeae04c469e8aff4145764e6d76),
which is included in version 5.26.2.

---

### Release Notes

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

### [`v5.26.2`](https://togithub.com/nodejs/undici/releases/tag/v5.26.2)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.26.1...v5.26.2)

Security Release, CVE-2023-45143.

### [`v5.26.1`](https://togithub.com/nodejs/undici/releases/tag/v5.26.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.26.0...v5.26.1)

#### What's Changed

- Fix publish undici-types once and for all! by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2338
- Fix node detection omfg by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2341

**Full Changelog**:
nodejs/undici@v5.26.0...v5.26.1

### [`v5.26.0`](https://togithub.com/nodejs/undici/releases/tag/v5.26.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/5e654f351a9a813fed3e9feff4388b5c4fbda787...v5.26.0)

#### What's Changed

- use npm install instead of npm ci by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2309
- change default header to `node` by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2310
- chore: change order of the pseudo-headers by
[@&#8203;kyrylodolynskyi](https://togithub.com/kyrylodolynskyi) in
[nodejs/undici#2308
- fix: Agent.Options.factory should accept URL object or string as
parameter by [@&#8203;nicole0707](https://togithub.com/nicole0707) in
[nodejs/undici#2295
- build(deps-dev): bump sinon from 15.2.0 to 16.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2312
- test: handle npm ignore-scripts settings by
[@&#8203;panva](https://togithub.com/panva) in
[nodejs/undici#2313
- feat: respect `--max-http-header-size` Node.js flag by
[@&#8203;balazsorban44](https://togithub.com/balazsorban44) in
[nodejs/undici#2234
- fix([#&#8203;2311](https://togithub.com/nodejs/undici/issues/2311)):
End stream after body sent by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2314
- disallow setting host header in fetch by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2322
- \[StepSecurity] ci: Harden GitHub Actions by
[@&#8203;step-security-bot](https://togithub.com/step-security-bot) in
[nodejs/undici#2325
- fix fetch with coverage enabled by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2330
- Fix stuck when using http2 POST Buffer by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2336
- fix: 🏷️ add allowH2 to BuildOptions by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2334
- fix: 🐛 fix process http2 header by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2332

#### New Contributors

- [@&#8203;kyrylodolynskyi](https://togithub.com/kyrylodolynskyi) made
their first contribution in
[nodejs/undici#2308
- [@&#8203;nicole0707](https://togithub.com/nicole0707) made their first
contribution in
[nodejs/undici#2295
- [@&#8203;balazsorban44](https://togithub.com/balazsorban44) made their
first contribution in
[nodejs/undici#2234
- [@&#8203;binsee](https://togithub.com/binsee) made their first
contribution in
[nodejs/undici#2336

**Full Changelog**:
nodejs/undici@v5.23.4...v5.26.0

###
[`v5.25.4`](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

### [`v5.25.3`](https://togithub.com/nodejs/undici/releases/tag/v5.25.3)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.2...v5.25.3)

#### What's Changed

- perf: improve parse-url implementation by
[@&#8203;anonrig](https://togithub.com/anonrig) in
[nodejs/undici#2286
- test: enable websockets inclusion in WPTReport by
[@&#8203;panva](https://togithub.com/panva) in
[nodejs/undici#2284
- remove npm run test from pre-commit hook by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[nodejs/undici#2296
- perf: use
[@&#8203;fastify/busboy](https://togithub.com/fastify/busboy) by
[@&#8203;gurgunday](https://togithub.com/gurgunday) in
[nodejs/undici#2211
- Disable finalizationregistry if node code cov by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2298

#### New Contributors

- [@&#8203;gurgunday](https://togithub.com/gurgunday) made their first
contribution in
[nodejs/undici#2211

**Full Changelog**:
nodejs/undici@v5.25.2...v5.25.3

### [`v5.25.2`](https://togithub.com/nodejs/undici/releases/tag/v5.25.2)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.1...v5.25.2)

#### What's Changed

- Add Khaf to releasers by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2276
- fix: fix request with readable mode is object by
[@&#8203;killagu](https://togithub.com/killagu) in
[nodejs/undici#2279
- fix loading websockets when node is built w/ --without-ssl by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2282

#### New Contributors

- [@&#8203;killagu](https://togithub.com/killagu) made their first
contribution in
[nodejs/undici#2279

**Full Changelog**:
nodejs/undici@v5.25.1...v5.25.2

### [`v5.25.1`](https://togithub.com/nodejs/undici/releases/tag/v5.25.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.0...v5.25.1)

#### What's Changed

- Add publish types script by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2273

**Full Changelog**:
nodejs/undici@v5.25.0...v5.25.1

### [`v5.25.0`](https://togithub.com/nodejs/undici/releases/tag/v5.25.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.24.0...v5.25.0)

#### What's Changed

- fix: h2 without body by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2258
- ci: remove duplicated runs by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2265
- improve documentation of timeouts by making the units clear in all
places by [@&#8203;mcfedr](https://togithub.com/mcfedr) in
[nodejs/undici#2266
- expose websocket in node bundle by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2217
- test: fix Fetch/HTTP2 tests by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2263
- fix undici when node is built with --without-ssl by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2272
- fix: Fix type definition for Client Interceptors by
[@&#8203;ComradeCow](https://togithub.com/ComradeCow) in
[nodejs/undici#2269
- Fix http2 agent by [@&#8203;mcollina](https://togithub.com/mcollina)
in
[nodejs/undici#2275

#### New Contributors

- [@&#8203;ComradeCow](https://togithub.com/ComradeCow) made their first
contribution in
[nodejs/undici#2269

**Full Changelog**:
nodejs/undici@v5.24.0...v5.25.0

### [`v5.24.0`](https://togithub.com/nodejs/undici/releases/tag/v5.24.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.23.0...v5.24.0)

#### Notable Changes

- feat: Add H2 support by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2061

#### What's Changed

- build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2203
- better stack trace for body.json by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2215
- allow http & https websocket urls by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2218
- build(deps-dev): bump
[@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers)
from 10.3.0 to 11.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2221
- fix: pass ProxyAgent proxy status code error by
[@&#8203;NBNGaming](https://togithub.com/NBNGaming) in
[nodejs/undici#2162
- fix failing test by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2223
- docs: update MockPool.md intercept method description by
[@&#8203;capaj](https://togithub.com/capaj) in
[nodejs/undici#2220
- Update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2226
- build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2240
- build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2237
- build(deps): bump fastify/github-action-merge-dependabot from 3.9.0 to
3.9.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2236
- build(deps): bump actions/checkout from 3.5.3 to 3.6.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2241
- build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2238
- fix: aborting request with non-object error by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2243
- fix: preserve file path when parsing formdata by
[@&#8203;jimmywarting](https://togithub.com/jimmywarting) in
[nodejs/undici#2245
- build(deps-dev): bump tsd from 0.28.1 to 0.29.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2246
- Updated benchmarks by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2250
- Fix fetch in node v20.6.0 by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2251
- Maybe fix v20 by [@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2252
- feat: Add H2 support by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2061
- docs: fix tables in README by
[@&#8203;regseb](https://togithub.com/regseb) in
[nodejs/undici#2254
- Fix http2 fetch test by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2253

#### New Contributors

- [@&#8203;NBNGaming](https://togithub.com/NBNGaming) made their first
contribution in
[nodejs/undici#2162
- [@&#8203;capaj](https://togithub.com/capaj) made their first
contribution in
[nodejs/undici#2220
- [@&#8203;regseb](https://togithub.com/regseb) made their first
contribution in
[nodejs/undici#2254

**Full Changelog**:
nodejs/undici@v5.23.0...v5.24.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" in timezone Europe/Paris, Automerge
- At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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/specfy/specfy).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMTkuMiIsInRhcmdldEJyYW5jaCI6ImNob3JlL3Jlbm92YXRlQmFzZUJyYW5jaCJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
louis-bompart pushed a commit to coveo/cli that referenced this pull request Jan 16, 2024
…#1402)

[![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://togithub.com/nodejs/undici)) | [`5.22.0` ->
`5.26.2`](https://renovatebot.com/diffs/npm/undici/5.22.0/5.26.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/undici/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/5.22.0/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/5.22.0/5.26.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

### GitHub Vulnerability Alerts

####
[CVE-2023-45143](https://togithub.com/nodejs/undici/security/advisories/GHSA-q768-x9m6-m9qp)

### Impact

Undici clears Authorization headers on cross-origin redirects, but does
not clear `Cookie` headers. By design, `cookie` headers are [forbidden
request
headers](https://fetch.spec.whatwg.org/#forbidden-request-header),
disallowing them to be set in `RequestInit.headers` in browser
environments. Since Undici handles headers more liberally than the
specification, there was a disconnect from the assumptions the spec
made, and Undici's implementation of fetch.

As such this may lead to accidental leakage of cookie to a 3rd-party
site or a malicious attacker who can control the redirection target (ie.
an open redirector) to leak the cookie to the 3rd party site.

### Patches

This was patched in
[e041de359221ebeae04c469e8aff4145764e6d76](https://togithub.com/nodejs/undici/commit/e041de359221ebeae04c469e8aff4145764e6d76),
which is included in version 5.26.2.

---

### Release Notes

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

### [`v5.26.2`](https://togithub.com/nodejs/undici/releases/tag/v5.26.2)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.26.1...v5.26.2)

Security Release, CVE-2023-45143.

### [`v5.26.1`](https://togithub.com/nodejs/undici/releases/tag/v5.26.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.26.0...v5.26.1)

#### What's Changed

- Fix publish undici-types once and for all! by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2338
- Fix node detection omfg by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2341

**Full Changelog**:
nodejs/undici@v5.26.0...v5.26.1

### [`v5.26.0`](https://togithub.com/nodejs/undici/releases/tag/v5.26.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/5e654f351a9a813fed3e9feff4388b5c4fbda787...v5.26.0)

#### What's Changed

- use npm install instead of npm ci by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2309
- change default header to `node` by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2310
- chore: change order of the pseudo-headers by
[@&#8203;kyrylodolynskyi](https://togithub.com/kyrylodolynskyi) in
[nodejs/undici#2308
- fix: Agent.Options.factory should accept URL object or string as
parameter by [@&#8203;nicole0707](https://togithub.com/nicole0707) in
[nodejs/undici#2295
- build(deps-dev): bump sinon from 15.2.0 to 16.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2312
- test: handle npm ignore-scripts settings by
[@&#8203;panva](https://togithub.com/panva) in
[nodejs/undici#2313
- feat: respect `--max-http-header-size` Node.js flag by
[@&#8203;balazsorban44](https://togithub.com/balazsorban44) in
[nodejs/undici#2234
- fix([#&#8203;2311](https://togithub.com/nodejs/undici/issues/2311)):
End stream after body sent by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2314
- disallow setting host header in fetch by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2322
- \[StepSecurity] ci: Harden GitHub Actions by
[@&#8203;step-security-bot](https://togithub.com/step-security-bot) in
[nodejs/undici#2325
- fix fetch with coverage enabled by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2330
- Fix stuck when using http2 POST Buffer by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2336
- fix: 🏷️ add allowH2 to BuildOptions by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2334
- fix: 🐛 fix process http2 header by
[@&#8203;binsee](https://togithub.com/binsee) in
[nodejs/undici#2332

#### New Contributors

- [@&#8203;kyrylodolynskyi](https://togithub.com/kyrylodolynskyi) made
their first contribution in
[nodejs/undici#2308
- [@&#8203;nicole0707](https://togithub.com/nicole0707) made their first
contribution in
[nodejs/undici#2295
- [@&#8203;balazsorban44](https://togithub.com/balazsorban44) made their
first contribution in
[nodejs/undici#2234
- [@&#8203;binsee](https://togithub.com/binsee) made their first
contribution in
[nodejs/undici#2336

**Full Changelog**:
nodejs/undici@v5.23.4...v5.26.0

###
[`v5.25.4`](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.3...5e654f351a9a813fed3e9feff4388b5c4fbda787)

### [`v5.25.3`](https://togithub.com/nodejs/undici/releases/tag/v5.25.3)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.2...v5.25.3)

#### What's Changed

- perf: improve parse-url implementation by
[@&#8203;anonrig](https://togithub.com/anonrig) in
[nodejs/undici#2286
- test: enable websockets inclusion in WPTReport by
[@&#8203;panva](https://togithub.com/panva) in
[nodejs/undici#2284
- remove npm run test from pre-commit hook by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[nodejs/undici#2296
- perf: use
[@&#8203;fastify/busboy](https://togithub.com/fastify/busboy) by
[@&#8203;gurgunday](https://togithub.com/gurgunday) in
[nodejs/undici#2211
- Disable finalizationregistry if node code cov by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2298

#### New Contributors

- [@&#8203;gurgunday](https://togithub.com/gurgunday) made their first
contribution in
[nodejs/undici#2211

**Full Changelog**:
nodejs/undici@v5.25.2...v5.25.3

### [`v5.25.2`](https://togithub.com/nodejs/undici/releases/tag/v5.25.2)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.1...v5.25.2)

#### What's Changed

- Add Khaf to releasers by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2276
- fix: fix request with readable mode is object by
[@&#8203;killagu](https://togithub.com/killagu) in
[nodejs/undici#2279
- fix loading websockets when node is built w/ --without-ssl by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2282

#### New Contributors

- [@&#8203;killagu](https://togithub.com/killagu) made their first
contribution in
[nodejs/undici#2279

**Full Changelog**:
nodejs/undici@v5.25.1...v5.25.2

### [`v5.25.1`](https://togithub.com/nodejs/undici/releases/tag/v5.25.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.25.0...v5.25.1)

#### What's Changed

- Add publish types script by
[@&#8203;Ethan-Arrowood](https://togithub.com/Ethan-Arrowood) in
[nodejs/undici#2273

**Full Changelog**:
nodejs/undici@v5.25.0...v5.25.1

### [`v5.25.0`](https://togithub.com/nodejs/undici/releases/tag/v5.25.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.24.0...v5.25.0)

#### What's Changed

- fix: h2 without body by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2258
- ci: remove duplicated runs by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2265
- improve documentation of timeouts by making the units clear in all
places by [@&#8203;mcfedr](https://togithub.com/mcfedr) in
[nodejs/undici#2266
- expose websocket in node bundle by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2217
- test: fix Fetch/HTTP2 tests by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2263
- fix undici when node is built with --without-ssl by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2272
- fix: Fix type definition for Client Interceptors by
[@&#8203;ComradeCow](https://togithub.com/ComradeCow) in
[nodejs/undici#2269
- Fix http2 agent by [@&#8203;mcollina](https://togithub.com/mcollina)
in
[nodejs/undici#2275

#### New Contributors

- [@&#8203;ComradeCow](https://togithub.com/ComradeCow) made their first
contribution in
[nodejs/undici#2269

**Full Changelog**:
nodejs/undici@v5.24.0...v5.25.0

### [`v5.24.0`](https://togithub.com/nodejs/undici/releases/tag/v5.24.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.23.0...v5.24.0)

#### Notable Changes

- feat: Add H2 support by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2061

#### What's Changed

- build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2203
- better stack trace for body.json by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2215
- allow http & https websocket urls by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2218
- build(deps-dev): bump
[@&#8203;sinonjs/fake-timers](https://togithub.com/sinonjs/fake-timers)
from 10.3.0 to 11.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2221
- fix: pass ProxyAgent proxy status code error by
[@&#8203;NBNGaming](https://togithub.com/NBNGaming) in
[nodejs/undici#2162
- fix failing test by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2223
- docs: update MockPool.md intercept method description by
[@&#8203;capaj](https://togithub.com/capaj) in
[nodejs/undici#2220
- Update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2226
- build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2240
- build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2237
- build(deps): bump fastify/github-action-merge-dependabot from 3.9.0 to
3.9.1 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2236
- build(deps): bump actions/checkout from 3.5.3 to 3.6.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2241
- build(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.8
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2238
- fix: aborting request with non-object error by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2243
- fix: preserve file path when parsing formdata by
[@&#8203;jimmywarting](https://togithub.com/jimmywarting) in
[nodejs/undici#2245
- build(deps-dev): bump tsd from 0.28.1 to 0.29.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2246
- Updated benchmarks by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2250
- Fix fetch in node v20.6.0 by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2251
- Maybe fix v20 by [@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2252
- feat: Add H2 support by
[@&#8203;metcoder95](https://togithub.com/metcoder95) in
[nodejs/undici#2061
- docs: fix tables in README by
[@&#8203;regseb](https://togithub.com/regseb) in
[nodejs/undici#2254
- Fix http2 fetch test by
[@&#8203;mcollina](https://togithub.com/mcollina) in
[nodejs/undici#2253

#### New Contributors

- [@&#8203;NBNGaming](https://togithub.com/NBNGaming) made their first
contribution in
[nodejs/undici#2162
- [@&#8203;capaj](https://togithub.com/capaj) made their first
contribution in
[nodejs/undici#2220
- [@&#8203;regseb](https://togithub.com/regseb) made their first
contribution in
[nodejs/undici#2254

**Full Changelog**:
nodejs/undici@v5.23.0...v5.24.0

### [`v5.23.0`](https://togithub.com/nodejs/undici/releases/tag/v5.23.0)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.22.1...v5.23.0)

#### What's Changed

- bump engines to node >= 16 by
[@&#8203;ronag](https://togithub.com/ronag) in
[nodejs/undici#2119
- Revert "bump engines to node >= 16
([#&#8203;2119](https://togithub.com/nodejs/undici/issues/2119))" by
[@&#8203;ronag](https://togithub.com/ronag) in
[nodejs/undici#2121
- fetch: set referrer properly by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2125
- fix: support truncated gzip by
[@&#8203;jimmywarting](https://togithub.com/jimmywarting) in
[nodejs/undici#2126
- workflow: apply security best practices by
[@&#8203;step-security-bot](https://togithub.com/step-security-bot) in
[nodejs/undici#2130
- build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2135
- build(deps): bump actions/dependency-review-action from 2.5.1 to 3.0.4
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2133
- build(deps): bump node from 18-alpine to 20-alpine in /build by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2131
- build(deps): bump pkgjs/action from 0.1.6 to 0.1.7 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2136
- build(deps): bump actions/checkout from 3.1.0 to 3.5.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2132
- build(deps-dev): bump jsdom from 21.1.2 to 22.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2142
- build(deps): bump fastify/github-action-merge-dependabot from 3.7.0 to
3.8.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2148
- fix(pr): use correct pr template file by
[@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) in
[nodejs/undici#2141
- Additional WebSocket send tests to cover all payload size categories
by [@&#8203;jawj](https://togithub.com/jawj) in
[nodejs/undici#2149
- fix: reverse decompression order of "Content-Encoding" encodings
(fixes [#&#8203;2158](https://togithub.com/nodejs/undici/issues/2158))
by [@&#8203;rychkog](https://togithub.com/rychkog) in
[nodejs/undici#2159
- fix: keep running WPTs if a test times out by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2165
- feat: add build environment info by
[@&#8203;mhdawson](https://togithub.com/mhdawson) in
[nodejs/undici#2168
- fix: forward error reason to fetch controller by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2172
- stricter types for bodymixin.json by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2181
- chore: Renable autoSelectFamily tests. by
[@&#8203;ShogunPanda](https://togithub.com/ShogunPanda) in
[nodejs/undici#2180
- build(deps): bump actions/dependency-review-action from 3.0.4 to 3.0.6
by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2147
- build(deps): bump github/codeql-action from 2.3.2 to 2.20.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2185
- fix: fetch resource timing performance entry names should be strings
by [@&#8203;GaryWilber](https://togithub.com/GaryWilber) in
[nodejs/undici#2188
- build(deps): bump actions/checkout from 3.5.2 to 3.5.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2176
- build(deps): bump fastify/github-action-merge-dependabot from 3.8.0 to
3.9.0 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2177
- build(deps): bump ossf/scorecard-action from 2.1.3 to 2.2.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2178
- build(deps): bump step-security/harden-runner from 2.4.0 to 2.4.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2175
- test: fix `autoselectfamily` on platforms without IPv6 support by
[@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in
[nodejs/undici#2197
- fix: make multipart/form-data boundary string more consistent by
[@&#8203;LiviaMedeiros](https://togithub.com/LiviaMedeiros) in
[nodejs/undici#2196
- docs: add proxy agent options docs by
[@&#8203;dancastillo](https://togithub.com/dancastillo) in
[nodejs/undici#2193
- build(deps): bump github/codeql-action from 2.20.3 to 2.21.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2205
- feat: make use of `addAbortListener` where applicable by
[@&#8203;atlowChemi](https://togithub.com/atlowChemi) in
[nodejs/undici#2195

#### New Contributors

- [@&#8203;step-security-bot](https://togithub.com/step-security-bot)
made their first contribution in
[nodejs/undici#2130
- [@&#8203;AugustinMauroy](https://togithub.com/AugustinMauroy) made
their first contribution in
[nodejs/undici#2141
- [@&#8203;rychkog](https://togithub.com/rychkog) made their first
contribution in
[nodejs/undici#2159
- [@&#8203;mhdawson](https://togithub.com/mhdawson) made their first
contribution in
[nodejs/undici#2168
- [@&#8203;GaryWilber](https://togithub.com/GaryWilber) made their first
contribution in
[nodejs/undici#2188
- [@&#8203;atlowChemi](https://togithub.com/atlowChemi) made their first
contribution in
[nodejs/undici#2195

**Full Changelog**:
nodejs/undici@v5.22.1...v5.23.0

### [`v5.22.1`](https://togithub.com/nodejs/undici/releases/tag/v5.22.1)

[Compare
Source](https://togithub.com/nodejs/undici/compare/v5.22.0...v5.22.1)

#### What's Changed

- Cache storage by [@&#8203;KhafraDev](https://togithub.com/KhafraDev)
in
[nodejs/undici#2076
- test: skip content-disposition test in node 18 by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2081
- Cache storage cleanup by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2082
- Cache storage fixes by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2083
- test: improve test coverage for ErrorEvent and MessageEvent by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2085
- test: remove --experimental-wasm-simd by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2087
- websocket: add websocketinit by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2088
- feat(websocket): allow setting custom headers by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2089
- test: fix tests failing only on node v20 by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2096
- fix: skip set content-length when FormData value is stream by
[@&#8203;fengmk2](https://togithub.com/fengmk2) in
[nodejs/undici#2091
- doc: update outdated command in contributing.md by
[@&#8203;jazelly](https://togithub.com/jazelly) in
[nodejs/undici#2099
- cache: fix most failing WPTs by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2100
- feat: allow build:wasm to auto detect platform by
[@&#8203;jazelly](https://togithub.com/jazelly) in
[nodejs/undici#2102
- docs: updated Error documentation (fixes
[#&#8203;2090](https://togithub.com/nodejs/undici/issues/2090)) by
[@&#8203;titanism](https://togithub.com/titanism) in
[nodejs/undici#2092
- mimesniff: fix many broken tests by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2103
- test: fix failing tests by
[@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2097
- build(deps): bump github/codeql-action from 2.2.9 to 2.3.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[nodejs/undici#2105
- fix: more informative error message to tell that the server doesn't
match http/1.1 protocol by
[@&#8203;Songkeys](https://togithub.com/Songkeys) in
[nodejs/undici#2055
- Fix bug in 16-bit frame length when buffer is a subarray by
[@&#8203;jawj](https://togithub.com/jawj) in
[nodejs/undici#2106
- update wpts by [@&#8203;KhafraDev](https://togithub.com/KhafraDev) in
[nodejs/undici#2108
- fix: update error definitions by
[@&#8203;dfilatov](https://togithub.com/dfilatov) in
[nodejs/undici#2112
- fix: make assertion a noop by
[@&#8203;ronag](https://togithub.com/ronag) in
[nodejs/undici#2111

#### New Contributors

- [@&#8203;jazelly](https://togithub.com/jazelly) made their first
contribution in
[nodejs/undici#2099
- [@&#8203;titanism](https://togithub.com/titanism) made their first
contribution in
[nodejs/undici#2092
- [@&#8203;Songkeys](https://togithub.com/Songkeys) made their first
contribution in
[nodejs/undici#2055
- [@&#8203;jawj](https://togithub.com/jawj) made their first
contribution in
[nodejs/undici#2106
- [@&#8203;dfilatov](https://togithub.com/dfilatov) made their first
contribution in
[nodejs/undici#2112

**Full Changelog**:
nodejs/undici@v5.22.0...v5.22.1

</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/coveo/cli).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->

---------

Co-authored-by: developer-experience-bot[bot] <91079284+developer-experience-bot[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
crysmags pushed a commit to crysmags/undici that referenced this pull request Feb 27, 2024
* feat: port H2 work with latest main

* fix: linting errors

* refactor: adjust support for headers and set testing

* test: add testing for h2

* refactor: make http2 session handle shorter

* feat: add support for sending body over http2

* feat: ensure support for streams over H2

* refactor: remove noisy logs

* feat: support 100 continue

* feat: support for iterators

* feat: add support for Blobs

* refactor: adapt contracts to h2 support

* refactor: cleanup

* feat: support for content-length

* refactor: body write

* test: refactor check continue test

* fix: bad check for headers

* fix: bad change

* chore: add http2 alpn test (nodejs#34)

* chore: add http2 alpn test using fastify

* chore: update to test https 1 with http2

* chore: update alpn test to return server request alpn protocol and http version

* chore: add alpn with body

* fix: remove fastify from package json

* refactor: remove leftover

* test: ensure dispatch feature

* feat(h2): support connect

* fix: pass signal down the road

* test: ensure stream works as expected

* test: ensure pipeline  works as expected

* test: ensure upgrade fails

* test: ensure destroy works as expected

* feat: allow to disable H2 calls upon request

* fix: linting

* feat: support GOAWAY frame (server-side)

* refactor; use h2 constants

* feat: initial shape of concurrent stream handling

* refactor: header processing

* chore: http/2 benchmark (nodejs#35)

Co-authored-by: Carlos Fuentes <me@metcoder.dev>

* refactor: adjust accordingly to review

* fix: add missing error handler for socket

* refactor: headers handling

* feat: initial concurrent stream support

* fix: lint

* refactor: adjust several pieces

* fix: support h2 headers for fetch

* feat: enhance h2 for fetch

* refactor: apply review suggestions

Co-authored-by: Robert Nagy <ronagy@icloud.com>

* refactor: set allowh2 to false

* fix: linting

* refactor: implement kHTTPConnVersion symbol

* test: adjust testing

* feat: buil factory

* fix: rebase

* feat: enhance TS types for maxConcurrent streams

* test: move fetch tests to fetch folder

* feat: add experimental warning

* test: refactor suite

* refactor: apply several changes

* test: split tests between v20 and lower

---------

Co-authored-by: Michael Kaufman <2073135+mkaufmaner@users.noreply.github.com>
Co-authored-by: Robert Nagy <ronagy@icloud.com>
Co-authored-by: Matteo Collina <hello@matteocollina.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.

HTTP2/3 Support
9 participants