def self.transdiff(before, after)
tbef, taft = [ "package_before", "package_after"].collect do |n|
bucket = Puppet::TransBucket.new
bucket.keyword = :manifest
bucket.type = n
bucket
end
(before.keys + after.keys).uniq.each do |na|
if ! before.key?(na)
push_into_bucket(taft, na, after[na])
elsif ! after.key?(na)
push_into_bucket(tbef, na, before[na])
else
push_into_bucket(taft, na, setdiff(after[na], before[na]))
push_into_bucket(tbef, na, setdiff(before[na], after[na]))
end
end
return [tbef, taft]
end