Am 02.08.24 um 16:15 schrieb Mark Thomas:
The proposed Apache Tomcat 11.0.0-M24 release is now available for
voting.
Apache Tomcat 11.0.0-M24 is a milestone release of the 11.0.x branch and
has been made to provide users with early access to the new features in
Apache Tomcat 11.0.x so that they may provide feedback. The notable
changes compared to 11.0.0-M22 include:
- Align HTTP/2 with HTTP/1.1 and recycle the container internal request
and response processing objects by default. This behaviour can be
controlled via the new discardRequestsAndResponses attribute on the
HTTP/2 upgrade protocol.
- Add FFM compatibility methods for LibreSSL and BoringSSL support.
- Add support for RFC 8297 (Early Hints). Applications can use this
feature by casting the HttpServletResponse to
org.apache.catalina.connector.Reponse and then calling the method
void sendEarlyHints()
For full details, see the change log:
https://nightlies.apache.org/tomcat/tomcat-11.0.x/docs/changelog.html
Applications that run on Tomcat 9 and earlier will not run on Tomcat 11
without changes. Java EE applications designed for Tomcat 9 and earlier
may be placed in the $CATALINA_BASE/webapps-javaee directory and Tomcat
will automatically convert them to Jakarta EE and copy them to the
webapps directory. Applications using deprecated APIs may require
further changes.
It can be obtained from:
https://dist.apache.org/repos/dist/dev/tomcat/tomcat-11/v11.0.0-M24/
The Maven staging repo is:
https://repository.apache.org/content/repositories/orgapachetomcat-1507
The tag is:
https://github.com/apache/tomcat/tree/11.0.0-M24
5301df36454fcf22081108e25199f29904cadc79
The proposed 11.0.0-M24 release is:
[ ] -1 Broken - do not release
[ ] +1 Beta - go ahead and release as 11.0.0-M24
+1
Tested on platforms
- RHEL 6, 7, 8 and 9 and SLES 11, 12 and 15
using
- JDK 17, 21, 22, 23(EA) and 24(EA)
from
- Eclipse Adoptium, Azul Zulu, Amazon Coretto, Oracle, RedHat and
OpenJDK (for the EAs)
where applicable.
Also tested with
- tcnative 1.3.1, tcnative 2.0.8 and panama
based on
- OpenSSL 3.0.14, 3.1.6, 3.2.2 and 3.3.1.
All fine, except for the usual sporadic crashes with tcnative during
shutdown and also the bunch of test failures with JDK 24. Example for a
JDK 24 test failure:
- org.apache.coyote.TestRequest
Tests run: 4, Failures: 0, Errors: 4, Skipped: 0, Time elapsed: 4.226 sec
Testcase: testNoExpectationWithOnRequestBodyReadPolicy took 2.621 sec
Caused an ERROR
Could not create type
java.lang.IllegalArgumentException: Could not create type
at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:170)
at
net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399)
at
org.easymock.internal.ClassProxyFactory.createProxy(ClassProxyFactory.java:151)
at
org.easymock.internal.MocksControl.createMock(MocksControl.java:110)
at
org.easymock.internal.MocksControl.createMock(MocksControl.java:83)
at org.easymock.IMocksControl.mock(IMocksControl.java:44)
at org.easymock.EasyMock.niceMock(EasyMock.java:187)
at org.easymock.EasyMock.createNiceMock(EasyMock.java:361)
at org.apache.coyote.TestRequest.<init>(TestRequest.java:39)
at
java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
at
java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:501)
at
java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:485)
Caused by: java.lang.IllegalArgumentException:
org.apache.tomcat.util.net.SocketWrapperBase$$$EasyMock$1 must be
defined in the same package as org.easymock.internal.ClassProxyFactory
at
net.bytebuddy.dynamic.loading.ClassInjector$UsingLookup.injectRaw(ClassInjector.java:1635)
at
net.bytebuddy.dynamic.loading.ClassInjector$AbstractBase.inject(ClassInjector.java:118)
at
net.bytebuddy.dynamic.loading.ClassLoadingStrategy$UsingLookup.load(ClassLoadingStrategy.java:519)
at
net.bytebuddy.dynamic.TypeResolutionStrategy$Passive.initialize(TypeResolutionStrategy.java:101)
at
net.bytebuddy.dynamic.DynamicType$Default$Unloaded.load(DynamicType.java:6325)
at
org.easymock.internal.ClassProxyFactory.lambda$createProxy$0(ClassProxyFactory.java:161)
at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168)
...
The failures happen for NIO and NIO2, only for JDK 24 EA 8, for those
test classes:
- org.apache.catalina.connector.TestSendFile
- org.apache.catalina.realm.TestJNDIRealm
- org.apache.catalina.session.TestPersistentManager
- org.apache.catalina.startup.TestWebappServiceLoader
- org.apache.catalina.valves.TestCrawlerSessionManagerValve
- org.apache.catalina.valves.TestLoadBalancerDrainingValve
- org.apache.catalina.valves.TestSSLValve
- org.apache.coyote.TestRequest
- org.apache.jasper.servlet.TestTldScanner
They started a couple of months ago as noted by me and others and happen
for all TC branches. Of course JDK 24 EA problems are not a showstopper
in any way.
Thanks for RM!
Best regards,
Rainer
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org