dependabot[bot] opened a new pull request, #76613: URL: https://github.com/apache/airflow/pull/76613
Bumps the auth-ui-package-updates group with 13 updates in the /airflow-core/src/airflow/api_fastapi/auth/managers/simple/ui directory: | Package | From | To | | --- | --- | --- | | [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.104.4` | `5.105.2` | | [axios](https://github.com/axios/axios) | `1.20.0` | `1.21.0` | | [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.90.0` | `7.91.0` | | [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `7.18.4` | `7.18.5` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.71.2` | `8.72.1` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.71.2` | `8.72.1` | | [@typescript-eslint/utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/utils) | `8.71.2` | `8.72.1` | | [eslint](https://github.com/eslint/eslint) | `10.13.0` | `10.14.0` | | [eslint-plugin-perfectionist](https://github.com/azat-io/eslint-plugin-perfectionist) | `5.12.1` | `5.13.0` | | [happy-dom](https://github.com/capricorn86/happy-dom) | `21.0.3` | `21.0.4` | | [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.71.2` | `8.72.1` | | [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.3.4` | `8.3.5` | | [vite-plugin-css-injected-by-js](https://github.com/marco-prontera/vite-plugin-css-injected-by-js) | `5.0.2` | `5.0.3` | Updates `@tanstack/react-query` from 5.104.4 to 5.105.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/TanStack/query/releases">@tanstack/react-query's releases</a>.</em></p> <blockquote> <h2><code>@tanstack/react-query-devtools</code><a href="https://github.com/5"><code>@5</code></a>.105.2</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/TanStack/query/commit/1e1caa5a32847969f7157627cd805bd8103cd873"><code>1e1caa5</code></a>, <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a>]: <ul> <li><code>@tanstack/react-query</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> <li><code>@tanstack/query-devtools</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> </ul> </li> </ul> <h2><code>@tanstack/react-query-next-experimental</code><a href="https://github.com/5"><code>@5</code></a>.105.2</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/TanStack/query/commit/1e1caa5a32847969f7157627cd805bd8103cd873"><code>1e1caa5</code></a>, <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a>]: <ul> <li><code>@tanstack/react-query</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> </ul> </li> </ul> <h2><code>@tanstack/react-query-persist-client</code><a href="https://github.com/5"><code>@5</code></a>.105.2</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/TanStack/query/commit/1e1caa5a32847969f7157627cd805bd8103cd873"><code>1e1caa5</code></a>, <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a>]: <ul> <li><code>@tanstack/react-query</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> <li><code>@tanstack/query-persist-client-core</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> </ul> </li> </ul> <h2><code>@tanstack/react-query</code><a href="https://github.com/5"><code>@5</code></a>.105.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/TanStack/query/pull/12230">#12230</a> <a href="https://github.com/TanStack/query/commit/1e1caa5a32847969f7157627cd805bd8103cd873"><code>1e1caa5</code></a> - Update the observer options before subscribing so revealing an <code><Activity></code> tree whose query key changed while hidden no longer fetches the previous key.</p> </li> <li> <p><a href="https://redirect.github.com/TanStack/query/pull/12480">#12480</a> <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a> - Exclude <code>status</code> from the filters accepted by <code>QueryClient.isMutating</code>, <code>useIsMutating</code>, and <code>injectIsMutating</code>. These APIs always count mutations with <code>status: 'pending'</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/TanStack/query/commit/2ee2fd935acd88532255947c4b5e29baffd21ce8"><code>2ee2fd9</code></a>, <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a>, <a href="https://github.com/TanStack/query/commit/e69cac69d99cc3c4f6f32b2ad8aad53da83b4a72"><code>e69cac6</code></a>, <a href="https://github.com/TanStack/query/commit/f2215d25945e6461252b7c32bf822f31239e507e"><code>f2215d2</code></a>, <a href="https://github.com/TanStack/query/commit/86e79571fd45f29ab7d172102fdd718d3b8bde69"><code>86e7957</code></a>, <a href="https://github.com/TanStack/query/commit/b6576b388f2784839081358fa82744b0aacdeecd"><code>b6576b3</code></a>, <a href="https://github.com/TanStack/query/commit/af0e0ef5fc04e9d232fdc3aebd24ffe528b256d7"><code>af0e0ef</code></a>, <a href="https://github.com/TanStack/query/commit/05d9b6a40b9d4ac49943e9d881789e098db5bdfa"><code>05d9b6a</code></a>]:</p> <ul> <li><code>@tanstack/query-core</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/TanStack/query/blob/main/packages/react-query/CHANGELOG.md">@tanstack/react-query's changelog</a>.</em></p> <blockquote> <h2>5.105.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/TanStack/query/pull/12230">#12230</a> <a href="https://github.com/TanStack/query/commit/1e1caa5a32847969f7157627cd805bd8103cd873"><code>1e1caa5</code></a> - Update the observer options before subscribing so revealing an <code><Activity></code> tree whose query key changed while hidden no longer fetches the previous key.</p> </li> <li> <p><a href="https://redirect.github.com/TanStack/query/pull/12480">#12480</a> <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a> - Exclude <code>status</code> from the filters accepted by <code>QueryClient.isMutating</code>, <code>useIsMutating</code>, and <code>injectIsMutating</code>. These APIs always count mutations with <code>status: 'pending'</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/TanStack/query/commit/2ee2fd935acd88532255947c4b5e29baffd21ce8"><code>2ee2fd9</code></a>, <a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a>, <a href="https://github.com/TanStack/query/commit/e69cac69d99cc3c4f6f32b2ad8aad53da83b4a72"><code>e69cac6</code></a>, <a href="https://github.com/TanStack/query/commit/f2215d25945e6461252b7c32bf822f31239e507e"><code>f2215d2</code></a>, <a href="https://github.com/TanStack/query/commit/86e79571fd45f29ab7d172102fdd718d3b8bde69"><code>86e7957</code></a>, <a href="https://github.com/TanStack/query/commit/b6576b388f2784839081358fa82744b0aacdeecd"><code>b6576b3</code></a>, <a href="https://github.com/TanStack/query/commit/af0e0ef5fc04e9d232fdc3aebd24ffe528b256d7"><code>af0e0ef</code></a>, <a href="https://github.com/TanStack/query/commit/05d9b6a40b9d4ac49943e9d881789e098db5bdfa"><code>05d9b6a</code></a>]:</p> <ul> <li><code>@tanstack/query-core</code><a href="https://github.com/5"><code>@5</code></a>.105.2</li> </ul> </li> </ul> <h2>5.105.1</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/TanStack/query/pull/11373">#11373</a> <a href="https://github.com/TanStack/query/commit/7ccba6e959fcb9c51e691db9e2b09ff41d21e0b6"><code>7ccba6e</code></a> - fix({react,preact,angular,solid,vue}-query/infiniteQueryOptions): correct the overload selected for a possibly-undefined 'initialData'</p> </li> <li> <p><a href="https://redirect.github.com/TanStack/query/pull/12390">#12390</a> <a href="https://github.com/TanStack/query/commit/18e54bfac3dc3756afdb8840418d831c61bc15bf"><code>18e54bf</code></a> - Exclude <code>fetchStatus</code> from the filters accepted by <code>QueryClient.isFetching</code>, <code>useIsFetching</code>, and <code>injectIsFetching</code>. These APIs always count queries with <code>fetchStatus: 'fetching'</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/TanStack/query/commit/6f8a48d543b499b6d9b0e95050c28183c8c18ae0"><code>6f8a48d</code></a>, <a href="https://github.com/TanStack/query/commit/18e54bfac3dc3756afdb8840418d831c61bc15bf"><code>18e54bf</code></a>]:</p> <ul> <li><code>@tanstack/query-core</code><a href="https://github.com/5"><code>@5</code></a>.105.1</li> </ul> </li> </ul> <h2>5.105.0</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies []: <ul> <li><code>@tanstack/query-core</code><a href="https://github.com/5"><code>@5</code></a>.105.0</li> </ul> </li> </ul> <h2>5.104.5</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/TanStack/query/pull/12117">#12117</a> <a href="https://github.com/TanStack/query/commit/1f8d134ea3fa356072b40c69d5cd0227886b89bd"><code>1f8d134</code></a> - Recompute <code>useMutationState</code> and <code>useIsMutating</code> results when their filters, selector, or query client change, without waiting for a mutation cache update.</li> <li>Updated dependencies [<a href="https://github.com/TanStack/query/commit/f608f933a36da30670082e90d0a56b2569290563"><code>f608f93</code></a>]: <ul> <li><code>@tanstack/query-core</code><a href="https://github.com/5"><code>@5</code></a>.104.5</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/TanStack/query/commit/d6b2b643f64cf29d18563d326700b61cc09fd432"><code>d6b2b64</code></a> ci: Version Packages (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12476">#12476</a>)</li> <li><a href="https://github.com/TanStack/query/commit/8d0dc278a728a97eb677b6f2baf37d1677c2edc1"><code>8d0dc27</code></a> fix(query-core): exclude status from mutation count filters (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12480">#12480</a>)</li> <li><a href="https://github.com/TanStack/query/commit/1e1caa5a32847969f7157627cd805bd8103cd873"><code>1e1caa5</code></a> fix({react,preact}-query): set the observer options before subscribing (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12230">#12230</a>)</li> <li><a href="https://github.com/TanStack/query/commit/a6be1cede9b69b56ee0bd6c84641dd3899c86ed2"><code>a6be1ce</code></a> ci: Version Packages (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12391">#12391</a>)</li> <li><a href="https://github.com/TanStack/query/commit/979695d0a2daa8662bdfcbf9f4ae9c9805d97dec"><code>979695d</code></a> docs({react,preact,angular,solid,svelte,vue}-query): describe when the 'Defin...</li> <li><a href="https://github.com/TanStack/query/commit/7ccba6e959fcb9c51e691db9e2b09ff41d21e0b6"><code>7ccba6e</code></a> fix({react,preact,angular,solid,vue}-query/infiniteQueryOptions): correct the...</li> <li><a href="https://github.com/TanStack/query/commit/18e54bfac3dc3756afdb8840418d831c61bc15bf"><code>18e54bf</code></a> fix(query-core): exclude fetchStatus from fetching filters (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12390">#12390</a>)</li> <li><a href="https://github.com/TanStack/query/commit/5cc606e2e84b6feb86a2284a984ba2d3ef1643c8"><code>5cc606e</code></a> ci: Version Packages (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12301">#12301</a>)</li> <li><a href="https://github.com/TanStack/query/commit/14cc3302e385c4cb747790e7fa2a8a768cfe5f26"><code>14cc330</code></a> style(packages): write durations in 'count * unit * 1000' order (<a href="https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/12382">#12382</a>)</li> <li><a href="https://github.com/TanStack/query/commit/d7c0418f871052e45afc866f4520c062ebd5561a"><code>d7c0418</code></a> chore(react-query/{useQuery,useInfiniteQuery}): remove the unused '<a href="https://github.com/eslint-re"><code>@eslint-re</code></a>...</li> <li>Additional commits viewable in <a href="https://github.com/TanStack/query/commits/@tanstack/[email protected]/packages/react-query">compare view</a></li> </ul> </details> <br /> Updates `axios` from 1.20.0 to 1.21.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/axios/axios/releases">axios's releases</a>.</em></p> <blockquote> <h2>v1.21.0 — October 21, 2026</h2> <p>This release adds response timing and opt-in UTF-8 Basic authentication, improves request handling across runtimes, and changes how header defaults are recognized.</p> <h2>⚠️ Breaking Changes & Deprecations</h2> <ul> <li><strong>Header Defaults:</strong> Only plain objects, null-prototype maps, and compatible <code>AxiosHeaders</code> instances are treated as common or method-specific defaults; literal headers such as <code>Link</code> are now preserved. Applications using custom class instances as defaults must convert them to plain maps, for example <code>{ post: { ...customDefaults } }</code>, or compatible <code>AxiosHeaders</code>. Otherwise, those instances become literal header values, including on requests using other methods. (<strong><a href="https://redirect.github.com/axios/axios/pull/11156">#11156</a></strong>)</li> </ul> <h2>🚀 New Features</h2> <ul> <li><strong>Response Timing:</strong> Added <code>response.duration</code>, in milliseconds, including on <code>error.response</code> when present. Timing measures adapter execution and excludes interceptors and transforms; streamed responses stop timing when the stream becomes available. Axios replaces any existing <code>duration</code> value supplied by a custom adapter. (<strong><a href="https://redirect.github.com/axios/axios/pull/11214">#11214</a></strong>)</li> <li><strong>UTF-8 Basic Authentication:</strong> Added <code>transitional.encodeBasicAuthUsername: true</code> to support Unicode usernames in XHR and Fetch requests. The option defaults to <code>false</code>, preserving existing authentication behavior; applications opting in should supply the original Unicode username and remove manual pre-encoding workarounds. (<strong><a href="https://redirect.github.com/axios/axios/pull/11159">#11159</a></strong>)</li> </ul> <h2>🐛 Bug Fixes</h2> <ul> <li><strong>Fetch Compatibility:</strong> Restored requests in runtimes such as Cloudflare Workers that reject the implicit <code>cache: 'default'</code>, while preserving explicit caller settings. Response-size failures now retain their original <code>ERR_BAD_RESPONSE</code> and request context when runtime wrappers replace the underlying stream error. (<strong><a href="https://redirect.github.com/axios/axios/pull/11194">#11194</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11179">#11179</a></strong>)</li> <li><strong>Runtime Consistency:</strong> Aligned encoded-byte size accounting, multipart uploads, proxy routing, same-origin resolution, parameter merging, and form serialization across adapters. Circular parameters now reject with <code>ERR_BAD_OPTION_VALUE</code>, and sparse or non-index numeric form fields serialize as keyed objects. With <code>proxy: false</code>, native <code>proxyEnv</code> agents using unsupported pool-management or TLS-session lifecycle overrides now reject with <code>ERR_BAD_OPTION_VALUE</code>; construct those agents without <code>proxyEnv</code>. (<strong><a href="https://redirect.github.com/axios/axios/pull/11242">#11242</a></strong>)</li> <li><strong>Header Handling:</strong> Preserved headers named <code>__proto__</code> using safe casing without changing the <code>AxiosHeaders</code> instance prototype. Function matchers in <code>has()</code>, <code>delete()</code>, and <code>clear()</code> now receive the headers instance as <code>this</code>, matching their declared contract. (<strong><a href="https://redirect.github.com/axios/axios/pull/11134">#11134</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11216">#11216</a></strong>)</li> <li><strong>URL and Data URL Parsing:</strong> Accepted case-insensitive supported URL schemes and Base64 markers, and corrected decoding of percent-encoded Base64 data URLs. Node data URL allocation estimates remain aligned with decoding so configured size limits apply before allocation. (<strong><a href="https://redirect.github.com/axios/axios/pull/11138">#11138</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11163">#11163</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11294">#11294</a></strong>)</li> <li><strong>Error Diagnostics:</strong> Preserved short reconstructed request stacks and appended wrapped error stacks under <code>Caused by:</code> so tooling that reads only <code>error.stack</code> retains the original failure context. (<strong><a href="https://redirect.github.com/axios/axios/pull/11132">#11132</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11142">#11142</a></strong>)</li> <li><strong>Interceptor Removal:</strong> Restored removal through canonical numeric-string interceptor IDs, including after registry compaction. (<strong><a href="https://redirect.github.com/axios/axios/pull/11139">#11139</a></strong>)</li> <li><strong>Proxy TLS:</strong> HTTPS CONNECT tunnels now apply current origin TLS options from an explicit <code>httpsAgent</code>, or from <code>https.globalAgent</code> when no explicit agent is supplied. This preserves process-wide custom CA settings through proxy tunnels. (<strong><a href="https://redirect.github.com/axios/axios/pull/11178">#11178</a></strong>)</li> <li><strong>XHR Lifecycle:</strong> Used asynchronous Cookie Store reads for XSRF tokens where supported, preserving cookie fallback, timeout accounting, and cancellation. Upload and download progress listeners are now removed on completion, failure, timeout, and cancellation. (<strong><a href="https://redirect.github.com/axios/axios/pull/11166">#11166</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11225">#11225</a></strong>)</li> <li><strong>HTTP/2 Sessions:</strong> Stopped reusing sessions immediately after GOAWAY and prevented draining sessions from scheduling idle timers that could delay process exit. (<strong><a href="https://redirect.github.com/axios/axios/pull/11210">#11210</a></strong>)</li> <li><strong>TypeScript Declarations:</strong> Exposed the response-default marker as a public type to resolve <code>TS2527</code> when consumers emit declarations involving unresolved response generics, covering both ESM and CommonJS. (<strong><a href="https://redirect.github.com/axios/axios/pull/11125">#11125</a></strong>)</li> </ul> <h2>🔧 Maintenance & Chores</h2> <ul> <li><strong>Configuration Performance:</strong> Reduced request configuration merge overhead, particularly for requests with many headers, while preserving merge semantics and prototype-pollution guards. (<strong><a href="https://redirect.github.com/axios/axios/pull/11208">#11208</a></strong>)</li> <li><strong>Same-Origin Checks:</strong> Removed obsolete Internet Explorer detection without changing origin decisions in supported environments. (<strong><a href="https://redirect.github.com/axios/axios/pull/11174">#11174</a></strong>)</li> <li><strong>Dependencies:</strong> Updated <code>follow-redirects</code> to 1.16.1 and refreshed development, documentation, test, and GitHub Actions dependencies. Removed unused <code>dayjs</code> from the docs package, root <code>chalk</code>, and <code>chai</code> from CJS module tests. (<strong><a href="https://redirect.github.com/axios/axios/pull/11169">#11169</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11188">#11188</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11189">#11189</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11195">#11195</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11212">#11212</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11213">#11213</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11218">#11218</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11220">#112 20</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11221">#11221</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11230">#11230</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11234">#11234</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11244">#11244</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11245">#11245</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11266">#11266</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11267">#11267</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11268">#11268</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11269">#11269</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11270">#11270</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11271">#11271</a>< /strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11272">#11272</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11298">#11298</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11302">#11302</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11303">#11303</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11304">#11304</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11305">#11305</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11306">#11306</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11313">#11313</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11321">#11321</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11322">#11322</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11323">#11323</a></strong >, <strong><a >href="https://redirect.github.com/axios/axios/pull/11342">#11342</a></strong>)</li> <li><strong>Documentation:</strong> Fixed interceptor test links, updated README CDN examples to the published 1.20.0 bundle, and corrected guidance on interceptor options and request lifecycle ordering. (<strong><a href="https://redirect.github.com/axios/axios/pull/11228">#11228</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11149">#11149</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11335">#11335</a></strong>)</li> <li><strong>Contributor Workflow:</strong> Consolidated agent instructions in <code>AGENTS.md</code>, standardized PR labels, required prerelease notes and validation evidence, and clarified that <code>npm test</code> requires installed Playwright browsers. (<strong><a href="https://redirect.github.com/axios/axios/pull/11238">#11238</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11273">#11273</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11223">#11223</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11284">#11284</a></strong>)</li> <li><strong>Sponsors and Support:</strong> Added HeroDevs, Code for Japan, and Sweepico sponsor listings, refreshed sponsor data, and documented extended security support for Axios v0. (<strong><a href="https://redirect.github.com/axios/axios/pull/11222">#11222</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11249">#11249</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11252">#11252</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11341">#11341</a></strong>)</li> <li><strong>Proxy Regression Coverage:</strong> Added a long dotted request-hostname test for <code>NO_PROXY</code> handling, extending coverage of an existing denial-of-service fix. (<strong><a href="https://redirect.github.com/axios/axios/pull/11235">#11235</a></strong>)</li> <li><strong>Release Preparation:</strong> Updated package version metadata for 1.21.0. (<strong><a href="https://redirect.github.com/axios/axios/pull/11346">#11346</a></strong>)</li> </ul> <h2>🌟 New Contributors</h2> <p>Welcome to our 24 new contributors. Thank you for helping improve Axios:</p> <ul> <li><strong><a href="https://github.com/lazerg"><code>@lazerg</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11194">#11194</a></strong>)</li> <li><strong><a href="https://github.com/QIU-Guanzong"><code>@QIU-Guanzong</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11228">#11228</a></strong>)</li> <li><strong><a href="https://github.com/Iams4kura"><code>@Iams4kura</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11125">#11125</a></strong>)</li> <li><strong><a href="https://github.com/vjymisal0"><code>@vjymisal0</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11179">#11179</a></strong>)</li> <li><strong><a href="https://github.com/jarrensj"><code>@jarrensj</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11238">#11238</a></strong>)</li> <li><strong><a href="https://github.com/LineGu"><code>@LineGu</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11132">#11132</a></strong>)</li> <li><strong><a href="https://github.com/luantaraschi"><code>@luantaraschi</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11134">#11134</a></strong>)</li> <li><strong><a href="https://github.com/Cyberhet"><code>@Cyberhet</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11284">#11284</a></strong>)</li> <li><strong><a href="https://github.com/nyxst4ck"><code>@nyxst4ck</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11138">#11138</a></strong>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/axios/axios/blob/v1.x/CHANGELOG.md">axios's changelog</a>.</em></p> <blockquote> <h2>v1.21.0 — October 21, 2026</h2> <p>This release adds response timing and opt-in UTF-8 Basic authentication, improves request handling across runtimes, and changes how header defaults are recognized.</p> <h2>⚠️ Breaking Changes & Deprecations</h2> <ul> <li><strong>Header Defaults:</strong> Only plain objects, null-prototype maps, and compatible <code>AxiosHeaders</code> instances are treated as common or method-specific defaults; literal headers such as <code>Link</code> are now preserved. Applications using custom class instances as defaults must convert them to plain maps, for example <code>{ post: { ...customDefaults } }</code>, or compatible <code>AxiosHeaders</code>. Otherwise, those instances become literal header values, including on requests using other methods. (<strong><a href="https://redirect.github.com/axios/axios/pull/11156">#11156</a></strong>)</li> </ul> <h2>🚀 New Features</h2> <ul> <li><strong>Response Timing:</strong> Added <code>response.duration</code>, in milliseconds, including on <code>error.response</code> when present. Timing measures adapter execution and excludes interceptors and transforms; streamed responses stop timing when the stream becomes available. Axios replaces any existing <code>duration</code> value supplied by a custom adapter. (<strong><a href="https://redirect.github.com/axios/axios/pull/11214">#11214</a></strong>)</li> <li><strong>UTF-8 Basic Authentication:</strong> Added <code>transitional.encodeBasicAuthUsername: true</code> to support Unicode usernames in XHR and Fetch requests. The option defaults to <code>false</code>, preserving existing authentication behavior; applications opting in should supply the original Unicode username and remove manual pre-encoding workarounds. (<strong><a href="https://redirect.github.com/axios/axios/pull/11159">#11159</a></strong>)</li> </ul> <h2>🐛 Bug Fixes</h2> <ul> <li><strong>Fetch Compatibility:</strong> Restored requests in runtimes such as Cloudflare Workers that reject the implicit <code>cache: 'default'</code>, while preserving explicit caller settings. Response-size failures now retain their original <code>ERR_BAD_RESPONSE</code> and request context when runtime wrappers replace the underlying stream error. (<strong><a href="https://redirect.github.com/axios/axios/pull/11194">#11194</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11179">#11179</a></strong>)</li> <li><strong>Runtime Consistency:</strong> Aligned encoded-byte size accounting, multipart uploads, proxy routing, same-origin resolution, parameter merging, and form serialization across adapters. Circular parameters now reject with <code>ERR_BAD_OPTION_VALUE</code>, and sparse or non-index numeric form fields serialize as keyed objects. With <code>proxy: false</code>, native <code>proxyEnv</code> agents using unsupported pool-management or TLS-session lifecycle overrides now reject with <code>ERR_BAD_OPTION_VALUE</code>; construct those agents without <code>proxyEnv</code>. (<strong><a href="https://redirect.github.com/axios/axios/pull/11242">#11242</a></strong>)</li> <li><strong>Header Handling:</strong> Preserved headers named <strong><code>__proto__</code></strong> using safe casing without changing the <code>AxiosHeaders</code> instance prototype. Function matchers in <code>has()</code>, <code>delete()</code>, and <code>clear()</code> now receive the headers instance as <code>this</code>, matching their declared contract. (<strong><a href="https://redirect.github.com/axios/axios/pull/11134">#11134</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11216">#11216</a></strong>)</li> <li><strong>URL and Data URL Parsing:</strong> Accepted case-insensitive supported URL schemes and Base64 markers, and corrected decoding of percent-encoded Base64 data URLs. Node data URL allocation estimates remain aligned with decoding so configured size limits apply before allocation. (<strong><a href="https://redirect.github.com/axios/axios/pull/11138">#11138</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11163">#11163</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11294">#11294</a></strong>)</li> <li><strong>Error Diagnostics:</strong> Preserved short reconstructed request stacks and appended wrapped error stacks under <code>Caused by:</code> so tooling that reads only <code>error.stack</code> retains the original failure context. (<strong><a href="https://redirect.github.com/axios/axios/pull/11132">#11132</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11142">#11142</a></strong>)</li> <li><strong>Interceptor Removal:</strong> Restored removal through canonical numeric-string interceptor IDs, including after registry compaction. (<strong><a href="https://redirect.github.com/axios/axios/pull/11139">#11139</a></strong>)</li> <li><strong>Proxy TLS:</strong> HTTPS CONNECT tunnels now apply current origin TLS options from an explicit <code>httpsAgent</code>, or from <code>https.globalAgent</code> when no explicit agent is supplied. This preserves process-wide custom CA settings through proxy tunnels. (<strong><a href="https://redirect.github.com/axios/axios/pull/11178">#11178</a></strong>)</li> <li><strong>XHR Lifecycle:</strong> Used asynchronous Cookie Store reads for XSRF tokens where supported, preserving cookie fallback, timeout accounting, and cancellation. Upload and download progress listeners are now removed on completion, failure, timeout, and cancellation. (<strong><a href="https://redirect.github.com/axios/axios/pull/11166">#11166</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11225">#11225</a></strong>)</li> <li><strong>HTTP/2 Sessions:</strong> Stopped reusing sessions immediately after GOAWAY and prevented draining sessions from scheduling idle timers that could delay process exit. (<strong><a href="https://redirect.github.com/axios/axios/pull/11210">#11210</a></strong>)</li> <li><strong>TypeScript Declarations:</strong> Exposed the response-default marker as a public type to resolve <code>TS2527</code> when consumers emit declarations involving unresolved response generics, covering both ESM and CommonJS. (<strong><a href="https://redirect.github.com/axios/axios/pull/11125">#11125</a></strong>)</li> </ul> <h2>🔧 Maintenance & Chores</h2> <ul> <li><strong>Configuration Performance:</strong> Reduced request configuration merge overhead, particularly for requests with many headers, while preserving merge semantics and prototype-pollution guards. (<strong><a href="https://redirect.github.com/axios/axios/pull/11208">#11208</a></strong>)</li> <li><strong>Same-Origin Checks:</strong> Removed obsolete Internet Explorer detection without changing origin decisions in supported environments. (<strong><a href="https://redirect.github.com/axios/axios/pull/11174">#11174</a></strong>)</li> <li><strong>Dependencies:</strong> Updated <code>follow-redirects</code> to 1.16.1 and refreshed development, documentation, test, and GitHub Actions dependencies. Removed unused <code>dayjs</code> from the docs package, root <code>chalk</code>, and <code>chai</code> from CJS module tests. (<strong><a href="https://redirect.github.com/axios/axios/pull/11169">#11169</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11188">#11188</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11189">#11189</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11195">#11195</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11212">#11212</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11213">#11213</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11218">#11218</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11220">#112 20</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11221">#11221</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11230">#11230</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11234">#11234</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11244">#11244</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11245">#11245</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11266">#11266</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11267">#11267</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11268">#11268</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11269">#11269</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11270">#11270</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11271">#11271</a>< /strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11272">#11272</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11298">#11298</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11302">#11302</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11303">#11303</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11304">#11304</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11305">#11305</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11306">#11306</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11313">#11313</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11321">#11321</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11322">#11322</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11323">#11323</a></strong >, <strong><a >href="https://redirect.github.com/axios/axios/pull/11342">#11342</a></strong>)</li> <li><strong>Documentation:</strong> Fixed interceptor test links, updated README CDN examples to the published 1.20.0 bundle, and corrected guidance on interceptor options and request lifecycle ordering. (<strong><a href="https://redirect.github.com/axios/axios/pull/11228">#11228</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11149">#11149</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11335">#11335</a></strong>)</li> <li><strong>Contributor Workflow:</strong> Consolidated agent instructions in <code>AGENTS.md</code>, standardized PR labels, required prerelease notes and validation evidence, and clarified that <code>npm test</code> requires installed Playwright browsers. (<strong><a href="https://redirect.github.com/axios/axios/pull/11238">#11238</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11273">#11273</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11223">#11223</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11284">#11284</a></strong>)</li> <li><strong>Sponsors and Support:</strong> Added HeroDevs, Code for Japan, and Sweepico sponsor listings, refreshed sponsor data, and documented extended security support for Axios v0. (<strong><a href="https://redirect.github.com/axios/axios/pull/11222">#11222</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11249">#11249</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11252">#11252</a></strong>, <strong><a href="https://redirect.github.com/axios/axios/pull/11341">#11341</a></strong>)</li> <li><strong>Proxy Regression Coverage:</strong> Added a long dotted request-hostname test for <code>NO_PROXY</code> handling, extending coverage of an existing denial-of-service fix. (<strong><a href="https://redirect.github.com/axios/axios/pull/11235">#11235</a></strong>)</li> <li><strong>Release Preparation:</strong> Updated package version metadata for 1.21.0. (<strong><a href="https://redirect.github.com/axios/axios/pull/11346">#11346</a></strong>)</li> </ul> <h2>🌟 New Contributors</h2> <p>Welcome to our 24 new contributors. Thank you for helping improve Axios:</p> <ul> <li><strong><a href="https://github.com/lazerg"><code>@lazerg</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11194">#11194</a></strong>)</li> <li><strong><a href="https://github.com/QIU-Guanzong"><code>@QIU-Guanzong</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11228">#11228</a></strong>)</li> <li><strong><a href="https://github.com/Iams4kura"><code>@Iams4kura</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11125">#11125</a></strong>)</li> <li><strong><a href="https://github.com/vjymisal0"><code>@vjymisal0</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11179">#11179</a></strong>)</li> <li><strong><a href="https://github.com/jarrensj"><code>@jarrensj</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11238">#11238</a></strong>)</li> <li><strong><a href="https://github.com/LineGu"><code>@LineGu</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11132">#11132</a></strong>)</li> <li><strong><a href="https://github.com/luantaraschi"><code>@luantaraschi</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11134">#11134</a></strong>)</li> <li><strong><a href="https://github.com/Cyberhet"><code>@Cyberhet</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11284">#11284</a></strong>)</li> <li><strong><a href="https://github.com/nyxst4ck"><code>@nyxst4ck</code></a></strong> (<strong><a href="https://redirect.github.com/axios/axios/pull/11138">#11138</a></strong>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/axios/axios/commit/aa54a5e1e0e50cd1a2561b854ae5490ff589d065"><code>aa54a5e</code></a> docs: remove cancelled sponsors from README (<a href="https://redirect.github.com/axios/axios/issues/11369">#11369</a>)</li> <li><a href="https://github.com/axios/axios/commit/e6b79d9cef796ca3a903bb83e51d4752b019fd67"><code>e6b79d9</code></a> chore(release): prepare release 1.21.0 (<a href="https://redirect.github.com/axios/axios/issues/11346">#11346</a>)</li> <li><a href="https://github.com/axios/axios/commit/fceeb10997ea71778ad8bc9671ad53e9195a707c"><code>fceeb10</code></a> chore(deps-dev): bump the development_dependencies group with 4 updates (<a href="https://redirect.github.com/axios/axios/issues/11342">#11342</a>)</li> <li><a href="https://github.com/axios/axios/commit/7d15df3f4cff1be2f1ed397f98170aadef399071"><code>7d15df3</code></a> docs: refresh sponsor data (<a href="https://redirect.github.com/axios/axios/issues/11341">#11341</a>)</li> <li><a href="https://github.com/axios/axios/commit/8d8e84401d38c2a9c62acd18b3df17478a0caf6b"><code>8d8e844</code></a> docs: correct interceptor options and request lifecycle guide (<a href="https://redirect.github.com/axios/axios/issues/11335">#11335</a>)</li> <li><a href="https://github.com/axios/axios/commit/326843a3902d73c9f6af9bad7b55e2412566a251"><code>326843a</code></a> test(no-proxy): cover the request-hostname path with a long dotted host (<a href="https://redirect.github.com/axios/axios/issues/11235">#11235</a>)</li> <li><a href="https://github.com/axios/axios/commit/e5195ecf405cf791b7ad2715156d6bc98b5f3928"><code>e5195ec</code></a> feat(core): expose request duration on the response (<a href="https://redirect.github.com/axios/axios/issues/11214">#11214</a>)</li> <li><a href="https://github.com/axios/axios/commit/8d415e6af9cd50a8ae27331a53b4aaf9f7e24612"><code>8d415e6</code></a> fix(headers): bind matcher callbacks to the headers instance (<a href="https://redirect.github.com/axios/axios/issues/11216">#11216</a>)</li> <li><a href="https://github.com/axios/axios/commit/b16dd7787807f7f15e5fb1a3e39b7d190c312b2e"><code>b16dd77</code></a> fix(xhr): remove progress event listeners on request completion (<a href="https://redirect.github.com/axios/axios/issues/11225">#11225</a>)</li> <li><a href="https://github.com/axios/axios/commit/790b2ca8b6d8486dde3ce54cda20990ba91b0831"><code>790b2ca</code></a> chore(deps): bump the github-actions group with 3 updates (<a href="https://redirect.github.com/axios/axios/issues/11323">#11323</a>)</li> <li>Additional commits viewable in <a href="https://github.com/axios/axios/compare/v1.20.0...v1.21.0">compare view</a></li> </ul> </details> <br /> Updates `react-hook-form` from 7.90.0 to 7.91.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/react-hook-form/react-hook-form/releases">react-hook-form's releases</a>.</em></p> <blockquote> <h2>Version 7.91.0</h2> <h2>🐞 Fixes</h2> <ul> <li>Fix <code>useFieldArray</code> not updating rows when using <code>setValue</code> or <code>setValues</code> (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13842">#13842</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13939">#13939</a>)</li> <li>Fix <code>useFieldArray</code> not unregistering values correctly on unmount (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13843">#13843</a>)</li> <li>Fix field registration without a value incorrectly adding array rows (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13846">#13846</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13849">#13849</a>)</li> <li>Fix <code>useFieldArray</code> reindexing fields incorrectly when array rules are registered (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13873">#13873</a>)</li> <li>Fix <code>useFieldArray</code> losing validation rules after <code>reset()</code> (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13940">#13940</a>)</li> <li>Fix stale field array validation results after array changes (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13888">#13888</a>)</li> <li>Fix <code>useFieldArray</code> validation after submission in <code>onBlur</code> mode (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13867">#13867</a>)</li> <li>Fix dirty state updates when <code>setValues</code> changes field arrays (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13870">#13870</a>)</li> <li>Fix stale asynchronous validation results after <code>reset()</code> and <code>unregister()</code> (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13908">#13908</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13912">#13912</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13934">#13934</a>)</li> <li>Fix <code>Controller</code> validation using stale DOM values (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13880">#13880</a>)</li> <li>Fix <code>isValid</code> not updating correctly after <code>reset()</code> and subsequent changes (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13847">#13847</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13930">#13930</a>)</li> <li>Fix <code>handleSubmit</code> leaving <code>isSubmitting</code> active when validation throws (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13905">#13905</a>)</li> <li>Fix empty validation message arrays being treated as errors (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13937">#13937</a>)</li> <li>Fix delayed validation errors not being flushed on blur (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13861">#13861</a>)</li> <li>Fix form state subscriptions and validity updates (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13866">#13866</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13877">#13877</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13906">#13906</a>)</li> <li>Fix dirty state tracking and <code>resetField()</code> with falsy values (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13868">#13868</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13900">#13900</a>)</li> <li>Fix <code>unregister</code> retaining validation rules when using <code>keepValue</code> (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13891">#13891</a>)</li> <li>Fix <code><Form /></code> handling of JSON, URL-encoded, multipart and plain-text submissions (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13848">#13848</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13854">#13854</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13874">#13874</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13893">#13893</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13907">#13907</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13915">#13915</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13926">#13926</a>)</li> <li>Fix <code>useWatch</code> not updating default values when the watched name changes (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13859">#13859</a>)</li> <li>Fix select options being lost before the form is ready (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13872">#13872</a>)</li> <li>Fix <code>useForm</code> retaining removed options and disabled state (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13882">#13882</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13883">#13883</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13889">#13889</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13898">#13898</a>)</li> <li>Fix progressive required attributes (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13924">#13924</a>)</li> <li>Fix numeric zero <code>maxLength</code> validation (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13851">#13851</a>)</li> <li>Fix object comparison for null-prototype objects and sparse arrays (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13853">#13853</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13855">#13855</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13857">#13857</a>)</li> <li>Fix <code>cloneObject</code> handling objects with a <code>constructor</code> key (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13875">#13875</a>)</li> <li>Fix <code>setValue</code> handling null-prototype objects (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13916">#13916</a>)</li> <li>Fix form-level validation error types (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13860">#13860</a>)</li> <li>Fix <code>useForm</code> mutating the externally provided <code>errors</code> object (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13896">#13896</a>)</li> <li>Fix stale <code>NaN</code> and invalid date validation results (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13910">#13910</a>)</li> </ul> <h2>⚡ Performance Improvements</h2> <ul> <li>Avoid unnecessary copies when calling <code>getValues()</code> (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13894">#13894</a>)</li> <li>Reduce unnecessary <code><Form /></code> re-renders (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13899">#13899</a>)</li> </ul> <h2>🧹 Refactors</h2> <ul> <li>Simplify multipart Content-Type handling (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13926">#13926</a>)</li> <li>Improve internal types and remove unnecessary type assertions (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13871">#13871</a>, <a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13886">#13886</a>)</li> <li>Clean up memoized component display names (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13897">#13897</a>)</li> <li>Fix JSDoc examples (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13895">#13895</a>)</li> </ul> <h2>🧪 Tests</h2> <ul> <li>Add coverage for disabled field array operations (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13841">#13841</a>)</li> <li>Expand regression coverage for <code>useFieldArray</code>, <code>reset</code>, validation and form state</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md">react-hook-form's changelog</a>.</em></p> <blockquote> <h2>[7.91.0] - 2026-10-24</h2> <h3>Changed</h3> <ul> <li>Improve performance of <code>Form</code> by reading control from context to avoid unnecessary re-renders</li> <li>Improve performance of <code>getValues</code> by avoiding unnecessary shallow copies</li> <li>Simplify multipart content-type header filtering</li> <li>Align form-level validation error types</li> </ul> <h3>Fixed</h3> <ul> <li><code>useFieldArray</code> not registering array rules again after <code>reset</code></li> <li><code>setValue</code> not updating field array rows when a parent object is set</li> <li><code>createFormControl</code> keeping a newer change's error when an older <code>isValid</code> pass settles</li> <li><code>validate</code> treating an empty message array as valid</li> <li><code>reset</code> releasing <code>keepIsValid</code> on the next field change or field array operation</li> <li><code>register</code> only emitting the progressive <code>required</code> attribute when the rule is on</li> <li><code>createFormControl</code> dropping the async result of a field unregistered while it validates</li> <li><code>createFormControl</code> supporting null-prototype objects in <code>setValue</code></li> <li><code>Form</code> handling case-insensitive and parameterized multipart <code>encType</code></li> <li><code>createFormControl</code> ignoring a stale <code>NaN</code> or <code>Invalid Date</code> validation result</li> <li>Settle submit state when validation throws</li> <li><code>Form</code> letting fetch set the multipart boundary for a multipart content-type header</li> <li><code>createFormControl</code> ignoring a stale built-in validity result after <code>reset</code></li> <li><code>useForm</code> running the initial validity check when a child subscribed first</li> <li><code>Form</code> sending a <code>text/plain</code> body for a <code>text/plain</code> content type</li> <li><code>createFormControl</code> copying the <code>errors</code> prop instead of writing into it</li> <li><code>useForm</code> resetting <code>resetOptions</code> when removed from props</li> <li><code>createFormControl</code> handling falsy values correctly in <code>_getDirty</code> and <code>resetField</code></li> <li><code>unregister</code> dropping the field's rules when <code>keepValue</code> keeps only its value</li> <li><code>useForm</code> clearing errors when the <code>errors</code> option is removed or set to <code>undefined</code></li> <li><code>useFieldArray</code> dropping a validation result once the array has changed</li> <li><code>reset</code> keeping retained fields disabled</li> <li><code>useForm</code> re-enabling the form when the <code>disabled</code> option is removed</li> <li><code>formState</code> producing a new <code>validatingFields</code> reference when it changes</li> <li><code>validateField</code> validating the stored value of <code>Controller</code> fields with a DOM ref</li> <li><code>useForm</code> resetting <code>progressive</code> option when removed from props</li> <li><code>cloneObject</code> copying plain objects that have a <code>constructor</code> key</li> <li><code>useFieldArray</code> reindexing row fields when the array has rules</li> <li><code>Form</code> matching JSON content types case-insensitively</li> <li><code>deepEqual</code> comparing keys as own properties instead of via <code>in</code></li> <li><code>register</code> keeping select options picked before the form is ready</li> <li>Report <code>isReady</code> to <code>useFormState</code> mounted with the form</li> <li><code>useFieldArray</code> revalidating array operations after submit in <code>onBlur</code> mode</li> <li><code>getDirtyFields</code> handling <code>null</code> or <code>undefined</code> form values when clearing a field</li> <li><code>setValue</code> updating <code>isDirty</code> when <code>shouldDirty</code> fills a field array</li> <li><code>delayError</code> flushing the delayed error on blur when blur also validates</li> <li><code>useWatch</code> using the new <code>defaultValue</code> when the watched name changes</li> <li><code>deepEqual</code> comparing sparse array lengths</li> <li><code>Form</code> sending a url-encoded body for a url-encoded content type</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/de3c9469df8b28315265178b58909ee05aa57b74"><code>de3c946</code></a> 7.91.0</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/da618cb8357bd1c229c64f883feb7faa5baabfb7"><code>da618cb</code></a> Revert "🐞 fix(reset): keep mounted Controllers registered so submit still val...</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/e715d44dac9fd8c94797faba5a9b49568bca30d6"><code>e715d44</code></a> 🧴 fix remove optional chain</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/eed808650e9dfb9c137b79edb7060b3b8e619d86"><code>eed8086</code></a> 🐞 fix(useFieldArray): register the array rules again after reset (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13940">#13940</a>)</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/fe960d463a0538b869c04d9be545a6479522d3ce"><code>fe960d4</code></a> 🐞 fix(setValue): update field array rows when the parent object is set (<a href="https://redirect.github.com/react-hook-form/react-hook-form/issues/13939">#13939</a>)</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/0f3e977ac0a3b82968bb3f12907088788353769b"><code>0f3e977</code></a> 🐞 fix(createFormControl): keep a newer change's error when an older isValid p...</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/33f65e5f2df3d54746f6fb629b0fe8457f653c1b"><code>33f65e5</code></a> 🐞 fix(getValidateError): treat an empty message array from validate as valid ...</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/a72bcd7f73a44be6b4ad3e8f855d5d8fc588ec67"><code>a72bcd7</code></a> Revert "🐞 fix(objectHasFunction): check own properties to ignore Object.proto...</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/dee94247ca4b36872f8549c258e4721960f7d672"><code>dee9424</code></a> 🐞 fix(reset): release keepIsValid on the next field change or field array op ...</li> <li><a href="https://github.com/react-hook-form/react-hook-form/commit/76c0b3d8754bb6b366f1f164ea179c07b16761bc"><code>76c0b3d</code></a> 🐞 fix(reset): keep mounted Controllers registered so submit still validates t...</li> <li>Additional commits viewable in <a href="https://github.com/react-hook-form/react-hook-form/compare/v7.90.0...v7.91.0">compare view</a></li> </ul> </details> <br /> Updates `react-router-dom` from 7.18.4 to 7.18.5 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/remix-run/react-router/blob/[email protected]/packages/react-router-dom/CHANGELOG.md">react-router-dom's changelog</a>.</em></p> <blockquote> <h2>v7.18.5</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies: <ul> <li><a href="https://github.com/remix-run/react-router/releases/tag/[email protected]"><code>[email protected]</code></a></li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/remix-run/react-router/commit/1ad93b4cb4b045366b7d73639de34787812ad5b5"><code>1ad93b4</code></a> Release v7.18.5 (<a href="https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom/issues/15705">#15705</a>)</li> <li>See full diff in <a href="https://github.com/remix-run/react-router/commits/[email protected]/packages/react-router-dom">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/eslint-plugin` from 8.71.2 to 8.72.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases">@typescript-eslint/eslint-plugin's releases</a>.</em></p> <blockquote> <h2>v8.72.1</h2> <h2>8.72.1 (2026-10-26)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unnecessary-condition] false positives on unresolved conditional types (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13062">#13062</a>)</li> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] bound recursive type traversal instead of catching stack overflows (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13039">#13039</a>)</li> <li><strong>typescript-estree:</strong> use one Program per tsconfig for the project service in single-run mode (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12988">#12988</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>Josh Ghoulberg 👻</li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.72.1">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.72.0</h2> <h2>8.72.0 (2026-10-19)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> lazy load rules (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13010">#13010</a>)</li> <li><strong>eslint-plugin:</strong> [await-thenable] add <code>allowMixedPromiseArrays</code> option (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12992">#12992</a>)</li> <li><strong>typescript-estree:</strong> error on abstract keyword that precedes export (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13019">#13019</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>ast-spec:</strong> add <code>JSXFragment</code> to <code>JSXAttribute['value']</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13051">#13051</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-readonly-parameter-types] check where allowed type aliases are declared (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13016">#13016</a>)</li> <li><strong>eslint-plugin:</strong> [no-deprecated] report deprecated properties in object literals (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12704">#12704</a>)</li> <li><strong>eslint-plugin:</strong> use isTypeLiteralType instead of type.isLiteral() to include bigint literals on TS < 5.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13053">#13053</a>)</li> <li><strong>eslint-plugin:</strong> [require-array-sort-compare] check tuples (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13058">#13058</a>)</li> <li><strong>eslint-plugin:</strong> [require-array-sort-compare] ignore extra this type argument on TS < 5.1 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13055">#13055</a>)</li> <li><strong>type-utils:</strong> discriminateAnyType crashes when calling getAwaitedType on awaited type in TS < 5.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/13054">#13054</a>)</li> <li><strong>typescript-estree:</strong> include leading and trailing comments & whitespace in Program range (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12991">#12991</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>Junichiro Kasuya <a href="https://github.com/jksy"><code>@jksy</code></a></li> <li>Mitch Fultz <a href="https://github.com/fitchmultz"><code>@fitchmultz</code></a></li> <li>Shaan GS <a href="https://github.com/ShaanGS"><code>@ShaanGS</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.72.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md">@typescript-eslint/eslint-plugin's changelog</a>.</em></p> <block... _Description has been truncated_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
