close
Skip to content

Tags: scoder/quicktions

Tags

1.23

Toggle 1.23's commit message
1.23 (2026-04-08)

-----------------

* Thousands separator in formatting was handled differently than for floats etc.
  python/cpython#131067

* Support thousands separators for formatting fractional part of Fraction.
  python/cpython#132204

* Supports building as abi3 wheel.
  Note that abi3 wheels are about half as fast as Python specific builds.

* Several uncommon build architectures are now served with abi3 wheels
  to reduce the number of distribution wheels.  To request a more performant wheel
  for a specific architecture and Python version (range), please open a ticket.

* Built using Cython 3.2.4.

1.22

Toggle 1.22's commit message
1.22 (2025-08-25)

-----------------

* A choice of different GCD implementations is available via ``quicktions.use_gcd_impl()``.
  The fastest one on the current machine is chosen at import time.

* Built using Cython 3.1.3.

1.21

Toggle 1.21's commit message
1.21 (2025-06-13)

-----------------

* A serious parser bug could accidentally concatenate numerator and denominator
  as final denominator when parsing "x/y" where x or y are close to ``sys.maxsize``,
  thus returning a ``Fraction("x/xy")``.

* MSVC and clang now also benefit from fast "count trailing zeroes" intrinsics.

1.20

Toggle 1.20's commit message
1.20 (2025-06-13)

-----------------

* ``quicktions`` is compatible with freethreading Python (3.13+).

* Accept leading zeros in precision/width for Fraction's formatting, following
  python/cpython#130663

* In line with Python's ``Fraction``, quicktions now raises a ``ValueError``
  (instead of an ``OverflowError``) when exceeding parser limits, following
  python/cpython#134010

* Call ``__rpow__`` in ternary ``pow()`` if necessary, following
  python/cpython#130251

* Built using Cython 3.1.2.

1.19

Toggle 1.19's commit message
1.19 (2024-11-29)

-----------------

* Support for Python 2.7 as well as 3.7 and earlier has been removed.

* Generally use ``.as_integer_ratio()`` in the constructor if available.
  python/cpython#120271

* Add a classmethod ``.from_number()`` that requires a number argument, not a string.
  python/cpython#121800

* Mixed calculations with other ``Rational`` classes could return the wrong type.
  python/cpython#119189

* In mixed calculations with ``complex``, the Fraction is now converted to ``float``
  instead of ``complex`` to avoid certain corner cases in complex calculation.
  python/cpython#119839

* Using ``complex`` numbers in division shows better tracebacks.
  python/cpython#102842

* Subclass instantiations and calculations could fail in some cases.

1.18

Toggle 1.18's commit message
1.18 (2024-04-03)

-----------------

* New binary wheels were added built with gcc 12 (manylinux_2_28).

* x86_64 wheels now require SSE4.2.

* Built using Cython 3.0.10.