Skip to content

Tweak start/end/baseline/deviation for SLO log rate analysis.#1

Merged
mgiota merged 2 commits intomgiota:log_rate_analysis_custom_kqlfrom
walterra:log_rate_analysis_custom_kql
Apr 16, 2024
Merged

Tweak start/end/baseline/deviation for SLO log rate analysis.#1
mgiota merged 2 commits intomgiota:log_rate_analysis_custom_kqlfrom
walterra:log_rate_analysis_custom_kql

Conversation

@walterra
Copy link
Copy Markdown

@walterra walterra commented Apr 16, 2024

Tweaks the start/end/baseline/deviation for the embedded log rate analysis.

  • This aligns the overall time range of the log rate analysis histogram chart with that shown in the ErrorRatePanel component. For that to work I had to copy over getDataTimeRange() from x-pack/plugins/observability_solution/slo/public/components/slo/burn_rate/alert_details/components/error_rate/error_rate_panel.tsx. This can be consolidated but I didn't know where to best put those two functions in another file.
  • I reverted the code to calculate the intervalFactor again and to use the longWindow for the calculation. Only if the available time range is too short we fall back to shortWindow. This way the rest of the code to generate baseline/deviation can stay the same as it is with the treshold alert details page.
  • In case of recovered alerts, the kibana.alert.rule.parameters window cannot be detected correctly. In such a case we now fall back to LOW_PRIORITY_ACTION_ID=slo.burnRate.low.

Before:

image

After:

image

Fallback to short window lookback if the available time range is not long enough for long window:

image

max: alertEnd ? alertEnd.clone().add(1 * intervalFactor, 'minutes') : moment(new Date()),
};
const actionGroup = getActionGroupFromReason(alert.reason);
const actionGroupWindow = (
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

@walterra Can't we use here the alertActionGroup we define in line 112 above?

Copy link
Copy Markdown
Owner

@mgiota mgiota Apr 16, 2024

Choose a reason for hiding this comment

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

The difference I can see is that alertActionGroup above fallbacks to ALERT_ACTION_ID, where as the actionGroup here fallbacks to whatever the getActionGroupFromReason fallbacks, which is LOW_PRIORITY_ACTION_ID

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

The way I understand the alert metadata in line 112 we just get the name like slo.burnRate.alert, here we then get the actual metadata of a window including the values for short and long window.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Sorry I meant to say, can't we use const relatedWindow = sloWindows.find((window) => window.actionGroup === alertActionGroup); that I define above? You do pretty much the same for the actionGroupWindow

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Oh now I get what you meant. I tried reusing relatedWindow, but then I got different overall time range for the burn rate and log rate analysis chart. I'll leave the code as is for now to keep the time ranges aligned.

@mgiota mgiota merged commit ad797b8 into mgiota:log_rate_analysis_custom_kql Apr 16, 2024
@walterra walterra deleted the log_rate_analysis_custom_kql branch April 17, 2024 08:31
kibanamachine pushed a commit that referenced this pull request May 17, 2024
## Summary
Set `security.session.cleanupInterval` to 5h for session concurrency
test.

### **Prerequisites**

- Task for session cleanup with [default schedule set to
1h](https://github.com/elastic/kibana/blob/main/x-pack/plugins/security/server/config.ts#L222).
- Task polling interval is set to
[3000ms](https://github.com/elastic/kibana/blob/main/x-pack/plugins/task_manager/server/config.ts#L13).
- We override `scheduledAt` once we make a request in
[runCleanupTaskSoon](https://github.com/elastic/kibana/blob/main/x-pack/test/security_api_integration/tests/session_concurrent_limit/cleanup.ts#L145).

### **Hypothesis**

Taking into consideration that:

- `session_cleanup` task is not the only one scheduled during test run.
- There is sort of an exponential backoff implemented for task polling
if there are too many retries.
- Clock jitter.

I had a hypothesis that if our whole test run exceeds 1h or polling
interval gets adjusted because of retries we might end up executing the
scheduled cleanup before we trigger `runCleanupTaskSoon` (this is there
we drop 1 session already).

### **FTR runs (x55 each)**

- `cleanupInterval` set to 5h:
[#1](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5986)
:green_circle:,
[#2](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5987)
:green_circle:
- `cleanupInterval` set to default 1h:
[#1](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5983)
:green_circle:,
[#2](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5982)
:red_circle: (has 2 failures out of 55)


### Checklist

- [x] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

__Fixes: https://github.com/elastic/kibana/issues/149091__
mgiota pushed a commit that referenced this pull request Sep 17, 2024
Connected to elastic#188187

## Summary

- Changed the cases `Settings` button and icon
- Changed the the `Additional fields` title to `Custom fields` for
consistency

<img width="1728" alt="Screenshot 2024-09-09 at 20 15 39"
src="https://github.com/user-attachments/assets/1fb1232a-f958-4d4d-8694-f85cc8872237">
<img width="1443" alt="Screenshot 2024-09-09 at 20 34 27"
src="https://github.com/user-attachments/assets/0fbdae02-65a6-4128-adc7-39f51cc2d5e6">
<img width="1370" alt="Screenshot 2024-09-09 at 20 34 57"
src="https://github.com/user-attachments/assets/c216407a-ac13-4579-8007-531c79d52de7">
elasticmachine pushed a commit that referenced this pull request Oct 30, 2024
…95375)

## Summary

Follow-up of elastic#195367
As part of the Sustainable Kibana Architecture initiative, this PR
leverages the mechanisms and concepts introduced in
elastic#194810, updating plugins that
were considered to be solution-specific in Luke's
[PoC](elastic#179710).

This might trigger linting rule violations in CI, and help uncover
conflicts related to forbidden dependencies.
As soon as they are resolved, we can proceed to classify solutions'
plugins.
mgiota pushed a commit that referenced this pull request Nov 8, 2024
…ted features (elastic#198656)

## Summary

This PR ensures that we don’t expose UI capabilities for deprecated
features since they’re unnecessary, and the code should rely on the UI
capabilities of the replacement features instead.

Additionally, this PR transforms the `disabledFeatures` property of
Space objects returned from our programmatic and HTTP APIs to replace
any deprecated feature IDs with the IDs of their replacement features,
ensuring that feature visibility toggles work for deprecated features as
well.

## How to test

1. Run Kibana FTR server with the following config (registers test
deprecated features):
```shell
node scripts/functional_tests_server.js --config x-pack/test/security_api_integration/features.config.ts
```
2. Once server is up and running create Space with the
`case_1_feature_a` **deprecated** feature disabled:
```shell
curl 'http://localhost:5620/api/spaces/space' -u elastic:changeme \
  -X POST -H 'Content-Type: application/json' -H 'kbn-version: 9.0.0' \
  --data-raw '{"name":"space-alpha","id":"space-alpha","initials":"s","color":"#D6BF57","disabledFeatures":["case_1_feature_a"],"imageUrl":""}'
```
3. Log in to Kibana and [navigate to a Space
`space-alpha`](http://localhost:5620/app/management/kibana/spaces/edit/space-alpha)
you've just created. Observe that deprecated `Case #1 feature A`
(`case_1_feature_a`) isn't displayed, and instead you should see that
replaces deprecated one - `Case #1 feature B` (`case_1_feature_b`):

![Screen Shot 2024-11-01 at 17 40
59](https://github.com/user-attachments/assets/5b91e71c-7d46-4ff1-bf73-d148622e8ec4)

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
elasticmachine pushed a commit that referenced this pull request Jun 5, 2025
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [whatwg-fetch](https://github.com/github/fetch) |
dependencies | minor | [`^3.0.0` ->
`^3.6.20`](https://renovatebot.com/diffs/npm/whatwg-fetch/3.0.0/3.6.20)
|

---

### Release Notes

<details>
<summary>github/fetch (whatwg-fetch)</summary>

###
[`v3.6.20`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.19...v3.6.20)

##### Bug Fixes

- Response.error().ok === false
([#&elastic#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))
([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))

###
[`v3.6.19`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.18...v3.6.19)

##### Bug Fixes

- Have unique error messages for xhr timeouts and errors
([#&elastic#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))
([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))

###
[`v3.6.18`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.17...v3.6.18)

- Fix - File fetching broken since commit
[`0c1d2b9`](https://github.com/github/fetch/commit/0c1d2b9)
[`elastic#1375`](https://github.com/JakeChampion/fetch/pull/1375)
- Remove broken links
[`1dc07c6`](https://github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)
- automatically generate a changelog
[`0e7d1dd`](https://github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)

###
[`v3.6.17`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.16...v3.6.17)

> 20 July 2023

- Revert "Resolves
[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)"
[`elastic#928`](https://github.com/JakeChampion/fetch/issues/928)

###
[`v3.6.16`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.15...v3.6.16)

> 18 July 2023

- Resolves
[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)
[`elastic#928`](https://github.com/JakeChampion/fetch/issues/928)

###
[`v3.6.15`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.14...v3.6.15)

> 18 July 2023

- fix
[https://github.com/JakeChampion/fetch/issues/997](https://github.com/JakeChampion/fetch/issues/997)
[`elastic#997`](https://github.com/JakeChampion/fetch/issues/997)

###
[`v3.6.14`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.13...v3.6.14)

> 18 July 2023

- Fix
[https://github.com/JakeChampion/fetch/issues/1076](https://github.com/JakeChampion/fetch/issues/1076)
[`elastic#1076`](https://github.com/JakeChampion/fetch/issues/1076)

###
[`v3.6.13`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.12...v3.6.13)

> 18 July 2023

- respect charset within readBlobAsText
[`elastic#1059`](https://github.com/JakeChampion/fetch/issues/1059)

###
[`v3.6.12`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.11...v3.6.12)

> 18 July 2023

- fix: Headers only accepts array which have nested array of length 2
[`elastic#1235`](https://github.com/JakeChampion/fetch/issues/1235)

###
[`v3.6.11`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.10...v3.6.11)

> 18 July 2023

- Define Body.arrayBuffer even if support.blob is false
[`elastic#992`](https://github.com/JakeChampion/fetch/issues/992)

###
[`v3.6.10`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.9...v3.6.10)

> 18 July 2023

- use globals if they exist
[`dffc542`](https://github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)

###
[`v3.6.9`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.8...v3.6.9)

> 18 July 2023

- fix: when no body supplied, do not set bodyUsed to true
[`7d92dff`](https://github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)

###
[`v3.6.8`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.7...v3.6.8)

> 18 July 2023

- validate status is in range
[`elastic#1213`](https://github.com/JakeChampion/fetch/issues/1213)

###
[`v3.6.7`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.6...v3.6.7)

> 18 July 2023

- dont shadow `global`
[`elastic#1026`](https://github.com/JakeChampion/fetch/issues/1026)
- dont use github eslint
[`408d3b6`](https://github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)
- remove invalid-headers test
[`e3f6590`](https://github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)
- Update lock.yml permissions
[`e97321b`](https://github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)

###
[`v3.6.6`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.5...v3.6.6)

> 18 July 2023

- fix: ignore not throw on invalid response headers
[`elastic#930`](https://github.com/JakeChampion/fetch/issues/930)

###
[`v3.6.5`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.4...v3.6.5)

> 18 July 2023

- Add some missed methods which should be normalized as uppercase
[`a43b628`](https://github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)
- Update caniuse link to use HTTPS and new pattern
[`fb5b0cf`](https://github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)

###
[`v3.6.4`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.3...v3.6.4)

> 18 July 2023

- always set a signal on Request
[`d1d09fb`](https://github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)

###
[`v3.6.3`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.2...v3.6.3)

> 18 July 2023

- Compatible global equals to the false
[`7727e50`](https://github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)

###
[`v3.6.2`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.1...v3.6.2)

##### Bug Fixes

- Response.error().ok === false
([#&elastic#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))
([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))

###
[`v3.6.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)

[Compare
Source](https://github.com/github/fetch/compare/v3.6.0...v3.6.1)

##### Bug Fixes

- Have unique error messages for xhr timeouts and errors
([#&elastic#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))
([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))

###
[`v3.6.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)

[Compare
Source](https://github.com/github/fetch/compare/v3.5.0...v3.6.0)

> 18 February 2021

- Fix statusText: undefined should give '' and null should give 'null'
[`b5c8bd0`](https://github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)
- Represent non-stringified JSON request body as an \[object Object]
string
[`5c6b055`](https://github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)
- Fix eslint and eslint-plugin-github dependency conflicts
[`190e698`](https://github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)

###
[`v3.5.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)

[Compare
Source](https://github.com/github/fetch/compare/v3.4.1...v3.5.0)

> 6 November 2020

- Fixes
[#&elastic#8203;748](https://github.com/github/fetch/issues/748)
[`elastic#748`](https://github.com/JakeChampion/fetch/issues/748)
- Create lock.yml
[`8767781`](https://github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)

###
[`v3.4.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)

[Compare
Source](https://github.com/github/fetch/compare/v3.4.0...v3.4.1)

> 7 September 2020

- Add npmignore file to ensure we always publish the dist directory
[`7ca02eb`](https://github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)
- Make the clean task remove the dist directory and the default task
create it
[`fd23745`](https://github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)

###
[`v3.4.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)

[Compare
Source](https://github.com/github/fetch/compare/v3.3.1...v3.4.0)

> 7 August 2020

- Use globalThis as the global object if it exists
[`96c2651`](https://github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)

###
[`v3.3.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)

[Compare
Source](https://github.com/github/fetch/compare/v3.3.0...v3.3.1)

> 4 August 2020

- rename variable to no longer shadow over function of same name
[`c5db762`](https://github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)
- remove semicolon to pass linting
[`f264aa5`](https://github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)

###
[`v3.3.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)

[Compare
Source](https://github.com/github/fetch/compare/v3.2.0...v3.3.0)

> 4 August 2020

- Make Response.arrayBuffer() always resolve with a `ArrayBuffer`
[`elastic#801`](https://github.com/github/fetch/issues/801)
- Stop using top-level `this` to stop rollup warning
[`elastic#802`](https://github.com/github/fetch/issues/802)
- Recommend an AbortController polyfill which is fully synchronous
[`elastic#800`](https://github.com/github/fetch/issues/800)
- Add keepalive caveat
[`elastic#780`](https://github.com/github/fetch/issues/780)
- Throw a TypeError if Request or Response functions are called without
`new`
[`5ef028d`](https://github.com/JakeChampion/fetch/commit/5ef028d61f6c1543603cdacbe0f8a0f00d5957c0)
- If headers are passed in via a Record then do not normalise the header
names as part of the request
[`b65ed60`](https://github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)
- Update fetch.js
[`37b55c2`](https://github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)

###
[`v3.2.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)

[Compare
Source](https://github.com/github/fetch/compare/v3.1.1...v3.2.0)

> 9 July 2020

- Detect if DOMException exists via typeof instead of trying to call it
and catching the exception which may get thrown
[`elastic#724`](https://github.com/github/fetch/issues/724)
- use `this` if `self` is not defined
[`elastic#657`](https://github.com/github/fetch/issues/657)
- create variable called `global` which is either `self` or `this`
[`a0783a5`](https://github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)
- Add support for no-cache and no-store via a cache-busting querystring
parameter
[`a0dcd85`](https://github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)
- make global `this` correct when using rollup
[`6e9fc0e`](https://github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)

###
[`v3.1.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)

[Compare
Source](https://github.com/github/fetch/compare/v3.1.0...v3.1.1)

> 8 July 2020

- check if Content-Type header exists prior to examining the value
[`elastic#792`](https://github.com/JakeChampion/fetch/pull/792)
- Move from Travis to GitHub Actions
[`elastic#793`](https://github.com/JakeChampion/fetch/pull/793)

###
[`v3.1.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)

[Compare
Source](https://github.com/github/fetch/compare/v3.0.1...v3.1.0)

> 29 June 2020

###
[`v3.0.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)

[Compare
Source](https://github.com/github/fetch/compare/v3.0.0...v3.0.1)

> 8 July 2020

- check if Content-Type header exists prior to examining the value
[`elastic#792`](https://github.com/JakeChampion/fetch/pull/792)
- Move from Travis to GitHub Actions
[`elastic#793`](https://github.com/JakeChampion/fetch/pull/793)
- Co-authored-by: Jake Champion \<me@jakechampion.name>
[`elastic#575`](https://github.com/JakeChampion/fetch/pull/575)
- work around IE XHR bug with '' URL Fixes
[#&elastic#8203;618](https://github.com/github/fetch/issues/618)
[`elastic#619`](https://github.com/JakeChampion/fetch/pull/619)
- Allow exclamation mark as valid header character
[`elastic#745`](https://github.com/JakeChampion/fetch/pull/745)
- Avoid blob conversion for specific requests
[`elastic#752`](https://github.com/JakeChampion/fetch/pull/752)
- Compatibility for fetch-mock using proxy-pollyfill
[`elastic#736`](https://github.com/JakeChampion/fetch/pull/736)
- Change default statusText for Response
[`elastic#698`](https://github.com/JakeChampion/fetch/pull/698)
- Document more common pitfalls in the README
[`elastic#734`](https://github.com/JakeChampion/fetch/pull/734)
- field name can not by empty
[`elastic#684`](https://github.com/JakeChampion/fetch/pull/684)
- work around IE XHR bug with '' URL Fixes
[#&elastic#8203;618](https://github.com/github/fetch/issues/618)
([#&elastic#8203;619](https://github.com/github/fetch/issues/619))
[`elastic#618`](https://github.com/JakeChampion/fetch/issues/618)
- Clarify what parts of the standard we don't want to implement
[`elastic#661`](https://github.com/JakeChampion/fetch/issues/661)
- Document more caveats
[`9a0bce2`](https://github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)
- Fix issue
[#&elastic#8203;533](https://github.com/github/fetch/issues/533)
[`7f030fa`](https://github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)
- Compatibility with newer eslint-plugin-github
[`1821b74`](https://github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)

#####
[v3.0.0](https://github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)

> 7 September 2018

- Add flow definitions
[`elastic#654`](https://github.com/JakeChampion/fetch/pull/654)
- Match spec behavior re: unsupported body type
[`elastic#651`](https://github.com/JakeChampion/fetch/pull/651)
- Update Karma and detect available browsers when testing
[`elastic#652`](https://github.com/JakeChampion/fetch/pull/652)
- Adopt Contributor Covenant Code of Conduct
[`elastic#649`](https://github.com/JakeChampion/fetch/pull/649)
- Change `credentials` default value to `same-origin`
[`elastic#640`](https://github.com/JakeChampion/fetch/pull/640)
- Switch test suite from PhantomJS to Karma
[`elastic#626`](https://github.com/JakeChampion/fetch/pull/626)
- Support abort API
[`elastic#592`](https://github.com/JakeChampion/fetch/pull/592)
- build/distribute as UMD
[`elastic#616`](https://github.com/JakeChampion/fetch/pull/616)
- Test signal reuse. Add AbortSignal polyfill.
[`#2`](https://github.com/JakeChampion/fetch/pull/2)
- Clear abort event listener for all xhr completion states.
[`#1`](https://github.com/JakeChampion/fetch/pull/1)
- Expand install & importing documentation
[`elastic#569`](https://github.com/JakeChampion/fetch/issues/569)
- Match spec behavior re: unsupported body type
[`elastic#576`](https://github.com/JakeChampion/fetch/issues/576)
- Run test files through prettier
[`0a57487`](https://github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)
- Unwrap `fetch.js` to be a clean module file
[`8aec47c`](https://github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)
- Switch from PhantomJS to Karma + Chrome/Firefox for testing
[`b539589`](https://github.com/JakeChampion/fetch/commit/b53958904649bfeb784083b9b7e0b89902c7d30e)

</details>

---

### Configuration

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

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

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

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

---

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

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjUuMSIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOk9wZXJhdGlvbnMiLCJiYWNrcG9ydDphbGwtb3BlbiIsInJlbGVhc2Vfbm90ZTpza2lwIl19-->

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
Co-authored-by: Brad White <brad.white@elastic.co>
mgiota pushed a commit that referenced this pull request Jun 13, 2025
…) (elastic#222643)

# Backport

This will backport the following commits from `main` to `8.19`:
- [Update dependency whatwg-fetch to ^3.6.20 (main)
(#206179)](https://github.com/elastic/kibana/pull/206179)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT
[{"author":{"name":"elastic-renovate-prod[bot]","email":"174716857+elastic-renovate-prod[bot]@users.noreply.github.com"},"sourceCommit":{"committedDate":"2025-06-04T19:29:03Z","message":"Update
dependency whatwg-fetch to ^3.6.20 (main) (#206179)\n\nThis PR contains
the following updates:\n\n| Package | Type | Update | Change
|\n|---|---|---|---|\n|
[whatwg-fetch](https://github.com/github/fetch) |\ndependencies
| minor | [`^3.0.0`
->\n`^3.6.20`](https://renovatebot.com/diffs/npm/whatwg-fetch/3.0.0/3.6.20)\n|\n\n---\n\n###
Release Notes\n\n<details>\n<summary>github/fetch
(whatwg-fetch)</summary>\n\n###\n[`v3.6.20`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n#####
Bug Fixes\n\n- Response.error().ok ===
false\n([#&#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.18...v3.6.19)\n\n#####
Bug Fixes\n\n- Have unique error messages for xhr timeouts and
errors\n([#&#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n-
Fix - File fetching broken since
commit\n[`0c1d2b9`](https://github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://github.com/JakeChampion/fetch/pull/1375)\n-
Remove broken
links\n[`1dc07c6`](https://github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n-
automatically generate a
changelog\n[`0e7d1dd`](https://github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.16...v3.6.17)\n\n>
20 July 2023\n\n- Revert
\"Resolves\n[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.15...v3.6.16)\n\n>
18 July 2023\n\n-
Resolves\n[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.14...v3.6.15)\n\n>
18 July 2023\n\n-
fix\n[https://github.com/JakeChampion/fetch/issues/997](https://github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.13...v3.6.14)\n\n>
18 July 2023\n\n-
Fix\n[https://github.com/JakeChampion/fetch/issues/1076](https://github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.12...v3.6.13)\n\n>
18 July 2023\n\n- respect charset within
readBlobAsText\n[`#1059`](https://github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.11...v3.6.12)\n\n>
18 July 2023\n\n- fix: Headers only accepts array which have nested
array of length
2\n[`#1235`](https://github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.10...v3.6.11)\n\n>
18 July 2023\n\n- Define Body.arrayBuffer even if support.blob is
false\n[`#992`](https://github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.9...v3.6.10)\n\n>
18 July 2023\n\n- use globals if they
exist\n[`dffc542`](https://github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.8...v3.6.9)\n\n>
18 July 2023\n\n- fix: when no body supplied, do not set bodyUsed to
true\n[`7d92dff`](https://github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.7...v3.6.8)\n\n>
18 July 2023\n\n- validate status is in
range\n[`#1213`](https://github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n>
18 July 2023\n\n- dont shadow
`global`\n[`#1026`](https://github.com/JakeChampion/fetch/issues/1026)\n-
dont use github
eslint\n[`408d3b6`](https://github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n-
remove invalid-headers
test\n[`e3f6590`](https://github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n-
Update lock.yml
permissions\n[`e97321b`](https://github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.5...v3.6.6)\n\n>
18 July 2023\n\n- fix: ignore not throw on invalid response
headers\n[`#930`](https://github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.4...v3.6.5)\n\n>
18 July 2023\n\n- Add some missed methods which should be normalized as
uppercase\n[`a43b628`](https://github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n-
Update caniuse link to use HTTPS and new
pattern\n[`fb5b0cf`](https://github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.3...v3.6.4)\n\n>
18 July 2023\n\n- always set a signal on
Request\n[`d1d09fb`](https://github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.2...v3.6.3)\n\n>
18 July 2023\n\n- Compatible global equals to the
false\n[`7727e50`](https://github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n#####
Bug Fixes\n\n- Response.error().ok ===
false\n([#&#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.0...v3.6.1)\n\n#####
Bug Fixes\n\n- Have unique error messages for xhr timeouts and
errors\n([#&#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.5.0...v3.6.0)\n\n>
18 February 2021\n\n- Fix statusText: undefined should give '' and null
should give
'null'\n[`b5c8bd0`](https://github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n-
Represent non-stringified JSON request body as an \\[object
Object]\nstring\n[`5c6b055`](https://github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n-
Fix eslint and eslint-plugin-github dependency
conflicts\n[`190e698`](https://github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n>
6 November 2020\n\n-
Fixes\n[#&#8203;748](https://github.com/github/fetch/issues/748)\n[`#748`](https://github.com/JakeChampion/fetch/issues/748)\n-
Create
lock.yml\n[`8767781`](https://github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.4.0...v3.4.1)\n\n>
7 September 2020\n\n- Add npmignore file to ensure we always publish the
dist
directory\n[`7ca02eb`](https://github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n-
Make the clean task remove the dist directory and the default
task\ncreate
it\n[`fd23745`](https://github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.3.1...v3.4.0)\n\n>
7 August 2020\n\n- Use globalThis as the global object if it
exists\n[`96c2651`](https://github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.3.0...v3.3.1)\n\n>
4 August 2020\n\n- rename variable to no longer shadow over function of
same
name\n[`c5db762`](https://github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n-
remove semicolon to pass
linting\n[`f264aa5`](https://github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.2.0...v3.3.0)\n\n>
4 August 2020\n\n- Make Response.arrayBuffer() always resolve with a
`ArrayBuffer`\n[`#801`](https://github.com/github/fetch/issues/801)\n-
Stop using top-level `this` to stop rollup
warning\n[`#802`](https://github.com/github/fetch/issues/802)\n-
Recommend an AbortController polyfill which is fully
synchronous\n[`#800`](https://github.com/github/fetch/issues/800)\n-
Add keepalive
caveat\n[`#780`](https://github.com/github/fetch/issues/780)\n-
Throw a TypeError if Request or Response functions are called
without\n`new`\n[`5ef028d`](https://github.com/JakeChampion/fetch/commit/5ef028d61f6c1543603cdacbe0f8a0f00d5957c0)\n-
If headers are passed in via a Record then do not normalise the
header\nnames as part of the
request\n[`b65ed60`](https://github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n-
Update
fetch.js\n[`37b55c2`](https://github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.1.1...v3.2.0)\n\n>
9 July 2020\n\n- Detect if DOMException exists via typeof instead of
trying to call it\nand catching the exception which may get
thrown\n[`#724`](https://github.com/github/fetch/issues/724)\n-
use `this` if `self` is not
defined\n[`#657`](https://github.com/github/fetch/issues/657)\n-
create variable called `global` which is either `self` or
`this`\n[`a0783a5`](https://github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n-
Add support for no-cache and no-store via a cache-busting
querystring\nparameter\n[`a0dcd85`](https://github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n-
make global `this` correct when using
rollup\n[`6e9fc0e`](https://github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.1.0...v3.1.1)\n\n>
8 July 2020\n\n- check if Content-Type header exists prior to examining
the
value\n[`#792`](https://github.com/JakeChampion/fetch/pull/792)\n-
Move from Travis to GitHub
Actions\n[`#793`](https://github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n>
29 June
2020\n\n###\n[`v3.0.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.0.0...v3.0.1)\n\n>
8 July 2020\n\n- check if Content-Type header exists prior to examining
the
value\n[`#792`](https://github.com/JakeChampion/fetch/pull/792)\n-
Move from Travis to GitHub
Actions\n[`#793`](https://github.com/JakeChampion/fetch/pull/793)\n-
Co-authored-by: Jake Champion
\\<me@jakechampion.name>\n[`#575`](https://github.com/JakeChampion/fetch/pull/575)\n-
work around IE XHR bug with '' URL
Fixes\n[#&#8203;618](https://github.com/github/fetch/issues/618)\n[`#619`](https://github.com/JakeChampion/fetch/pull/619)\n-
Allow exclamation mark as valid header
character\n[`#745`](https://github.com/JakeChampion/fetch/pull/745)\n-
Avoid blob conversion for specific
requests\n[`#752`](https://github.com/JakeChampion/fetch/pull/752)\n-
Compatibility for fetch-mock using
proxy-pollyfill\n[`#736`](https://github.com/JakeChampion/fetch/pull/736)\n-
Change default statusText for
Response\n[`#698`](https://github.com/JakeChampion/fetch/pull/698)\n-
Document more common pitfalls in the
README\n[`#734`](https://github.com/JakeChampion/fetch/pull/734)\n-
field name can not by
empty\n[`#684`](https://github.com/JakeChampion/fetch/pull/684)\n-
work around IE XHR bug with '' URL
Fixes\n[#&#8203;618](https://github.com/github/fetch/issues/618)\n([#&#8203;619](https://github.com/github/fetch/issues/619))\n[`#618`](https://github.com/JakeChampion/fetch/issues/618)\n-
Clarify what parts of the standard we don't want to
implement\n[`#661`](https://github.com/JakeChampion/fetch/issues/661)\n-
Document more
caveats\n[`9a0bce2`](https://github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n-
Fix
issue\n[#&#8203;533](https://github.com/github/fetch/issues/533)\n[`7f030fa`](https://github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n-
Compatibility with newer
eslint-plugin-github\n[`1821b74`](https://github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n>
7 September 2018\n\n- Add flow
definitions\n[`#654`](https://github.com/JakeChampion/fetch/pull/654)\n-
Match spec behavior re: unsupported body
type\n[`#651`](https://github.com/JakeChampion/fetch/pull/651)\n-
Update Karma and detect available browsers when
testing\n[`#652`](https://github.com/JakeChampion/fetch/pull/652)\n-
Adopt Contributor Covenant Code of
Conduct\n[`#649`](https://github.com/JakeChampion/fetch/pull/649)\n-
Change `credentials` default value to
`same-origin`\n[`#640`](https://github.com/JakeChampion/fetch/pull/640)\n-
Switch test suite from PhantomJS to
Karma\n[`#626`](https://github.com/JakeChampion/fetch/pull/626)\n-
Support abort
API\n[`#592`](https://github.com/JakeChampion/fetch/pull/592)\n-
build/distribute as
UMD\n[`#616`](https://github.com/JakeChampion/fetch/pull/616)\n-
Test signal reuse. Add AbortSignal
polyfill.\n[`#2`](https://github.com/JakeChampion/fetch/pull/2)\n-
Clear abort event listener for all xhr completion
states.\n[`#1`](https://github.com/JakeChampion/fetch/pull/1)\n-
Expand install & importing
documentation\n[`#569`](https://github.com/JakeChampion/fetch/issues/569)\n-
Match spec behavior re: unsupported body
type\n[`#576`](https://github.com/JakeChampion/fetch/issues/576)\n-
Run test files through
prettier\n[`0a57487`](https://github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n-
Unwrap `fetch.js` to be a clean module
file\n[`8aec47c`](https://github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n-
Switch from PhantomJS to Karma + Chrome/Firefox for
testing\n[`b539589`](https://github.com/JakeChampion/fetch/commit/b53958904649bfeb784083b9b7e0b89902c7d30e)\n\n</details>\n\n---\n\n###
Configuration\n\n📅 **Schedule**: Branch creation - At any time (no
schedule defined),\nAutomerge - At any time (no schedule defined).\n\n🚦
**Automerge**: Disabled by config. Please merge this manually once
you\nare satisfied.\n\n♻ **Rebasing**: Whenever PR becomes conflicted,
or you tick the\nrebase/retry checkbox.\n\n🔕 **Ignore**: Close this PR
and you won't be reminded about this update\nagain.\n\n---\n\n- [ ] If
you want to rebase/retry this PR, check\nthis box\n\n---\n\nThis PR has
been generated by
[Renovate\nBot](https://github.com/renovatebot/renovate).\n\n\n\nCo-authored-by:
elastic-renovate-prod[bot]
<174716857+elastic-renovate-prod[bot]@users.noreply.github.com>\nCo-authored-by:
Brad White
<brad.white@elastic.co>","sha":"e49ec1082a6d7847afc05dbb6e817d7fe225d628","branchLabelMapping":{"^v9.1.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Operations","release_note:skip","backport:all-open","v9.1.0"],"title":"Update
dependency whatwg-fetch to ^3.6.20
(main)","number":206179,"url":"https://github.com/elastic/kibana/pull/206179","mergeCommit":{"message":"Update
dependency whatwg-fetch to ^3.6.20 (main) (#206179)\n\nThis PR contains
the following updates:\n\n| Package | Type | Update | Change
|\n|---|---|---|---|\n|
[whatwg-fetch](https://github.com/github/fetch) |\ndependencies
| minor | [`^3.0.0`
->\n`^3.6.20`](https://renovatebot.com/diffs/npm/whatwg-fetch/3.0.0/3.6.20)\n|\n\n---\n\n###
Release Notes\n\n<details>\n<summary>github/fetch
(whatwg-fetch)</summary>\n\n###\n[`v3.6.20`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n#####
Bug Fixes\n\n- Response.error().ok ===
false\n([#&#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.18...v3.6.19)\n\n#####
Bug Fixes\n\n- Have unique error messages for xhr timeouts and
errors\n([#&#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n-
Fix - File fetching broken since
commit\n[`0c1d2b9`](https://github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://github.com/JakeChampion/fetch/pull/1375)\n-
Remove broken
links\n[`1dc07c6`](https://github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n-
automatically generate a
changelog\n[`0e7d1dd`](https://github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.16...v3.6.17)\n\n>
20 July 2023\n\n- Revert
\"Resolves\n[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.15...v3.6.16)\n\n>
18 July 2023\n\n-
Resolves\n[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.14...v3.6.15)\n\n>
18 July 2023\n\n-
fix\n[https://github.com/JakeChampion/fetch/issues/997](https://github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.13...v3.6.14)\n\n>
18 July 2023\n\n-
Fix\n[https://github.com/JakeChampion/fetch/issues/1076](https://github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.12...v3.6.13)\n\n>
18 July 2023\n\n- respect charset within
readBlobAsText\n[`#1059`](https://github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.11...v3.6.12)\n\n>
18 July 2023\n\n- fix: Headers only accepts array which have nested
array of length
2\n[`#1235`](https://github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.10...v3.6.11)\n\n>
18 July 2023\n\n- Define Body.arrayBuffer even if support.blob is
false\n[`#992`](https://github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.9...v3.6.10)\n\n>
18 July 2023\n\n- use globals if they
exist\n[`dffc542`](https://github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.8...v3.6.9)\n\n>
18 July 2023\n\n- fix: when no body supplied, do not set bodyUsed to
true\n[`7d92dff`](https://github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.7...v3.6.8)\n\n>
18 July 2023\n\n- validate status is in
range\n[`#1213`](https://github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n>
18 July 2023\n\n- dont shadow
`global`\n[`#1026`](https://github.com/JakeChampion/fetch/issues/1026)\n-
dont use github
eslint\n[`408d3b6`](https://github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n-
remove invalid-headers
test\n[`e3f6590`](https://github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n-
Update lock.yml
permissions\n[`e97321b`](https://github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.5...v3.6.6)\n\n>
18 July 2023\n\n- fix: ignore not throw on invalid response
headers\n[`#930`](https://github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.4...v3.6.5)\n\n>
18 July 2023\n\n- Add some missed methods which should be normalized as
uppercase\n[`a43b628`](https://github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n-
Update caniuse link to use HTTPS and new
pattern\n[`fb5b0cf`](https://github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.3...v3.6.4)\n\n>
18 July 2023\n\n- always set a signal on
Request\n[`d1d09fb`](https://github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.2...v3.6.3)\n\n>
18 July 2023\n\n- Compatible global equals to the
false\n[`7727e50`](https://github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n#####
Bug Fixes\n\n- Response.error().ok ===
false\n([#&#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.0...v3.6.1)\n\n#####
Bug Fixes\n\n- Have unique error messages for xhr timeouts and
errors\n([#&#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.5.0...v3.6.0)\n\n>
18 February 2021\n\n- Fix statusText: undefined should give '' and null
should give
'null'\n[`b5c8bd0`](https://github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n-
Represent non-stringified JSON request body as an \\[object
Object]\nstring\n[`5c6b055`](https://github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n-
Fix eslint and eslint-plugin-github dependency
conflicts\n[`190e698`](https://github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n>
6 November 2020\n\n-
Fixes\n[#&#8203;748](https://github.com/github/fetch/issues/748)\n[`#748`](https://github.com/JakeChampion/fetch/issues/748)\n-
Create
lock.yml\n[`8767781`](https://github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.4.0...v3.4.1)\n\n>
7 September 2020\n\n- Add npmignore file to ensure we always publish the
dist
directory\n[`7ca02eb`](https://github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n-
Make the clean task remove the dist directory and the default
task\ncreate
it\n[`fd23745`](https://github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.3.1...v3.4.0)\n\n>
7 August 2020\n\n- Use globalThis as the global object if it
exists\n[`96c2651`](https://github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.3.0...v3.3.1)\n\n>
4 August 2020\n\n- rename variable to no longer shadow over function of
same
name\n[`c5db762`](https://github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n-
remove semicolon to pass
linting\n[`f264aa5`](https://github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.2.0...v3.3.0)\n\n>
4 August 2020\n\n- Make Response.arrayBuffer() always resolve with a
`ArrayBuffer`\n[`#801`](https://github.com/github/fetch/issues/801)\n-
Stop using top-level `this` to stop rollup
warning\n[`#802`](https://github.com/github/fetch/issues/802)\n-
Recommend an AbortController polyfill which is fully
synchronous\n[`#800`](https://github.com/github/fetch/issues/800)\n-
Add keepalive
caveat\n[`#780`](https://github.com/github/fetch/issues/780)\n-
Throw a TypeError if Request or Response functions are called
without\n`new`\n[`5ef028d`](https://github.com/JakeChampion/fetch/commit/5ef028d61f6c1543603cdacbe0f8a0f00d5957c0)\n-
If headers are passed in via a Record then do not normalise the
header\nnames as part of the
request\n[`b65ed60`](https://github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n-
Update
fetch.js\n[`37b55c2`](https://github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.1.1...v3.2.0)\n\n>
9 July 2020\n\n- Detect if DOMException exists via typeof instead of
trying to call it\nand catching the exception which may get
thrown\n[`#724`](https://github.com/github/fetch/issues/724)\n-
use `this` if `self` is not
defined\n[`#657`](https://github.com/github/fetch/issues/657)\n-
create variable called `global` which is either `self` or
`this`\n[`a0783a5`](https://github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n-
Add support for no-cache and no-store via a cache-busting
querystring\nparameter\n[`a0dcd85`](https://github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n-
make global `this` correct when using
rollup\n[`6e9fc0e`](https://github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.1.0...v3.1.1)\n\n>
8 July 2020\n\n- check if Content-Type header exists prior to examining
the
value\n[`#792`](https://github.com/JakeChampion/fetch/pull/792)\n-
Move from Travis to GitHub
Actions\n[`#793`](https://github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n>
29 June
2020\n\n###\n[`v3.0.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.0.0...v3.0.1)\n\n>
8 July 2020\n\n- check if Content-Type header exists prior to examining
the
value\n[`#792`](https://github.com/JakeChampion/fetch/pull/792)\n-
Move from Travis to GitHub
Actions\n[`#793`](https://github.com/JakeChampion/fetch/pull/793)\n-
Co-authored-by: Jake Champion
\\<me@jakechampion.name>\n[`#575`](https://github.com/JakeChampion/fetch/pull/575)\n-
work around IE XHR bug with '' URL
Fixes\n[#&#8203;618](https://github.com/github/fetch/issues/618)\n[`#619`](https://github.com/JakeChampion/fetch/pull/619)\n-
Allow exclamation mark as valid header
character\n[`#745`](https://github.com/JakeChampion/fetch/pull/745)\n-
Avoid blob conversion for specific
requests\n[`#752`](https://github.com/JakeChampion/fetch/pull/752)\n-
Compatibility for fetch-mock using
proxy-pollyfill\n[`#736`](https://github.com/JakeChampion/fetch/pull/736)\n-
Change default statusText for
Response\n[`#698`](https://github.com/JakeChampion/fetch/pull/698)\n-
Document more common pitfalls in the
README\n[`#734`](https://github.com/JakeChampion/fetch/pull/734)\n-
field name can not by
empty\n[`#684`](https://github.com/JakeChampion/fetch/pull/684)\n-
work around IE XHR bug with '' URL
Fixes\n[#&#8203;618](https://github.com/github/fetch/issues/618)\n([#&#8203;619](https://github.com/github/fetch/issues/619))\n[`#618`](https://github.com/JakeChampion/fetch/issues/618)\n-
Clarify what parts of the standard we don't want to
implement\n[`#661`](https://github.com/JakeChampion/fetch/issues/661)\n-
Document more
caveats\n[`9a0bce2`](https://github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n-
Fix
issue\n[#&#8203;533](https://github.com/github/fetch/issues/533)\n[`7f030fa`](https://github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n-
Compatibility with newer
eslint-plugin-github\n[`1821b74`](https://github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n>
7 September 2018\n\n- Add flow
definitions\n[`#654`](https://github.com/JakeChampion/fetch/pull/654)\n-
Match spec behavior re: unsupported body
type\n[`#651`](https://github.com/JakeChampion/fetch/pull/651)\n-
Update Karma and detect available browsers when
testing\n[`#652`](https://github.com/JakeChampion/fetch/pull/652)\n-
Adopt Contributor Covenant Code of
Conduct\n[`#649`](https://github.com/JakeChampion/fetch/pull/649)\n-
Change `credentials` default value to
`same-origin`\n[`#640`](https://github.com/JakeChampion/fetch/pull/640)\n-
Switch test suite from PhantomJS to
Karma\n[`#626`](https://github.com/JakeChampion/fetch/pull/626)\n-
Support abort
API\n[`#592`](https://github.com/JakeChampion/fetch/pull/592)\n-
build/distribute as
UMD\n[`#616`](https://github.com/JakeChampion/fetch/pull/616)\n-
Test signal reuse. Add AbortSignal
polyfill.\n[`#2`](https://github.com/JakeChampion/fetch/pull/2)\n-
Clear abort event listener for all xhr completion
states.\n[`#1`](https://github.com/JakeChampion/fetch/pull/1)\n-
Expand install & importing
documentation\n[`#569`](https://github.com/JakeChampion/fetch/issues/569)\n-
Match spec behavior re: unsupported body
type\n[`#576`](https://github.com/JakeChampion/fetch/issues/576)\n-
Run test files through
prettier\n[`0a57487`](https://github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n-
Unwrap `fetch.js` to be a clean module
file\n[`8aec47c`](https://github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n-
Switch from PhantomJS to Karma + Chrome/Firefox for
testing\n[`b539589`](https://github.com/JakeChampion/fetch/commit/b53958904649bfeb784083b9b7e0b89902c7d30e)\n\n</details>\n\n---\n\n###
Configuration\n\n📅 **Schedule**: Branch creation - At any time (no
schedule defined),\nAutomerge - At any time (no schedule defined).\n\n🚦
**Automerge**: Disabled by config. Please merge this manually once
you\nare satisfied.\n\n♻ **Rebasing**: Whenever PR becomes conflicted,
or you tick the\nrebase/retry checkbox.\n\n🔕 **Ignore**: Close this PR
and you won't be reminded about this update\nagain.\n\n---\n\n- [ ] If
you want to rebase/retry this PR, check\nthis box\n\n---\n\nThis PR has
been generated by
[Renovate\nBot](https://github.com/renovatebot/renovate).\n\n\n\nCo-authored-by:
elastic-renovate-prod[bot]
<174716857+elastic-renovate-prod[bot]@users.noreply.github.com>\nCo-authored-by:
Brad White
<brad.white@elastic.co>","sha":"e49ec1082a6d7847afc05dbb6e817d7fe225d628"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/206179","number":206179,"mergeCommit":{"message":"Update
dependency whatwg-fetch to ^3.6.20 (main) (#206179)\n\nThis PR contains
the following updates:\n\n| Package | Type | Update | Change
|\n|---|---|---|---|\n|
[whatwg-fetch](https://github.com/github/fetch) |\ndependencies
| minor | [`^3.0.0`
->\n`^3.6.20`](https://renovatebot.com/diffs/npm/whatwg-fetch/3.0.0/3.6.20)\n|\n\n---\n\n###
Release Notes\n\n<details>\n<summary>github/fetch
(whatwg-fetch)</summary>\n\n###\n[`v3.6.20`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n#####
Bug Fixes\n\n- Response.error().ok ===
false\n([#&#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.18...v3.6.19)\n\n#####
Bug Fixes\n\n- Have unique error messages for xhr timeouts and
errors\n([#&#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n-
Fix - File fetching broken since
commit\n[`0c1d2b9`](https://github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://github.com/JakeChampion/fetch/pull/1375)\n-
Remove broken
links\n[`1dc07c6`](https://github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n-
automatically generate a
changelog\n[`0e7d1dd`](https://github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.16...v3.6.17)\n\n>
20 July 2023\n\n- Revert
\"Resolves\n[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.15...v3.6.16)\n\n>
18 July 2023\n\n-
Resolves\n[https://github.com/JakeChampion/fetch/issues/928](https://github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.14...v3.6.15)\n\n>
18 July 2023\n\n-
fix\n[https://github.com/JakeChampion/fetch/issues/997](https://github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.13...v3.6.14)\n\n>
18 July 2023\n\n-
Fix\n[https://github.com/JakeChampion/fetch/issues/1076](https://github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.12...v3.6.13)\n\n>
18 July 2023\n\n- respect charset within
readBlobAsText\n[`#1059`](https://github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.11...v3.6.12)\n\n>
18 July 2023\n\n- fix: Headers only accepts array which have nested
array of length
2\n[`#1235`](https://github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.10...v3.6.11)\n\n>
18 July 2023\n\n- Define Body.arrayBuffer even if support.blob is
false\n[`#992`](https://github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.9...v3.6.10)\n\n>
18 July 2023\n\n- use globals if they
exist\n[`dffc542`](https://github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.8...v3.6.9)\n\n>
18 July 2023\n\n- fix: when no body supplied, do not set bodyUsed to
true\n[`7d92dff`](https://github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.7...v3.6.8)\n\n>
18 July 2023\n\n- validate status is in
range\n[`#1213`](https://github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n>
18 July 2023\n\n- dont shadow
`global`\n[`#1026`](https://github.com/JakeChampion/fetch/issues/1026)\n-
dont use github
eslint\n[`408d3b6`](https://github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n-
remove invalid-headers
test\n[`e3f6590`](https://github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n-
Update lock.yml
permissions\n[`e97321b`](https://github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.5...v3.6.6)\n\n>
18 July 2023\n\n- fix: ignore not throw on invalid response
headers\n[`#930`](https://github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.4...v3.6.5)\n\n>
18 July 2023\n\n- Add some missed methods which should be normalized as
uppercase\n[`a43b628`](https://github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n-
Update caniuse link to use HTTPS and new
pattern\n[`fb5b0cf`](https://github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.3...v3.6.4)\n\n>
18 July 2023\n\n- always set a signal on
Request\n[`d1d09fb`](https://github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.2...v3.6.3)\n\n>
18 July 2023\n\n- Compatible global equals to the
false\n[`7727e50`](https://github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n#####
Bug Fixes\n\n- Response.error().ok ===
false\n([#&#8203;1412](https://github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.6.0...v3.6.1)\n\n#####
Bug Fixes\n\n- Have unique error messages for xhr timeouts and
errors\n([#&#8203;1380](https://github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.5.0...v3.6.0)\n\n>
18 February 2021\n\n- Fix statusText: undefined should give '' and null
should give
'null'\n[`b5c8bd0`](https://github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n-
Represent non-stringified JSON request body as an \\[object
Object]\nstring\n[`5c6b055`](https://github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n-
Fix eslint and eslint-plugin-github dependency
conflicts\n[`190e698`](https://github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n>
6 November 2020\n\n-
Fixes\n[#&#8203;748](https://github.com/github/fetch/issues/748)\n[`#748`](https://github.com/JakeChampion/fetch/issues/748)\n-
Create
lock.yml\n[`8767781`](https://github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.4.0...v3.4.1)\n\n>
7 September 2020\n\n- Add npmignore file to ensure we always publish the
dist
directory\n[`7ca02eb`](https://github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n-
Make the clean task remove the dist directory and the default
task\ncreate
it\n[`fd23745`](https://github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.3.1...v3.4.0)\n\n>
7 August 2020\n\n- Use globalThis as the global object if it
exists\n[`96c2651`](https://github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.3.0...v3.3.1)\n\n>
4 August 2020\n\n- rename variable to no longer shadow over function of
same
name\n[`c5db762`](https://github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n-
remove semicolon to pass
linting\n[`f264aa5`](https://github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.2.0...v3.3.0)\n\n>
4 August 2020\n\n- Make Response.arrayBuffer() always resolve with a
`ArrayBuffer`\n[`#801`](https://github.com/github/fetch/issues/801)\n-
Stop using top-level `this` to stop rollup
warning\n[`#802`](https://github.com/github/fetch/issues/802)\n-
Recommend an AbortController polyfill which is fully
synchronous\n[`#800`](https://github.com/github/fetch/issues/800)\n-
Add keepalive
caveat\n[`#780`](https://github.com/github/fetch/issues/780)\n-
Throw a TypeError if Request or Response functions are called
without\n`new`\n[`5ef028d`](https://github.com/JakeChampion/fetch/commit/5ef028d61f6c1543603cdacbe0f8a0f00d5957c0)\n-
If headers are passed in via a Record then do not normalise the
header\nnames as part of the
request\n[`b65ed60`](https://github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n-
Update
fetch.js\n[`37b55c2`](https://github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.1.1...v3.2.0)\n\n>
9 July 2020\n\n- Detect if DOMException exists via typeof instead of
trying to call it\nand catching the exception which may get
thrown\n[`#724`](https://github.com/github/fetch/issues/724)\n-
use `this` if `self` is not
defined\n[`#657`](https://github.com/github/fetch/issues/657)\n-
create variable called `global` which is either `self` or
`this`\n[`a0783a5`](https://github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n-
Add support for no-cache and no-store via a cache-busting
querystring\nparameter\n[`a0dcd85`](https://github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n-
make global `this` correct when using
rollup\n[`6e9fc0e`](https://github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.1.0...v3.1.1)\n\n>
8 July 2020\n\n- check if Content-Type header exists prior to examining
the
value\n[`#792`](https://github.com/JakeChampion/fetch/pull/792)\n-
Move from Travis to GitHub
Actions\n[`#793`](https://github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n>
29 June
2020\n\n###\n[`v3.0.1`](https://github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://github.com/github/fetch/compare/v3.0.0...v3.0.1)\n\n>
8 July 2020\n\n- check if Content-Type header exists prior to examining
the
value\n[`#792`](https://github.com/JakeChampion/fetch/pull/792)\n-
Move from Travis to GitHub
Actions\n[`#793`](https://github.com/JakeChampion/fetch/pull/793)\n-
Co-authored-by: Jake Champion
\\<me@jakechampion.name>\n[`#575`](https://github.com/JakeChampion/fetch/pull/575)\n-
work around IE XHR bug with '' URL
Fixes\n[#&#8203;618](https://github.com/github/fetch/issues/618)\n[`#619`](https://github.com/JakeChampion/fetch/pull/619)\n-
Allow exclamation mark as valid header
character\n[`#745`](https://github.com/JakeChampion/fetch/pull/745)\n-
Avoid blob conversion for specific
requests\n[`#752`](https://github.com/JakeChampion/fetch/pull/752)\n-
Compatibility for fetch-mock using
proxy-pollyfill\n[`#736`](https://github.com/JakeChampion/fetch/pull/736)\n-
Change default statusText for
Response\n[`#698`](https://github.com/JakeChampion/fetch/pull/698)\n-
Document more common pitfalls in the
README\n[`#734`](https://github.com/JakeChampion/fetch/pull/734)\n-
field name can not by
empty\n[`#684`](https://github.com/JakeChampion/fetch/pull/684)\n-
work around IE XHR bug with '' URL
Fixes\n[#&#8203;618](https://github.com/github/fetch/issues/618)\n([#&#8203;619](https://github.com/github/fetch/issues/619))\n[`#618`](https://github.com/JakeChampion/fetch/issues/618)\n-
Clarify what parts of the standard we don't want to
implement\n[`#661`](https://github.com/JakeChampion/fetch/issues/661)\n-
Document more
caveats\n[`9a0bce2`](https://github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n-
Fix
issue\n[#&#8203;533](https://github.com/github/fetch/issues/533)\n[`7f030fa`](https://github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n-
Compatibility with newer
eslint-plugin-github\n[`1821b74`](https://github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n>
7 September 2018\n\n- Add flow
definitions\n[`#654`](https://github.com/JakeChampion/fetch/pull/654)\n-
Match spec behavior re: unsupported body
type\n[`#651`](https://github.com/JakeChampion/fetch/pull/651)\n-
Update Karma and detect available browsers when
testing\n[`#652`](https://github.com/JakeChampion/fetch/pull/652)\n-
Adopt Contributor Covenant Code of
Conduct\n[`#649`](https://github.com/JakeChampion/fetch/pull/649)\n-
Change `credentials` default value to
`same-origin`\n[`#640`](https://github.com/JakeChampion/fetch/pull/640)\n-
Switch test suite from PhantomJS to
Karma\n[`#626`](https://github.com/JakeChampion/fetch/pull/626)\n-
Support abort
API\n[`#592`](https://github.com/JakeChampion/fetch/pull/592)\n-
build/distribute as
UMD\n[`#616`](https://github.com/JakeChampion/fetch/pull/616)\n-
Test signal reuse. Add AbortSignal
polyfill.\n[`#2`](https://github.com/JakeChampion/fetch/pull/2)\n-
Clear abort event listener for all xhr completion
states.\n[`#1`](https://github.com/JakeChampion/fetch/pull/1)\n-
Expand install & importing
documentation\n[`#569`](https://github.com/JakeChampion/fetch/issues/569)\n-
Match spec behavior re: unsupported body
type\n[`#576`](https://github.com/JakeChampion/fetch/issues/576)\n-
Run test files through
prettier\n[`0a57487`](https://github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n-
Unwrap `fetch.js` to be a clean module
file\n[`8aec47c`](https://github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n-
Switch from PhantomJS to Karma + Chrome/Firefox for
testing\n[`b539589`](https://github.com/JakeChampion/fetch/commit/b53958904649bfeb784083b9b7e0b89902c7d30e)\n\n</details>\n\n---\n\n###
Configuration\n\n📅 **Schedule**: Branch creation - At any time (no
schedule defined),\nAutomerge - At any time (no schedule defined).\n\n🚦
**Automerge**: Disabled by config. Please merge this manually once
you\nare satisfied.\n\n♻ **Rebasing**: Whenever PR becomes conflicted,
or you tick the\nrebase/retry checkbox.\n\n🔕 **Ignore**: Close this PR
and you won't be reminded about this update\nagain.\n\n---\n\n- [ ] If
you want to rebase/retry this PR, check\nthis box\n\n---\n\nThis PR has
been generated by
[Renovate\nBot](https://github.com/renovatebot/renovate).\n\n\n\nCo-authored-by:
elastic-renovate-prod[bot]
<174716857+elastic-renovate-prod[bot]@users.noreply.github.com>\nCo-authored-by:
Brad White
<brad.white@elastic.co>","sha":"e49ec1082a6d7847afc05dbb6e817d7fe225d628"}}]}]
BACKPORT-->

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
Co-authored-by: Brad White <brad.white@elastic.co>
mgiota pushed a commit that referenced this pull request Oct 15, 2025
…lastic#236613)

## Summary

While investigating a test failure, I've found that Scout doesn't upload
captured screenshots for failed tests to Buildkite Artifacts.

### Before
For example for the following failure:

<img width="3456" height="1924" alt="image"
src="https://github.com/user-attachments/assets/c947c834-dd67-465e-8f09-fa5a1b356ede"
/>

Playwright did capture screenshot
```shell

proc [playwright]     attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
--
  | proc [playwright]     x-pack/platform/plugins/shared/streams_app/test/scout/ui/.scout/test-artifacts/data_management-data_proce-582f5-during-a-processor-creation-local/test-failed-1.png
  | proc [playwright]     ────────────────────────────────────────────────────────────────────────────────────────────────
```
but it's not available under job's **Artifacts**
<img width="3456" height="1910" alt="image"
src="https://github.com/user-attachments/assets/027e16fb-7a08-4d7a-bd74-804690263fae"
/>

### After

#### **Failing test** (see
[build](https://buildkite.com/elastic/kibana-pull-request/builds/344414))

<img width="3442" height="1922" alt="image"
src="https://github.com/user-attachments/assets/558a6a10-f2b0-4491-a54d-cef89b827745"
/>

<img width="3442" height="1916" alt="image"
src="https://github.com/user-attachments/assets/0c1e080d-de40-4a7c-aff3-cab93d4a64c0"
/>

#### **Passing test**

<img width="3456" height="1906" alt="image"
src="https://github.com/user-attachments/assets/5e4f0171-60a0-45b4-a1ab-39fb94f935ce"
/>

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
mgiota pushed a commit that referenced this pull request Mar 19, 2026
…on (elastic#258531)

The `integrations_automatic_import.cy.ts` test was consistently failing
at the deploy step with `Bad Request (400): Building the Integration
failed` because the test invoked the real `buildPackage()` server
endpoint and the real Fleet package install endpoint — neither of which
were mocked, unlike the generation graph endpoints (ECS, categorization,
related).

## Changes

- **`integrations_automatic_import.cy.ts`**: Add `cy.intercept` mocks in
`beforeEach` for the two un-mocked endpoints:
  - `POST /internal/automatic_import/build` → returns `200 {}`
- `POST /api/fleet/epm/packages` → returns `200` with `_meta.name:
'test_integration-1.0.0'`, which is what
`getIntegrationNameFromResponse()` reads to set `integrationName` and
render the success section

```typescript
cy.intercept('POST', '/internal/automatic_import/build', {
  statusCode: 200,
  body: {},
});
cy.intercept('POST', '/api/fleet/epm/packages', {
  statusCode: 200,
  body: {
    _meta: { install_source: 'upload', name: 'test_integration-1.0.0' },
    items: [],
  },
});
```

<!-- START COPILOT ORIGINAL PROMPT -->



<details>

<summary>Original prompt</summary>

> 
> ----
> 
> *This section details on the original issue you should resolve*
> 
> <issue_title>Failing test: Fleet Cypress Tests #1 / Add Integration -
Automatic Import should create an integration</issue_title>
>
<issue_description>https://buildkite.com/elastic/kibana-pull-request/builds/412255#019d019d-c8e8-429d-aa99-0585b8e3fc05
> should create an integration
> Add Integration - Automatic Import should create an integration
> 
> 
> Owners:
> Unable to determine code owners
> Failures in tracked branches: 1
> https://dryrun/
> Buildkite Job
>
https://buildkite.com/elastic/kibana-pull-request/builds/412255#019d019d-c8e8-429d-aa99-0585b8e3fc05
> 
> AssertionError: Timed out retrying after 60000ms: Expected to find
element: `[data-test-subj="integrationSuccessSection"]`, but never found
it.
> at Context.eval
(webpack://@kbn/fleet-plugin-cypress/./e2e/integrations_automatic_import.cy.ts:107:45)
> 
> <img width="1440" height="900" alt="Image"
src="https://github.com/user-attachments/assets/c7e54d6f-85e3-4e2b-87e8-1602c716788d"
/>
> 
> Logs:
[kibana-pull-request_build_412706_fleet-cypress-tests.log](https://github.com/user-attachments/files/26113748/kibana-pull-request_build_412706_fleet-cypress-tests.log)</issue_description>
> 
> ## Comments on the Issue (you are @copilot in this section)
> 
> <comments>
> <comment_new><author>@elasticmachine</author><body>
> Pinging @elastic/fleet (Team:Fleet)</body></comment_new>
> </comments>
> 


</details>



<!-- START COPILOT CODING AGENT SUFFIX -->

- Fixes elastic#258522

<!-- START COPILOT CODING AGENT TIPS -->
---

📱 Kick off Copilot coding agent tasks wherever you are with [GitHub
Mobile](https://gh.io/cca-mobile-docs), available on iOS and Android.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: juliaElastic <90178898+juliaElastic@users.noreply.github.com>
mgiota pushed a commit that referenced this pull request Apr 2, 2026
Closes elastic#258318
Closes elastic#258319

## Summary

Adds logic to the alert episodes table to display `.alert_actions`
information.

This includes:
- New action-specific API paths.
- Snooze
  - **Per group hash.**
- Button in the actions column opens a popover where an `until` can be
picked.
  - **When snoozed**
    - A bell shows up in the status column.
- Mouse over the bell icon to see until when the snooze is in effect.
- Unsnooze
  - **Per group hash.**
  - Clicking the button removes the snooze.
- Ack/Unack
  - **Per episode.**
  - Button in the actions column
  - When "acked", an icon shows in the status column.
- Tags
- This PR only handles displaying tags. They need to be created via API.
- Resolve/Unresolve
  - **Per group hash.**
  - Button inside the ellipsis always
- The status is turned to `inactive` **regardless of the "real"
status.**

<img width="1704" height="672" alt="Screenshot 2026-03-25 at 16 04 12"
src="https://github.com/user-attachments/assets/5ef4111a-6e0c-4114-a60e-ce5f81a86ac6"
/>


## Testing


<details> <summary>POST mock episodes</summary>

```
POST _bulk
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:00:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:01:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "pending" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:02:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:03:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "inactive" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:04:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:05:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:06:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-001", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:07:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:08:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "active" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:09:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "recovering" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:10:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "recovering" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:11:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:12:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "recovering" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:13:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-2", "episode": { "id": "ep-002", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:14:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-003", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:15:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-1", "episode": { "id": "ep-003", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:16:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-4", "episode": { "id": "ep-004", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:17:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-4", "episode": { "id": "ep-004", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:18:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-4", "episode": { "id": "ep-004", "status": "recovering" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:19:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-4", "episode": { "id": "ep-004", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:20:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-5", "episode": { "id": "ep-005", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:21:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-5", "episode": { "id": "ep-005", "status": "pending" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:22:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "gh-5", "episode": { "id": "ep-005", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:23:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "elasticgh-9", "episode": { "id": "ep-006", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:24:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "elasticgh-9", "episode": { "id": "ep-006", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:25:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "elasticgh-9", "episode": { "id": "ep-006", "status": "active" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:26:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-1" }, "group_hash": "elasticgh-9", "episode": { "id": "ep-006", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:14:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-2" }, "group_hash": "gh-7", "episode": { "id": "ep-007", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:15:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-2" }, "group_hash": "gh-7", "episode": { "id": "ep-007", "status": "inactive" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:16:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-3" }, "group_hash": "gh-8", "episode": { "id": "ep-008", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:17:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-3" }, "group_hash": "gh-8", "episode": { "id": "ep-008", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:18:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-3" }, "group_hash": "gh-8", "episode": { "id": "ep-008", "status": "recovering" }, "status": "recovered" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:20:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-4" }, "group_hash": "elasticgh-9", "episode": { "id": "ep-009", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:21:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-4" }, "group_hash": "elasticgh-9", "episode": { "id": "ep-009", "status": "pending" }, "status": "no_data" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:23:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-5" }, "group_hash": "elasticgh-10", "episode": { "id": "ep-010", "status": "pending" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:24:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-5" }, "group_hash": "elasticgh-10", "episode": { "id": "ep-010", "status": "active" }, "status": "breached" }
{ "create": { "_index": ".rule-events" }}
{ "@timestamp": "2026-01-27T16:25:00.000Z", "source": "internal", "type": "alert", "rule": { "id": "rule-5" }, "group_hash": "elasticgh-10", "episode": { "id": "ep-010", "status": "active" }, "status": "no_data" }
```

</details>

- In the POST above, episodes 1 and 3, and episodes 6 and 9 have the
same group hashes.
- Go to `https://localhost:5601/app/observability/alerts-v2` and try all
buttons.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.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.

2 participants