We are happy to announce a new feature for JSON Compare – Graft. We consider Graft to be a more robust and extensible version of JSON Patch. You can generate (and customise) a changeset which can be applied to a Graft target.
Consider this example – a company’s phone system with configuration stored in JSON. You’ve hired some new employees and need to add their details to everyone’s phonebook. However, each phone’s configuration file is slightly different. You can generate a full-context JSON Delta from one phone’s configuration to an updated version with the new phone numbers. This is used as the “Changeset” when using our Graft tool to apply these changes to the various other configuration files.
Our Graft tool uses the same Array Alignment and Word By Word options as our other operations. We have also added an “Output Mode” to control resolving conflicts.
You can learn more about Graft in our documentation.
We have improved the Word By Word behaviour for Two-Way Merge – it now behaves similar to Compare, with modifications within strings being handled individually as opposed to selecting the whole string of one input.