The default for whitespace should be IGNORE_DIFFERENCES, not TRIM_ALL.
Not sure the best way to fix this. Changing introduces a backward incompatibility. OTOH, I consider it a bug to be fixed.
(Not really sure TRIM_ALL, is really needed, as the standard provides mechanisms for trimming strings on either end.)
[TLC]
I'm okay with moving to IGNORE_DIFFERENCES as default on principle. If there's a change in compatibility then the change can naturally be part of the 4.0 release. If needed earlier, maybe we can make it a compile-time option on development.
I believe implementing TRIM_ALL was a first step towards IGNORE_DIFFERENCES that maintained compatibility with the existing code. That is, TRIM was already under the hood in a bunch of places.
The only extra bit that comes to mind is that we need to keep a way to trigger a pedantic exact matching.
[MLR]
Ticket moved from /p/pfunit/bugs/42/