Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Gilles Sadowski
Hi.

Le mar. 9 juil. 2024 à 14:22, Alex Herbert  a écrit :
>
> We have fixed a few bugs and added enhancements since Apache Commons RNG
> 1.5 was released, so I would like to release Apache Commons RNG 1.6.
>
> Apache Commons RNG 1.6 RC2 is available for review here:
> https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2 (svn
> revision 70197)
>
> The Git tag commons-rng-1.6-RC2 commit for this RC is commons-rng-1.6-RC2
> which you can browse here:
>
> https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.6-RC2
> You may checkout this tag using:
> git clone https://gitbox.apache.org/repos/asf/commons-rng.git --branch
> commons-rng-1.6-RC2 commons-rng-1.6-RC2
>
> Maven artifacts are here:
>
> https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng/1.6/
>
> These are the artifacts and their hashes:
>
> #Release SHA-512s
> #Tue Jul 09 12:29:41 BST 2024
> commons-rng-1.6-bin.tar.gz=ede8acdf030d658d5ee2164185cb4e4e3b402f3b7032202d29016df76946f1355c0e968677fcae6eafcff3a8d6439c70e3514013c07fa34048c3f33e2005e7e4
> commons-rng-1.6-bin.zip=6011e1ea66226592168e6fb67d0c2740cf537edc0d4b549423e5ba7761084cb7222982fdf09ef9a6b8ea29c45e4a6cd09137d4d9ffd20172008f26a8a0804486
> commons-rng-1.6-src.tar.gz=8cb6e78b7a27aaf9492f549848465987838fd490a97996c5f7d516a648093db777d63544cd4be7550de22d69b80b070fdfa5e1f6dd143c2e75c70db684a39e2e
> commons-rng-1.6-src.zip=57e999f5f76155046cde915eaf33781f6361588a5e0d8776d4451149eca4d07fcf2b49612c5e6829181b75ad697e60f6243c0fedff0d932130315e44fe0a3237
>
> 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.6-RC2/
> cd 1.6-RC2
> 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-1755/org/apache/commons/commons-rng-${m}/1.6/;
> 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 -Pcommons-rng-examples' using:
>
> Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
> Maven home: /Users/ah403/software/apache-maven-3
> Java version: 11.0.23, vendor: Eclipse Adoptium, runtime:
> /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
> Default locale: en_GB, platform encoding: UTF-8
> OS name: "mac os x", version: "14.5", arch: "aarch64", family: "mac"
>
>
> Details of changes since 1.5 are in the release notes:
>
> https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2/RELEASE-NOTES.txt
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/changes-report.html
>
> Site:
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/index.html
> (note some *relative* links are broken and the 1.6 directories are not
> yet created - these will be OK once the site is deployed.)
>
> The site has been staged in a personal Apache space as it includes the
> examples modules documentation. These are not
> staged to the SVN dev staging area as these are not part of the official
> release artifacts.
>
> JApiCmp Report (compared to 1.5):
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/commons-rng-client-api/japicmp.html
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/commons-rng-core/japicmp.html
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/commons-rng-simple/japicmp.html
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/commons-rng-sampling/japicmp.html
>
> RAT Report:
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-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, Maven.
>
> You can validate a release from a release candidate (RC) tag as follows.
>
> 1a) Clone and checkout the RC tag
>
> git clone https://gitbox.apache.org/repos/asf/commons-rng.git --branch
> commons-rng-1.6-RC2 commons-rng-1.6-RC2
> cd common

Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Alex Herbert
Hi Gilles,

On Thu, 11 Jul 2024 at 13:30, Gilles Sadowski  wrote:

>
> [In the cloned directory.]
> Default maven goal succeeds.
>
> >
> > mvn site
>
> The above goal fails:
> ---CUT---
> [INFO]
> 
> [INFO] Reactor Summary for Apache Commons RNG 1.6:
> [INFO]
> [INFO] Apache Commons RNG . SUCCESS [
> 12.508 s]
> [INFO] Apache Commons RNG Client API .. SUCCESS [
> 10.496 s]
> [INFO] Apache Commons RNG Core  FAILURE [
> 35.818 s]
> [INFO] Apache Commons RNG Simple .. SKIPPED
> [INFO] Apache Commons RNG Sampling  SKIPPED
> [INFO] Apache Commons RNG (Bill of Materials) . SKIPPED
> [INFO] Apache Commons RNG Documentation ... SKIPPED
> [INFO]
> 
> [INFO] BUILD FAILURE
> [INFO]
> 
> [INFO] Total time:  59.002 s
> [INFO] Finished at: 2024-07-11T14:24:58+02:00
> [INFO]
> 
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-site-plugin:3.12.1:site (default-site)
> on project commons-rng-core: Error generating
> revapi-maven-plugin:0.15.0:report report: Failed to generate report.
> Failed to analyze archives in api
> API[archives=[org.apache.commons:commons-rng-core:jar:1.6],
> supplementary=[org.apache.commons:commons-rng-client-api:jar:1.6]]:
> Failed to copy class path element:
> org.apache.commons:commons-rng-client-api:jar:1.6 to
>
> /tmp/revapi-java11800467850945715013/lib/1-edd7d0b3-5c80-36e0-841b-e47ce34fb194:
>
> /home/gilles/gilles/devel/java/apache/release_check/commons-rng-1.6-RC2/commons-rng-client-api/target/classes
> (Is a directory) -> [Help 1]
> ---CUT---
>
>
I see the same behaviour:

mvn -DskipTests  # OK
mvn -DskipTests site   # Fails on the core module
mvn -DskipTests package site  # OK

# Using install:
mvn clean
mvn -DskipTests install
mvn -DskipTests site   # Still fails on the core module (there is a jar
in target)
mvn clean
mvn -DskipTests site   # Fails on the client-api module
mvn -DskipTests -Drevapi.skip site   # Fails on japicmp on the
client-api module

# Ignore revapi but ensure the target folder has a jar file
mvn -DskipTests
mvn -DskipTests -Drevapi.skip site   # OK

The binary compatibility plugins try to compare the jar files. If you do
not use the package goal then the revapi plugin does not appear to work
with pre-existing jar files from a previous build after the first module.
However japicmp can use previously built jar files (it doesn't fail the
build).

If the target dir does not contain a jar file then japicmp also fails (i.e.
it does not use locally installed jar files from the m2 repo).

So here japicmp does require a local jar file, but revapi does not work
with a local jar file after the first module. So this is a bug in revapi
when creating the site after a previous run to create the package.

Alex


Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Gilles Sadowski
Hi.

Le jeu. 11 juil. 2024 à 15:40, Alex Herbert  a écrit :
>
> Hi Gilles,
>
> On Thu, 11 Jul 2024 at 13:30, Gilles Sadowski  wrote:
>
> >
> > [In the cloned directory.]
> > Default maven goal succeeds.
> >
> > >
> > > mvn site
> >
> > The above goal fails:
> >  [...]
> >
> >
> I see the same behaviour:
>
> mvn -DskipTests  # OK
> mvn -DskipTests site   # Fails on the core module
> mvn -DskipTests package site  # OK

Indeed, it works here too.

But the Revapi report for "commons-rng-sampling" is empty, while
"japicmp" is not (many "METHOD_ADDED_TO_PUBLIC_CLASS").
[Not a problem for the release of course, if we trust either one.]

>
> # Using install:
> mvn clean
> mvn -DskipTests install
> mvn -DskipTests site   # Still fails on the core module (there is a jar
> in target)
> mvn clean
> mvn -DskipTests site   # Fails on the client-api module
> mvn -DskipTests -Drevapi.skip site   # Fails on japicmp on the
> client-api module
>
> # Ignore revapi but ensure the target folder has a jar file
> mvn -DskipTests
> mvn -DskipTests -Drevapi.skip site   # OK

This works too, but then
$ mvn -DskipTests -Drevapi.skip site:stage
fails:
---CUT---
[ERROR] Failed to execute goal on project commons-rng-core: Could not
resolve dependencies for project
org.apache.commons:commons-rng-core:jar:1.6: Failure to find
org.apache.commons:commons-rng-client-api:jar:1.6 in
https://repo.maven.apache.org/maven2 was cached in the local
repository, resolution will not be reattempted until the update
interval of central has elapsed or updates are forced -> [Help 1]
---CUT---

I ended up executing:
$ mvn -DskipTests package site site:stage
to generate the site/reports.

Maybe this command should be noted in step (5) of the "Validating a
release candidate" check list.

Each report's page looks a bit odd in the locally generated site: contents
is center-aligned with the left menu bar, while it's fine (top-aligned) on the
online site.  Also the logo is on the left in the local site (on the
right on the
online site (maybe a symptom that some CSS is missing?).
[Not a big issue now that we are almost permanently connected to the Web.]

Gilles

> [...]

-
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org



Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Gilles Sadowski
Hello.

Le mar. 9 juil. 2024 à 14:22, Alex Herbert  a écrit :
>
> We have fixed a few bugs and added enhancements since Apache Commons RNG
> 1.5 was released, so I would like to release Apache Commons RNG 1.6.
>
> Apache Commons RNG 1.6 RC2 is available for review here:
> https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2 (svn
> revision 70197)
>
> The Git tag commons-rng-1.6-RC2 commit for this RC is commons-rng-1.6-RC2
> which you can browse here:
>
> https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.6-RC2
> You may checkout this tag using:
> git clone https://gitbox.apache.org/repos/asf/commons-rng.git --branch
> commons-rng-1.6-RC2 commons-rng-1.6-RC2
>
> Maven artifacts are here:
>
> https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng/1.6/
>
> These are the artifacts and their hashes:
>
> #Release SHA-512s
> #Tue Jul 09 12:29:41 BST 2024
> commons-rng-1.6-bin.tar.gz=ede8acdf030d658d5ee2164185cb4e4e3b402f3b7032202d29016df76946f1355c0e968677fcae6eafcff3a8d6439c70e3514013c07fa34048c3f33e2005e7e4
> commons-rng-1.6-bin.zip=6011e1ea66226592168e6fb67d0c2740cf537edc0d4b549423e5ba7761084cb7222982fdf09ef9a6b8ea29c45e4a6cd09137d4d9ffd20172008f26a8a0804486
> commons-rng-1.6-src.tar.gz=8cb6e78b7a27aaf9492f549848465987838fd490a97996c5f7d516a648093db777d63544cd4be7550de22d69b80b070fdfa5e1f6dd143c2e75c70db684a39e2e
> commons-rng-1.6-src.zip=57e999f5f76155046cde915eaf33781f6361588a5e0d8776d4451149eca4d07fcf2b49612c5e6829181b75ad697e60f6243c0fedff0d932130315e44fe0a3237
>
> 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.6-RC2/
> cd 1.6-RC2
> 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-1755/org/apache/commons/commons-rng-${m}/1.6/;
> done

It would be worth reminding that a copy/paste of the above on the
command-line will not work (although the script outputs both "ERROR"
and "SUCCESSFUL VALIDATION" which is confusing/misleading).

Couldn't the script be auto-generated (rather than just copied I presume)
to also contain the "for-loop" specific to each component?

> 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 -Pcommons-rng-examples' using:
>
> Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
> Maven home: /Users/ah403/software/apache-maven-3
> Java version: 11.0.23, vendor: Eclipse Adoptium, runtime:
> /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
> Default locale: en_GB, platform encoding: UTF-8
> OS name: "mac os x", version: "14.5", arch: "aarch64", family: "mac"
>
>
> Details of changes since 1.5 are in the release notes:
>
> https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2/RELEASE-NOTES.txt
>
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/changes-report.html
>
> Site:
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/index.html
> (note some *relative* links are broken and the 1.6 directories are not
> yet created - these will be OK once the site is deployed.)

The site there looks quite fine (i.e. it does not display the layout
issues which
I mentioned in the other message).

Also the Revapi is not empty, as in the site I generated locally.

Several ways to run maven below... It would be better to have only the one
expected to produce all the items suggested to be checked.
Still I maintain that the "site" and "site:stage" are causing trouble that
unnecessarily complicates the release (both for the manager and the
reviewer).  The steps (2) and (3) in the "validating" list should be automated
(as they are in [RNG] at least) and assumed to pass if the (single) maven run
completes successfully...

>
> KEYS:
>   https://downloads.apache.org/commons/KEYS

I seem to recall that it was also suggested to run
  $ git tag -v commons-rng-1.6-RC2

Did it become obsolete?

>
> Please review the release candidate and vote.
> This vote will close no sooner than 72 hours from now.
>
   [X] +1 Release these artifacts
>   [ ] +0 OK, but...
>   [ ] -0 OK, but really should fix...
>   [ ] -1 I oppose this release because...
>

Regards,
Gilles

>
> [...]

-
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@comm

Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Alex Herbert
Hi Gilles,

Thanks for the feedback. It seems that revapi is not a robust plugin, but
japicmp also has issues without the packaged jars. I'll make a note in the
RNG release guide to suggest the command to build the site.

On Thu, 11 Jul 2024 at 17:27, Gilles Sadowski  wrote:

> Hello.
>
> Le mar. 9 juil. 2024 à 14:22, Alex Herbert  a écrit :
> >
> > We have fixed a few bugs and added enhancements since Apache Commons RNG
> > 1.5 was released, so I would like to release Apache Commons RNG 1.6.
> >
> > Apache Commons RNG 1.6 RC2 is available for review here:
> > https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2 (svn
> > revision 70197)
> >
> > The Git tag commons-rng-1.6-RC2 commit for this RC is commons-rng-1.6-RC2
> > which you can browse here:
> >
> >
> https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.6-RC2
> > You may checkout this tag using:
> > git clone https://gitbox.apache.org/repos/asf/commons-rng.git
> --branch
> > commons-rng-1.6-RC2 commons-rng-1.6-RC2
> >
> > Maven artifacts are here:
> >
> >
> https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng/1.6/
> >
> > These are the artifacts and their hashes:
> >
> > #Release SHA-512s
> > #Tue Jul 09 12:29:41 BST 2024
> >
> commons-rng-1.6-bin.tar.gz=ede8acdf030d658d5ee2164185cb4e4e3b402f3b7032202d29016df76946f1355c0e968677fcae6eafcff3a8d6439c70e3514013c07fa34048c3f33e2005e7e4
> >
> commons-rng-1.6-bin.zip=6011e1ea66226592168e6fb67d0c2740cf537edc0d4b549423e5ba7761084cb7222982fdf09ef9a6b8ea29c45e4a6cd09137d4d9ffd20172008f26a8a0804486
> >
> commons-rng-1.6-src.tar.gz=8cb6e78b7a27aaf9492f549848465987838fd490a97996c5f7d516a648093db777d63544cd4be7550de22d69b80b070fdfa5e1f6dd143c2e75c70db684a39e2e
> >
> commons-rng-1.6-src.zip=57e999f5f76155046cde915eaf33781f6361588a5e0d8776d4451149eca4d07fcf2b49612c5e6829181b75ad697e60f6243c0fedff0d932130315e44fe0a3237
> >
> > 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.6-RC2/
> > cd 1.6-RC2
> > 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-1755/org/apache/commons/commons-rng-${m}/1.6/
> ;
> > done
>
> It would be worth reminding that a copy/paste of the above on the
> command-line will not work (although the script outputs both "ERROR"
> and "SUCCESSFUL VALIDATION" which is confusing/misleading).
>
> Couldn't the script be auto-generated (rather than just copied I presume)
> to also contain the "for-loop" specific to each component?
>

Maybe. There is a lot that could be improved in the release plugin for
multi-module releases. I added that line manually to the vote email. I
added a lot of other things too. The loop worked when copy and pasted from
my source email. Maybe line wrapping has broken it.

If we are not going to suggest using the signature validator, then why do
we even bother generating it? It seems strange, which is why I made an
attempt to suggest using it.


>
> > 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 -Pcommons-rng-examples' using:
> >
> > Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
> > Maven home: /Users/ah403/software/apache-maven-3
> > Java version: 11.0.23, vendor: Eclipse Adoptium, runtime:
> > /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
> > Default locale: en_GB, platform encoding: UTF-8
> > OS name: "mac os x", version: "14.5", arch: "aarch64", family: "mac"
> >
> >
> > Details of changes since 1.5 are in the release notes:
> >
> >
> https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2/RELEASE-NOTES.txt
> >
> >
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/changes-report.html
> >
> > Site:
> >
> https://home.apache.org/~aherbert/commons-rng-1.6-RC2-site/index.html
> > (note some *relative* links are broken and the 1.6 directories are
> not
> > yet created - these will be OK once the site is deployed.)
>
> The site there looks quite fine (i.e. it does not display the layout
> issues which
> I mentioned in the other message).
>
> Also the Revapi is not empty, as in the site I generated locally.
>

I noted previously in this thread that the revapi plugin does not use the
non-deprecated property (verified by a source code check). So the RC2 has a
valid plugin con

Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Rob Tompkins


> On Jul 11, 2024, at 1:57 PM, Alex Herbert  wrote:
> 
> Hi Gilles,
> 
> Thanks for the feedback. It seems that revapi is not a robust plugin, but
> japicmp also has issues without the packaged jars. I'll make a note in the
> RNG release guide to suggest the command to build the site.
> 
> On Thu, 11 Jul 2024 at 17:27, Gilles Sadowski  > wrote:
> 
>> Hello.
>> 
>> Le mar. 9 juil. 2024 à 14:22, Alex Herbert > > a écrit :
>>> 
>>> We have fixed a few bugs and added enhancements since Apache Commons RNG
>>> 1.5 was released, so I would like to release Apache Commons RNG 1.6.
>>> 
>>> Apache Commons RNG 1.6 RC2 is available for review here:
>>>https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2 (svn
>>> revision 70197)
>>> 
>>> The Git tag commons-rng-1.6-RC2 commit for this RC is commons-rng-1.6-RC2
>>> which you can browse here:
>>> 
>>> 
>> https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.6-RC2
>>> You may checkout this tag using:
>>>git clone https://gitbox.apache.org/repos/asf/commons-rng.git
>> --branch
>>> commons-rng-1.6-RC2 commons-rng-1.6-RC2
>>> 
>>> Maven artifacts are here:
>>> 
>>> 
>> https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng/1.6/
>>> 
>>> These are the artifacts and their hashes:
>>> 
>>> #Release SHA-512s
>>> #Tue Jul 09 12:29:41 BST 2024
>>> 
>> commons-rng-1.6-bin.tar.gz=ede8acdf030d658d5ee2164185cb4e4e3b402f3b7032202d29016df76946f1355c0e968677fcae6eafcff3a8d6439c70e3514013c07fa34048c3f33e2005e7e4
>>> 
>> commons-rng-1.6-bin.zip=6011e1ea66226592168e6fb67d0c2740cf537edc0d4b549423e5ba7761084cb7222982fdf09ef9a6b8ea29c45e4a6cd09137d4d9ffd20172008f26a8a0804486
>>> 
>> commons-rng-1.6-src.tar.gz=8cb6e78b7a27aaf9492f549848465987838fd490a97996c5f7d516a648093db777d63544cd4be7550de22d69b80b070fdfa5e1f6dd143c2e75c70db684a39e2e
>>> 
>> commons-rng-1.6-src.zip=57e999f5f76155046cde915eaf33781f6361588a5e0d8776d4451149eca4d07fcf2b49612c5e6829181b75ad697e60f6243c0fedff0d932130315e44fe0a3237
>>> 
>>> 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.6-RC2/
>>>cd 1.6-RC2
>>>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-1755/org/apache/commons/commons-rng-${m}/1.6/
>> ;
>>> done
>> 
>> It would be worth reminding that a copy/paste of the above on the
>> command-line will not work (although the script outputs both "ERROR"
>> and "SUCCESSFUL VALIDATION" which is confusing/misleading).
>> 
>> Couldn't the script be auto-generated (rather than just copied I presume)
>> to also contain the "for-loop" specific to each component?
>> 
> 
> Maybe. There is a lot that could be improved in the release plugin for
> multi-module releases. I added that line manually to the vote email. I
> added a lot of other things too. The loop worked when copy and pasted from
> my source email. Maybe line wrapping has broken it.
> 

Agreed that the plugin doesn’t support multi-module builds as well as single 
module builds. Sorry for that….hard to manage multmodule builds.

> If we are not going to suggest using the signature validator, then why do
> we even bother generating it? It seems strange, which is why I made an
> attempt to suggest using it.

The signature validator is a script that (for single module projects) downloads 
all of the artifacts and verifies all of the signatures….multi module builds 
are far harder to manage because you have to traverse nexus carefully and 
download all of the different jars from different url’s. 

Maybe we shouldn’t generate it for multi-module builds….regardless, it should 
do signature validation on the real release artifacts, those checked into the 
distribution area.



> 
> 
>> 
>>> 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 -Pcommons-rng-examples' using:
>>> 
>>> Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
>>> Maven home: /Users/ah403/software/apache-maven-3
>>> Java version: 11.0.23, vendor: Eclipse Adoptium, runtime:
>>> /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
>>> Default locale: en_GB, platform encoding: UTF-8
>>> OS name: "mac os x", version: "14.5", arch: "aarch64", family: "mac"
>>> 
>>> 
>>> Details of

Re: [collections] Predicate vs PredicateUtils

2024-07-11 Thread Gary Gregory
Hello Juilan,

I think this should be a driver for Collections 5 because:

- we don't want to break BC
- what would start with copy pasta for one class could degenerate into a
ton of it

WDYT?

Gary

On Mon, Jul 8, 2024, 6:21 AM Julian Reschke 
wrote:

> On 08.07.2024 11:18, Julian Reschke wrote:
> > On 07.07.2024 17:12, Gary Gregory wrote:
> >> We don't want to break binary compatibility within the 4.x release line.
> >>
> >> Gary
> >> ...
> >
> > Would we have to?
>
> OK, so this is about the return values.
>
> It's still unfortunate, because it makes it harder to convert existing
> code that uses the utilities. A utilities class that only works with
> deprecated classes should be deprecated as well, no?
>
> Maybe add a new set of classes with the same functionality, but using
> JDK predicates?
>
> Best regards, Julian
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>
>


Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Gary Gregory
Is RC2 still alive or are there changes coming due to this discussion?

TY,
Gary

On Thu, Jul 11, 2024, 2:05 PM Rob Tompkins  wrote:

>
>
> > On Jul 11, 2024, at 1:57 PM, Alex Herbert 
> wrote:
> >
> > Hi Gilles,
> >
> > Thanks for the feedback. It seems that revapi is not a robust plugin, but
> > japicmp also has issues without the packaged jars. I'll make a note in
> the
> > RNG release guide to suggest the command to build the site.
> >
> > On Thu, 11 Jul 2024 at 17:27, Gilles Sadowski  > wrote:
> >
> >> Hello.
> >>
> >> Le mar. 9 juil. 2024 à 14:22, Alex Herbert  > a écrit :
> >>>
> >>> We have fixed a few bugs and added enhancements since Apache Commons
> RNG
> >>> 1.5 was released, so I would like to release Apache Commons RNG 1.6.
> >>>
> >>> Apache Commons RNG 1.6 RC2 is available for review here:
> >>>https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2 (svn
> >>> revision 70197)
> >>>
> >>> The Git tag commons-rng-1.6-RC2 commit for this RC is
> commons-rng-1.6-RC2
> >>> which you can browse here:
> >>>
> >>>
> >>
> https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.6-RC2
> >>> You may checkout this tag using:
> >>>git clone https://gitbox.apache.org/repos/asf/commons-rng.git
> >> --branch
> >>> commons-rng-1.6-RC2 commons-rng-1.6-RC2
> >>>
> >>> Maven artifacts are here:
> >>>
> >>>
> >>
> https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng/1.6/
> >>>
> >>> These are the artifacts and their hashes:
> >>>
> >>> #Release SHA-512s
> >>> #Tue Jul 09 12:29:41 BST 2024
> >>>
> >>
> commons-rng-1.6-bin.tar.gz=ede8acdf030d658d5ee2164185cb4e4e3b402f3b7032202d29016df76946f1355c0e968677fcae6eafcff3a8d6439c70e3514013c07fa34048c3f33e2005e7e4
> >>>
> >>
> commons-rng-1.6-bin.zip=6011e1ea66226592168e6fb67d0c2740cf537edc0d4b549423e5ba7761084cb7222982fdf09ef9a6b8ea29c45e4a6cd09137d4d9ffd20172008f26a8a0804486
> >>>
> >>
> commons-rng-1.6-src.tar.gz=8cb6e78b7a27aaf9492f549848465987838fd490a97996c5f7d516a648093db777d63544cd4be7550de22d69b80b070fdfa5e1f6dd143c2e75c70db684a39e2e
> >>>
> >>
> commons-rng-1.6-src.zip=57e999f5f76155046cde915eaf33781f6361588a5e0d8776d4451149eca4d07fcf2b49612c5e6829181b75ad697e60f6243c0fedff0d932130315e44fe0a3237
> >>>
> >>> 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.6-RC2/
> >>>cd 1.6-RC2
> >>>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-1755/org/apache/commons/commons-rng-${m}/1.6/
> >> ;
> >>> done
> >>
> >> It would be worth reminding that a copy/paste of the above on the
> >> command-line will not work (although the script outputs both "ERROR"
> >> and "SUCCESSFUL VALIDATION" which is confusing/misleading).
> >>
> >> Couldn't the script be auto-generated (rather than just copied I
> presume)
> >> to also contain the "for-loop" specific to each component?
> >>
> >
> > Maybe. There is a lot that could be improved in the release plugin for
> > multi-module releases. I added that line manually to the vote email. I
> > added a lot of other things too. The loop worked when copy and pasted
> from
> > my source email. Maybe line wrapping has broken it.
> >
>
> Agreed that the plugin doesn’t support multi-module builds as well as
> single module builds. Sorry for that….hard to manage multmodule builds.
>
> > If we are not going to suggest using the signature validator, then why do
> > we even bother generating it? It seems strange, which is why I made an
> > attempt to suggest using it.
>
> The signature validator is a script that (for single module projects)
> downloads all of the artifacts and verifies all of the signatures….multi
> module builds are far harder to manage because you have to traverse nexus
> carefully and download all of the different jars from different url’s.
>
> Maybe we shouldn’t generate it for multi-module builds….regardless, it
> should do signature validation on the real release artifacts, those checked
> into the distribution area.
>
>
>
> >
> >
> >>
> >>> 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 -Pcommons-rng-examples' using:
> >>>
> >>> Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc29

Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Gilles Sadowski
Hi.

Le jeu. 11 juil. 2024 à 19:57, Alex Herbert  a écrit :
>
> [...]
> > >
> > > 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.6-RC2/
> > > cd 1.6-RC2
> > > 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-1755/org/apache/commons/commons-rng-${m}/1.6/
> > ;
> > > done
> >
> > It would be worth reminding that a copy/paste of the above on the
> > command-line will not work (although the script outputs both "ERROR"
> > and "SUCCESSFUL VALIDATION" which is confusing/misleading).
> >
> > Couldn't the script be auto-generated (rather than just copied I presume)
> > to also contain the "for-loop" specific to each component?
> >
>
> Maybe. There is a lot that could be improved in the release plugin for
> multi-module releases. I added that line manually to the vote email. I
> added a lot of other things too. The loop worked when copy and pasted from
> my source email. Maybe line wrapping has broken it.
>
> If we are not going to suggest using the signature validator, then why do
> we even bother generating it? It seems strange, which is why I made an
> attempt to suggest using it.

The script is a great improvement over downloading all the artefacts
manually; it's just too easy to use it wrongly and still have the impression
that it did something useful.
When I pasted
---CUT---
for m in client-api core simple sampling bom; do
  ./signature-validator.sh
https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng-${m}/1.6/
done
---CUT---
in a file, all the artefacts were downloaded and the signature checks were
(really) successful.  So it works fine for a multi-module component.
The improvement would be the added robustness of having the above three
lines generated, and become part of the (release-specific) script.

Gilles

> > [...]

-
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org



Re: [VOTE] Release Apache Commons RNG 1.6 based on RC2

2024-07-11 Thread Alex Herbert
RC2 is still ok. Only nits with the site generation so far.

On Thu, 11 Jul 2024, 19:31 Gary Gregory,  wrote:

> Is RC2 still alive or are there changes coming due to this discussion?
>
> TY,
> Gary
>
> On Thu, Jul 11, 2024, 2:05 PM Rob Tompkins  wrote:
>
> >
> >
> > > On Jul 11, 2024, at 1:57 PM, Alex Herbert 
> > wrote:
> > >
> > > Hi Gilles,
> > >
> > > Thanks for the feedback. It seems that revapi is not a robust plugin,
> but
> > > japicmp also has issues without the packaged jars. I'll make a note in
> > the
> > > RNG release guide to suggest the command to build the site.
> > >
> > > On Thu, 11 Jul 2024 at 17:27, Gilles Sadowski  > > wrote:
> > >
> > >> Hello.
> > >>
> > >> Le mar. 9 juil. 2024 à 14:22, Alex Herbert  > > a écrit :
> > >>>
> > >>> We have fixed a few bugs and added enhancements since Apache Commons
> > RNG
> > >>> 1.5 was released, so I would like to release Apache Commons RNG 1.6.
> > >>>
> > >>> Apache Commons RNG 1.6 RC2 is available for review here:
> > >>>https://dist.apache.org/repos/dist/dev/commons/rng/1.6-RC2 (svn
> > >>> revision 70197)
> > >>>
> > >>> The Git tag commons-rng-1.6-RC2 commit for this RC is
> > commons-rng-1.6-RC2
> > >>> which you can browse here:
> > >>>
> > >>>
> > >>
> >
> https://gitbox.apache.org/repos/asf?p=commons-rng.git;a=commit;h=commons-rng-1.6-RC2
> > >>> You may checkout this tag using:
> > >>>git clone https://gitbox.apache.org/repos/asf/commons-rng.git
> > >> --branch
> > >>> commons-rng-1.6-RC2 commons-rng-1.6-RC2
> > >>>
> > >>> Maven artifacts are here:
> > >>>
> > >>>
> > >>
> >
> https://repository.apache.org/content/repositories/orgapachecommons-1755/org/apache/commons/commons-rng/1.6/
> > >>>
> > >>> These are the artifacts and their hashes:
> > >>>
> > >>> #Release SHA-512s
> > >>> #Tue Jul 09 12:29:41 BST 2024
> > >>>
> > >>
> >
> commons-rng-1.6-bin.tar.gz=ede8acdf030d658d5ee2164185cb4e4e3b402f3b7032202d29016df76946f1355c0e968677fcae6eafcff3a8d6439c70e3514013c07fa34048c3f33e2005e7e4
> > >>>
> > >>
> >
> commons-rng-1.6-bin.zip=6011e1ea66226592168e6fb67d0c2740cf537edc0d4b549423e5ba7761084cb7222982fdf09ef9a6b8ea29c45e4a6cd09137d4d9ffd20172008f26a8a0804486
> > >>>
> > >>
> >
> commons-rng-1.6-src.tar.gz=8cb6e78b7a27aaf9492f549848465987838fd490a97996c5f7d516a648093db777d63544cd4be7550de22d69b80b070fdfa5e1f6dd143c2e75c70db684a39e2e
> > >>>
> > >>
> >
> commons-rng-1.6-src.zip=57e999f5f76155046cde915eaf33781f6361588a5e0d8776d4451149eca4d07fcf2b49612c5e6829181b75ad697e60f6243c0fedff0d932130315e44fe0a3237
> > >>>
> > >>> 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.6-RC2/
> > >>>cd 1.6-RC2
> > >>>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-1755/org/apache/commons/commons-rng-${m}/1.6/
> > >> ;
> > >>> done
> > >>
> > >> It would be worth reminding that a copy/paste of the above on the
> > >> command-line will not work (although the script outputs both "ERROR"
> > >> and "SUCCESSFUL VALIDATION" which is confusing/misleading).
> > >>
> > >> Couldn't the script be auto-generated (rather than just copied I
> > presume)
> > >> to also contain the "for-loop" specific to each component?
> > >>
> > >
> > > Maybe. There is a lot that could be improved in the release plugin for
> > > multi-module releases. I added that line manually to the vote email. I
> > > added a lot of other things too. The loop worked when copy and pasted
> > from
> > > my source email. Maybe line wrapping has broken it.
> > >
> >
> > Agreed that the plugin doesn’t support multi-module builds as well as
> > single module builds. Sorry for that….hard to manage multmodule builds.
> >
> > > If we are not going to suggest using the signature validator, then why
> do
> > > we even bother generating it? It seems strange, which is why I made an
> > > attempt to suggest using it.
> >
> > The signature validator is a script that (for single module projects)
> > downloads all of the artifacts and verifies all of the signatures….multi
> > module builds are far harder to manage because you have to traverse nexus
> > carefully and download all of the different jars from different url’s.
> >
> > Maybe we shouldn’t generate it for multi-module builds….regardless, it
> > should do signature validation on the real release artifacts, those
> checked
> > into the distribution area.
> >
> >
> >
> > >
> > >
> > >>
> > >>> 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-suref