Significant or incompatible changes listed here.
Money.__round__()
added to supportround(money, [ndigits])
. Usesdecimal.ROUND_HALF_EVEN
by default, but this can be overriden by settingrounding
in thedecimal
context before callinground()
.round()
on Python 2 does not support the__round__()
method, so rounding ofMoney
withround()
is only available in Python 3.Calling
round(money)
withoutndigits
specified is not supported, and throws aTypeError
as it would coerce theMoney
instance to anint
and this loose the currency information. Useround(money, 0)
to round the amount to the closest whole number, while preserving the currency information.
- Money.__str__ changed under Python 2 to use only ASCII characters. This means that currency codes, rather than symbols, are used.
- Lots of additional locales supported out of the box.
- Python 3.5 supported
- Fixed #70 - format_money error when the locale is not in the formatting definitions: the default is not used.
- Various other bug fixes
- See VCS logs.