Update dependency react-hook-form to v7.88.0 - #63
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
November 4, 2023 22:07
8ca51dd to
5644ac3
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
November 5, 2023 01:50
5644ac3 to
90bc096
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
November 5, 2023 06:55
90bc096 to
4006b8e
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
December 9, 2023 22:46
4006b8e to
0ff5300
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
December 12, 2023 22:11
0ff5300 to
089388b
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
December 13, 2023 13:07
089388b to
e1e57e5
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
January 8, 2024 21:33
e1e57e5 to
b35167a
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
February 1, 2024 09:34
b35167a to
0d555ab
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
February 6, 2024 13:57
0d555ab to
686907c
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
March 1, 2024 22:21
686907c to
712950b
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
March 17, 2024 03:19
712950b to
3341389
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
March 26, 2024 22:54
3341389 to
30b1faf
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
April 11, 2024 22:22
30b1faf to
9bbdca4
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 4, 2024 07:21
9bbdca4 to
dbfeeae
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
November 9, 2024 01:10
1edfb42 to
f4fcbed
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
December 7, 2024 00:38
f4fcbed to
bbf763e
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
December 13, 2024 01:08
bbf763e to
01b3ad6
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
December 20, 2024 23:48
01b3ad6 to
aed41e1
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
March 28, 2025 23:27
aed41e1 to
87bd314
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
April 20, 2025 11:07
87bd314 to
33daa9d
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
April 22, 2025 22:49
33daa9d to
a0f5478
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 3, 2025 23:02
a0f5478 to
da0b40f
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 8, 2025 03:41
da0b40f to
ec6fa03
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 17, 2025 02:38
ec6fa03 to
7f43371
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 6, 2025 04:25
7f43371 to
18c6961
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 15, 2025 11:48
18c6961 to
ed9d51d
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 17, 2025 16:07
ed9d51d to
b512743
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 28, 2025 02:33
b512743 to
9e9cd50
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
July 4, 2025 22:53
9e9cd50 to
7046f9e
Compare
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.
This PR contains the following updates:
7.46.2→7.88.0Release Notes
react-hook-form/react-hook-form (react-hook-form)
v7.88.0: Version 7.88.0Compare Source
✨ Features
🐞 Fixes
resetField()(#13735)replace()(#13734)reset()duringhandleSubmit()(#13733)trigger()targets their parent (#13732)handleSubmit()(#13731)trigger()targets a field with only nested resolver errors (#13730)useWatchcompute cache not being initialized with the initial output (#13728)FileListbeing lost during flatten/expand and omit undefined values injsonToFormData(#13725)schemaErrorLookupreporting nested containers as exact-name errors (#13727)isValidatingnot being recomputed afterunregister()clears validating fields (#13723)reset()(#13722)iterateFieldsByActiononly breaking out of one loop level (#13718)setError()overwrites (#13716)reset()not clearing validating fields (#13714)remove()leaking deleted values onto surviving field-array items (#13713)validateFieldcallingsetCustomValidityonce per key in validate-object mode (#13707)useFieldArrayfocus behavior for checkboxes and radio buttons in appended rows (#13705)getFieldStatereadingisValidatingfrom the supplied form state (#13704)unregister()stripping kept values from the submit payload (#13703)useFormStatenot re-subscribing when control changes (#13702)reset()keepingdirtyFieldsout of sync withisDirtywhenkeepValuesis enabled (#13701)useFormnot reconciling correctly when an Activity subtree is initially hidden (#13698)delayErrortimer fires (#13697)cloneObjectthrowing when checkingBlobwithinstanceof(#13694)useFieldArrayretaining stale fields after an Activity subtree reconnects (#13688)🧹 Refactors
_isTrackedto the remaining multi-key proxy/subscribe form-state checks (#13699)_isTrackedhelper for proxy/subscribe form-state checks (#13690)abortEarlyparameter fromiterateFieldsByAction(#13689)clearErrors(#13696)📝 Documentation
useWatchcompute example variable names in JSDoc (#13700)📦 Dependencies
joifrom 18.2.1 to 18.2.5 (#13719)❤️ Thank You
v7.87.0Compare Source
Added
shouldTouchoption fortrigger()OpaqueTypesregistry for opaque leaf typesFixed
useController().field.onChange()-like APIsControllerunder a null parent submittingundefinedinstead of a valueERR_MODULE_NOT_FOUNDresolvingreact-hook-formdue to areact-serverdeclaration (Next.js builds)useWatchnever reconciling when anActivitysubtree is hidden on its first renderresetFieldnot recomputingisValidfor subscribe-only consumersgenerateWatchOutputignoringdefaultValuefor an array of namesuseFormStatenever reconciling when anActivitysubtree is hidden on its first renderv7.86.0Compare Source
Added
getErrorsmethodPerformance
createFormControlunregisterwithout subscribersFixed
flattendiscardingFileandBlobvalues instead of treating them as leaf nodesvalidateFieldnot passing the field error tosetCustomValiditywhencriteriaModeisallhasValidationtreating falsy but valid values (min: 0,max: 0,minLength: 0,maxLength: 0,required: '') as no validationsetValuetargeting a nested leaf not notifying aControllerregistered on a field array item rootsetValuesnot updating fields registered under an object or array valueuseWatchreturning a stale value on name change when the new value isnullunregisterinvertingkeepDirtywhen broadcastingisDirtyv7.85.0Compare Source
Added
<Activity />Fixed
getFieldStateerror resolution from a field pathuseWatchdiscardinguseForm({ defaultValues })in favor of its owndefaultValuebefore the form mountssetValueemitting a duplicatevaluesstate notification for fields without a native input refuseFieldArrayroot-level error (errors.name.root) being lost onappend/prepend/insert/removemin/maxvalidation being skipped forvalueAsDatefieldsv7.84.0Compare Source
v7.83.0: Version 7.83.0Compare Source
⚡ Improvements
getEventValueto handle file inputs (#13289)🐞 Fixes
clearErrors()(#13613)dirtyFieldsreference stability (#13612)useController): re-subscribeonChange/onBlurwhencontrolchanges (#13603)undefined(#13287)v7.82.0Compare Source
Added
delayErroroption forsetValueto delay validation error updatesFixed
resetDefaultValuesthrough form contextsetValuewithshouldDirtynot updating dirty state correctly when the form is disableddirtyFieldsboolean values for registered array fieldsFieldArraycomponent exportPerformance
getDirtyFieldsperformance, especially for larger forms and deeply nested valuesv7.81.0Compare Source
v7.80.0: Version 7.80.0Compare Source
🧄 feat: disable useFieldArray fields (#13535)
🛺 perf: make rhf more performant (#13524)
🐞 fix(deepEqual): empty array and empty plain object should not be equal (#13533)
thanks to @JSap0914
v7.79.0Compare Source
Added
disabledoption touseFieldArrayFixed
ControlleronChangepromise return typedeepEqualfalse positives with shared object referencesshouldUseNativeValidationbehavior for radio groupscreateFormControlstability with fast refresh in dev modeStrictModevalue preservation during remountformState.errorsreactivity with React compilerv7.78.0Compare Source
Fixed
Controllerfields afterresetwithout rerender (RN issue #13455)useFormState().isDirtyrace with async resolver inonChangemodevaluesprop overdefaultValueswhenshouldUnregisteris truedeepEqualfor empty non-plain objectsTypes
dirtyFieldstyping for field arrays with undefined entriesv7.77.0Compare Source
Added
resetDefaultValuesAPIFixed
isDirtyinsubscribepayload afterreset(..., { keepValues: true })shouldUnregisterreset({})behavior requiring double-call to take effectFieldArrayerrors overriding nested fieldsSecurity
get()against prototype-path traversal (__proto__/constructor/prototype)Performance
v7.76.1Compare Source
Fixed
setValueupdatesNaNas empty whenvalueAsNumberistrueinvalidateFieldsetValuespassoptionsparameter through to enable validationsetValuesemit whole-form change without stalename/typePerformance
setValuesskip redundant per-field deep clonessetValuesthreadskipClonethroughsetFieldValuev7.76.0Compare Source
Added
isDirtysync withdirtyFieldsstateFixed
formState.defaultValueswhenuseFieldArrayandwatchare used togethertrigger()setValueupdatesuseFieldArrayremoveleaves array with empty object when usingvaluespropControllerfields withshouldUnregistersetValuesupdates to mountedControllerfieldsappend({ obj: null })silently replaced bydefaultValuesafterremove()isValidatingreactivity whenvalidatingFieldsis not subscribedv7.75.0Compare Source
Added
getDirtyFieldsto prune empty fieldsFixed
setValuesinFormProvidercontext valueuseWatchre-render when unrelated field validation occursisDirtyafter re-registering a previously unregistered fieldv7.74.0Compare Source
Added
setValuesAPIFixed
useControllername changesNaNas empty whenvalueAsNumberistrueinvalidateFieldv7.73.1Compare Source
Fixed
setValuesthat was accidentally included in patch; fix build to exclude test filesv7.72.1Compare Source
Fixed
setValuewithshouldDirtyfrom polluting unrelated dirty fieldsHookFormControlContextto prevent render conflictsisNameInFieldArrayshould check all ancestor paths for nested field arraysformState.isValidincorrect onControllerre-mountv7.72.0Compare Source
Added
validateoptionformStateto track submit stateFixed
useFieldArrayfrom marking unrelated fields as dirtyv7.71.2Compare Source
Fixed
clearErrorsemit name signal for targeted field updatesDeepPartialSkipArrayKeyforWatchObservervalue parameterv7.71.1Compare Source
Fixed
booleans_as_integersvalue handlingv7.71.0Compare Source
v7.70.0Compare Source
Fixed
keepDirtyValueswatchreturn typesdeepEqualand validationDeepPartialsetValuev7.69.0Compare Source
Added
<Watch />API withuseWatchFixed
isValidstate whenkeepIsValidoption is usedcreateFormControl.subscribesubscription listens only to subscribed changesisValidatingstate updates with validation resultsetErrorandsetFocusv7.68.0Compare Source
Added
<FormStateSubscribe />componentFixed
reset()to fix Next.js 16 Server Actions issuev7.67.0Compare Source
Added
exactoption foruseControllerpropsFixed
undefinedvalue with asyncdefaultValuesinControllerPathValueImpltype inferencev7.66.1Compare Source
Performance
getDirtyFieldsFixed
setValid()during batch array updatesisValidafterresetwhen values update asynchronouslyObject.isindeepEqualv7.66.0Compare Source
Added
useWatchanduseControllernow react tonameprop changesFixed
watch()returningundefinedimmediately afterreset()<Watch />componentv7.65.0Compare Source
Added
<Watch />componentFixed
useFieldArrayrulesgetDirtyFieldssubmit fields withnullvalues when usinguseFormv7.64.0Compare Source
Added
PathValueImpltypeFixed
Controller'sdefaultValuewithshouldUnregisterpropv7.63.0Compare Source
Added
formStateFixed
isValidatingfieldsv7.62.0Compare Source
Fixed
defaultValuesafterresetwith newdefaultValuesFieldErrorsonBlurforreadOnlyfieldsdataincloneObjectv7.61.1Compare Source
Fixed
watchreturn type change based ondefaultValue(caused regressions)v7.61.0Compare Source
Added
computeprop foruseWatchsubscriptionFixed
defaultValuessetValuesubscription callbacks"multipart/form-data"encType in<Form />componentv7.60.0Compare Source
Added
resetwithkeepFieldsRefoption to keep fields referenceFixed
Setfrom clone objectv7.59.0Compare Source
Added
Fixed
formDatareference cloneundefinedvalue for submit datauseWatchobject variable param handlingv7.58.1: Version 7.58.1Compare Source
🔧 check window.crypto undefined (#12893)
v7.58.0Compare Source
Added
FieldArrayPathByValuetypestringToPathto prevent errors at field names containing quotesFixed
formControlreturn fromuseFormuseFieldArrayfields populationv7.57.0Compare Source
Added
errorspropUseFormResetFieldOptionstype forresetFieldAPIFixed
subscribeform.subscribeuseControllerfocus function runtime issuesetValueskips values not in own properties (prevents infinite call stack with self-referencing proto)useFieldArraymodeandreValidateModereactivityvaluesprop regressionv7.56.4: Version 7.56.4Compare Source
🐞 fix: Changes setValue to skip values that are not in ownProperties to prevent infinite call stack (#12731)
🐞 fix: checkbox duplication handling in useFieldArray (#12793)
🐞 fix: make mode and reValidateMode reactive (#12803)
v7.56.3: Version 7.56.3Compare Source
Revert "📭 close #12773 pass input ref instead partial (#12775)"
v7.56.2: Version 7.56.2Compare Source
🐞 fix #12785 regression on default value gets overwritten by values props (#12790)
🐞 fix: use layoutEffect in useWatch for subscription similar to useForm (#12786)
🐞 fix #12772 reset form useWatch to utilize ref for defaultValue and … (#12780)
📭 close #12773 pass input ref instead partial (#12775)
v7.56.1: Version 7.56.1Compare Source
🐞 fix #12761 #12762 issue with usage reset isReady formState (#12765)
🐞 fix #12763 import warning with named exports (#12764)
v7.56.0Compare Source
Added
modeandreValidateModesupportisReadystate for subscriptionFixed
useFieldArrayinput updateuseIsomorphicLayoutEffectto address SSR warningv7.55.0Compare Source
Added
createFormControlandsubscribefunctionuseControllerhook to be memoizeduseWatchdefaultValuehandleSubmitwith native events supportFixed
useFormContextvaluesanddefaultValueswork correctly withcreateFormControlanduseMemoonBlurmodedisabledfield value not returned asundefinedin resolverrevalidateModeissue withuseFieldArrayvalidationuseControllerunregister issue with strict modesetErrorinuseEffectnot working insideFormProvidercontextuseControllerreturn props reference stabilityv7.54.2: Version 7.54.2Compare Source
⚛️ fix #12478 issue should unregister input with controller (#12480)
⏰ close #12443 track disabled fields and only omit data on submit (#12491)
⚛️ upgrade e2e automation app to react 19 (#12482)
🧪 test(useWatch): destructure setValue from useForm
Thanks very much, @marcalexiei for your contribution to the documentation!
v7.54.1: Version 7.54.1Compare Source
Revert "🦥 fix: useForm should return a new object on formState changes (#12424)" (#12475)
v7.54.0Compare Source
Changed
useFormreturn methods will be memorized basedformStateupdatev7.53.2: Version 7.53.2Compare Source
🐞 fix #12398 staled disabled issue with resubmit form (#12403)
🐞 fix: add type guard to fieldRef.select (#12390)
Revert "🏺 watch reference update on formState update (#12326)" (#12391)
thanks to @developer-bandi
v7.53.1: Version 7.53.1Compare Source
🐞 fix: #12294 ensure Invalid Date is evaluated correctly (#12295)
🐞 fix #12316 setValue should work for arrays of primitives to handle checkboxes (#12316) (#12317)
🐞 fix #12097 Use dirty fields along with mount names for form reset with keepDirtyValues (#12211)
🫀 fix #12237 disabled state trigger formState dirty/dirtyFields to update (#12239)
🐞 fix #12291 field array remove cause undefined with FormData (#12305)
📝 improve flatten function with object type check (#12306)
🖐️ improve: resolve type of set function (#12145)
🔧 chore: upgrade eslint to v9 (#12150)
📖 fix: code example input field placeholder name (#12296)
📖 docs: fix typo in code example (#12271)
thanks to @rasikhq @abnud11 @crypt0box @developer-bandi @matmannion @hasancruk & @vismay7
v7.53.0Compare Source
Added
onBlurwith formStateisValidChanged
validateFieldswill only trigger re-render for async validationv7.52.2: Version 7.52.2Compare Source
👍 close #12108 useController should subscribe to exact field name of form's state (#12109)
👍 chore: upgrade app deps
🩻 fix: add useCallback for ref callback (#12078)
🚀 fix: skip call executeBuiltInValidation if no sub-fields left (#12054)
thanks to @newsiberian, @Wendystraite and @abnud11
v7.52.1: Version 7.52.1Compare Source
🐞 fix #12024 dirty not update issue with values prop (#12041)
🐞 fix: field array validate rules shift errors (#12033)
thanks to @JardelCheung
v7.52.0: Version 7.52.0Compare Source
⚛️ close #11932 enable react 19 peer dependency (#11935)
👮♀️ close #11954 getFieldState remove unnessaried inValidating and touched subscription (#11995)
🐞 fix #11985 logic createFormControl check field before usage (#11986)
⌨️ fix: enforce type safety for deps property in RegisterOptions (#11969)
🐞 fix #11922 keep dirty on reset with dirty fields (#11958)
🚔 close #11937 add validation in the cleanup process in useController (#11938)
Revert "⌨️ close: correct type of error field in getFieldState return object (#11831)"
📖 fix: change info.values type in WatchObserver (#11917)
thanks to @nakaakist, @IdoBouskila, @pincy and @peinguin
v7.51.5: Version 7.51.5Compare Source
📖 fix broken link to examples in README.md (#11805)
⌨️ close: correct type of error field in getFieldState return object (#11831)
🐞 fix #11842 radio buttons not disabled when multiple share a name (#11873)
🐞 fix #11821 set value with disabled false before mount (#11880)
🐞 fix setError to preserve existing errors elsewhere in the object (#11888)
⌨️ fix: add info.value type to WatchObserver (#11872)
🫡 fix issue with internal
setapi (#11915)thanks to @mjr2595 @erashu212 @SimonJTurner and @peinguin
v7.51.4: Version 7.51.4Compare Source
👹 close #11778 improve unregister omit key with getValues method (#11779)
🐞 fix #11794 issue: Fields dirty state is not updated when passing values to useForm
v7.51.3: Version 7.51.3Compare Source
🐞 fix #11773 regression on dirty check with reset (#11775)
v7.51.2: Version 7.51.2Compare Source
🐞 fix #11719 validation stuck on true state (#11723)
v7.51.1: Version 7.51.1Compare Source
🐛 bug(validatingFields, trigger): handle all fields validation trigger (#11624)
💚 ci: cleanup actions versions (#11629)
🐞 fix #11590 issue with trigger on validatingFields (#11613)
thanks to @Moshyfawn
v7.51.0Compare Source
Added
v7.50.1: Version v7.50.1Compare Source
🥲 Regression: Revert "⌨️ fix #10734 watch and useWatch without parameters return type (#11359)"
v7.50.0: Versions 7.50.0Compare Source
🔧 fix data param in handleSubmit when TTransformedValues is a union type (#11420)✈️ fix #11281 issue with upgrade node version (#11392)
👷 build(Engines): remove pnpm dependency (#11425)
🐞 fixes #11386 get new dirtyFields when reset keeping defaults and dirty values (#11401)
🏷️ improve CustomElement type (#11309)
💫 feat(useForm): leave formState flags in a consistent state when throwing in handleSubmit onValid (#11214)
⌨️ fix: change DeepPartial to account for object union types & unknown (#11385)
✨ feat(values): priorities values over defaultvalues (#11399)
🐞 close #11246 skip root validation on action when mode and revalidate mode is onSubmit (#11395)
💩 fix #11322 trigger extra re-render with useWatch plus shouldUnregister (#11394)
⌨️ fix #10734 watch and useWatch without parameters return type (#11359)
🧑
🐞 fix #11368 keep form state mounted when keeping values (#11384)
🐞 fix #11374: Nested deep partial with unknown (#11373)
thanks to @Moshyfawn, @jonahallibone, @eladattias1996, @RulerOfCakes, @anonkey, @Ar4ys, @IanVS and @r-kataoka11
v7.49.3: Version 7.49.3Compare Source
🐛 fix(formState, disabled): infer controlled disabled form state (#11361)
🐛 fix(reset): remove global reset option flag (#11355)
🐛 fix(useController): check if disabled state was set by user (#11353)
🖨️ fix: Change DeepPartial type definition to be compatible with unknown (#11333)
🐞 fix #11328 resetField with object as defaultValue (#11329)
thanks to @Moshyfawn, @geeee and @RulerOfCakes
v7.49.2: Version 7.49.2Compare Source
🐞 fix #11292 issue with controller validation prop (#11294)
v7.49.1: Version 7.49.1Compare Source
🐞 fix #11276 issue with disabled omit on Controller (#11277)
🐞 fix #11287 disabled prop cause const dirtyFields update (#11291)
v7.49.0Compare Source
Added
errorsprop atuseFormv7.48.2: Version 7.48.2Compare Source
🐞 #11106 fix disabled prop not update dirty formState (#11143)
🐞 fix controller update with
disabledprop fromuseForm(#11142)v7.48.1: Version 7.48.1Compare Source
🐞 fix controller update with disabled prop from useForm
v7.48.0Compare Source
Added
disabledprop foruseFormto disable the entire formv7.47.0Compare Source
Added
resetapi withkeepIsSubmitSuccessfuloption, keep successfully submitted form state.Configuration
📅 Schedule: (UTC)
🚦 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.
This PR was generated by Mend Renovate. View the repository job log.