- Added
PropertyFilter
toJsonDiffOptions
(#29) - Fixed bug in diffing null-valued properties (#31)
- Added
DeepEquals
implementation forJsonDocument
andJsonElement
- Performance improvements in raw text comparison mode
- Removed unnecessary allocation when default diff option is used
- Removed one
DeepEquals
overload that was accidentally exposed as a public method
- Major performance improvement in array comparison
- Performance improvements in
DeepEquals
andJsonValueComparer
- [BREAKING CHANGE] Breaking changes in array comparison:
- Removed
JsonDiffOptions.PreferFuzzyArrayItemMatch
option JsonDiffOptions.ArrayItemMatcher
is only invoked when array items are not deeply equal
- Removed
- [BREAKING CHANGE] Base64 encoded text is considered as long text if length is greater than or equal to
JsonDiffOptions.TextDiffMinLength
- Added
JsonValueComparer
that implements semantic comparison of twoJsonValue
objects (including the ones backed byJsonElement
) - [BREAKING CHANGE]
Diff
method no longer usesobject.Equals
to compare values encapsulated inJsonValue<T>
.JsonValueComparer
is used instead - Added semantic equality to
DeepEquals
method - Added options to
JsonDiffOptions
to enable semantic diff - Added
JsonDiffPatcher.DefaultOptions
for customizing default diff options
- Initial release