DeepDiff: Deep Difference and search of any Python object/data. DeepHash: Hash of any object based on its contents. Delta: Use deltas to reconstruct objects by adding deltas together.
See the codeDeepDiff is now part of Qluster.
If you're building workflows around data validation and correction, Qluster gives your team a structured way to manage rules, review failures, approve fixes, and reuse decisions—without building the entire system from scratch.
Tested on Python 3.10+ and PyPy3.
Please check the ChangeLog file for the detailed information.
DeepDiff 9-1-0
custom_operators, *_obj_callback, ignore_order_func)exclude_paths and include_paths thanks to @akshat62GlobPathMatcher to remove exponential-time matching cliffdeephash.py, helper.py, delta.py, diff.py, distance.py, path.py, and serialization.py (also fixed real bugs: misplaced paren in path._guess_type call, and len(other.indexes > 1) → len(other.indexes) > 1 in diff._compare_in_order)check_elem() now raises immediately instead of going through _raise_or_log(), with full-path preflight validation in _get_elements_and_details() so the set_item_added path cannot silently skip malicious dunder pathsMANIFEST.in thanks to @mgornypip install deepdiff
If you want to use DeepDiff from commandline:
pip install "deepdiff[cli]"
If you want to improve the performance of DeepDiff with certain functionalities such as improved json serialization:
pip install "deepdiff[optimize]"
Install optional packages:
https://zepworks.com/deepdiff/current/
Please take a look at the CHANGELOG file.
:mega: Please fill out our fast 10-question survey so that we can learn how & why you use DeepDiff, and what improvements we should make. Thank you! :dancers:
Clone the repo
Switch to the dev branch
Create your own branch
Install dependencies
uv to install the dependencies: uv sync --all-extras.pip install -e ".[cli,coverage,dev,docs,static,test]"Build uv build
Please run pytest --cov=deepdiff --runslow to see the coverage report. Note that the --runslow flag will run some slow tests too. In most cases you only want to run the fast tests which so you won't add the --runslow flag.
Or to see a more user friendly version, please run: pytest --cov=deepdiff --cov-report term-missing --runslow.
Thank you!
Please take a look at the AUTHORS file.
119 followers · starred Jun 2016
244 followers · starred Dec 2020
1,518 followers · starred Dec 2021
1,427 followers · starred Sep 2023
DeepDiff: Deep Difference and search of any Python object/data. DeepHash: Hash of any object based on its contents. Delta: Use deltas to reconstruct objects by adding deltas together.
See the codeDeepDiff is now part of Qluster.
If you're building workflows around data validation and correction, Qluster gives your team a structured way to manage rules, review failures, approve fixes, and reuse decisions—without building the entire system from scratch.
Tested on Python 3.10+ and PyPy3.
Please check the ChangeLog file for the detailed information.
DeepDiff 9-1-0
custom_operators, *_obj_callback, ignore_order_func)exclude_paths and include_paths thanks to @akshat62GlobPathMatcher to remove exponential-time matching cliffdeephash.py, helper.py, delta.py, diff.py, distance.py, path.py, and serialization.py (also fixed real bugs: misplaced paren in path._guess_type call, and len(other.indexes > 1) → len(other.indexes) > 1 in diff._compare_in_order)check_elem() now raises immediately instead of going through _raise_or_log(), with full-path preflight validation in _get_elements_and_details() so the set_item_added path cannot silently skip malicious dunder pathsMANIFEST.in thanks to @mgornypip install deepdiff
If you want to use DeepDiff from commandline:
pip install "deepdiff[cli]"
If you want to improve the performance of DeepDiff with certain functionalities such as improved json serialization:
pip install "deepdiff[optimize]"
Install optional packages:
https://zepworks.com/deepdiff/current/
Please take a look at the CHANGELOG file.
:mega: Please fill out our fast 10-question survey so that we can learn how & why you use DeepDiff, and what improvements we should make. Thank you! :dancers:
Clone the repo
Switch to the dev branch
Create your own branch
Install dependencies
uv to install the dependencies: uv sync --all-extras.pip install -e ".[cli,coverage,dev,docs,static,test]"Build uv build
Please run pytest --cov=deepdiff --runslow to see the coverage report. Note that the --runslow flag will run some slow tests too. In most cases you only want to run the fast tests which so you won't add the --runslow flag.
Or to see a more user friendly version, please run: pytest --cov=deepdiff --cov-report term-missing --runslow.
Thank you!
Please take a look at the AUTHORS file.
119 followers · starred Jun 2016
244 followers · starred Dec 2020
1,518 followers · starred Dec 2021
1,427 followers · starred Sep 2023