Decimal64.toCanonicalString() fails to carry the sign when the integer part is equal to 0. This snippet fails:
assertEquals("-0.63", Decimal64.valueOf("-0.63").toString());