rust_decimal breaking changes
cargo25 curated breaking changes across major versions of rust_decimal. Use this as a migration checklist before bumping dependencies.
- 1.16.0 \u2192 1.17.0breaking
Fixes panic when display precision was specified greater than
- 1.16.0 \u2192 1.17.0breaking
Fixes an issue in `round_sf` whereby integral values that started with a 0 or 1 would output incorrect rounded
- 1.16.0 \u2192 1.17.0breaking
Adds `from_f32_retain` and `from_f64_retain` functions which allow parsing a floating point number and retaining any
- 1.16.0 \u2192 1.17.0breaking
Binds `deserialize` so that invalid scale values cannot be set. This may be a breaking change for some users
- 1.12.4 \u2192 1.13.0breaking
Small improvements to `from_scientific`. It now supports a wider range of values as well has slightly faster
- 1.12.4 \u2192 1.13.0breaking
`powi`, `checked_powi` - When the exponent is a signed integer.
- 1.12.4 \u2192 1.13.0breaking
`powu`, `checked_powu` - When the exponent is an unsigned integer.
- 1.12.4 \u2192 1.13.0breaking
`powf`, `checked_powf` - When the exponent is a floating point number. Please note, numbers with a fractional
- 1.12.4 \u2192 1.13.0breaking
`powd`, `checked_powd` - When the exponent is a `Decimal`. Please note, numbers with a fractional component will
- 1.12.4 \u2192 1.13.0breaking
`#[must_use]` added to functions to provide additional compiler hints.
- 1.12.4 \u2192 1.13.0breaking
`try_from_i128_with_scale` function added to safely handle `i128` overflow errors.
- 1.12.4 \u2192 1.13.0breaking
New `c-repr` feature added which will ensure that `#[repr(C)]` is used on the `Decimal` type.
- 1.12.4 \u2192 1.13.0renamed
Support for negative and decimal `pow` functions. This is *breaking* since `powi(u64)` has been renamed
- 1.11.1 \u2192 1.12.0breaking
`add` - up to 2.2x faster
- 1.11.1 \u2192 1.12.0breaking
`div` - up to 428x faster
- 1.11.1 \u2192 1.12.0breaking
`mul` - up to 1.8x faster
- 1.11.1 \u2192 1.12.0breaking
`rem` - up to 1.08x faster
- 1.11.1 \u2192 1.12.0breaking
`sub` - up to 2.5x faster
- 1.11.1 \u2192 1.12.0breaking
Fixes overflow bug with `sqrt` when using the smallest possible representable
- 1.11.1 \u2192 1.12.0breaking
Some minor optimizations in the `maths` feature. Future work will involve speeding up this feature by keeping
- 1.11.1 \u2192 1.12.0breaking
Some internal housekeeping was made to help make way for version 2.0 improvements.
- 1.11.1 \u2192 1.12.0breaking
`-0` now gets corrected to `0`. During operation rewrite I needed to consider operations such as `-0 * 2` - in cases
- 1.11.1 \u2192 1.12.0breaking
Small breaking change by renaming `is_negative` to `negative` in `UnpackedDecimal`.
- 1.11.1 \u2192 1.12.0deprecated
Added associated constants for `MIN`, `MAX` and `ZERO`. Deprecated `min_value()` and `max_value()` in favor of these
- 1.11.1 \u2192 1.12.0removed
Remove unnecessary `String` allocation when parsing a scientific number format.
Get this data programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/breaking/cargo/rust_decimal