3.2.3 2025-April-21
Changes
- Changes how
numpyis handled as an optional dependency. Previously,
importing anumpy-dependent function, likecorrelated_values,
withoutnumpyinstalled would result in anImportErrorat import
time. Now such a function can be imported but if the user attempts to
execute it, aNotImplementedErroris raised indicating that the
function can't be used becausenumpycouldn't be imported. - Refactors the implementation for the calculation of the derivatives of
the power function and improves the corresponding testing.
Adds:
- Adds a small benchmarking suite to CI to guard against absolute
performance regressions and accidental breakage of the lazy expansion
algorithm whichs ensures O(N), rather than O(N^2), scaling complexity
for operations involving many numbers with uncertainty. Established
connectivity withcodspeed.io<codspeed.io>_ to track benchmarking
results. (#274)
Fixes:
- Adds documentation for
ufloat_fromstrbehavior for strings which do
not contain uncertainty. (#287) - Fixes typos in
ufloat_fromstrdocstring examples (#285) - Fixes
readthedocsconfiguration so that the build passes (#254) - Fixes all doctests (#281)
- Adjusts
codecov.ioconfiguration so that minor code coverage changes
will not result in indications that tests are failing. Rather code
coverage reports will be purely informational for code reviewers.
Also fix other minor configuration issues. (#270) - Fixes a bug that resulted in a
ZeroDivisionErrorwhile formatting
very small numbers with uncertainty (#135)
Deprecates:
- Certain
umathfunctions andAffineScalarFunc/UFloatmethods will
be removed in a future release. A deprecation warning has been added
to these functions and methods. The followingumathfunctions are
marked as deprecated:ceil,copysign,fabs,factorial,
floor,fmod,frexp,ldexp,modf,trunc. The following
AffineScalarFunc/UFloatmethods are marked as deprecated:
__floordiv__,__mod__,__abs__,__trunc__,__lt__,
__le__,__gt__,__ge__.