Skip to content

Releases: JuliaMath/FixedPointNumbers.jl

v0.9.1

Choose a tag to compare

@ViralBShah ViralBShah released this 13 Sep 15:07
d1a812f

FixedPointNumbers v0.9.1

Diff since v0.9.0

Merged pull requests:

  • Fix checked_mul off-by-one, non-finite rem platform dependence, and relax Statistics compat (#330) (@bjarthur)

Closed issues:

  • Release version with @asserts removed from precompile (#317)
  • 0.9 release notes (#329)

v0.8.6

Choose a tag to compare

@github-actions github-actions released this 13 Sep 03:23
cfcedcc

FixedPointNumbers v0.8.6

Diff since v0.8.5

This release has been identified as a backport.
Automated changelogs for backports tend to be wildly incorrect.
Therefore, the list of issues and pull requests is hidden.

v0.9.0

Choose a tag to compare

@bjarthur bjarthur released this 31 Aug 18:26
0bd7124

Changes since v0.8.5:

Breaking / behavioral changes

  • Overflow behavior is now consistent across operations. +, - (unary and binary), *, and abs use wrapping (modular) arithmetic, while /, div, fld, cld, rem, and mod use checked arithmetic and throw an error instead of overflowing. In particular, * between Normed values now wraps around on overflow instead of throwing (#236).
  • Division by zero now throws a DivideError for /, div, fld, cld, rem, and mod.
  • Promotion rules have been commonized between Fixed and Normed (#207). Most notably, Fixed values combined with an Integer now promote to a floating-point type (e.g. Q0f7(0.5) + 1 === 1.5f0); previously the result stayed Fixed. Mixed Fixed/Normed operations also promote to floating point.
  • * between Fixed values now rounds ties to even (previously ties rounded up).
  • / between Fixed values now rounds to nearest (previously the result was truncated toward zero) and throws on overflow.
  • print now emits a plain decimal representation without the type suffix, and show output is more consistent across types (#189, #243).
  • The old iterator methods have been removed (#231).
  • On Julia >= 1.9, Statistics support is provided via a package extension (#277, #281).

New features

  • Checked, wrapping, and saturating arithmetic families let callers choose the overflow behavior explicitly: checked_* (extending Base.Checked) plus the exported wrapping_* and saturating_* counterparts for neg/abs/add/sub/mul/div/fld/cld/rem/mod, and wrapping_fdiv/saturating_fdiv/checked_fdiv (#190, #210, #217, #222, #226, #230).
  • round now supports the digits keyword argument (#235).
  • Improved generation of type aliases (#233).
  • Better conversion and overflow error messages (#205, #214).

Performance improvements

  • Faster multiplication for Normed (#213) and Fixed (#220).
  • Improved isapprox (#216).
  • rand uses the sampler-based Random API (#206).

Note: for 64-bit types (Fixed{Int64}, Normed{UInt64}), /, div, rem, and their variants are computed via BigFloat — exact, but slow and allocating compared to the narrower types.

Bug fixes

  • Fixed % Normed{UInt32} on ARM and improved NaN % FixedPoint (#223).
  • Avoided inconsistent unsafe_trunc behavior with BigFloat (#212).

Full changelog: v0.8.5...v0.9.0

v0.8.5

Choose a tag to compare

@github-actions github-actions released this 13 May 13:58
c372941

FixedPointNumbers v0.8.5

Diff since v0.8.4

Merged pull requests:

Closed issues:

v0.8.4

Choose a tag to compare

@github-actions github-actions released this 21 Jul 22:08
cab78d7

FixedPointNumbers v0.8.4

Diff since v0.8.3

Closed issues:

  • Overflow in N63f1(Float64(typemax(N63f1))) and so on (#200)
  • MSB may be cleared in conversion from BigFloat on ARM (#202)

Merged pull requests:

v0.8.3

Choose a tag to compare

@github-actions github-actions released this 18 Jul 17:08
3f12729

FixedPointNumbers v0.8.3

Diff since v0.8.2

Closed issues:

  • performance on clamp (#179)
  • Adding big(::FixedPoint) and rationalize(::FixedPoint) (#184)

Merged pull requests:

v0.8.2

Choose a tag to compare

@github-actions github-actions released this 10 Jul 09:08
7c90fb6

FixedPointNumbers v0.8.2

Diff since v0.8.1

Closed issues:

  • [RFC] Promotion rules for overflow reduction (#167)

Merged pull requests:

v0.8.1

Choose a tag to compare

@github-actions github-actions released this 15 Jun 12:08
0872417

FixedPointNumbers v0.8.1

Diff since v0.8.0

Merged pull requests:

v0.8.0

Choose a tag to compare

@julia-tagbot julia-tagbot released this 03 Feb 14:45
v0.8.0
a6e2c1d

v0.8.0 (2020-02-03)

Diff since v0.7.1

Closed issues:

  • Optimizing Fixed --> Float conversions (#171)
  • Float64->UInt8 unexpectedly get affected in v0.7.0 (#164)
  • Problems with conversions from Rational (#157)
  • [RFC] Acceptable input ranges (#156)
  • Upper limit of the number of fractional bits f (#155)
  • Inconsistent Integer results (#154)
  • Adding rounding functions for Fixed (#153)
  • Rounding errors in rem of Normed (#150)
  • [RFC/Coffee Break] What about a new type NormedFloat? (#147)
  • isinteger(::Normed) incorrect (#120)

Merged pull requests:

v0.7.1

Choose a tag to compare

@julia-tagbot julia-tagbot released this 07 Jan 14:57
v0.7.1
db7a508

v0.7.1 (2020-01-07)

Diff since v0.7.0

Merged pull requests: