[Snyk] Upgrade react-hook-form from 7.52.2 to 7.66.1 #151
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.
Snyk has created this PR to upgrade react-hook-form from 7.52.2 to 7.66.1.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
The recommended version is 38 versions ahead of your current version.
The recommended version was released 24 days ago.
Release notes
Package name: react-hook-form
-
7.66.1 - 2025-11-17
-
7.66.0 - 2025-10-31
-
7.65.0 - 2025-10-10
import { useForm, Watch } from 'react-hook-form';
-
7.64.0 - 2025-10-04
-
7.63.0 - 2025-09-19
-
7.62.0 - 2025-08-01
-
7.61.1 - 2025-07-24
-
7.61.0 - 2025-07-23
- subscribe to the entire form but only return updated value with certain condition
type FormValue = {
- subscribe to a specific form value state
type FormValue = {
-
7.60.0 - 2025-07-04
-
7.60.0-next.0 - 2025-07-01
-
7.59.0 - 2025-06-28
-
7.58.1 - 2025-06-17
-
7.58.0 - 2025-06-15
-
7.57.0 - 2025-06-01
-
7.57.0-next.0 - 2025-04-27
-
7.56.4 - 2025-05-17
-
7.56.3 - 2025-05-07
-
7.56.2 - 2025-05-03
-
7.56.1 - 2025-04-22
-
7.56.0 - 2025-04-20
-
7.56.0-next.0 - 2025-04-13
-
7.55.0 - 2025-03-28
-
7.55.0-next.9 - 2025-03-17
-
7.55.0-next.8 - 2025-03-13
-
7.55.0-next.7 - 2025-03-07
-
7.55.0-next.6 - 2025-03-05
-
7.55.0-next.5 - 2025-02-22
-
7.55.0-next.4 - 2025-02-08
-
7.55.0-next.3 - 2025-01-25
-
7.55.0-next.2 - 2025-01-18
-
7.55.0-next.1 - 2024-12-27
-
7.55.0-next.0 - 2024-12-24
-
7.54.2 - 2024-12-20
-
7.54.1 - 2024-12-12
-
7.54.0 - 2024-12-06
-
7.53.2 - 2024-11-08
-
7.53.1 - 2024-10-19
-
7.53.0 - 2024-08-24
-
7.52.2 - 2024-08-03
from react-hook-form GitHub release notes⚡ perf: reduce redundant property access in getDirtyFields (#13146)
🐞 fix(createFormControl): skip setValid() during batch array updates (#13140)
🐞 fix(useForm): recompute isValid after reset when values update asynchronously (#13126)
🐞 fix(deepEqual): handle NaN comparison correctly using Object.is (#13120)
thanks to @ kimtaejin3, @ a28689604 & @ WuMingDao
🎥 feat: make
useWatchanduseControllerto react to name change (#13070)🐛 fix:
watch()returningundefinedimmediately afterreset()- Issue #13088 (#13091)🐞 fix
<Watch />: correct render function parameter typing (#13108)thanks to @ aspirisen, @ scato3, @ dusan233 & @ zoldyzdk
🧿 feat:
<Watch />component (#12986)const App = () => {
const { register, control } = useForm();
return (
<div>
<form>
<input {...register('foo')} />
<input {...register('bar')} />
</form>
{/* re-render only when value of
foochanges */}<Watch
control={control}
names={['foo']}
render={([foo]) => <span>{foo}</span>}
/>
</div>
);
};
🐞 fix: respect parent-provided
useFieldArrayrules (#13082) (#13083🐞 fix:
getDirtyFieldssubmit fields with null values when usinguseForm(#13079)thanks to @ tesseractjh, @ Han5991 & @ jonathanarnault
🚏 Support optional array fields in
PathValueImpltype (#13057)🐞 fix: preserve Controller's defaultValue with
shouldUnregisterprop (#13063)✂ chore: remove unused field ids ref in
useFieldArray(#13066)thanks to @ MPrieur-chaps, @ gynekolog & @ uk960214
🥢 feat: extract form values by form state (#12936)
🦍 feat: improve get dirty fields logic (#13049)
🐿️ chore: remove duplicated function isMessage (#13050)
🐞 fix: use field name to update isValidating fields (#13000)
🐞 fix: unregister previous field when switching conditional Controllers (#13041)
🐞 fix: only excuse trigger function when deps has a valid array (#13056)
thanks to @ candymask0712, @ GorkemKir, @ kimtaejin3, @ m2na7 & @ abnud11
👨🔧 prevent onBlur for readOnly fields (#12971)
🐞 fix #12988 sync two defaultValues after reset with new defaultValues (#12990)
🐞 fix: do not override prototype of data in cloneObject (#12985)
🐞 fix field name type conflict in nested FieldErrors (#12972)
thanks to @ candymask0712, @ Adityapradh, @ Ty3uK & @ kichikawa57
Revert "⌨️ fix: watch return type based on defaultValue (#12896)"
🧮 feat: compute prop for useWatch subscription (#12503)
test: string;
}
const watchedValue = useWatch({
control: methods.control,
compute: (data: FormValue) => {
if (data.test?.length) {
return data.test;
}
},
});
test: string;
}
const watchedValue = useWatch({
control: methods.control,
name: 'test',
compute: (data: string) => {
return data.length > 3 ? data : '';
},
});
👨🔧 trigger watch callbacks in response to value changes only (#12945)
🙏 track name with setValue subscription callbacks (#12946)
⌨️ fix: watch return type based on defaultValue (#12896)
🐞 fix #12959 subscribe with latest defaultValues #12961
🐞 fix: handle explicit "multipart/form-data" encType in Form Component (#12948)
🐞 fix(build): Remove React wildcard import to resolve ESM build issues (#12942)
🦭 chore: improve exclude patterns (#12935)
🐿️ chore: remove unused omit function (#12958)
Big thanks to @ joshkel for helping with some of the subscription bugs! and also @ kamja44, @ mrazauskas, @ codepunkt, @ afontcu and @ rururux
🦘 feat:
resetnewkeepFieldsRefoptions keep fields reference (#12923)Important
Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information: