v5.0.0
Breaking Change
Default FieldArray subscription changed from 'all' to {length, value, error}.
Previously, FieldArray subscribed to the entire form state by default, causing the whole array to re-render on any form change. The new default subscribes only to length, value, and error — which is what virtually all FieldArray usages actually need, and results in significantly better performance.
Migration: If you rely on other subscription fields (e.g. dirty, touched, active) in your FieldArray children, pass an explicit subscription prop:
<FieldArray name="friends" subscription={{ length: true, value: true, error: true, dirty: true }}>Bug Fixes
- Fixed lazy getters in the
metaobject not being preserved (#188) - Fixed types not being correctly exposed in the build output (#186)
- Fixed whole-form validation being triggered unnecessarily when no field-level validation is provided (#162)
- Fixed async
validatereturning a Promise object asARRAY_ERRORinstead of awaiting it (#193, fixes #176)
Updated Peer Dependencies
final-form:^5.0.1final-form-arrays:^4.0.1react-final-form:^7.0.1