Repository navigation
chore(deps): update dependency react-hook-form to v7.90.0 - #4257
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
✅ Deploy Preview for paragon-openedx-v23 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
9 tasks done
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
April 26, 2026 00:41
5c374de to
1017b7b
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
4 times, most recently
from
May 2, 2026 05:26
41f83f2 to
29e9568
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
2 times, most recently
from
May 11, 2026 00:36
1ab0666 to
1133a0d
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
May 16, 2026 01:13
1133a0d to
c9a69bb
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## release-23.x #4257 +/- ##
=============================================
Coverage 94.21% 94.21%
=============================================
Files 242 242
Lines 4305 4305
Branches 1032 1032
=============================================
Hits 4056 4056
Misses 245 245
Partials 4 4 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
3 times, most recently
from
May 23, 2026 10:01
53dc6a3 to
2523c12
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
May 31, 2026 12:32
2523c12 to
c2e913f
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
June 8, 2026 00:48
c2e913f to
caf402b
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
June 13, 2026 05:14
caf402b to
53eda59
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
2 times, most recently
from
June 20, 2026 02:06
76fa357 to
cc3dd24
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
2 times, most recently
from
July 5, 2026 05:24
3e8d11c to
f38c494
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
August 8, 2026 01:55
4f874ab to
6fdb252
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
5 times, most recently
from
August 13, 2026 17:11
67e945b to
0cfbd10
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
August 21, 2026 23:06
0cfbd10 to
f5f2ff3
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
August 30, 2026 05:15
f5f2ff3 to
92e7e75
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
August 31, 2026 00:23
92e7e75 to
06a8d0c
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
2 times, most recently
from
September 12, 2026 02:27
04162b0 to
da03167
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
2 times, most recently
from
September 26, 2026 04:25
af358fe to
99a7e5c
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
September 28, 2026 00:26
99a7e5c to
1277b6d
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
2 times, most recently
from
October 11, 2026 12:22
079db9b to
aa41054
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
6 times, most recently
from
October 16, 2026 19:11
dcb4101 to
7e74536
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x-lockfile
branch
from
October 19, 2026 00:26
7e74536 to
7c7b9f1
Compare
This branch has not been deployed
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.65.0→7.90.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
react-hook-form/react-hook-form (react-hook-form)
v7.90.0Compare Source
Changed
watch,subscribe, scoped subscriptions, dirty field checks and form state fan-outFixed
Object.prototypemembers not being marked as touched on blur andsetValuehasOwnPropertycloneObjectdropping the length of sparse arrayscloneObjectfailing on objects with a null prototyperemove()mishandling duplicated indexes and mutating the indexes passed inuseFieldArrayunregistering fields while a parent array reindexesuseWatchnot updating watched objects after an<Activity>subtree reconnectsuseWatchpreferring its owndefaultValueover formdefaultValuesfor array namesresetwithout values andkeepDefaultValuessettingisDirtyto trueControllerblur validation not working afterresetwatchreading a staleshouldUnregisteroption when a field registersshouldUseNativeValidationoption when stopping at the first errorrefkey not being compared correctlysetError,clearErrorsand remaining error updates not producing a newerrorsreferencev7.89.0Compare Source
Changed
@types/reactpeer dependencyFixed
validateFieldcallingsetCustomValidityon refs that don't implement it under native validationvalidaterunning a stale function instead of the latest onevalidate) being applied afterresetinonChangeandhandleSubmitdelayErrortimers for nested paths not being cancelled when a parent validates clean or is reset viaresetFieldgetValues(names, { dirtyFields })returning every row of a field array instead of only the marked entriestouchedFieldsis not subscribeduseFieldArrayemittingtouchedFieldsin form state updates when unnecessaryuseFieldArraymarking the form dirty when the array default isnullsetValuewithshouldValidatenot revalidatingdepssetValuewithshouldValidatenot triggering validation for a field array rootregisteroptions at runtime still being applieduseControllervalidatingrequiredagainst the input value instead of the controlled valueisValidnot recomputing when theerrorsprop is emptiedgetFieldState(name, formState)with a resolver afterreset()v7.88.0Compare Source
Added
<ErrorMessage />component for rendering a field's validation errorFixed
setValuedirty state comparison ignoringvalueAs*/setValueAstransformsdelayErrortimers not being cancelled when a parent is cleared or unregistereddelayErrorerrors coming back once the pending timer firescriteriaModenot refreshing when form options are updated at runtimeresetFieldleaving stale validating state for the fieldresetnot clearingisValidatingandvalidatingFields, and ignoringkeepIsValidatingreplace()leaving errors and touched state for removed rowsremove()leaking deleted values onto surviving itemshandleSubmitapplying a stale resolver result afterresethandleSubmitdropping resolver-reported root errors on submitresettriggerdropping registered nested errors when targeting their parenttriggersetting a parent error when the target has only nested resolver errorsuseWatchcompute cache not being initialized with the initial outputflatten/jsonToFormDatanot preservingFileListand not skippingundefinedschemaErrorLookupreporting nested containers as exact-name errorsunregisternot recomputingisValidatingafter clearingvalidatingFieldsunregisterstripping a kept value from the submit payloaditerateFieldsByActiononly breaking out of one loop levelsetErrortypes from a previous validation surviving an overwritereact-serverbuild not being publishedvalidateFieldcallingsetCustomValidityper key in validate-object modeuseFieldArraynot focusing a checkbox or radio in the appended rowuseFieldArraynot reconciling stale fields after anActivitysubtree reconnectsuseFormnever reconciling when anActivitysubtree is hidden on its first rendergetFieldStatenot readingisValidatingfrom the supplied form stateuseFormStatenot re-subscribing whencontrolchangesresetwithkeepValuesleavingdirtyFieldsout of sync withisDirtycloneObjectnot guardingBlobbeforeinstanceofv7.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
Improvements
handleSubmitreturns the typed result of theonValidcallback instead of discarding it<Form />supports a function-basedaction(Server Action style) in addition to URL-string actionsFixed
reset()withresetOptions.keepDirtyValuesfreezing clean sibling fields in a nested object when another field in that object is dirtyFieldArrayandFormStatetype exportssetValuesnot notifyinguseFieldArraysubscribers, leaving rendered fields stalev7.83.0Compare Source
Improvements
getEventValueto handle file inputsFixed
clearErrors()dirtyFieldsreference stabilityuseControllernot re-subscribingonChange/onBlurwhencontrolchangesundefinedv7.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
Added
FieldArraycomponent built onuseFieldArrayfor controlled field-array renderingFixed
clearErrorschanging thenamevalue fromform.subscriberesettriggeringsubscribewith the latest name instead ofundefinedsetValuesleaving stale elements behind when shrinking a field arrayflattenpreservingDatevalues as leaf nodesuseFieldArraymin length validation error changing location in theerrorsobjectuseControllernot reflecting a cleared parent object in controlled fieldsSecurity
unset()against prototype-path traversal (__proto__/constructor/prototype), matching the existingset()guardPerformance
useFieldArrayresetv7.80.0Compare Source
Added
disabledprop support for individual fields withinuseFieldArrayFixed
deepEqualincorrectly treating empty array[]and empty plain object{}as equalPerformance
onChange,setValid, dirty checking,setValue, andsetValuesperformancev7.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 />componentConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, 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.