Closed thomas-cadeau closed 5 years ago
I don't think this change is correct - the ignore_[add, delete, update, move] options are all intended to suppress the consideration of the corresponding diff type, not to change how the diff is reported.
A move is a diff where the child still has the same parent, but has moved to a different sibling position - i.e. a re-ordering of the children under a parent.
In the code where you've made a change, we have an update diff type: a node has changed its parent. Ignore moves is not relevant in this case, and the inclusion of your change would instead change how updates of this kind were treated.
If your aim is to be able to treat changes of parent as an add plus a delete, that can be done by defining all the key fields as child keys, and omitting any parent key.
this condition was missing. When a row was replaced by an other, it was considered as an update instead of 2 operations: delete + add