Evaluate zod vs io-ts runtime performance for route params#1
Draft
awahab07 wants to merge 1 commit into
Draft
Conversation
awahab07
pushed a commit
that referenced
this pull request
Jun 5, 2025
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [whatwg-fetch](https://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20) ##### Bug Fixes - Response.error().ok === false ([#&elastic#8203;1412](https://redirect.github.com/JakeChampion/fetch/issues/1412)) ([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75)) ### [`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1380)) ([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046)) ### [`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18) - Fix - File fetching broken since commit [`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9) [`elastic#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375) - Remove broken links [`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe) - automatically generate a changelog [`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e) ### [`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.16...v3.6.17) > 20 July 2023 - Revert "Resolves [https://github.com/JakeChampion/fetch/issues/928](https://redirect.github.com/JakeChampion/fetch/issues/928)" [`elastic#928`](https://redirect.github.com/JakeChampion/fetch/issues/928) ### [`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.15...v3.6.16) > 18 July 2023 - Resolves [https://github.com/JakeChampion/fetch/issues/928](https://redirect.github.com/JakeChampion/fetch/issues/928) [`elastic#928`](https://redirect.github.com/JakeChampion/fetch/issues/928) ### [`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.14...v3.6.15) > 18 July 2023 - fix [https://github.com/JakeChampion/fetch/issues/997](https://redirect.github.com/JakeChampion/fetch/issues/997) [`elastic#997`](https://redirect.github.com/JakeChampion/fetch/issues/997) ### [`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.13...v3.6.14) > 18 July 2023 - Fix [https://github.com/JakeChampion/fetch/issues/1076](https://redirect.github.com/JakeChampion/fetch/issues/1076) [`elastic#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076) ### [`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.12...v3.6.13) > 18 July 2023 - respect charset within readBlobAsText [`elastic#1059`](https://redirect.github.com/JakeChampion/fetch/issues/1059) ### [`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235) ### [`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992) ### [`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.9...v3.6.10) > 18 July 2023 - use globals if they exist [`dffc542`](https://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910) ### [`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f) ### [`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.7...v3.6.8) > 18 July 2023 - validate status is in range [`elastic#1213`](https://redirect.github.com/JakeChampion/fetch/issues/1213) ### [`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7) > 18 July 2023 - dont shadow `global` [`elastic#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026) - dont use github eslint [`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2) - remove invalid-headers test [`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b) - Update lock.yml permissions [`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524) ### [`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930) ### [`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da) - Update caniuse link to use HTTPS and new pattern [`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30) ### [`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.3...v3.6.4) > 18 July 2023 - always set a signal on Request [`d1d09fb`](https://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6) ### [`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.2...v3.6.3) > 18 July 2023 - Compatible global equals to the false [`7727e50`](https://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3) ### [`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2) ##### Bug Fixes - Response.error().ok === false ([#&elastic#8203;1412](https://redirect.github.com/JakeChampion/fetch/issues/1412)) ([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75)) ### [`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1380)) ([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046)) ### [`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad) - Represent non-stringified JSON request body as an \[object Object] string [`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb) - Fix eslint and eslint-plugin-github dependency conflicts [`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b) ### [`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0) > 6 November 2020 - Fixes [#&elastic#8203;748](https://redirect.github.com/github/fetch/issues/748) [`elastic#748`](https://redirect.github.com/JakeChampion/fetch/issues/748) - Create lock.yml [`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec) ### [`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516) - Make the clean task remove the dist directory and the default task create it [`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0) ### [`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410) ### [`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02) - remove semicolon to pass linting [`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9) ### [`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330) [Compare Source](https://redirect.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://redirect.github.com/github/fetch/issues/801) - Stop using top-level `this` to stop rollup warning [`elastic#802`](https://redirect.github.com/github/fetch/issues/802) - Recommend an AbortController polyfill which is fully synchronous [`elastic#800`](https://redirect.github.com/github/fetch/issues/800) - Add keepalive caveat [`elastic#780`](https://redirect.github.com/github/fetch/issues/780) - Throw a TypeError if Request or Response functions are called without `new` [`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508) - Update fetch.js [`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2) ### [`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320) [Compare Source](https://redirect.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://redirect.github.com/github/fetch/issues/724) - use `this` if `self` is not defined [`elastic#657`](https://redirect.github.com/github/fetch/issues/657) - create variable called `global` which is either `self` or `this` [`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562) - Add support for no-cache and no-store via a cache-busting querystring parameter [`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf) - make global `this` correct when using rollup [`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114) ### [`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792) - Move from Travis to GitHub Actions [`elastic#793`](https://redirect.github.com/JakeChampion/fetch/pull/793) ### [`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310) [Compare Source](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0) > 29 June 2020 ### [`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301) [Compare Source](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792) - Move from Travis to GitHub Actions [`elastic#793`](https://redirect.github.com/JakeChampion/fetch/pull/793) - Co-authored-by: Jake Champion \<me@jakechampion.name> [`elastic#575`](https://redirect.github.com/JakeChampion/fetch/pull/575) - work around IE XHR bug with '' URL Fixes [#&elastic#8203;618](https://redirect.github.com/github/fetch/issues/618) [`elastic#619`](https://redirect.github.com/JakeChampion/fetch/pull/619) - Allow exclamation mark as valid header character [`elastic#745`](https://redirect.github.com/JakeChampion/fetch/pull/745) - Avoid blob conversion for specific requests [`elastic#752`](https://redirect.github.com/JakeChampion/fetch/pull/752) - Compatibility for fetch-mock using proxy-pollyfill [`elastic#736`](https://redirect.github.com/JakeChampion/fetch/pull/736) - Change default statusText for Response [`elastic#698`](https://redirect.github.com/JakeChampion/fetch/pull/698) - Document more common pitfalls in the README [`elastic#734`](https://redirect.github.com/JakeChampion/fetch/pull/734) - field name can not by empty [`elastic#684`](https://redirect.github.com/JakeChampion/fetch/pull/684) - work around IE XHR bug with '' URL Fixes [#&elastic#8203;618](https://redirect.github.com/github/fetch/issues/618) ([#&elastic#8203;619](https://redirect.github.com/github/fetch/issues/619)) [`elastic#618`](https://redirect.github.com/JakeChampion/fetch/issues/618) - Clarify what parts of the standard we don't want to implement [`elastic#661`](https://redirect.github.com/JakeChampion/fetch/issues/661) - Document more caveats [`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581) - Fix issue [#&elastic#8203;533](https://redirect.github.com/github/fetch/issues/533) [`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992) - Compatibility with newer eslint-plugin-github [`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4) ##### [v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0) > 7 September 2018 - Add flow definitions [`elastic#654`](https://redirect.github.com/JakeChampion/fetch/pull/654) - Match spec behavior re: unsupported body type [`elastic#651`](https://redirect.github.com/JakeChampion/fetch/pull/651) - Update Karma and detect available browsers when testing [`elastic#652`](https://redirect.github.com/JakeChampion/fetch/pull/652) - Adopt Contributor Covenant Code of Conduct [`elastic#649`](https://redirect.github.com/JakeChampion/fetch/pull/649) - Change `credentials` default value to `same-origin` [`elastic#640`](https://redirect.github.com/JakeChampion/fetch/pull/640) - Switch test suite from PhantomJS to Karma [`elastic#626`](https://redirect.github.com/JakeChampion/fetch/pull/626) - Support abort API [`elastic#592`](https://redirect.github.com/JakeChampion/fetch/pull/592) - build/distribute as UMD [`elastic#616`](https://redirect.github.com/JakeChampion/fetch/pull/616) - Test signal reuse. Add AbortSignal polyfill. [`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2) - Clear abort event listener for all xhr completion states. [`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1) - Expand install & importing documentation [`elastic#569`](https://redirect.github.com/JakeChampion/fetch/issues/569) - Match spec behavior re: unsupported body type [`elastic#576`](https://redirect.github.com/JakeChampion/fetch/issues/576) - Run test files through prettier [`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3) - Unwrap `fetch.js` to be a clean module file [`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610) - Switch from PhantomJS to Karma + Chrome/Firefox for testing [`b539589`](https://redirect.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://redirect.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>
awahab07
pushed a commit
that referenced
this pull request
Jun 24, 2025
… (elastic#222644) # Backport This will backport the following commits from `main` to `9.0`: - [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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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>
awahab07
pushed a commit
that referenced
this pull request
Aug 22, 2025
…) (elastic#222641) # Backport This will backport the following commits from `main` to `8.17`: - [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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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>
awahab07
added a commit
that referenced
this pull request
Oct 13, 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>
awahab07
pushed a commit
that referenced
this pull request
Nov 10, 2025
…) (elastic#222642) # Backport This will backport the following commits from `main` to `8.18`: - [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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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://redirect.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://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.19...v3.6.20)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.19`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.18`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3618)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.17...v3.6.18)\n\n- Fix - File fetching broken since commit\n[`0c1d2b9`](https://redirect.github.com/github/fetch/commit/0c1d2b9)\n[`#1375`](https://redirect.github.com/JakeChampion/fetch/pull/1375)\n- Remove broken links\n[`1dc07c6`](https://redirect.github.com/JakeChampion/fetch/commit/1dc07c6064a32e989306fb2324204c56c93140fe)\n- automatically generate a changelog\n[`0e7d1dd`](https://redirect.github.com/JakeChampion/fetch/commit/0e7d1dd95826b3b76510f0832784207f2609145e)\n\n###\n[`v3.6.17`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3617)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\"\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.16`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3616)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/928)\n[`#928`](https://redirect.github.com/JakeChampion/fetch/issues/928)\n\n###\n[`v3.6.15`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3615)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/997)\n[`#997`](https://redirect.github.com/JakeChampion/fetch/issues/997)\n\n###\n[`v3.6.14`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3614)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1076)\n[`#1076`](https://redirect.github.com/JakeChampion/fetch/issues/1076)\n\n###\n[`v3.6.13`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3613)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1059)\n\n###\n[`v3.6.12`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3612)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1235)\n\n###\n[`v3.6.11`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3611)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/992)\n\n###\n[`v3.6.10`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v3610)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/dffc542fe7140f35ee7fec29e3da67f3bf080910)\n\n###\n[`v3.6.9`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v369)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7d92dff12d7c4058b57c7e77adeb0a76ffab639f)\n\n###\n[`v3.6.8`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v368)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/1213)\n\n###\n[`v3.6.7`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v367)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.6...v3.6.7)\n\n> 18 July 2023\n\n- dont shadow `global`\n[`#1026`](https://redirect.github.com/JakeChampion/fetch/issues/1026)\n- dont use github eslint\n[`408d3b6`](https://redirect.github.com/JakeChampion/fetch/commit/408d3b60e27abef325dd898d899430c46a0012b2)\n- remove invalid-headers test\n[`e3f6590`](https://redirect.github.com/JakeChampion/fetch/commit/e3f65907924b7692af7c08cd92044456bc92ad8b)\n- Update lock.yml permissions\n[`e97321b`](https://redirect.github.com/JakeChampion/fetch/commit/e97321bc081e80275397fc4c7a990791aa8b3524)\n\n###\n[`v3.6.6`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v366)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/issues/930)\n\n###\n[`v3.6.5`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v365)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/a43b6283833c403230bb1a5238e2d7ac435c52da)\n- Update caniuse link to use HTTPS and new pattern\n[`fb5b0cf`](https://redirect.github.com/JakeChampion/fetch/commit/fb5b0cf42b470faf8c5448ab461d561f34380a30)\n\n###\n[`v3.6.4`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v364)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/d1d09fb8039b4b8c7f2f5d6c844ea72d8a3cefe6)\n\n###\n[`v3.6.3`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v363)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7727e50493eafae9a7005f10f18f81e5bbcbfdd3)\n\n###\n[`v3.6.2`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3620-2023-12-13)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.6.1...v3.6.2)\n\n##### Bug Fixes\n\n- Response.error().ok === false\n([#​1412](https://redirect.github.com/JakeChampion/fetch/issues/1412))\n([27e1c75](https://redirect.github.com/JakeChampion/fetch/commit/27e1c75f830f0b70a40b511e03652776951aca75))\n\n###\n[`v3.6.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#3619-2023-09-11)\n\n[Compare\nSource](https://redirect.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([#​1380](https://redirect.github.com/JakeChampion/fetch/issues/1380))\n([7170f0b](https://redirect.github.com/JakeChampion/fetch/commit/7170f0b127d16c5895aba61c9168482834809046))\n\n###\n[`v3.6.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v360)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b5c8bd0fee1530f1c204cc5c68b427a3498dbdad)\n- Represent non-stringified JSON request body as an \\[object Object]\nstring\n[`5c6b055`](https://redirect.github.com/JakeChampion/fetch/commit/5c6b055e6ae6f718f416c94bfcdc89693d0abdcb)\n- Fix eslint and eslint-plugin-github dependency conflicts\n[`190e698`](https://redirect.github.com/JakeChampion/fetch/commit/190e698f8e737ad751a11de60f6b8b3301fa557b)\n\n###\n[`v3.5.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v350)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.4.1...v3.5.0)\n\n> 6 November 2020\n\n- Fixes\n[#​748](https://redirect.github.com/github/fetch/issues/748)\n[`#748`](https://redirect.github.com/JakeChampion/fetch/issues/748)\n- Create lock.yml\n[`8767781`](https://redirect.github.com/JakeChampion/fetch/commit/87677811d543cfb44b124e026b50f710e95017ec)\n\n###\n[`v3.4.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v341)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/7ca02eb0234b0a61fd711d922b2e69d3c5390516)\n- Make the clean task remove the dist directory and the default task\ncreate it\n[`fd23745`](https://redirect.github.com/JakeChampion/fetch/commit/fd23745f3474cd23d88e5128d8bc74813be1aff0)\n\n###\n[`v3.4.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v340)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/96c26512608a0081d493df4fc17da4394bd1b410)\n\n###\n[`v3.3.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v331)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/c5db7621c3b1530683b8f706388d4ac210a2db02)\n- remove semicolon to pass linting\n[`f264aa5`](https://redirect.github.com/JakeChampion/fetch/commit/f264aa5704f7431c429ec16e6fdd3c7034c7f2d9)\n\n###\n[`v3.3.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v330)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/801)\n- Stop using top-level `this` to stop rollup warning\n[`#802`](https://redirect.github.com/github/fetch/issues/802)\n- Recommend an AbortController polyfill which is fully synchronous\n[`#800`](https://redirect.github.com/github/fetch/issues/800)\n- Add keepalive caveat\n[`#780`](https://redirect.github.com/github/fetch/issues/780)\n- Throw a TypeError if Request or Response functions are called without\n`new`\n[`5ef028d`](https://redirect.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://redirect.github.com/JakeChampion/fetch/commit/b65ed608604492d605df2d62cd4c5050e2a8d508)\n- Update fetch.js\n[`37b55c2`](https://redirect.github.com/JakeChampion/fetch/commit/37b55c27413b902cef4e629892424ae469fb1ea2)\n\n###\n[`v3.2.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v320)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/github/fetch/issues/724)\n- use `this` if `self` is not defined\n[`#657`](https://redirect.github.com/github/fetch/issues/657)\n- create variable called `global` which is either `self` or `this`\n[`a0783a5`](https://redirect.github.com/JakeChampion/fetch/commit/a0783a5571018191578cc08d5b3bac61a0b64562)\n- Add support for no-cache and no-store via a cache-busting querystring\nparameter\n[`a0dcd85`](https://redirect.github.com/JakeChampion/fetch/commit/a0dcd853f8ed29d06a022f92c87c303bd0e1f1bf)\n- make global `this` correct when using rollup\n[`6e9fc0e`](https://redirect.github.com/JakeChampion/fetch/commit/6e9fc0ee026dd89d864c3d176c57789ee5615114)\n\n###\n[`v3.1.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v311)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n\n###\n[`v3.1.0`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v310)\n\n[Compare\nSource](https://redirect.github.com/github/fetch/compare/v3.0.1...v3.1.0)\n\n> 29 June 2020\n\n###\n[`v3.0.1`](https://redirect.github.com/github/fetch/blob/HEAD/CHANGELOG.md#v301)\n\n[Compare\nSource](https://redirect.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://redirect.github.com/JakeChampion/fetch/pull/792)\n- Move from Travis to GitHub Actions\n[`#793`](https://redirect.github.com/JakeChampion/fetch/pull/793)\n- Co-authored-by: Jake Champion \\<me@jakechampion.name>\n[`#575`](https://redirect.github.com/JakeChampion/fetch/pull/575)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n[`#619`](https://redirect.github.com/JakeChampion/fetch/pull/619)\n- Allow exclamation mark as valid header character\n[`#745`](https://redirect.github.com/JakeChampion/fetch/pull/745)\n- Avoid blob conversion for specific requests\n[`#752`](https://redirect.github.com/JakeChampion/fetch/pull/752)\n- Compatibility for fetch-mock using proxy-pollyfill\n[`#736`](https://redirect.github.com/JakeChampion/fetch/pull/736)\n- Change default statusText for Response\n[`#698`](https://redirect.github.com/JakeChampion/fetch/pull/698)\n- Document more common pitfalls in the README\n[`#734`](https://redirect.github.com/JakeChampion/fetch/pull/734)\n- field name can not by empty\n[`#684`](https://redirect.github.com/JakeChampion/fetch/pull/684)\n- work around IE XHR bug with '' URL Fixes\n[#​618](https://redirect.github.com/github/fetch/issues/618)\n([#​619](https://redirect.github.com/github/fetch/issues/619))\n[`#618`](https://redirect.github.com/JakeChampion/fetch/issues/618)\n- Clarify what parts of the standard we don't want to implement\n[`#661`](https://redirect.github.com/JakeChampion/fetch/issues/661)\n- Document more caveats\n[`9a0bce2`](https://redirect.github.com/JakeChampion/fetch/commit/9a0bce23454cdd5beefd9d4c599664003573e581)\n- Fix issue\n[#​533](https://redirect.github.com/github/fetch/issues/533)\n[`7f030fa`](https://redirect.github.com/JakeChampion/fetch/commit/7f030fab4d79433204331cefe365f5fbbab9e992)\n- Compatibility with newer eslint-plugin-github\n[`1821b74`](https://redirect.github.com/JakeChampion/fetch/commit/1821b74b808152d4d6e787c21165f2d569c2a7c4)\n\n#####\n[v3.0.0](https://redirect.github.com/JakeChampion/fetch/compare/v2.0.4...v3.0.0)\n\n> 7 September 2018\n\n- Add flow definitions\n[`#654`](https://redirect.github.com/JakeChampion/fetch/pull/654)\n- Match spec behavior re: unsupported body type\n[`#651`](https://redirect.github.com/JakeChampion/fetch/pull/651)\n- Update Karma and detect available browsers when testing\n[`#652`](https://redirect.github.com/JakeChampion/fetch/pull/652)\n- Adopt Contributor Covenant Code of Conduct\n[`#649`](https://redirect.github.com/JakeChampion/fetch/pull/649)\n- Change `credentials` default value to `same-origin`\n[`#640`](https://redirect.github.com/JakeChampion/fetch/pull/640)\n- Switch test suite from PhantomJS to Karma\n[`#626`](https://redirect.github.com/JakeChampion/fetch/pull/626)\n- Support abort API\n[`#592`](https://redirect.github.com/JakeChampion/fetch/pull/592)\n- build/distribute as UMD\n[`#616`](https://redirect.github.com/JakeChampion/fetch/pull/616)\n- Test signal reuse. Add AbortSignal polyfill.\n[`#2`](https://redirect.github.com/JakeChampion/fetch/pull/2)\n- Clear abort event listener for all xhr completion states.\n[`#1`](https://redirect.github.com/JakeChampion/fetch/pull/1)\n- Expand install & importing documentation\n[`#569`](https://redirect.github.com/JakeChampion/fetch/issues/569)\n- Match spec behavior re: unsupported body type\n[`#576`](https://redirect.github.com/JakeChampion/fetch/issues/576)\n- Run test files through prettier\n[`0a57487`](https://redirect.github.com/JakeChampion/fetch/commit/0a5748775d99f882172375693f56761383f8faf3)\n- Unwrap `fetch.js` to be a clean module file\n[`8aec47c`](https://redirect.github.com/JakeChampion/fetch/commit/8aec47cb6c67a9a321f1eb07457f70fc46235610)\n- Switch from PhantomJS to Karma + Chrome/Firefox for testing\n[`b539589`](https://redirect.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://redirect.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>
awahab07
pushed a commit
that referenced
this pull request
Mar 21, 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>
awahab07
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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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": "elasticgh-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>
awahab07
pushed a commit
that referenced
this pull request
Apr 26, 2026
…#263470) ## Summary Several small, independent optimizations to the Kibana PR CI pipeline. Timing data below is measured from actual Buildkite logs (baselines #427940–#427945 vs PR builds #428076, #428363, #428619). ### 1. Parallel bootstrap + artifact download (`common.sh`) All functional/integration test steps (FTR, Scout, Cypress) previously ran bootstrap and distributable download sequentially. They are independent: - **Bootstrap** installs `node_modules` so `node scripts/functional_tests` can run. - **Artifact download** fetches and extracts the ~426 MiB Kibana distributable tarball. This is the biggest win in the PR. Running them in parallel lets the download (the typical bottleneck) overlap with bootstrap. **Measured (yarn start → first `node scripts/functional_tests`, FTR Configs #1):** | Build | Bootstrap | Download | Total setup | | --- | --- | --- | --- | | #427940 (baseline) | 42s | 20s | 63s | | #427941 (baseline) | 57s | 32s | 93s | | #427942 (baseline) | 41s | 15s | 57s | | #427943 (baseline) | 35s | 20s | 56s | | #427944 (baseline) | 41s | 36s | 81s | | #427945 (baseline) | 42s | 36s | 83s | | **Baseline avg** | | | **~72s** | | #428076 (PR) | parallel | 37s | **38s** | | #428363 (PR) | parallel | 38s | **39s** | | #428619 (PR) | parallel | 36s | **39s** | **Per-step savings: ~20–55s (avg ~33s)**, depending on how slow the baseline download happened to be. With ~230 FTR/Scout/Cypress steps per PR build, that's on the order of **~1.5–2 hours of aggregate agent-time**. Error handling preserves the previous behavior: bootstrap and download PIDs are waited on individually and each exit code is propagated. ### 2. Background docker image cleanup (`build_kibana.sh`) `clean_cached_images` (prunes Docker images to free disk space) took ~20s synchronously before the Kibana build. `node scripts/build` takes ~7.5 minutes and doesn't use Docker, so the cleanup is backgrounded and completes well before the archive step that actually benefits from the freed space. **Measured in the Build Kibana Distribution step: ~21s saved.** | Build | Docker cleanup wait | | --- | --- | | Baseline avg (6 builds) | **21.1s** | | #428076 / #428363 / #428619 (PR) | **0.0s** | ### 3. Simplified archive extraction (`build_kibana.sh`) Previously the archive step extracted the tarball to an intermediate `install/kibana` directory and then did a recursive copy to `$KIBANA_BUILD_LOCATION`. Now it extracts directly to the build location in a single `tar` command, eliminating the redundant `cp -pR` and temporary directory. **Measured savings: ~3s** in the finalize→archive phase. ### 4. Custom checkout plugin for Build Kibana Distribution step (`base.yml`) Replaces the default checkout with the `custom-checkout#v1.8.0` plugin configured for a shallow fetch (`--depth=1`, `--no-tags`, `--single-branch`), using the local git mirror at `/opt/git-mirrors/git-github-com-elastic-kibana-git`. The Kibana CI agents already run with a warm git mirror, so the default checkout is not downloading full history — the actual data transferred on a default checkout is a few MiB, not GB. The benefit of this change is modest but consistent: skipping tag refs and reducing pack-transfer round-trips. **Measured (Receiving objects in Build Kibana Distribution log):** | Variant | Objects | Data transferred | | --- | --- | --- | | Baseline (`git clone --reference` to mirror) | 2484–2518 | ~3.9 MiB | | PR (`custom-checkout` + `--depth=1 --no-tags`) | 296 + plugin 341 | ~2.1 MiB | **Measured wall-clock savings in the "before yarn" phase: ~15s** (36s → 19s), which comes mostly from skipping the fetch negotiation for tag refs rather than from smaller pack transfer. ### 5. ~~Background CI stats shipping (`post_build_kibana.sh`)~~ — reverted Originally this PR also backgrounded `ship_ci_stats` to overlap it with the artifact upload. Measured savings were only ~0.8–1.4s per build (ship takes ~1s; upload takes ~3.4s), and the pattern introduced a subtle correctness hazard: if `buildkite-agent artifact upload` failed, `set -e` would exit before `wait`, leaving ship as an orphan and swallowing any ship failure. Reverted per review feedback. ### Aggregate timing — Build Kibana Distribution step Baseline average (6 builds) vs PR build #428619, phase-by-phase: | Phase | Baseline avg | PR #428619 | Delta | Attributable to | | --- | --- | --- | --- | --- | | Checkout + setup | 35.8s | 19.1s | **−16.7s** | custom-checkout plugin (this PR) | | Yarn + bootstrap | 51.6s | 6.5s | −45.1s | main commit elastic#262983 (webpack pre-build skip), not this PR | | Docker cleanup (pre-build) | 21.1s | 0.0s | **−21.1s** | backgrounded cleanup (this PR) | | `node scripts/build` | 435.3s | 454.9s | +19.6s | run-to-run variance | | Finalize → archive | 13.1s | 10.0s | **−3.1s** | simplified archive extraction (this PR) | | Ship → upload → end | 4.8s | 3.4s | −1.4s | ~~ship_ci_stats backgrounded~~ (reverted) | | **TOTAL** | **561.6s (9.4 min)** | **493.9s (8.2 min)** | **−67.7s** | | **Savings attributable to this PR in the Build step: ~41s** (21 + 16.7 + 3.1, from docker cleanup bg + custom-checkout + archive simplification). An additional ~32s win comes from a separate main commit (elastic#262983) that landed during this PR's iteration; ~20s is absorbed by build-script variance. The −1.4s on the ship/upload row disappears now that change elastic#5 has been reverted. ### Aggregate per-PR savings | Scope | Savings | | --- | --- | | Build Kibana Distribution step | ~40s wall-clock (critical path) | | ~230 FTR / Scout / Cypress steps × ~33s | ~2 hours aggregate agent-time | ### Build results | Build | Commit | Result | Notes | | --- | --- | --- | --- | | [#428076](https://buildkite.com/elastic/kibana-pull-request/builds/428076) | `d49dc1b` | Passed | 229 FTR configs passed; 3 steps canceled (unrelated GCP disk issue) | | [#428363](https://buildkite.com/elastic/kibana-pull-request/builds/428363) | `9f3edcc` | Passed | 283/284 jobs, 0 test failures | | [#428619](https://buildkite.com/elastic/kibana-pull-request/builds/428619) | `82cad1d` | Passed | 280+ jobs, 0 test failures | ## Test plan - [x] CI "Build Kibana Distribution" step passes — docker cleanup completes before archive, tarball extracts directly to build location - [x] CI stats shipping completes (awaited after artifact upload) - [x] Functional/integration test steps pass — bootstrap and download both succeed when parallelized - [x] Bootstrap failures are correctly propagated (non-zero exit code) - [x] Artifact download failures are correctly propagated - [x] Custom checkout plugin clones the correct commit for the build step --- Made with [Cursor](https://cursor.com); timing tables re-measured from actual Buildkite logs after review feedback. --------- Co-authored-by: Alex Szabo <delanni.alex@gmail.com>
awahab07
pushed a commit
that referenced
this pull request
May 6, 2026
…stic#260544) ## Summary - Migrates the endpoint case attachment from the legacy `ExternalReferenceAttachmentType` to the new unified `UnifiedReferenceAttachmentType` on both client and server. - New endpoint response-action attachments are written as `{ type: 'security.endpoint', attachmentId, metadata }` (`UnifiedReferenceAttachmentPayload`) instead of the legacy `externalReference` shape. - Adds server-side `io-ts` schema validation for endpoint attachment metadata (`command`, `comment`, `targets[]` with a closed union on `agentType`, unknown keys rejected, non-empty `targets` required). - Adds a generic `externalReference` ↔ unified transformer in the Cases plugin so pre-existing legacy endpoint attachments render as unified on read and unified writes fall back to legacy storage when the new SO type is disabled — no data migration required. ## Details Part of the [Cases Attachments v2 migration](elastic/security-team#15569). The endpoint attachment (historically `externalReferenceAttachmentTypeId: 'endpoint'`) is now registered as the unified type `SECURITY_ENDPOINT_ATTACHMENT_TYPE = 'security.endpoint'`, re-exported from `@kbn/cases-plugin/common`. ### What changed | Layer | Before | After | |-------|--------|-------| | Client registration (`security_solution/public/plugin.tsx`) | `registerExternalReference(getExternalReferenceAttachmentEndpointRegular())` | `registerUnified(getEndpointUnifiedAttachment())` | | Server registration (`security_solution/server/plugin.ts`) | `registerExternalReference({ id: CASE_ATTACHMENT_ENDPOINT_TYPE_ID })` | `registerUnified({ id: SECURITY_ENDPOINT_ATTACHMENT_TYPE, schemaValidator: validateEndpointAttachmentMetadata })` | | Attachment creation (`base_response_actions_client.ts`) | `{ type: 'externalReference', externalReferenceId, externalReferenceStorage, externalReferenceAttachmentTypeId: 'endpoint', externalReferenceMetadata }` | `{ type: 'security.endpoint', attachmentId, metadata, owner }` | | Metadata validation | none | `io-ts` validator run on the unified write path | | Client-side renderers | `external_reference.tsx` + 2 lazy wrappers | `unified_attachment.tsx` + updated `endpoint_event.tsx` / `endpoint_children.tsx` | | Constant `CASE_ATTACHMENT_ENDPOINT_TYPE_ID` | defined in Security Solution | removed; import `SECURITY_ENDPOINT_ATTACHMENT_TYPE` from `@kbn/cases-plugin/common` | ### Backward compatibility (no data migration needed) The legacy `registerExternalReference` calls are removed — BWC is delivered instead by a generic transformer in the Cases plugin: - **Read path** — the Kibana Cases UI reads cases via the internal `resolve` endpoint with `mode: 'unified'`. The new `externalReferenceAttachmentTransformer` in `x-pack/platform/plugins/shared/cases/server/common/attachments/external_reference.ts` converts any pre-existing legacy `externalReference` endpoint attachments stored in `cases-comments` into the unified `security.endpoint` shape on read, driven by `EXTERNAL_REFERENCE_TYPE_MAP`. Existing cases render identically post-deploy without any backfill. - **Write path** — when `xpack.cases.attachments.enabled` is `false` (default), the Cases plugin translates the unified payload back to the legacy `externalReference` shape via `toLegacySchema` and persists it to `cases-comments` — byte-for-byte equivalent to today's storage. When the flag is `true`, the unified payload is stored as-is in the new `cases-attachments` SO. Either way, the on-disk format stays consistent with whatever the deployment is already using. This also gives follow-up subtypes (e.g. `osquery`, other response-action types) a clean seam: add an entry to `EXTERNAL_REFERENCE_TYPE_MAP` / `UNIFIED_TO_EXTERNAL_REFERENCE_TYPE_MAP` and they get the same round-trip behaviour for free. ### Public case APIs `GET /api/cases/:id` (`totalComment`) and `GET /api/cases/:id/comments/_find` continue to be scoped to user-generated comments and do not surface endpoint attachments — this is pre-existing, intended behaviour and is unchanged by this PR. The Kibana UI uses the internal `resolve` endpoint which returns all attachment types and renders endpoint attachments via the new unified registry. ## Incremental fixes after first review A second pass addressed three review items from @szwarckonrad on the upgrade-path walkthrough, plus one CI-driven snapshot follow-up. None of them change the design described above; they harden the same migration against edge cases the first pass missed. 1. **Back-compat for legacy-shape API writes** (`security_solution/server/cases/attachments/register.ts` + `plugin.ts`) — the legacy `endpoint` external-reference id is registered alongside the new unified `security.endpoint` so existing API clients that still POST `{ type: 'externalReference', externalReferenceAttachmentTypeId: 'endpoint', ... }` are not rejected with `400 "Attachment type endpoint is not registered."`. The cases server's external-reference transformer already converts these legacy SOs to the unified shape on read; this restores the same behaviour for legacy-shape *writes*. Covered by a focused unit test (`register.test.ts`) that explicitly asserts the BWC registration so it can't be silently dropped in a future refactor. 2. **400 instead of 500 from the metadata validator** (`endpoint_metadata_schema.ts`) — `validateEndpointAttachmentMetadata` now throws `Boom.badRequest` on invalid metadata. Errors thrown from a registered cases-plugin `schemaValidator` callback are surfaced to the HTTP client as-is — a plain `Error` would have bubbled up as `500 Internal Server Error` with a stack trace in the server log for what is really a caller mistake. Covered by new tests asserting `Boom.isBoom` and `statusCode: 400` for null/non-object/missing-fields/empty-targets/unknown-keys inputs. 3. **Byte-clean legacy storage** (`cases/server/services/attachments/index.ts`) — when a unified payload (`{ type: 'security.endpoint', attachmentId, metadata }`) is POSTed but `xpack.cases.attachments.enabled` is OFF, the request attributes still carry those keys after `io-ts` decoding and could leak into `_source` (the `cases-comments` mapping is `dynamic: false`, so they would be stored but not indexed). The new `stripUnifiedOnlyFields` helper guarantees byte-for-byte equivalence with pre-migration legacy writes for `create`/`bulkCreate`/`update`/`bulkUpdate`. Covered by two regression tests in `services/attachments/index.test.ts`. 4. **Snapshot follow-up for #1** (`cases_api_integration/.../external_references.ts`) — the registry-snapshot assertion that guards the externalReference registry now expects `endpoint: 'e13fe41b5c330dd923da91992ed0cedb7e30960f'` again, with an inline comment explaining the BWC intent. **This file is owned by Response Ops via CODEOWNERS** — the snapshot's purpose is exactly to surface this kind of change for their review. CI on the latest push: green (build #437809, 428/428 jobs). ## Test plan - [x] Unit tests for the generic `externalReference` ↔ unified transformer, storage-type resolver, and type-routing helper (`x-pack/platform/plugins/shared/cases/server/common/attachments/*.test.ts`). - [x] Unit tests for `validateEndpointAttachmentMetadata` covering: valid metadata, each missing required field, empty `targets`, invalid `agentType`, unknown top-level keys, and non-object input. - [x] Updated `endpoint_actions_client` and `base_response_actions_client` unit tests assert the new unified payload shape (`type: 'security.endpoint'`, `attachmentId`, `metadata`). - [x] Updated unit tests for `endpoint_event.tsx` / `endpoint_children.tsx` against the unified props shape. - [x] Integration-test registry expectations updated: `security.endpoint` appears in `registered_unified_{basic,trial}.ts`. `endpoint` is **kept** in `external_references.ts` with a comment explaining the back-compat re-registration (see "Incremental fixes after first review" below). - [x] Type check and lint pass. - [x] Manual end-to-end validation against **Microsoft Defender for Endpoint** — unisolate action from Kibana correctly produces a `cases-attachments` SO of `type: 'security.endpoint'` with `microsoft_defender_endpoint` metadata, rendered by the UI via the unified registry. - [x] Manual end-to-end validation against **CrowdStrike Falcon** — unisolate action from Kibana correctly produces a `cases-attachments` SO of `type: 'security.endpoint'` with `crowdstrike` metadata, rendered by the UI via the unified registry. - [x] Manual verification: isolate a host via response actions and confirm the case attachment renders correctly. <img width="1798" height="1064" alt="CleanShot 2026-04-20 at 14 53 16@2x" src="https://github.com/user-attachments/assets/8c216722-a2a4-42ac-b5ae-dc8962cb2d0d" /> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
awahab07
pushed a commit
that referenced
this pull request
May 25, 2026
elastic#270540) ## Release note When using Kibana Spaces, the Synthetics monitor health endpoint could incorrectly report monitors as unhealthy — showing errors such as "missing location", "missing agent policy", or "missing package policy" — even when everything was properly configured. This happened because the health check was only looking for monitors, private locations, and Fleet policies in the current space, missing resources that existed in other spaces. These issues are now fixed: the health check correctly resolves monitors, private locations, package policies, and agent policies across all relevant spaces, giving an accurate health status regardless of how resources are distributed across your Kibana Spaces. ## Summary Closes elastic#270477. `POST /internal/synthetics/monitors/_health` returned wrong results when monitors lived outside the request's space — `missing_package_policy` errors when called from the monitor's space, and 404s when called from `default`. Two independent space-scoping bugs: 1. **Package policy lookup ignored space.** `getExistingPackagePoliciesMap` called Fleet's `packagePolicyService.getByIDs` with `createInternalRepository()`, which is scoped to the default namespace. Package policies created for monitors in another space were therefore invisible. 2. **Monitor saved-object lookup was space-scoped.** `MonitorConfigRepository.get` used the request-scoped saved-objects client, restricted to the request's space. Calling `_health` from `default` for a monitor that lives elsewhere returned a 404. ## What changed - **`PackagePolicyService.getByIds`** — accepts a new optional `additionalSpaceIds`, so the wrapper's per-space scoped-client fan-out can broaden beyond `[spaceId, default]`. Existing callers keep their old behavior. - **`MonitorConfigRepository.getAcrossSpaces(id, namespaces, soClient?)`** — new method that resolves a monitor across an arbitrary list of spaces. Uses the multi-space type's per-object `namespaces` array in one bulkGet entry, plus one entry per namespace for the `namespaceType: 'single'` legacy type. Accepts an injected `soClient` so the health API can pass `createInternalRepository()` and bypass the request's space restriction. - **`MonitorIntegrationHealthApi`**: - Computes `allSpaces = { requestSpace, ...allSpacesWithMonitors }` once, up-front. - `fetchMonitors` calls `monitorConfigRepository.getAcrossSpaces` with the internal repository → fixes bug #2. - `getExistingPackagePoliciesMap` uses the `PackagePolicyService` wrapper with `additionalSpaceIds` → fixes bug #1. ## Test plan - [x] `node scripts/jest` on the three affected suites — **77/77 passing** (includes new cross-space coverage and a new `getAcrossSpaces` test block). - [x] `node scripts/type_check --project x-pack/solutions/observability/plugins/synthetics/tsconfig.json` — clean. - [x] `node scripts/eslint` on the changed files — clean. - [ ] Manual: create a monitor with a private location in a non-default space, then call `POST /internal/synthetics/monitors/_health` both from that space and from `default`. Verify each call reports the monitor accurately instead of `missing_package_policy` / 404. ## Related - elastic#270137 — related health API fix (project monitor policy ID + infinite polling). Made with [Cursor](https://cursor.com) --------- Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Miguel Martín <miguel.martin@elastic.co> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
awahab07
pushed a commit
that referenced
this pull request
May 27, 2026
Fixes elastic#261258 possibly also elastic#264565 (to be verified) ## Summary Add `meta: { id }` to Fleet body/response schemas Files changed: - `server/types/models/agent_policy.ts` — versioned policy schemas (v3–v6), `new_agent_policy`, `agent_policy`, `agent_policy_response`, `full_agent_policy`, outputs responses - `server/types/rest_spec/agent_policy.ts` — bulk get, copy, delete, full policy, K8s manifest, list outputs, cleanup task request/response schemas - `server/types/models/enrollment_api_key.ts `— `enrollment_api_key` - `server/types/rest_spec/enrollment_api_key.ts` — enrollment key CRUD and bulk delete schemas - `common/types/models/package_policy_schema.ts `— all package policy schemas: new, versioned (v22–v24), simplified, update, response, dry-run, status - `server/types/rest_spec/package_policy.ts` — bulk get, create, delete, upgrade, dry-run schemas - `server/types/rest_spec/epm.ts `— ~40 package management schemas (categories, package info/list/stats, install/delete/bulk operations, etc.) - `server/types/rest_spec/agent.ts` — `action_id_response` / `action_message_response` branches of `ActionIdOrMessageSchema` (resolves items #1 and #2 of elastic#264565) ### Testing Verified locally with: ``` node scripts/capture_oas_snapshot --no-serverless --include-path /api/fleet node scripts/validate_oas_docs node scripts/check_api_contracts --distribution stack ``` It looks like there are no Fleet errors left after this change but the final verification step will be ran in the ci for Terraform --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This change is to compare the runtime TS performance analysis between
io-tsandzod. An equivalent zod params schema is created for the comparison.test_type_perf.tsis where both schemas are invoked for each case with TS tracing on and the elapsed times for TS commands are recorded. TypeScript server is restarted before each case to capture the fresh logs.Here's the summary of executed commands with their average times: