This is an automated email from the ASF dual-hosted git repository. erans pushed a commit to annotated tag commons-math-4.0-beta1-RC1 in repository https://gitbox.apache.org/repos/asf/commons-math.git
commit ea5df539b51c46f997a1d3eec83e25dc42e353d8 Author: Gilles Sadowski <gillese...@gmail.com> AuthorDate: Tue Dec 13 01:42:40 2022 +0100 Create release candidate. --- RELEASE-NOTES.txt | 224 +++++++++++++++++++++++++++++++++++ pom.xml | 4 +- src/changes/changes.xml | 2 +- src/site/site.xml | 2 + src/site/xdoc/download_math.xml | 256 ++++++++++++++++++++-------------------- 5 files changed, 357 insertions(+), 131 deletions(-) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt new file mode 100644 index 000000000..de7a722d2 --- /dev/null +++ b/RELEASE-NOTES.txt @@ -0,0 +1,224 @@ + + Apache Commons Math 4.0-beta1 RELEASE NOTES + +The Apache Commons Math team is pleased to announce the release of commons-math-parent-4.0-beta1 + +The Apache Commons Math project is a library of lightweight mathematics + and statistics components addressing common practical problems. + +This is a major release that requires source changes in applications. +Lower-level functionality has been split off to new components, often +with bug-fixes, performance enhancements and improved API: + Commons RNG, + Commons Numbers, + Commons Geometry, + Commons Statistics. +Functionality still within Commons Math has been modularized and +partly refactored. +This is a work-in-progress (help welcome). +Codes for which the refactoring has not been undertaken (or was +deemed incomplete) have been moved to 'legacy' modules. +The minimum version of the Java platform required to compile and use +Commons Math is Java 8. +Users are encouraged to upgrade to this version, and to the new +components listed above (they are now Commons Math's dependencies). +For code now located in the 'commons-math-legacy' module, upgrading +will be a matter of changing the top-level package name: +From 'org.apache.commons.math3' to 'org.apache.commons.math4.legacy'. +Code in the 'commons-math-legacy-core' module comprise classes that +moved from package 'org.apache.commons.math3' and package +'org.apache.commons.math3.util' (e.g. 'MathArrays') to package +'org.apache.commons.math4.legacy.core'. +Notes: +Class 'FastMath' was renamed 'AccurateMath' (now located in package +'org.apache.commons.math4.legacy.core.jdkmath'). +Caveat: +Although hundreds of issues have been fixed (see 'git log' and the +reports in the bug-tracking system of all the listed components), +many remain due to the lack of human resources necessary in order +to support the whole codebase (it was one of the main reasons for +creating more focused components). + +Changes in this version include: + +New features: +o MATH-1648: "BicubicInterpolator": Provide partial derivatives of interpolating functions. Thanks to Alessandro Moscatelli. +o MATH-1371: Add "ElkanKMeansPlusPlusClusterer" clustering algorithm. Thanks to Artem Barger. +o MATH-1622: Update class "SimplexOptimizer" (in package "o.a.c.m.legacy.optim.nonlinear.scalar.noderiv") + to support simulated annealing. +o MATH-1551: "Percentile": Partial support for weighted data. Thanks to Allen Yu. +o MATH-1529: "AkimaSplineInterpolator": Option to use alternative weights. +o MATH-1509: Add "MiniBatchKMeansClusterer" clustering algorithm. Thanks to Chen Tao. +o MATH-1519: Add "Calinski-Harabsz" clustering evaluator. Thanks to Chen Tao. +o MATH-1516: Interface for ranking a list of clusters. +o MATH-1477: "MillerUpdatingRegression": Fixed "ArrayIndexOutOfBounds" exception. Thanks to Chee Sing Lee. +o MATH-1459: Create a way to automatically calculate a Jacobian matrix using a differentiator. Thanks to Adrian Porter. +o MATH-1426: "DescriptiveStatistics": allow "Double[]" as initializer. Thanks to Karl Richter. +o MATH-1383: Dependency toward the "Commons Rng" component. +o MATH-1015: Gauss-Laguerre quadrature. Thanks to Thomas Neidhart. +o MATH-1350: Improved code coverage (unit tests). Thanks to Rob Tompkins. +o MATH-1336: New 64-bits RNG implementations. On 64-bits systems, they are ~35% faster than + "java.util.Random" for generating "long" or "double" values. They also guarantee + much better randomness than "Random" (cf. MATH-1327). +o MATH-1335: Refactoring of uniform random number generator functionality: new API + implemented in package "o.a.c.m.rng". +o MATH-1337: Adaptor class from new API ("o.a.c.m.rng.RandomSource") to old API + ("o.a.c.m.random.RandomGenerator"). +o MATH-1327: Report on performance and correctness of the new RNG implementations. +o MATH-1314: Javadoc of the new RNG API ("o.a.c.m.rng") mentions the "seed problem". +o MATH-1158: New interface for sampling from distribution (package "o.a.c.m.distribution"). +o MATH-1351: New sampler API for "MultivariateRealDistribution". +o MATH-1348: Adaptor for using one of the new RNG implementations where an instance of + "java.util.Random" is required. +o MATH-1295: "FactorialLog": Cache-based computation of the "log factorial" function (implemented + as an inner class of "CombinatoricsUtils" in package "o.a.c.m.util"). Thanks to Aleksei Dievskii. +o MATH-1271: Added divideUnsigned and remainderUnsigned to ArithmeticUtils. Thanks to Qualtagh. +o Added a fast implementation of IEEEremainder in FastMath. +o MATH-945: Added method "T log10()" to interface "RealFieldElement". +o MATH-1039: Added logDensity(double) to RealDistribution and logProbability(int) + to IntegerDistribution interface. The implementations have already been + updated in release 3.3. Thanks to Aleksei Dievskii. + +Fixed Bugs: +o MATH-1647: "HaltonSequenceGenerator": Raise exception when precondition is not met. Thanks to Maksym Bohachov. +o MATH-1462: "EmpiricalDistribution": Use constant kernel for bins that contain up to 3 values. +o MATH-1379: Fix "LoessInterpolator" (in package "o.a.c.m.legacy.analysis.interpolation"). Thanks to Richard Wilkinson. +o MATH-1617: Class "BigReal": Fix equality check. Thanks to Ng Tsz Sum. +o MATH-1613: Decrease maximum number of iterations in "SimpsonIntegrator" and + "TrapezoidIntegrator" (due to the available range of the internal + counter of function evaluations). +o MATH-1431: "EmpiricalDistribution" handles empty bin. Thanks to Artem Onuchin. +o MATH-1565: Add context to "OutOfRangeException". Thanks to Randy Strauss. +o MATH-1558: "MidPointIntegrator": Fix iterative procedure in order to actually benefit + from evaluations performed at earlier stages. Thanks to Sam Ritchie. +o MATH-1555: "Atan2": Documentation issue. Thanks to Laurent Galluccio. +o MATH-1549: "SimplexTableau": Internally "scale down" the problem definition when the + constraints are defined with large numbers, in order to avoid spurious + exceptions caused by floating-point accuracy errors. Thanks to Mohammad Rezaei. +o MATH-1548: Avoid inefficiencies in computing the standard quality measures of a SOFM. +o MATH-1537: Clean-up (typos and unused "import" statements). Thanks to Jin Xu. +o MATH-1531: "EmpiricalDistribution": Workaround to avoid spurious exception. +o MATH-1511: Issue in site generation and developers documentation. +o MATH-1518: Remove code duplication by moving method to class "Cluster". +o MATH-1388: Avoid overflow. +o MATH-1401: "ClopperPearsonInterval": Missing cases. Thanks to Michele De Stefano. +o MATH-1463: "IntegerSequence.incrementor": Throw "NoSuchElementException" from "next" method. +o MATH-1458: "SimpsonIntegrator": Fixed iteration. Thanks to Alex Herbert. +o MATH-1419: "PolynomialSplineFunction": incorrect usage of exception. Thanks to Hang Park. +o MATH-1413: add generics to the Frequency class +o MATH-1417: "RRQRDecomposition": bug in method "performHouseholderReflection". Thanks to Jean-Francois Lecomte. +o MATH-1381: Fix "BinomialTest": P-value larger than 1. Thanks to Kexin Xie. +o MATH-1382: "MultivariateNormalDistribution": performance improvement (by + removing unnecessary copying). Thanks to Stefan Bunk. +o MATH-1405: "KolmogorovSmirnovTest": bug in "fixTies". Thanks to Daniil Finkel. +o MATH-1376: "SimplexOptimizer": Wrong value of iteration number was passed to the convergence checker. Thanks to Thomas Weise. +o MATH-1319: Major refactoring of package "o.a.c.m.random". +o MATH-1366: Removed obsolete RNG API (replaced by classes under "o.a.c.m.rng"). +o MATH-1340: Avoid exception swallowing (in class "TestUtils"). +o MATH-1339: Avoid redundant object creation. +o MATH-1356: "HypergeometricDistribution": Handle special cases that produced NaN. +o MATH-1343: "BetaDistribution": Removed unnecessary recomputation. +o MATH-1124: "JDKRandomGenerator": Method "nextInt(int)" now throws a "NotStrictlyPositiveException". + The class now delegates to (rather inherits from) "java.util.Random". +o MATH-1300: "AbstractRandomGenerator" and "BitsStreamGenerator": Remove a redundant call + to the random data provider. Thanks to Rostislav Krasny. +o MATH-1231: Lifted unnecessary restriction on constructor's argument of + "MicrosphereInterpolator" (package "o.a.c.m.analysis.interpolation"). +o MATH-1230: The "SimplexSolver" will now throw a "DimensionMismatchException" + when calling "optimize(...)" with linear constraints whose dimension + does not match the dimension of the objective function. +o MATH-1222: Use Double.isNaN rather than x != x in FastMath. Thanks to Benedikt Ritter. +o MATH-1143: Added helper methods to FunctionUtils for univariate and multivariate differentiable functions conversion. +o MATH-964: Removed unused package private class PollardRho in package primes. +o MATH-1221: Improve performance of "ZipfDistribution" by caching the nth generalized harmonic. +o MATH-1205: Methods "evaluate(...)" of class "Variance" changed the internal state + although it was stated differently in the javadoc. +o MATH-1191: Fixed ignored method parameters in QRDecomposition protected methods. +o MATH-1212: Changed javadoc as the RandomDataGenerator class does not implement + an interface anymore (the previous interface has been deprecated in + 3.X and removed in 4.0). + +Changes: +o MATH-1653: Remove class "CombinatoricsUtils" (in package "o.a.c.m.util"). + Functionality is in "Commons Numbers" combinatorics package. +o MATH-1640: Do not change caller's arguments in "KMeansPlusPlusClusterer": + A negative value for "maxIterations" will raise an exception. +o MATH-1629: Throw "ArithmeticException" instead of "MathArithmeticException". +o MATH-1630: Introduce "JdkMath" class for redirecting calls to either JDK or CM + implementations of the functions defined in "java.lang.Math". +o Simplify assertions with simpler equivalent. Thanks to Arturo Bernal. +o MATH-1573: Remove redundant local variables. Thanks to Arturo Bernal. +o MATH-1572: Simplify conditional expressions. Thanks to Arturo Bernal. +o MATH-1616: Refactor "EmpiricalDistribution" class (in package "o.a.c.m.legacy.distribution"). +o MATH-1595: Clean up "o.a.c.math4.legacy.random" package. +o MATH-1615: Remove class "StableRandomGenerator" (in package "o.a.c.m.legacy.random"). +o MATH-1614: Refactor "SimplexOptimizer" (in package "o.a.c.m.legacy.optim.nonlinear.scalar.noderiv"). +o MATH-1582: Transforms codes moved into a dedicated maven module. +o MATH-1578: ANN codes moved into a dedicated maven module. +o MATH-1575: Modularization set-up: All codes were moved into a "legacy" maven module. + WIP: Functionalities should gradually be moved into dedicated modules. +o MATH-1562: Add "Automatic-Module-Name" entry to JAR manifest file. Thanks to Frank Ulbricht. +o MATH-1554: Remove package "o.a.c.math4.geometry". +o MATH-1547: More flexible ranking of SOFM. +o MATH-1530: "SplineInterpolator": Improved performance. Thanks to Yassine Damerdji. +o MATH-1524: Code reuse. Thanks to Chen Tao. +o MATH-1522: Remove generic parameter in clustering evaluator interfaces. Thanks to Chen Tao. +o MATH-1523: Abstract class "ClusterEvaluator" replaced by an interface. +o MATH-1408: Do not use exceptions for control flow +o MATH-1362: Removed deprecated class "Incrementor" (replaced by "IntegerSequence.Incrementor"). +o MATH-1506: Removed class "MultidimensionalCounter" (ported to "Commons Numbers"). +o MATH-1504: Removed class "BigFraction" (ported to "Commons Numbers"). +o MATH-1446: Removed class "Fraction" (ported to "Commons Numbers"). +o MATH-1469: Removed most codes in package "o.a.c.m.geometry". + "Commons Math" now depends on "Commons Geometry". +o MATH-1481: "SobolSequenceGenerator": Update data file. Thanks to Théophile Charmont. +o MATH-1389: Performance improvement for Array2DRowRealMatrix.getSubMatrix() Thanks to Christoph Dibak. +o MATH-1377: "SimplexOptimizer": Slight performance improvement. +o MATH-1318: "o.a.c.m.special.Gamma.digamma": Improved performance (through the use of + the reflection formula for negative arguments). Thanks to Eric Prescott-Gagnon. +o MATH-1305: "AbstractRandomGenerator" and "BitsStreamGenerator": Slight performance + improvement of the "nextBytes" method (particularly when the number of + requested bytes is a multiple of 4). Thanks to Rostislav Krasny. +o MATH-853: "MathRuntimeException" is now the base class for all commons-math + exceptions (except for "NullArgumentException" which extends + "NullPointerException"). +o MATH-1205: The abstract class "AbstractStorelessUnivariateStatistic" does not + extend anymore from "AbstractUnivariateStatistic". +o MATH-1205: Default implementation of + "AbstractStorelessUnivariateStatistic#equals(Object)" + will only return true if both instances have the same type. Previously + different statistics were considered to be equal if their current state + happened to be equal. +o MATH-1205: Default implementations of "AbstractStorelessUnivariateStatistic#evaluate(...)" + do not alter the internal state anymore. Instead a temporary copy of + the statistic is created for evaluation purposes. +o MATH-1206: Added new API methods in "LeastSquaresProblem.Evaluation" (package + "o.a.c.m.fitting.leastsquares"). +o MATH-1210: "QRDecomposition": include information about the condition that + triggers a "SingularMatrixException". +o MATH-757: Removed broken synchronization support in "ResizableDoubleArray". +o MATH-869: "SpearmansCorrelation" will now throw an "MathIllegalArgumentException" + if provided with a "NaturalRanking" instance that uses "REMOVED" as "NaNStrategy". +o MATH-869: "NullArgumentException" extends now "java.lang.NullPointerException" + instead of "MathIllegalArgumentException". +o MATH-839: Renamed "cumulativeProbability(double, double)" to "probability(double, double)" + in "IntegerDistribution" and "RealDistribution". Thanks to Gilles Sadowski. +o MATH-1155: WELL type pseudo-random number generators have been refactored: + the cached indirection index tables per instance are now stored + in a static instance. This reduces the initialization cost when + creating a new instance. +o MATH-825: Method "LaguerreSolver#laguerre(...)" has been made private. Thanks to Gilles Sadowski. +o MATH-760: Field "windowSize" in "DescriptiveStatistics" has been made private. Thanks to sebb. + +Removed: +o MATH-1205: Removed methods "test(...)" from "AbstractUnivariateStatistic". + The already existing methods "MathArrays#verifyValues(...)" shall + be used instead. +o MATH-1050: Removed "ArithmeticUtils#pow(int, long)" and "ArithmeticUtils#pow(long, long)". + +For complete information on Apache Commons Math, including instructions on how to submit bug reports, +patches, or suggestions for improvement, see the Apache Commons Math website: + +http://commons.apache.org/proper/commons-math/ + + diff --git a/pom.xml b/pom.xml index 8212c3636..c630db46e 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ </parent> <artifactId>commons-math-parent</artifactId> - <version>4.0-SNAPSHOT</version> + <version>4.0-beta1</version> <packaging>pom</packaging> <name>Apache Commons Math</name> <description> @@ -49,7 +49,7 @@ <!-- This flag should only be true in the dist-archive module. --> <commons.release.isDistModule>false</commons.release.isDistModule> <!-- do not use snapshot suffix here --> - <commons.release.version>4.0</commons.release.version> + <commons.release.version>4.0-beta1</commons.release.version> <commons.rc.version>RC1</commons.rc.version> <commons.release.desc>(requires Java 8+)</commons.release.desc> <commons.binary.suffix>-bin</commons.binary.suffix> diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 7376ed016..f7f60ca7b 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -55,7 +55,7 @@ If the output is not quite correct, check for invisible trailing spaces! <release version="TBD" date="TBD" description="TBD"> </release> - <release version="4.0" date="XXXX-XX-XX" description=" + <release version="4.0-beta1" date="2022-12-20" description=" This is a major release that requires source changes in applications. Lower-level functionality has been split off to new components, often diff --git a/src/site/site.xml b/src/site/site.xml index a24d28b86..949876ee1 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -32,6 +32,8 @@ <item name="Overview" href="/index.html"/> <item name="Downloads" href="http://commons.apache.org/math/download_math.cgi"/> <item name="Latest API docs (development)" href="apidocs/index.html"/> + <item name="Javadoc (4.0-beta1 release)" + href="http://commons.apache.org/math/javadocs/api-4.0-beta1/index.html"/> <item name="Javadoc (3.6.1 release)" href="http://commons.apache.org/math/javadocs/api-3.6.1/index.html"/> <item name="Javadoc (3.6 release)" diff --git a/src/site/xdoc/download_math.xml b/src/site/xdoc/download_math.xml index a59e0e965..691e5e54a 100644 --- a/src/site/xdoc/download_math.xml +++ b/src/site/xdoc/download_math.xml @@ -1,144 +1,144 @@ -<?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 GENERATED BY THE COMMONS BUILD PLUGIN ****| - |**** DO NOT EDIT DIRECTLY ****| - |**** ****| - +======================================================================+ - | TEMPLATE FILE: download-page-template.xml | - | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates | - +======================================================================+ - | | - | 1) Re-generate using: mvn commons-build:download-page | - | | - | 2) Set the following properties in the component's pom: | - | - commons.componentid (required, alphabetic, lower case) | - | - commons.release.version (required) | - | - commons.release.name (required) | - | - commons.binary.suffix (optional) | - | (defaults to "-bin", set to "" for pre-maven2 releases) | - | - commons.release.desc (optional) | - | - commons.release.subdir (optional) | - | - commons.release.hash (optional, lowercase, default sha512) | - | | - | - commons.release.[234].version (conditional) | - | - commons.release.[234].name (conditional) | - | - commons.release.[234].binary.suffix (optional) | - | - commons.release.[234].desc (optional) | - | - commons.release.[234].subdir (optional) | - | - commons.release.[234].hash (optional, lowercase, [sha512])| - | | - | 3) Example Properties | - | (commons.release.name inherited by parent: | - | ${project.artifactId}-${commons.release.version} | - | | - | <properties> | - | <commons.componentid>math</commons.componentid> | - | <commons.release.version>1.3</commons.release.version> | - | </properties> | - | | - +======================================================================+ ---> -<document> - <properties> - <title>Download Apache Commons Math</title> - <author email="d...@commons.apache.org">Apache Commons Documentation Team</author> - </properties> - <body> - <section name="Download Apache Commons Math"> - <subsection name="Using a Mirror"> - <p> - We recommend you use a mirror to download our release - builds, but you <strong>must</strong> <a href="https://www.apache.org/info/verification.html">verify the integrity</a> of - the downloaded files using signatures downloaded from our main - distribution directories. Recent releases (48 hours) may not yet - be available from all the mirrors. - </p> - - <p> - You are currently using <b>[preferred]</b>. If you - encounter a problem with this mirror, please select another - mirror. If all mirrors are failing, there are <i>backup</i> - mirrors (at the end of the mirrors list) that should be - available. - <br></br> - [if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end] - </p> - - <form action="[location]" method="get" id="SelectMirror"> - <p> - Other mirrors: - <select name="Preferred"> - [if-any http] - [for http]<option value="[http]">[http]</option>[end] - [end] - [if-any ftp] - [for ftp]<option value="[ftp]">[ftp]</option>[end] - [end] - [if-any backup] - [for backup]<option value="[backup]">[backup] (backup)</option>[end] - [end] - </select> - <input type="submit" value="Change"></input> - </p> - </form> - - <p> - It is essential that you - <a href="https://www.apache.org/info/verification.html">verify the integrity</a> - of downloaded files, preferably using the <code>PGP</code> signature (<code>*.asc</code> files); - failing that using the <code>SHA256</code> hash (<code>*.sha256</code> checksum files). - </p> - <p> - The <a href="https://www.apache.org/dist/commons/KEYS">KEYS</a> - file contains the public PGP keys used by Apache Commons developers - to sign releases. - </p> - </subsection> - </section> - <section name="Apache Commons Math 3.6.1 (requires Java 5+)"> +<?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 GENERATED BY THE COMMONS BUILD PLUGIN ****| + |**** DO NOT EDIT DIRECTLY ****| + |**** ****| + +======================================================================+ + | TEMPLATE FILE: download-page-template.xml | + | commons-build-plugin/trunk/src/main/resources/commons-xdoc-templates | + +======================================================================+ + | | + | 1) Re-generate using: mvn commons-build:download-page | + | | + | 2) Set the following properties in the component's pom: | + | - commons.componentid (required, alphabetic, lower case) | + | - commons.release.version (required) | + | - commons.release.name (required) | + | - commons.binary.suffix (optional) | + | (defaults to "-bin", set to "" for pre-maven2 releases) | + | - commons.release.desc (optional) | + | - commons.release.subdir (optional) | + | - commons.release.hash (optional, lowercase, default sha512) | + | | + | - commons.release.[234].version (conditional) | + | - commons.release.[234].name (conditional) | + | - commons.release.[234].binary.suffix (optional) | + | - commons.release.[234].desc (optional) | + | - commons.release.[234].subdir (optional) | + | - commons.release.[234].hash (optional, lowercase, [sha512])| + | | + | 3) Example Properties | + | (commons.release.name inherited by parent: | + | ${project.artifactId}-${commons.release.version} | + | | + | <properties> | + | <commons.componentid>math</commons.componentid> | + | <commons.release.version>1.2</commons.release.version> | + | </properties> | + | | + +======================================================================+ +--> +<document> + <properties> + <title>Download Apache Commons Math</title> + <author email="d...@commons.apache.org">Apache Commons Documentation Team</author> + </properties> + <body> + <section name="Download Apache Commons Math"> + <subsection name="Using a Mirror"> + <p> + We recommend you use a mirror to download our release + builds, but you <strong>must</strong> <a href="https://www.apache.org/info/verification.html">verify the integrity</a> of + the downloaded files using signatures downloaded from our main + distribution directories. Recent releases (48 hours) may not yet + be available from all the mirrors. + </p> + + <p> + You are currently using <b>[preferred]</b>. If you + encounter a problem with this mirror, please select another + mirror. If all mirrors are failing, there are <i>backup</i> + mirrors (at the end of the mirrors list) that should be + available. + <br></br> + [if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end] + </p> + + <form action="[location]" method="get" id="SelectMirror"> + <p> + Other mirrors: + <select name="Preferred"> + [if-any http] + [for http]<option value="[http]">[http]</option>[end] + [end] + [if-any ftp] + [for ftp]<option value="[ftp]">[ftp]</option>[end] + [end] + [if-any backup] + [for backup]<option value="[backup]">[backup] (backup)</option>[end] + [end] + </select> + <input type="submit" value="Change"></input> + </p> + </form> + + <p> + It is essential that you + <a href="https://www.apache.org/info/verification.html">verify the integrity</a> + of downloaded files, preferably using the <code>PGP</code> signature (<code>*.asc</code> files); + failing that using the <code>SHA512</code> hash (<code>*.sha512</code> checksum files). + </p> + <p> + The <a href="https://www.apache.org/dist/commons/KEYS">KEYS</a> + file contains the public PGP keys used by Apache Commons developers + to sign releases. + </p> + </subsection> + </section> + <section name="Apache Commons Math 4.0-beta1 (requires Java 8+)"> <subsection name="Binaries"> <table> <tr> - <td><a href="[preferred]/commons/math/binaries/commons-math3-3.6.1-bin.tar.gz">commons-math3-3.6.1-bin.tar.gz</a></td> - <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math3-3.6.1-bin.tar.gz.sha256">sha256</a></td> - <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math3-3.6.1-bin.tar.gz.asc">pgp</a></td> + <td><a href="[preferred]/commons/math/binaries/commons-math4-4.0-beta1-bin.tar.gz">commons-math4-4.0-beta1-bin.tar.gz</a></td> + <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math4-4.0-beta1-bin.tar.gz.sha512">sha512</a></td> + <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math4-4.0-beta1-bin.tar.gz.asc">pgp</a></td> </tr> <tr> - <td><a href="[preferred]/commons/math/binaries/commons-math3-3.6.1-bin.zip">commons-math3-3.6.1-bin.zip</a></td> - <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math3-3.6.1-bin.zip.sha256">sha256</a></td> - <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math3-3.6.1-bin.zip.asc">pgp</a></td> + <td><a href="[preferred]/commons/math/binaries/commons-math4-4.0-beta1-bin.zip">commons-math4-4.0-beta1-bin.zip</a></td> + <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math4-4.0-beta1-bin.zip.sha512">sha512</a></td> + <td><a href="https://www.apache.org/dist/commons/math/binaries/commons-math4-4.0-beta1-bin.zip.asc">pgp</a></td> </tr> </table> </subsection> <subsection name="Source"> <table> <tr> - <td><a href="[preferred]/commons/math/source/commons-math3-3.6.1-src.tar.gz">commons-math3-3.6.1-src.tar.gz</a></td> - <td><a href="https://www.apache.org/dist/commons/math/source/commons-math3-3.6.1-src.tar.gz.sha256">sha256</a></td> - <td><a href="https://www.apache.org/dist/commons/math/source/commons-math3-3.6.1-src.tar.gz.asc">pgp</a></td> + <td><a href="[preferred]/commons/math/source/commons-math4-4.0-beta1-src.tar.gz">commons-math4-4.0-beta1-src.tar.gz</a></td> + <td><a href="https://www.apache.org/dist/commons/math/source/commons-math4-4.0-beta1-src.tar.gz.sha512">sha512</a></td> + <td><a href="https://www.apache.org/dist/commons/math/source/commons-math4-4.0-beta1-src.tar.gz.asc">pgp</a></td> </tr> <tr> - <td><a href="[preferred]/commons/math/source/commons-math3-3.6.1-src.zip">commons-math3-3.6.1-src.zip</a></td> - <td><a href="https://www.apache.org/dist/commons/math/source/commons-math3-3.6.1-src.zip.sha256">sha256</a></td> - <td><a href="https://www.apache.org/dist/commons/math/source/commons-math3-3.6.1-src.zip.asc">pgp</a></td> + <td><a href="[preferred]/commons/math/source/commons-math4-4.0-beta1-src.zip">commons-math4-4.0-beta1-src.zip</a></td> + <td><a href="https://www.apache.org/dist/commons/math/source/commons-math4-4.0-beta1-src.zip.sha512">sha512</a></td> + <td><a href="https://www.apache.org/dist/commons/math/source/commons-math4-4.0-beta1-src.zip.asc">pgp</a></td> </tr> </table> </subsection>