@rjsf/core
- Fixed
processPendingChange()usingoriginalErrorSchema(which already contains mergedextraErrors) as the base formergeErrors(), causing sibling-fieldextraErrorsto accumulate duplicate entries on every array mutation, fixing #5041 - Added
ObjectFieldtest for renaming a nestedadditionalPropertieskey usinguserEventandreset()via a form ref, verifying fix for #4948 - Updated
ArrayField's change handling to onlynullout data for paths that are directly an array indexed value and not object properties within them, fixing #4952
@rjsf/mui
- Added
computeSxProp()helper toutils.ts, ran the MUIv9.0.0/system-propscodemod on the directory and then updated thesxchanges to usecomputeSxProps() - Also transformed the use of
styleblocks for margins or explicitmarginTopormarginBottomin MUI intosxvalues withinDescriptionField,FieldHelpTemplate,ObjectFieldTemplateandSubmitButton,- Updated snapshots accordingly
- Upgraded the
peerDependenciesto add support for MUI v9
@rjsf/utils
- Switched
deepEqualsfromlodash.isEqualWithtofast-equals.createCustomEqualwith cycle detection enabled, and replaced directlodash.isEqualusage inuseDeepCompareMemo,isRootSchema, andfindSelectedOptionInXxxOfwithdeepEquals, fixing #4291 - Fixed
getObjectDefaultsre-injecting stale schema-leveldefaultkeys into anadditionalPropertiesobject whenformDataalready contains its own keys (e.g. after a key rename), preventing ghost entries from reappearing, fixing #4948
@rjsf/validator-ajv8
- Cached the most recent
rootSchemareference inhandleSchemaUpdateso repeatedisValidcalls with the same root schema skip the deep-equality check and Ajv re-registration, fixing #4291
Dev / docs / playground
- Cleaned up testing to make registry mocks simpler using
getTestRegistry()function - Refactored
antdspecific test setup out oftesting/testSetup.ts - Updated the Playground to use MUI v9