2
"""Returns the set of differences between two C{dict}s.
4
@return: A 3-tuple of dicts with the changes that would need to be
5
made to convert C{old} into C{new}: C{(creates, updates, deletes)}
7
new_keys = set(new.iterkeys())
8
old_keys = set(old.iterkeys())
11
for key in new_keys - old_keys:
12
creates[key] = new[key]
15
for key in old_keys & new_keys:
16
if old[key] != new[key]:
17
updates[key] = new[key]
20
for key in old_keys - new_keys:
21
deletes[key] = old[key]
23
return creates, updates, deletes