Finally fixed this really annoying bug.
These 5 lines of code messed up dismissal transitions and animations. Since it's an extension, it even affected apps with Popovers installed even when you didn't import Popovers
.
extension Transaction: Equatable {
public static func == (lhs: Transaction, rhs: Transaction) -> Bool {
lhs.animation == rhs.animation
}
}