Age | Commit message (Collapse) | Author |
|
The practice of using "root" for the internal name of the root node
collides with actual nodes named "root", due to a utility function that
checks 'if root' by name. Use empty string as name of root node, as no
actual node will match.
(cherry picked from commit 4df07f8e286ebfacb70c87ee499a4d2c42b772e9)
|
|
(cherry picked from commit a16d8f3305bd8e33763bc23bd1a49efd0699d506)
|
|
(cherry picked from commit 275c95be26f86a06cbec3123bc90ffbcd76f78af)
|
|
In the intial implementation, the delete tree only kept the first node
of a path not present in the RHS of the comparison; this was done as a
convenience for generating 'trimmed' delete commands for the CLI.
However, this loses needed information, and breaks the symmetry of
results:
LHS, RHS -> del, inter, add
RHS, LHS -> add, inter, del
Keep full paths in delete tree and rename trees.del to trees.sub(-tract).
A separate function 'trim_tree' will be provided to produce a
CLI-appopriate delete tree and commands.
(cherry picked from commit 7e4d9ff86ca96a990f52e05310a0486cb668cfb8)
|
|
(cherry picked from commit 23173c6b5d12e5b7990fafe2b43d40f5cbf1a2a5)
|
|
(cherry picked from commit 4d5e3522c14aa22538942e2601be5b6963236452)
|
|
(cherry picked from commit cfc2e186822de7f15c15ae5e15f5872714c7dcd7)
|
|
(cherry picked from commit ba3b34c901b74aa4aee0764e4f3eb84731519139)
|
|
|
|
|
|
|
|
|
|
error line numbers.
|
|
quoted strings.
|
|
|