-
-
Notifications
You must be signed in to change notification settings - Fork 246
Open
Description
Is your feature request related to a problem? Please describe.
deepdiff is particularly useful for big jsons with possibly complex nested structures. However, the diff output is mostly suitable for machines, not humans. There is the "pretty" view (#187), but that just makes each difference into a sentence, which is not that useful in practice. In particular, in many use cases, for a diff to be useful, the context is very important.
Describe the solution you'd like
Add two more views:
- Similar to the standard
diff --context=<lines>
, where small parts of the json are shown, one for each difference but including the surrounding context. Could be number of lines above and below the difference, or the context be more json specific. - Similar to
dwdiff -c
, where the entire json is shown mostly in white font, but in places where there are differences, show deletions in red and additions in green.
Describe alternatives you've considered
Implement myself something on top of deepdiff to get the views that I want. The downside is that this would only benefit me, even though it is something general which many people could benefit from.
Additional context
Metadata
Metadata
Assignees
Labels
No labels
Projects
Milestone
Relationships
Development
Select code repository
Activity
mauvilsa commentedon Mar 24, 2025
I might work on this kind human readable of views. But, it would be nice to get some feedback here. That is, to know whether contributing such a feature here would be welcome.
seperman commentedon May 9, 2025
Hi @mauvilsa
Have you looked at the pretty command?
https://zepworks.com/deepdiff/current/view.html#pretty-method
mauvilsa commentedon May 9, 2025
@seperman yes I am aware of pretty as mentioned above. From what I know, the current pretty view doesn't show the context of where there are changes, which is what I am interested in.
seperman commentedon May 9, 2025
@mauvilsa Ah I see. So you want to use DeepDiff's output to use color to show the pieces in the data that have changed, added or removed. That's a very cool idea! Yes, such a feature will be very useful. :)