deepdiff icon indicating copy to clipboard operation
deepdiff copied to clipboard

8.0.0

Open seperman opened this issue 1 year ago • 1 comments

With the introduction of threshold_to_diff_deeper, the values returned are different than in previous versions of DeepDiff. You can still get the older values by setting threshold_to_diff_deeper=0. However to signify that enough has changed in this release that the users need to update the parameters passed to DeepDiff, we will be doing a major version update.

  • [x] use_enum_value=True makes it so when diffing enum, we use the enum's value. It makes it so comparing an enum to a string or any other value is not reported as a type change.
  • [x] threshold_to_diff_deeper=float is a number between 0 and 1. When comparing dictionaries that have a small intersection of keys, we will report the dictionary as a new_value instead of reporting individual keys changed. If you set it to zero, you get the same results as DeepDiff 7.0.1 and earlier, which means this feature is disabled. The new default is 0.33 which means if less that one third of keys between dictionaries intersect, report it as a new object.
  • [x] Deprecated ordered-set and switched to orderly-set. The ordered-set package was not being maintained anymore and starting Python 3.6, there were better options for sets that ordered. I forked one of the new implementations, modified it, and published it as orderly-set.
  • [x] Added use_log_scale:bool and log_scale_similarity_threshold:float. They can be used to ignore small changes in numbers by comparing their differences in logarithmic space. This is different than ignoring the difference based on significant digits.
  • [x] json serialization of reversed lists.
  • [ ] Update the docs

seperman avatar May 17 '24 16:05 seperman

Codecov Report

Attention: Patch coverage is 86.00000% with 21 lines in your changes missing coverage. Please review.

Project coverage is 96.70%. Comparing base (be22027) to head (3228f4b).

Files Patch % Lines
deepdiff/distance.py 70.27% 11 Missing :warning:
deepdiff/diff.py 89.79% 5 Missing :warning:
deepdiff/deephash.py 86.20% 4 Missing :warning:
deepdiff/lfucache.py 50.00% 1 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #460      +/-   ##
==========================================
- Coverage   97.16%   96.70%   -0.46%     
==========================================
  Files          14       14              
  Lines        3880     3947      +67     
==========================================
+ Hits         3770     3817      +47     
- Misses        110      130      +20     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar May 17 '24 16:05 codecov[bot]