We have fixed quite a few bugs and added some significant enhancements
since Apache Commons RNG 1.6 was released, so I would like to release
Apache Commons RNG 1.7.
Apache Commons RNG 1.7 RC1 is available for review here:
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1 (svn
revision 83845)
The Git tag commit for this RC is commons-rng-1.7-RC1, which you can browse
here:
https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.7-RC1
You may checkout this tag using:
git clone https://gitbox.apache.org/repos/asf/commons-rng.git --branch
commons-rng-1.7-RC1 commons-rng-1.7-RC1
(signature can be checked from git using 'git tag -v commons-rng-1.7-RC1')
Maven artifacts are here:
https://repository.apache.org/content/repositories/orgapachecommons-1928/org/apache/commons/
These are the artifacts and their hashes:
#Release SHA-512s
#Thu Apr 16 12:33:28 BST 2026
commons-rng-1.7-bin.tar.gz=9dec28282c9baf8b02f8a47fab2e74f5c2ec123dd7f62b25c1946cc2f25b3193d11b72ec40300a663f429c000840045bbeb0324556d4aadbb42e4387558e15e4
commons-rng-1.7-bin.zip=0ab05dd1a97abc14275de84a385e22f3180418dc5eafb2f4572bf121bcaf459553a540661821697b2d02103f1a14b294c453f9df003feb989402e004b48fef20
commons-rng-1.7-src.tar.gz=34408d3693ff70653fe7b6a113947930cd312ef8b15641d5f66f0a1fa1a1a84243acd7f4d053602065eb7dab0939e102431ec12b18fb96a037793dc777374ac6
commons-rng-1.7-src.zip=43c53c00080c832a68f3169909d510b983742b7feae62d5e0413135db2e24cc4082c10cfd2fb13be6ca62a8042b055255b77cac8f5e7702e5ca481dd4e025dd8
Signatures may be validated on a system supporting a bash Unix shell by
executing:
svn co https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/
cd 1.7-RC1
chmod +x ./signature-validator.sh
for m in client-api core simple sampling bom; do
./signature-validator.sh
https://repository.apache.org/content/repositories/orgapachecommons-1928/org/apache/commons/commons-rng-${m}/1.7/;
done
The source code contains examples that are not part of the public API.
These examples contain Java 11 modules and are enabled using a profile (see
below).
Note: Testing randomness using statistical thresholds results in failures
at a given probability. The 'maven-surefire-plugin' is configured to re-run
tests that fail, and pass the build if they succeed within the allotted
number of reruns (the test will be marked as 'flaky' in the report).
I have tested this with 'mvn clean install' and 'mvn clean package site
site:stage -Pexamples' using:
Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /Users/ah403/software/apache-maven-3
Java version: 11.0.29, vendor: Homebrew, runtime:
/opt/homebrew/Cellar/openjdk@11/11.0.29/libexec/openjdk.jdk/Contents/Home
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "15.7.5", arch: "aarch64", family: "mac"
Details of changes since 1.6 are in the release notes:
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/RELEASE-NOTES.txt
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/changes.html
Site:
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/index.html
(Note some *relative* links are broken and the 1.7 directories are not
yet created - these will be OK once the site is deployed.)
JApiCmp Report (compared to 1.6):
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-client-api/japicmp.html
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-core/japicmp.html
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-simple/japicmp.html
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-sampling/japicmp.html
RevApi Report (compared to 1.6):
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-client-api/revapi-report.html
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-core/revapi-report.html
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-simple/revapi-report.html
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/commons-rng-sampling/revapi-report.html
RAT Report:
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/site/rat-report.html
KEYS:
https://downloads.apache.org/commons/KEYS
Please review the release candidate and vote.
This vote will close no sooner than 72 hours from now.
[ ] +1 Release these artifacts
[ ] +0 OK, but...
[ ] -0 OK, but really should fix...
[ ] -1 I oppose this release because...
Thank you,
Alex Herbert,
Release Manager (using key BC87A3FD0A54480F0BADBEBD21939FF0CA2A6567)
The following is intended as a helper and refresher for reviewers.
Validating a release candidate
==============================
These guidelines are NOT complete.
Requirements: Git, Java, and Maven.
You can validate a release from a release candidate (RC) tag as follows.
1a) Download and decompress the source archive from:
https://dist.apache.org/repos/dist/dev/commons/rng/1.7-RC1/source
1b) Check out the RC tag from git (optional)
This is optional, as a reviewer must at least check source distributions.
git clone https://gitbox.apache.org/repos/asf/commons-rng.git --branch
commons-rng-1.7-RC1 commons-rng-1.7-RC1
cd commons-rng-1.7-RC1
2) Checking the build
All components should include a default Maven goal, such that you can run
'mvn' from the command line by itself.
2) Check Apache licenses
This step is not required if the site includes a RAT report page, which you
then must check.
This check should be included in the default Maven build, but you can check
it with:
mvn apache-rat:check
3) Check binary compatibility
This step is not required if the site includes a JApiCmp report page, which
you then must check.
This check should be included in the default Maven build, but you can check
it with:
mvn verify -DskipTests -P japicmp japicmp:cmp
4) Build the package
This check should be included in the default Maven build, but you can check
it with:
mvn -V clean package
You can record the Maven and Java version produced by -V in your VOTE reply.
To gather OS information from a command line:
Windows: ver
Linux: uname -a
4b) Check reproducibility
To check that a build is reproducible, run:
mvn clean verify artifact:compare -DskipTests -Dreference.repo=
https://repository.apache.org/content/repositories/staging/
'-Dbuildinfo.ignore=*/*.spdx.json'
Note that this excludes SPDX files from the check.
5) Build the site for a multi-module project
mvn site
mvn site:stage
Check the site reports in:
- Windows: target\site\index.html
- Linux: target/site/index.html
Note that the project reports are created for each module.
Modules can be accessed using the 'Project Modules' link under
the 'Project Information' menu (see <path-to-site>/modules.html).
-the end-