*Problem:* clojure.data/diff inconsistently returns a lazy seq when comparing different maps, but a vector otherwise.
user> (data/diff {:a 1 :b 2} {:a 1})
({:b 2} nil {:a 1})
This is inconsistent with doc and normal behavior :
user> (data/diff {:a 1 :b 2} {:a 1 :b 2})
[nil nil {:a 1, :b 2}]
user> (data/diff #{1 2 3} #{1 2 3})
[nil nil #{1 3 2}]
user> (data/diff #{1 2 3} #{1 2})
[#{3} nil #{1 2}]
The docstring states: "Recursively compares a and b, returning a tuple of [things-only-in-a things-only-in-b things-in-both]", implying that it should always return a vector.