This vote for RC1 is canceled (see below). Gary
On Sun, Apr 23, 2023 at 9:33 AM Gary Gregory <garydgreg...@gmail.com> wrote: > > Thank you for reviewing Albert. Wow! What a fail on the part of the > maven compiler plugin! :-( I thought for sure I had tested that but I > obviously fooled myself. > > I created https://issues.apache.org/jira/browse/MCOMPILER-534 > > I will cancel this RC. > > Gary > > On Sun, Apr 23, 2023 at 4:03 AM Alex Herbert <alex.d.herb...@gmail.com> wrote: > > > > Installed from the git tag. I can build projects on JDK 11 and 17. But > > not on JDK 8. > > > > The new profile to conditionally configure the maven-compiler-release > > plugin for JDK 9+ is incorrect. The parent pom defines the property: > > > > <!-- Java >= 9 --> > > <maven.compiler.release>8</maven.compiler.release> > > > > Then activates it using: > > > > <profile> > > <id>jdk9-compiler</id> > > <activation> > > <jdk>[9,)</jdk> > > </activation> > > <build> > > <pluginManagement> > > <plugins> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-compiler-plugin</artifactId> > > <configuration> > > <release>${maven.compiler.release}</release> > > </configuration> > > </plugin> > > </plugins> > > </pluginManagement> > > </build> > > </profile> > > > > However the use of the property <maven.compiler.release> is enough to > > set it into the compiler-plugin when building on JDK 8. I see the > > following error when building under JDK 8: > > > > [ERROR] Failed to execute goal > > org.apache.maven.plugins:maven-compiler-plugin:3.11.0:compile > > (default-compile) on project commons-lang3: Fatal error compiling: > > invalid flag: --release -> [Help 1] > > > > I note that the config is actually recommended on the maven > > documentation for the plugin [1]. However it seems that just setting > > this property (given that it is the user override property for the > > <release> tag [2]) enables it on JDK 8. Perhaps this is an error in > > the maven-compiler-plugin itself. > > > > In Commons Geometry the configuration uses a unique property on the > > POM and then sets maven.compiler.release for JDK 9+: > > > > <!-- JVM target version, in the newer JDK 9+ format. --> > > <jvm.target>8</jvm.target> > > > > <profile> > > <id>compiler-release-property</id> > > <activation> > > <jdk>[9,)</jdk> > > </activation> > > <properties> > > <!-- > > The "release" compiler property (available in JDK 9+) > > must be set in order to generate > > binary-compatible artifacts for the target JVM. This > > flag sets the version of the platform > > APIs to compile against, which is necessary when > > building with a later JDK but targeting > > an earlier one. For example, a covariant return type > > was added to java.nio.ByteBuffer.rewind() > > in Java 9. If the release property is not set when > > compiling with JDK 9 for Java 8, then the > > Java 9 method will be referenced in the bytecode, > > causing a runtime error when running on 8. > > --> > > <maven.compiler.release>${jvm.target}</maven.compiler.release> > > </properties> > > </profile> > > > > I switched to this setup in CP 57 and the build on JDK 8 worked. So > > perhaps we should change to this pattern and provide feedback to the > > maven-compiler-plugin developers that their recommended configuration > > does not work. > > > > Other notes: > > > > 1. I still get a warning from the SPDX plugin (same as previous versions of > > CP): > > > > [WARNING] Unable to map maven licenses to a declared license. Using > > NOASSERTION > > > > I do not know where this comes from. The ASF 2.0 license should be > > recognised. This seems to output for all projects including building > > CP itself. Looking at the config options for SPDX this should > > automatically recognise the ASF license so I do not know if this is a > > config problem or a bug in SPDX. > > > > > > 2. I had problems with commons-lang on a new Mac processor: > > > > Apache Maven 3.9.1 (2e178502fcdbffc201671fb2537d0cb4b4cc58f8) > > Maven home: /Users/ah403/mvn/mvn > > Java version: 17.0.6, vendor: Eclipse Adoptium, runtime: > > /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home > > Default locale: en_GB, platform encoding: UTF-8 > > OS name: "mac os x", version: "13.3.1", arch: "aarch64", family: "mac" > > > > Using JDK 11 or 17 I get a failure in a unit test for > > ArchUtilsTest.testGetProcessor. The test assumes that the current > > architecture is x86. As shown above the architecture is "aarch64". The > > problem is with the test which should be more robust to actually > > knowing what the architecture is before asserting it is x86. This is > > not an issue with the parent. > > > > Note that the "os.arch" property on JDK 8 does not detect the new > > apple architecture: > > > > Apache Maven 3.9.1 (2e178502fcdbffc201671fb2537d0cb4b4cc58f8) > > Maven home: /Users/ah403/mvn/mvn > > Java version: 1.8.0_362, vendor: Temurin, runtime: > > /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home/jre > > Default locale: en_GB, platform encoding: UTF-8 > > OS name: "mac os x", version: "13.3.1", arch: "x86_64", family: "mac" > > > > So when building on JDK 8 this test passes as the arch is detected as > > "x86". The test in lang should be more robust, perhaps just commenting > > out the invalid assertion on line 128 would be enough: > > > > final Processor processor = ArchUtils.getProcessor(); > > assertTrue(processor.isX86()); // <-- This is not platform safe > > > > Regards, > > > > Alex > > > > [1] > > https://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-release.html > > [2] > > https://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#release > > > > On Sat, 22 Apr 2023 at 15:25, Gary Gregory <garydgreg...@gmail.com> wrote: > > > > > > We have fixed quite a few bugs and added some significant enhancements > > > since Apache Commons Parent 56 was released, so I would like to > > > release Apache Commons Parent 57. > > > > > > Apache Commons Parent 57 RC1 is available for review here: > > > https://dist.apache.org/repos/dist/dev/commons/commons-parent/57-RC1 > > > (svn revision 61424) > > > > > > The Git tag commons-parent-57-RC1 commit for this RC is > > > 438328ae7ef71feb9565c650c2d83404c191c031 which you can browse here: > > > > > > https://gitbox.apache.org/repos/asf?p=commons-parent.git;a=commit;h=438328ae7ef71feb9565c650c2d83404c191c031 > > > You may checkout this tag using: > > > git clone https://gitbox.apache.org/repos/asf/commons-parent.git > > > --branch commons-parent-57-RC1 commons-parent-57-RC1 > > > > > > Maven artifacts are here: > > > > > > https://repository.apache.org/content/repositories/orgapachecommons-1631/org/apache/commons/commons-parent/57/ > > > > > > These are the artifacts and their hashes: > > > > > > #Release SHA-512s > > > #Sat Apr 22 10:17:35 EDT 2023 > > > commons-parent-57-bom.json=4939a0314f700a40eb479eb4ad62a835c188238f683be411206666ff7edeb90979e3605e25e8955344220345f856d0c45f63baff959e7f0e1a52344129f3ad8e > > > commons-parent-57-bom.xml=d0c6bda84d6f5bda73b393b0736ba0d86deac17f5301d22b1696b4ff0cdad07dff4a985361e296eff75807b9e6d3db7616f22b2b80d53958c1df2a843a3c3273 > > > commons-parent-57-site.xml=c6aea4f2c03920366bee23b08b046dacc09710e92c78ccd83f47cd92f89bc53abc3b8bbc7f44017ee94a2cb022ce763fe3f7d8c9aa42d571350269ba6568ca07 > > > commons-parent-57-src.tar.gz=ef3debcd562db54ec4382eb80a7b144c2640b856b9df976e96ea89e07d7a951df1b59cf986b600eb57cd2b005b172b6d332041b1c00cef80501a7162d8547ebc > > > commons-parent-57-src.zip=42a1ea9148294e7e3db65698d7affffebbc3947bfaa19a72c28ef9388135582075b06f27ef824cdd16a811f6e0062e3a99a40faed1f4626ae4ec151ed22d006d > > > org.apache.commons_commons-parent-57.spdx.json=ff9a113539c850d0eec50feff67671664a7b9e236b4c1609101faae3b8d67bf8f7703c9f8cbb8ac5776db94735d7b34c84fcdda6d65b4147785e2854f7d3949d > > > > > > I have tested this with > > > > > > mvn -V -Duser.name=$my_apache_id > > > -Dcommons_build_plugin_version=$commons_build_plugin_version > > > -Ddoclint=none -Prelease -Ptest-deploy clean package site deploy > > > > > > using: > > > > > > Apache Maven 3.9.1 (2e178502fcdbffc201671fb2537d0cb4b4cc58f8) > > > Maven home: /usr/local/Cellar/maven/3.9.1/libexec > > > Java version: 1.8.0_362, vendor: Homebrew, runtime: > > > /usr/local/Cellar/openjdk@8/1.8.0+362/libexec/openjdk.jdk/Contents/Home/jre > > > Default locale: en_US, platform encoding: UTF-8 > > > OS name: "mac os x", version: "13.3.1", arch: "x86_64", family: "mac" > > > Darwin **** 22.4.0 Darwin Kernel Version 22.4.0: Mon Mar 6 21:00:17 > > > PST 2023; root:xnu-8796.101.5~3/RELEASE_X86_64 x86_64 > > > > > > Details of changes since 56 are in the release notes: > > > > > > https://dist.apache.org/repos/dist/dev/commons/commons-parent/57-RC1/RELEASE-NOTES.txt > > > > > > https://dist.apache.org/repos/dist/dev/commons/commons-parent/57-RC1/site/changes-report.html > > > > > > Site: > > > > > > https://dist.apache.org/repos/dist/dev/commons/commons-parent/57-RC1/site/index.html > > > (note some *relative* links are broken and the 57 directories are > > > not yet created - these will be OK once the site is deployed.) > > > > > > RAT Report: > > > > > > https://dist.apache.org/repos/dist/dev/commons/commons-parent/57-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, > > > > > > Gary Gregory, > > > Release Manager (using key DEADBEEF) > > > > > > For 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-parent.git > > > --branch commons-parent-57-RC1 commons-parent-57-RC1 > > > cd commons-parent-57-RC1 > > > > > > 1b) Download and unpack the source archive from: > > > > > > https://dist.apache.org/repos/dist/dev/commons/commons-parent/57-RC1/source > > > > > > 2) Check Apache licenses > > > > > > This step is not required if the site includes a RAT report page which > > > you then must check. > > > > > > mvn apache-rat:check > > > > > > 3) Check binary compatibility > > > > > > Older components still use Apache Clirr: > > > > > > This step is not required if the site includes a Clirr report page > > > which you then must check. > > > > > > mvn clirr:check > > > > > > Newer components use JApiCmp with the japicmp Maven Profile: > > > > > > This step is not required if the site includes a JApiCmp report page > > > which you then must check. > > > > > > mvn install -DskipTests -P japicmp japicmp:cmp > > > > > > 4) Build the package > > > > > > 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 > > > > > > 5) Build the site for a single module project > > > > > > Note: Some plugins require the components to be installed instead of > > > packaged. > > > > > > mvn site > > > Check the site reports in: > > > - Windows: target\site\index.html > > > - Linux: target/site/index.html > > > > > > -the end- > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > > > For additional commands, e-mail: dev-h...@commons.apache.org > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > > For additional commands, e-mail: dev-h...@commons.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org