You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- v5-0-0: Introducing the Delta object, Improving Numpy support, Fixing tuples comparison when ignore_order=True, Dramatically improving the results when ignore_order=True by running in passes, Introducing pretty print view, deep_distance, purge, progress logging, cache and truncate_datetime.
4
+
- v4-3-3: Adds support for datetime.time
5
+
- v4-3-2: Deprecation Warning Enhancement
6
+
- v4-3-1: Fixing the issue with exclude_path and hash calculations when dictionaries were inside iterables. https://github.com/seperman/deepdiff/issues/174
7
+
- v4-3-0: adding exclude_obj_callback
8
+
- v4-2-0: .json property is finally removed. Fix for Py3.10. Dropping support for EOL Python 3.4. Ignoring private keys when calculating hashes. For example __init__ is not a part of hash calculation anymore. Fix for #166 Problem with comparing lists, with an boolean as element.
9
+
- v4-0-9: Fixing the bug for hashing custom unhashable objects
10
+
- v4-0-8: Adding ignore_nan_inequality for float('nan')
11
+
- v4-0-7: Hashing of the number 1 vs. True
12
+
- v4-0-6: found a tiny bug in Python formatting of numbers in scientific notation. Added a workaround.
13
+
- v4-0-5: Fixing number diffing. Adding number_format_notation and number_to_string_func.
14
+
- v4-0-4: Adding ignore_string_case and ignore_type_subclasses
15
+
- v4-0-3: Adding versionbump tool for release
16
+
- v4-0-2: Fixing installation issue where rst files are missing.
17
+
- v4-0-1: Fixing installation Tarball missing requirements.txt . DeepDiff v4+ should not show up as pip installable for Py2. Making Murmur3 installation optional.
18
+
- v4-0-0: Ending Python 2 support, Adding more functionalities and documentation for DeepHash. Switching to Pytest for testing. Switching to Murmur3 128bit for hashing. Fixing classes which inherit from classes with slots didn't have all of their slots compared. Renaming ContentHash to DeepHash. Adding exclude by path and regex path to DeepHash. Adding ignore_type_in_groups. Adding match_string to DeepSearch. Adding Timedelta object diffing.
19
+
- v3-5-0: Exclude regex path
20
+
- v3-3-0: Searching for objects and class attributes
21
+
- v3-2-2: Adding help(deepdiff)
22
+
- v3-2-1: Fixing hash of None
23
+
- v3-2-0: Adding grep for search: object | grep(item)
24
+
- v3-1-3: Unicode vs. Bytes default fix
25
+
- v3-1-2: NotPresent Fix when item is added or removed.
26
+
- v3-1-1: Bug fix when item value is None (#58)
27
+
- v3-1-0: Serialization to/from json
28
+
- v3-0-0: Introducing Tree View
29
+
- v2-5-3: Bug fix on logging for content hash.
30
+
- v2-5-2: Bug fixes on content hash.
31
+
- v2-5-0: Adding ContentHash module to fix ignore_order once and for all.
32
+
- v2-1-0: Adding Deep Search. Now you can search for item in an object.
@@ -47,6 +47,7 @@ DeepDiff gets the difference of 2 objects.
47
47
48
48
> - Please take a look at the [DeepDiff docs](deepdiff/diff_doc.rst)
49
49
> - The full documentation can be found on <https://deepdiff.readthedocs.io>
50
+
> - Tutorials can be found on <https://zepworks.com/tags/deepdiff/>
50
51
51
52
## A few Examples
52
53
@@ -417,50 +418,7 @@ And then running
417
418
418
419
# ChangeLog
419
420
420
-
- v4-3-2: Deprecation Warning Enhancement
421
-
- v4-3-1: Fixing the issue with exclude_path and hash calculations when dictionaries were inside iterables. https://github.com/seperman/deepdiff/issues/174
422
-
- v4-3-0: adding exclude_obj_callback
423
-
- v4-2-0: .json property is finally removed. Fix for Py3.10. Dropping support for EOL Python 3.4. Ignoring private keys when calculating hashes. For example __init__ is not a part of hash calculation anymore. Fix for #166 Problem with comparing lists, with an boolean as element.
424
-
- v4-0-9: Fixing the bug for hashing custom unhashable objects
425
-
- v4-0-8: Adding ignore_nan_inequality for float('nan')
426
-
- v4-0-7: Hashing of the number 1 vs. True
427
-
- v4-0-6: found a tiny bug in Python formatting of numbers in scientific notation. Added a workaround.
428
-
- v4-0-5: Fixing number diffing. Adding number_format_notation and number_to_string_func.
429
-
- v4-0-4: Adding ignore_string_case and ignore_type_subclasses
430
-
- v4-0-3: Adding versionbump tool for release
431
-
- v4-0-2: Fixing installation issue where rst files are missing.
432
-
- v4-0-1: Fixing installation Tarball missing requirements.txt . DeepDiff v4+ should not show up as pip installable for Py2. Making Murmur3 installation optional.
433
-
- v4-0-0: Ending Python 2 support, Adding more functionalities and documentation for DeepHash. Switching to Pytest for testing. Switching to Murmur3 128bit for hashing. Fixing classes which inherit from classes with slots didn't have all of their slots compared. Renaming ContentHash to DeepHash. Adding exclude by path and regex path to DeepHash. Adding ignore_type_in_groups. Adding match_string to DeepSearch. Adding Timedelta object diffing.
434
-
- v3-5-0: Exclude regex path
435
-
- v3-3-0: Searching for objects and class attributes
436
-
- v3-2-2: Adding help(deepdiff)
437
-
- v3-2-1: Fixing hash of None
438
-
- v3-2-0: Adding grep for search: object | grep(item)
439
-
- v3-1-3: Unicode vs. Bytes default fix
440
-
- v3-1-2: NotPresent Fix when item is added or removed.
441
-
- v3-1-1: Bug fix when item value is None (#58)
442
-
- v3-1-0: Serialization to/from json
443
-
- v3-0-0: Introducing Tree View
444
-
- v2-5-3: Bug fix on logging for content hash.
445
-
- v2-5-2: Bug fixes on content hash.
446
-
- v2-5-0: Adding ContentHash module to fix ignore_order once and for all.
447
-
- v2-1-0: Adding Deep Search. Now you can search for item in an object.
- v1-6-0: Unifying key names. i.e newvalue is new_value now. For backward compatibility, newvalue still works.
452
-
- v1-5-0: Fixing ignore order containers with unordered items. Adding significant digits when comparing decimals. Changes property is deprecated.
453
-
- v1-1-0: Changing Set, Dictionary and Object Attribute Add/Removal to be reported as Set instead of List. Adding Pypy compatibility.
454
-
- v1-0-2: Checking for ImmutableMapping type instead of dict
455
-
- v1-0-1: Better ignore order support
456
-
- v1-0-0: Restructuring output to make it more useful. This is NOT backward compatible.
457
-
- v0-6-1: Fixiing iterables with unhashable when order is ignored
458
-
- v0-6-0: Adding unicode support
459
-
- v0-5-9: Adding decimal support
460
-
- v0-5-8: Adding ignore order of unhashables support
461
-
- v0-5-7: Adding ignore order support
462
-
- v0-5-6: Adding slots support
463
-
- v0-5-5: Adding loop detection
421
+
Please take a look at the [changelog](changelog.md) file.
464
422
465
423
# Releases
466
424
@@ -475,21 +433,28 @@ git push && git push --tags
475
433
# Contribute
476
434
477
435
1. Please make your PR against the dev branch
478
-
2. Please make sure that your PR has tests. Since DeepDiff is used in many sensitive data driven projects, we maintain 100% test coverage on the code. There are occasiannly exceptions to that rule but that is rare.
436
+
2. Please make sure that your PR has tests. Since DeepDiff is used in many sensitive data driven projects, we strive to maintain around 100% test coverage on the code.
437
+
438
+
Please run `pytest --cov=deepdiff` to see the coverage report.
439
+
440
+
Or to see a more user friendly version, please run: `pytest --cov=deepdiff --cov-report term-missing`.
479
441
480
442
Thank you!
481
443
482
444
# Authors
483
445
446
+
Developer:
447
+
484
448
- Seperman (Sep Dehpour)
485
449
-[Github](https://github.com/seperman)
486
450
-[Linkedin](http://www.linkedin.com/in/sepehr)
487
451
-[ZepWorks](http://www.zepworks.com)
488
452
489
-
- Victor Hahn Castell for major contributions
453
+
And many thanks to the following people for their contributions to DeepDiff!
454
+
455
+
- Victor Hahn Castell for the tree view and major contributions:
490
456
-[hahncastell.de](http://hahncastell.de)
491
457
-[flexoptix.net](http://www.flexoptix.net)
492
-
493
458
- nfvs for Travis-CI setup script.
494
459
- brbsix for initial Py3 porting.
495
460
- WangFenjin for unicode support.
@@ -512,3 +477,4 @@ Thank you!
512
477
- Necrophagos for Hashing of the number 1 vs. True
513
478
- gaal-dev for adding exclude_obj_callback
514
479
- Ivan Piskunov (van-ess0) for deprecation warning enhancement.
0 commit comments