Skip Menu |

This queue is for tickets about the UUID-Object CPAN distribution.

Report information
The Basics
Id: 57738
Status: new
Priority: 0/
Queue: UUID-Object

People
Owner: Nobody in particular
Requestors: mschwern [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 0.80
Fixed in: (no value)



Subject: _compare does not work with non-overloaded strings
_compare used to implement the overloading of <=> and cmp does not work if one of the arguments is not a UUID::Object. Test::More 0.96 will no longer stringify its arguments before comparing, this was considered a bug. Apologies for the inconvenience. This reveals string overloaded objects which do not implement a comparison operator, or implement it incorrectly, which is generally an oversight rather than a feature. We recommend you simply remove your implementation of "cmp" and allow it to simply fallback to stringifying and then using the built in cmp. Alternatively, _compare() should check that $b isa UUID::Object otherwise just stringify both sides and compare ("$a" cmp "$b"). Test with Test::More 0.95_02 and release ASAP. Test::More 0.96 is holding off until all affected modules are informed. You should also remove your implementation of <=> as UUIDs are not numbers and should not try to pretend they are.