doPayment vs doDirectPayment and $0 payments - regression, bug or feature?
As per https://github.com/iATSPayments/com.iatspayments.civicrm/issues/362 it appears that the switch from doDirectPayment to doPayment can result in $0 transactions being sent to payment processors.
@mattwire has kindly provided some code to handle the issue in this extension, but I wonder if it was intentional, and if so why, and if it should be documented somewhere.
Or whether doPayment should be smarter?