Re: [VOTE] Release Apache Tomcat Native 1.2.37
Chris, On Wed, May 31, 2023 at 6:42 AM Christopher Schultz < ch...@christopherschultz.net> wrote: > Igal, > > On 5/31/23 02:23, Igal Sapir wrote: > > On Tue, May 30, 2023 at 3:22 PM Mark Thomas wrote: > > > >> Version 1.2.36 includes the following changes compared to 1.2.36 > >> > >> - The windows binaries in this release have been built with OpenSSL > >> 1.1.1u and APR 1.7.4 > >> > >> The proposed release artifacts can be found at [1], > >> and the build was done using tag [2]. > >> > >> The Apache Tomcat Native 1.2.37 release is > >>[X] Stable, go ahead and release > >>[ ] Broken because of ... > >> > > > > +1 > > > > APR unit tests passed. Posting here my steps to ensure I've done it > > correctly: > > > > 1. Build Tomcat Native 1.2.37 from source > > 2. Point `test.apr.loc` to the output directory > > 3. Make sure that `execute.test.apr` is set to true > > 4. Run `ant clean test` on the 9.0.x branch (APR tests were removed from > > the 10.1.x and the main branches?) > > > You can have a look here for how I perform a completely automated build > and test for a given Tomcat release. It includes building tcnative from > source, but it uses the source packaged with the Tomcat source. I could > easily extend it to allow you to override the location of the tcnative > source to somewhere outside the tomcat-source package. > > > https://github.com/ChristopherSchultz/apache-tomcat-stuff/blob/master/bin/test-tomcat-release.sh#L262 > > Once built, tcnative is used for all of the unit tests. > Thanks for that! I see there many valuable sections that I can adopt :-) My script for building Tomcat Native ATM is rather simple, pasted below (has room for improvement, I know): ❯ cat build-tcnative-2.sh VERSION=2.0.4 # download and untar curl https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/native/${VERSION}/source/tomcat-native-${VERSION}-src.tar . gz | tar -xz SOURCE_DIR=/workspace/src/tomcat/tomcat-native/tomcat-native-$VERSION-src TARGET_DIR=/workspace/build/tomcat/tomcat-native/tomcat-native-$VERSION JAVA_HOME=/opt/java/zulu11.54.23-ca-jdk11.0.14-linux_x64 ### see also tomcat-native-2.0.0-src/native/BUILDING ## https://github.com/apache/tomcat-native/blob/main/native/BUILDING ### Download source of apache/apr and run ./configure && make APR_HOME=/workspace/src/tomcat/apr-1.7.0 APR_HOME=/workspace/build/tomcat/apr-1.7.0 SSL_LIB=/workspace/src/openssl ### Build static version of OpenSSL 3.0.0 or later at $SSL_LIB # git clone https://github.com/openssl/openssl.git $SSL_LIB && \ # cd $SSL_LIB && \ # ./Configure enable-fips && \ # make cd $SOURCE_DIR/native echo Building to $TARGET_DIR ./configure \ --with-java-home=$JAVA_HOME \ --with-apr=$APR_HOME\ --with-ssl=$SSL_LIB \ --prefix=$TARGET_DIR\ && make \ && make install > > -chris > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >
Re: [VOTE] Release Apache Tomcat Native 1.2.37
On 31/05/2023 14:34, Christopher Schultz wrote: Mark, Thanks for RMing On 5/30/23 18:21, Mark Thomas wrote: Version 1.2.36 includes the following changes compared to 1.2.36 - The windows binaries in this release have been built with OpenSSL 1.1.1u and APR 1.7.4 The proposed release artifacts can be found at [1], and the build was done using tag [2]. The Apache Tomcat Native 1.2.37 release is [ ] Stable, go ahead and release [ ] Broken because of ... +1 for stable release. Understanding that the only change was the new Windows statically-linked binaries... the native code builds cleanly and Java unit tests pass on x86-84 MacOS using clang 12.0.5. Some notes: 1. Tomcat builds automatically download dependencies, while the Java tests require a separate "ant download". I think the tcnative build should also have the automatic dependency download that the Tomcat build does. Seems reasonable. 2. There is a native "check" target in the Makefile which fails because the "test" directory does not exist. Creating that directory and re-running "make check" fails because "check" isn't found as a make target (which is a little weird). What are the expectations here? Sorry, no clue. 3. The Echo server doesn't seem to work in any obvious way. For example, it does not accept TLS connections (which it does not look like it was designed to do, so, okay), it does not seem to echo anything back to a client, and it seems to hang when the client tries to end the input. For example, run "ant run-echo" in a terminal window and then run "echo 'Hi there' | nc localhost [port]" in another terminal and watch the two of them spew garbage to stdout. No clue here either. Sorry. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.37
On Wed, May 31, 2023 at 12:21 AM Mark Thomas wrote: > > Version 1.2.36 includes the following changes compared to 1.2.36 > > - The windows binaries in this release have been built with OpenSSL >1.1.1u and APR 1.7.4 > > The proposed release artifacts can be found at [1], > and the build was done using tag [2]. > > The Apache Tomcat Native 1.2.37 release is > [X] Stable, go ahead and release > [ ] Broken because of ... Rémy > Thanks, > > Mark > > > [1] > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/native/1.2.37 > [2] > https://gitbox.apache.org/repos/asf?p=tomcat-native.git;a=commit;h=48ece4be765f5ff5f553b27bd278079ddb124bb7 > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.37
Igal, On 5/31/23 02:23, Igal Sapir wrote: On Tue, May 30, 2023 at 3:22 PM Mark Thomas wrote: Version 1.2.36 includes the following changes compared to 1.2.36 - The windows binaries in this release have been built with OpenSSL 1.1.1u and APR 1.7.4 The proposed release artifacts can be found at [1], and the build was done using tag [2]. The Apache Tomcat Native 1.2.37 release is [X] Stable, go ahead and release [ ] Broken because of ... +1 APR unit tests passed. Posting here my steps to ensure I've done it correctly: 1. Build Tomcat Native 1.2.37 from source 2. Point `test.apr.loc` to the output directory 3. Make sure that `execute.test.apr` is set to true 4. Run `ant clean test` on the 9.0.x branch (APR tests were removed from the 10.1.x and the main branches?) You can have a look here for how I perform a completely automated build and test for a given Tomcat release. It includes building tcnative from source, but it uses the source packaged with the Tomcat source. I could easily extend it to allow you to override the location of the tcnative source to somewhere outside the tomcat-source package. https://github.com/ChristopherSchultz/apache-tomcat-stuff/blob/master/bin/test-tomcat-release.sh#L262 Once built, tcnative is used for all of the unit tests. -chris - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.37
Mark, Thanks for RMing On 5/30/23 18:21, Mark Thomas wrote: Version 1.2.36 includes the following changes compared to 1.2.36 - The windows binaries in this release have been built with OpenSSL 1.1.1u and APR 1.7.4 The proposed release artifacts can be found at [1], and the build was done using tag [2]. The Apache Tomcat Native 1.2.37 release is [ ] Stable, go ahead and release [ ] Broken because of ... +1 for stable release. Understanding that the only change was the new Windows statically-linked binaries... the native code builds cleanly and Java unit tests pass on x86-84 MacOS using clang 12.0.5. Some notes: 1. Tomcat builds automatically download dependencies, while the Java tests require a separate "ant download". I think the tcnative build should also have the automatic dependency download that the Tomcat build does. 2. There is a native "check" target in the Makefile which fails because the "test" directory does not exist. Creating that directory and re-running "make check" fails because "check" isn't found as a make target (which is a little weird). What are the expectations here? 3. The Echo server doesn't seem to work in any obvious way. For example, it does not accept TLS connections (which it does not look like it was designed to do, so, okay), it does not seem to echo anything back to a client, and it seems to hang when the client tries to end the input. For example, run "ant run-echo" in a terminal window and then run "echo 'Hi there' | nc localhost [port]" in another terminal and watch the two of them spew garbage to stdout. -chris - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.37
On 30/05/2023 23:21, Mark Thomas wrote: The Apache Tomcat Native 1.2.37 release is [X] Stable, go ahead and release [ ] Broken because of ... Tested using: - Windows binary with Tomcat 11.0.x - Windows binary with Tomcat 9.0.x - Ubuntu (built from source OpenSSL 1.1.1u) with Tomcat 11.0.x - Ubuntu (built from source OpenSSL 1.1.1u) with Tomcat 9.0.x All tests passed. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.37
On 31/05/2023 07:23, Igal Sapir wrote: On Tue, May 30, 2023 at 3:22 PM Mark Thomas wrote: Version 1.2.36 includes the following changes compared to 1.2.36 - The windows binaries in this release have been built with OpenSSL 1.1.1u and APR 1.7.4 The proposed release artifacts can be found at [1], and the build was done using tag [2]. The Apache Tomcat Native 1.2.37 release is [X] Stable, go ahead and release [ ] Broken because of ... +1 APR unit tests passed. Posting here my steps to ensure I've done it correctly: 1. Build Tomcat Native 1.2.37 from source 2. Point `test.apr.loc` to the output directory 3. Make sure that `execute.test.apr` is set to true 4. Run `ant clean test` on the 9.0.x branch (APR tests were removed from the 10.1.x and the main branches?) Yes, that is the correct way to test Tomcat Native with the APR connector and it can only be done with 9.0.x and earlier. You can also run the 10.1.x and 11.0.x tests with Tomcat Native 1.2.x but that only tests the OpenSSL replacement for JSSE with NIO and NIO2. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.37
On Tue, May 30, 2023 at 3:22 PM Mark Thomas wrote: > Version 1.2.36 includes the following changes compared to 1.2.36 > > - The windows binaries in this release have been built with OpenSSL >1.1.1u and APR 1.7.4 > > The proposed release artifacts can be found at [1], > and the build was done using tag [2]. > > The Apache Tomcat Native 1.2.37 release is > [X] Stable, go ahead and release > [ ] Broken because of ... > +1 APR unit tests passed. Posting here my steps to ensure I've done it correctly: 1. Build Tomcat Native 1.2.37 from source 2. Point `test.apr.loc` to the output directory 3. Make sure that `execute.test.apr` is set to true 4. Run `ant clean test` on the 9.0.x branch (APR tests were removed from the 10.1.x and the main branches?) Igal > > Thanks, > > Mark > > > [1] > > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/native/1.2.37 > [2] > > https://gitbox.apache.org/repos/asf?p=tomcat-native.git;a=commit;h=48ece4be765f5ff5f553b27bd278079ddb124bb7 > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >
[VOTE] Release Apache Tomcat Native 1.2.37
Version 1.2.36 includes the following changes compared to 1.2.36 - The windows binaries in this release have been built with OpenSSL 1.1.1u and APR 1.7.4 The proposed release artifacts can be found at [1], and the build was done using tag [2]. The Apache Tomcat Native 1.2.37 release is [ ] Stable, go ahead and release [ ] Broken because of ... Thanks, Mark [1] https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/native/1.2.37 [2] https://gitbox.apache.org/repos/asf?p=tomcat-native.git;a=commit;h=48ece4be765f5ff5f553b27bd278079ddb124bb7 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org