Files
apache-commons-numbers/apache-commons-numbers.spec
Gus Kenion 5d2f36f9a5 Accepting request 1198832 from home:urbic:branches:Java:packages
- Update to v1.2
  * Changes in this version include:
    + New features:
      ~ NUMBERS-206: "Selection": Add selection of the k-th ordered
        element from an array.
      ~ 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. Thanks to
        Harald Kirsch.
      ~ NUMBERS-203: "DDField": Add a field for the DD number.
      ~ 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.
      ~ NUMBERS-192: "Sum": Add subtract(Sum) method.
      ~ NUMBERS-191: "Stirling": Compute Stirling numbers of the
        first kind.
      ~ NUMBERS-29: Add "Stirling" class to compute Stirling
        numbers of the second kind.
    + Fixed Bugs:
      ~ NUMBERS-204: "Sum": Correct sub-normal round-off
        computation in sum of products.
      ~ NUMBERS-201: "FP64": Make equals consistent with hashCode.
      ~ NUMBERS-200: "Sum": Avoid a NaN result when combining Sum
        instances with infinite sums of the same sign. Thanks to
        Anirudh Joshi.
    + Changes:
      ~ "ArithmeticUtils": Improve performance of GCD for longs.
        Thanks to Matthias Langer.
      ~ "ArithmeticUtils": Improve performance of remainderUnsigned
        and divideUnsigned. Thanks to Sebb, Alex Herbert.
      ~ NUMBERS-199: "Precision": Document inaccurate decimal value
        representation when converting to and from a double in the
        round method.
- Reproducible builds: use SOURCE_DATE_EPOCH for timestamp
- Update to v1.1
  * Changes in this version include:
    + New features:
      ~ NUMBERS-70: Add a user guide.
      ~ 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.
      ~ 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.
      ~ NUMBERS-180: "GammaRatio": Compute the ratio of two gamma
        functions.
      ~ NUMBERS-177: "Erfcx": Compute a scaled complementary error
        function: erfcx(z) = erfc(z) * exp(z*z).
      ~ 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.
    + Fixed Bugs:
      ~ NUMBERS-185: "Precision": Allow Precision.compareTo using a
        maxUlps to be used for sorting. This corrects handling of
        NaN comparisons.
      ~ NUMBERS-182: "LogBeta": Avoid overflow for tiny arguments.
      ~ "BrentSolver": Avoid overflow creating the initial value
        between the lower and upper.
      ~ NUMBERS-173: "ContinuedFraction": Set a minimum bound on
        the relative error epsilon. Prevents an infinite loop when
        the epsilon is zero.
      ~ "FactorialDouble": Prevent caching values that are
        infinite. The cache will support factorials up to 170.
      ~ NUMBERS-170: "RegularizedBeta": Detect edge cases for
        arguments that can be evaluated by exploiting properties of
        the regularized beta function.
      ~ NUMBERS-168: "BrentSolver": Identify brackets with small
        objective values.
      ~ Fix wrong javadoc. Thanks to Arturo Bernal.
    + Changes:
      ~ NUMBERS-184: "Precision": Reduce number of operations in
        Precision.equals using a maxUlps.
      ~ 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.
      ~ 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.
      ~ NUMBERS-176: "ContinuedFraction": Update to use a shared
        implementation with GeneralizedContinuedFraction.
      ~ 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.
      ~ 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.
      ~ 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.
- Add build dependency on
  mvn(org.apache.commons:commons-rng-bom:pom:)
- Initial packaging with v1.0

OBS-URL: https://build.opensuse.org/request/show/1198832
OBS-URL: https://build.opensuse.org/package/show/Java:packages/apache-commons-numbers?expand=0&rev=6
2024-09-05 08:24:13 +00:00

68 lines
2.2 KiB
RPMSpec

#
# spec file for package apache-commons-numbers
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global base_name numbers
%global short_name commons-%{base_name}
Name: apache-%{short_name}
Version: 1.2
Release: 0
Summary: Apache Commons Numbers
License: Apache-2.0
Group: Development/Libraries/Java
URL: https://commons.apache.org/proper/%{short_name}
Source0: https://github.com/apache/%{short_name}/archive/refs/tags/rel/%{short_name}-%{version}.tar.gz
BuildRequires: fdupes
BuildRequires: maven-local
BuildRequires: mvn(org.apache.commons:commons-parent:pom:)
BuildRequires: mvn(org.apache.commons:commons-rng-bom:pom:)
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildArch: noarch
%description
Commons Numbers provides implementations of number types and utilities.
Features include arithmetic, primes, fractions, combinatorics, complex numbers,
quaternions, gamma functions, root finding.
%package javadoc
Summary: API documentation for %{name}
Group: Documentation/HTML
%description javadoc
API documentation for %{name}.
%prep
%setup -q -n %{short_name}-rel-%{short_name}-%{version}
%pom_remove_plugin :maven-checkstyle-plugin
%build
%{mvn_build} -f -- \
-Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ)
%install
%mvn_install
%fdupes %{buildroot}%{_javadocdir}/%{name}
%files -f .mfiles
%license LICENSE NOTICE
%doc {README,CONTRIBUTING}.md RELEASE-NOTES.txt
%files javadoc -f .mfiles-javadoc
%license LICENSE NOTICE
%changelog