| <?xml version="1.0"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <!-- |
| This file is used by the maven-changes-plugin to generate the release notes. |
| Useful ways of finding items to add to this file are: |
| |
| 1. Add items when you fix a bug or add a feature (this makes the |
| release process easy :-). |
| |
| 2. Do a JIRA search for tickets closed since the previous release. |
| |
| 3. Use the report generated by the maven-changelog-plugin to see all |
| SVN commits. |
| |
| To generate the file RELEASE-NOTES.txt from this file: |
| |
| mvn changes:announcement-generate -Prelease-notes [-Dchanges.version] |
| |
| The <action> type attribute can be add,update,fix,remove. |
| --> |
| |
| <!-- NOTE: |
| The description attribute entries below are specially formatted |
| so as to improve the layout of the generated text release notes. |
| |
| The parsing process removes all line feeds, replacing them with a single space. |
| The Velocity template in src/changes/release-notes.vm has been enhanced to replace pairs of adjacent spaces |
| with a new-line in the release notes. (These spaces are ignored when displaying HTML). |
| If the output is not quite correct, check for invisible trailing spaces! |
| --> |
| |
| <document xmlns="http://maven.apache.org/changes/1.0.0" |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd"> |
| <properties> |
| <title>Apache Commons Numbers Release Notes</title> |
| </properties> |
| <body> |
| |
| <release version="1.2" date="TBD" description=" |
| New features, updates and bug fixes. |
| "> |
| <action dev="aherbert" type="update" due-to="Matthias Langer"> |
| "ArithmeticUtils": Improve performance of GCD for longs. |
| </action> |
| <action dev="aherbert" type="update" due-to="Sebb, Alex Herbert"> |
| "ArithmeticUtils": Improve performance of remainderUnsigned and divideUnsigned. |
| </action> |
| <action dev="aherbert" type="add" due-to="Harald Kirsch" issue="NUMBERS-205"> |
| "Addition/Multiplication": Introduces isZero to Addition and isOne to Multiplication |
| interfaces. Override the default implementation in implementing classes to avoid |
| expensive equals(Object) operations. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-203"> |
| "DDField": Add a field for the DD number. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-204"> |
| "Sum": Correct sub-normal round-off computation in sum of products. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-193"> |
| "DD": Add an extended precision floating-point number. A double-double (DD) number |
| is an unevaluated sum of two IEEE double precision numbers capable of representing |
| at least 106 bits of significand. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-201"> |
| "FP64": Make equals consistent with hashCode. |
| </action> |
| <action dev="aherbert" type="fix" due-to="Anirudh Joshi" issue="NUMBERS-200"> |
| "Sum": Avoid a NaN result when combining Sum instances with infinite sums |
| of the same sign. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-199"> |
| "Precision": Document inaccurate decimal value representation when converting |
| to and from a double in the round method. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-192"> |
| "Sum": Add subtract(Sum) method. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-191"> |
| "Stirling": Compute Stirling numbers of the first kind. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-29"> |
| Add "Stirling" class to compute Stirling numbers of the second kind. |
| </action> |
| </release> |
| |
| <release version="1.1" date="2022-11-01" description=" |
| New features, updates and bug fixes. Adds a commons-numbers-bom module. |
| "> |
| <action dev="aherbert" type="add" issue="NUMBERS-70"> |
| Add a user guide. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-190"> |
| Add a Bill of Materials (BOM) to aid in dependency management when referencing |
| multiple Apache Commons Numbers artifacts. The BOM should be used to ensure all |
| imported artifacts are compatible. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-185"> |
| "Precision": Allow Precision.compareTo using a maxUlps to be used for sorting. |
| This corrects handling of NaN comparisons. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-184"> |
| "Precision": Reduce number of operations in Precision.equals using a maxUlps. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-181"> |
| Updated support for the beta functions. "RegularizedBeta": Added the |
| complement and derivative of the regularized beta function. |
| Added "IncompleteBeta" and "Beta" classes. |
| Functionality is ported from the Boost C++ library. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-183"> |
| Improve the binomial coefficient classes. Avoid recursive method calls. |
| Avoid overflow for BinomialCoefficientDouble for large results close to infinity. |
| Use precomputed factorials and the LogBeta function for efficiency. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-182"> |
| "LogBeta": Avoid overflow for tiny arguments. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-180"> |
| "GammaRatio": Compute the ratio of two gamma functions. |
| </action> |
| <action dev="aherbert" type="fix"> |
| "BrentSolver": Avoid overflow creating the initial value between the lower and upper. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-177"> |
| "Erfcx": Compute a scaled complementary error function: |
| erfcx(z) = erfc(z) * exp(z*z). |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-178"> |
| "Factorial/FactorialDouble": Tabulate all factorials with exact 64-bit double |
| representations of n! up to n=170. This change deprecates the FactorialDouble |
| class and removes obsolete caching functionality. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-176"> |
| "ContinuedFraction": Update to use a shared implementation with |
| GeneralizedContinuedFraction. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-174"> |
| "Gamma/LogGamma/RegularizedGamma": Update the gamma function implementations to |
| increase accuracy and support for extreme values. |
| Functionality is ported from the Boost C++ library. |
| </action> |
| <action dev="aherbert" type="add" issue="NUMBERS-175"> |
| "GeneralizedContinuedFraction": A continued fraction class to compute using a |
| generator. Allows evaluation of continued fractions from a regular series where |
| coefficients can be computed iteratively from the previous coefficients. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-173"> |
| "ContinuedFraction": Set a minimum bound on the relative error epsilon. Prevents |
| an infinite loop when the epsilon is zero. |
| </action> |
| <action dev="aherbert" type="fix"> |
| "FactorialDouble": Prevent caching values that are infinite. The cache will support |
| factorials up to 170. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-172"> |
| "Erf/Erfc": Use a rational function approximation accurate to 53-bits of precision. |
| This replaces the use of the regularized gamma functions P and Q and increases accuracy |
| at extreme limits of the function. Execution speed is improved. |
| Functionality is ported from the Boost C++ library. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-171"> |
| "InverseErfc": Support full range of [0, 2]. This lowers the supported |
| minimum value from 2^-53 to double min value. Execution speed is improved. |
| Functionality is ported from the Boost C++ library. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-170"> |
| "RegularizedBeta": Detect edge cases for arguments that can be evaluated by |
| exploiting properties of the regularized beta function. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-168"> |
| "BrentSolver": Identify brackets with small objective values. |
| </action> |
| <action dev="aherbert" type="fix" due-to="Arturo Bernal"> |
| Fix wrong javadoc. |
| </action> |
| </release> |
| |
| <release version="1.0" date="2021-07-17" description=" |
| This is the first official release of Apache Commons Numbers (requires Java 8). |
| "> |
| <action dev="mattjuntunen" type="update" issue="NUMBERS-163" due-to="Matt Juntunen"> |
| Combined "LinearCombination" and "Summation" into single "Sum" class. |
| </action> |
| <action dev="erans" type="update" issue="NUMBERS-164" due-to="Gilles Sadowski"> |
| Added SortInPlace utility, original from Commons Math. |
| </action> |
| <action dev="mattjuntunen" type="update" issue="NUMBERS-159" due-to="Matt Juntunen"> |
| Moved "Norms", "LinearCombination", and "Summation" from commons-numbers-arrays module |
| to commons-numbers-core module. Moved "CosAngle" from commons-numbers-arrays module to |
| commons-numbers-angle module. |
| </action> |
| <action dev="mattjuntunen" type="update" issue="NUMBERS-156" due-to="Matt Juntunen"> |
| Replaced "SafeNorm" with "Norms". Added "Summation" class for extended |
| precision summation. |
| </action> |
| <action dev="erans" type="update" issue="NUMBERS-161" due-to="Gilles Sadowski"> |
| "Angle" replaces "PlaneAngle" and "PlaneAngleRadians". |
| </action> |
| <action dev="erans" type="fix" issue="NUMBERS-153" due-to="Gilles Sadowski"> |
| Use iterative implementation of "trigamma" function. Thanks to Dmitriy Golovashkin |
| for reporting. |
| </action> |
| <action dev="erans" type="update" issue="NUMBERS-158" due-to="Gilles Sadowski"> |
| Replace angle normalize method with normalizer method that returns operator instance. |
| </action> |
| <action dev="erans" type="update" issue="NUMBERS-157" due-to="Gilles Sadowski"> |
| Adding Reduce operation originally from Commons Math to commons-numbers-angle module. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-142" due-to="Alex Herbert"> |
| "LinearCombination": Update to use the dot2s algorithm. Avoids construction of an |
| intermediate array for array dot products. Update the hi-lo splitting algorithm |
| to use Dekker's split to ensure the product round-off is computed to exact precision. |
| </action> |
| <action dev="erans" type="update" issue="NUMBERS-154" due-to="Gilles Sadowski"> |
| Precision compareTo method now handles NaN properly to ensure consistent sorting. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-149" due-to="Jin Xu"> |
| "Fraction": Port tests from commons-lang Fraction to demonstrate functional compatibility |
| between the lang and numbers implementation of Fraction. |
| </action> |
| <action dev="aherbert" type="update" issue="NUMBERS-151" due-to="Jin Xu"> |
| "ArithmeticUtils": Refine pow(int, int) and pow(long, int) for edge cases. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-150" due-to="Jin Xu"> |
| "Fraction/BigFraction": Fixed pow(int) to handle Integer.MIN_VALUE and throw |
| ArithmeticException for negative exponents to a fraction of zero. |
| </action> |
| <action dev="aherbert" type="fix" issue="NUMBERS-147" due-to="Alex Herbert"> |
| Fixed Fraction/BigFraction from(double, int) to support Integer.MIN_VALUE as max denominator. |
| </action> |
| </release> |
| |
| <release version="1.0-beta1" date="2020-04-08" description=" |
| This is a beta release of Apache Commons Numbers. No guarantees are |
| made regarding the stability of the API or compatibility with future |
| releases. |
| |
| Contains the following library modules: |
| commons-numbers-angle; |
| commons-numbers-arrays; |
| commons-numbers-combinatorics; |
| commons-numbers-complex; |
| commons-numbers-core; |
| commons-numbers-field; |
| commons-numbers-fraction; |
| commons-numbers-gamma; |
| commons-numbers-primes; |
| commons-numbers-quaternion; |
| commons-numbers-rootfinder. |
| |
| Requires Java 8. |
| "> |
| </release> |
| |
| </body> |
| </document> |