This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push: new d538c04 First pass at updating versions from 10.0.x to 10.1.x d538c04 is described below commit d538c049b2420d6b194c333b7f4b3556b8803fb3 Author: Mark Thomas <ma...@apache.org> AuthorDate: Mon May 24 10:00:48 2021 +0100 First pass at updating versions from 10.0.x to 10.1.x --- README.md | 2 +- TOMCAT-NEXT.txt | 2 +- build.properties.default | 6 +- build.xml | 2 +- java/org/apache/catalina/ant/jmx/package.html | 4 +- java/org/apache/catalina/ant/package.html | 4 +- java/org/apache/catalina/util/ServerInfo.java | 4 +- res/ide-support/eclipse/eclipse.project | 2 +- res/ide-support/eclipse/start-tomcat.launch | 6 +- res/ide-support/eclipse/stop-tomcat.launch | 6 +- res/maven/mvn-pub.xml | 4 +- res/maven/mvn.properties.default | 2 +- webapps/docs/changelog.xml | 2312 +------------------------ webapps/docs/config/http.xml | 2 +- webapps/docs/tomcat-docs.xsl | 6 +- 15 files changed, 35 insertions(+), 2329 deletions(-) diff --git a/README.md b/README.md index ec1353d..ab9b9c2 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ The documentation available as of the date of this release is included in the docs webapp which ships with tomcat. You can access that webapp by starting tomcat and visiting <http://localhost:8080/docs/> in your browser. The most up-to-date documentation for each version can be found at: -- [Tomcat 10](https://tomcat.apache.org/tomcat-10.0-doc/) +- [Tomcat 10](https://tomcat.apache.org/tomcat-10.1-doc/) - [Tomcat 9](https://tomcat.apache.org/tomcat-9.0-doc/) - [Tomcat 8](https://tomcat.apache.org/tomcat-8.5-doc/) - [Tomcat 7](https://tomcat.apache.org/tomcat-7.0-doc/) diff --git a/TOMCAT-NEXT.txt b/TOMCAT-NEXT.txt index ea596b1..f5329f6 100644 --- a/TOMCAT-NEXT.txt +++ b/TOMCAT-NEXT.txt @@ -15,7 +15,7 @@ limitations under the License. ================================================================================ -Notes of things to consider for the next major Tomcat release (10.0.x) +Notes of things to consider for the next major Tomcat release (10.1.x) Items carried over from the 9.0.x list: diff --git a/build.properties.default b/build.properties.default index f1bd57b..3437d88 100644 --- a/build.properties.default +++ b/build.properties.default @@ -24,10 +24,10 @@ # ----- Version Control Flags ----- version.major=10 -version.minor=0 -version.build=7 +version.minor=1 +version.build=0 version.patch=0 -version.suffix=-dev +version.suffix=-M1-dev # ----- Reproducible builds ----- # Uncomment and set to current time for reproducible builds diff --git a/build.xml b/build.xml index d53c4c3..e7fcaad 100644 --- a/build.xml +++ b/build.xml @@ -15,7 +15,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -<project name="Tomcat 10.0" default="deploy" basedir="." +<project name="Tomcat 10.1" default="deploy" basedir="." xmlns:if="ant:if" xmlns:unless="ant:unless"> <!-- ===================== Initialize Property Values ==================== --> diff --git a/java/org/apache/catalina/ant/jmx/package.html b/java/org/apache/catalina/ant/jmx/package.html index 2bfaa85..e05ece3 100644 --- a/java/org/apache/catalina/ant/jmx/package.html +++ b/java/org/apache/catalina/ant/jmx/package.html @@ -20,8 +20,8 @@ <em>Ant (version 1.6 or later)</em> that can be used to interact with the Remote JMX JSR 160 RMI Adaptor to get/set attributes, invoke MBean operations and query for Mbeans inside a running instance of Tomcat. For more information, see -<a href="https://tomcat.apache.org/tomcat-10.0-doc/monitoring.html"> -https://tomcat.apache.org/tomcat-10.0-doc/monitoring.html</a>.</p> +<a href="https://tomcat.apache.org/tomcat-10.1-doc/monitoring.html"> +https://tomcat.apache.org/tomcat-10.1-doc/monitoring.html</a>.</p> <p>Each task element can open a new jmx connection or reference an existing one. The following attribute are exists in every tasks:</p> diff --git a/java/org/apache/catalina/ant/package.html b/java/org/apache/catalina/ant/package.html index ba06ae0..830afc8 100644 --- a/java/org/apache/catalina/ant/package.html +++ b/java/org/apache/catalina/ant/package.html @@ -20,8 +20,8 @@ <em>Ant (version 1.6.x or later)</em> that can be used to interact with the Manager application to deploy, undeploy, list, reload, start and stop web applications from a running instance of Tomcat. For more information, see -<a href="https://tomcat.apache.org/tomcat-10.0-doc/manager-howto.html"> -https://tomcat.apache.org/tomcat-10.0-doc/manager-howto.html</a>.</p> +<a href="https://tomcat.apache.org/tomcat-10.1-doc/manager-howto.html"> +https://tomcat.apache.org/tomcat-10.1-doc/manager-howto.html</a>.</p> <p>The attributes of each task element correspond exactly to the request parameters that are included with an HTTP request diff --git a/java/org/apache/catalina/util/ServerInfo.java b/java/org/apache/catalina/util/ServerInfo.java index c480b35..b02c7bb 100644 --- a/java/org/apache/catalina/util/ServerInfo.java +++ b/java/org/apache/catalina/util/ServerInfo.java @@ -69,11 +69,11 @@ public class ServerInfo { ExceptionUtils.handleThrowable(t); } if (info == null || info.equals("Apache Tomcat/@VERSION@")) - info = "Apache Tomcat/10.0.x-dev"; + info = "Apache Tomcat/10.1.x-dev"; if (built == null || built.equals("@VERSION_BUILT@")) built = "unknown"; if (number == null || number.equals("@VERSION_NUMBER@")) - number = "10.0.x"; + number = "10.1.x"; serverInfo = info; serverBuilt = built; diff --git a/res/ide-support/eclipse/eclipse.project b/res/ide-support/eclipse/eclipse.project index 75504fb..8139e41 100644 --- a/res/ide-support/eclipse/eclipse.project +++ b/res/ide-support/eclipse/eclipse.project @@ -16,7 +16,7 @@ limitations under the License. --> <projectDescription> - <name>tomcat-9.0.x</name> + <name>tomcat-10.1.x</name> <comment></comment> <projects> </projects> diff --git a/res/ide-support/eclipse/start-tomcat.launch b/res/ide-support/eclipse/start-tomcat.launch index 49cf8bf..b0f3eb5 100644 --- a/res/ide-support/eclipse/start-tomcat.launch +++ b/res/ide-support/eclipse/start-tomcat.launch @@ -17,13 +17,13 @@ --> <launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication"> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> -<listEntry value="/tomcat-9.0.x/java/org/apache/catalina/startup/Bootstrap.java"/> +<listEntry value="/tomcat-10.1.x/java/org/apache/catalina/startup/Bootstrap.java"/> </listAttribute> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> <listEntry value="1"/> </listAttribute> <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.apache.catalina.startup.Bootstrap"/> <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="start"/> -<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="tomcat-9.0.x"/> -<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dcatalina.home=${project_loc:/tomcat-9.0.x/java/org/apache/catalina/startup/Bootstrap.java}/output/build"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="tomcat-10.1.x"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dcatalina.home=${project_loc:/tomcat-10.1.x/java/org/apache/catalina/startup/Bootstrap.java}/output/build"/> </launchConfiguration> diff --git a/res/ide-support/eclipse/stop-tomcat.launch b/res/ide-support/eclipse/stop-tomcat.launch index 5d4ee25..1c7bcd3 100644 --- a/res/ide-support/eclipse/stop-tomcat.launch +++ b/res/ide-support/eclipse/stop-tomcat.launch @@ -17,13 +17,13 @@ --> <launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication"> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> -<listEntry value="/tomcat-9.0.x/java/org/apache/catalina/startup/Bootstrap.java"/> +<listEntry value="/tomcat-10.1.x/java/org/apache/catalina/startup/Bootstrap.java"/> </listAttribute> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> <listEntry value="1"/> </listAttribute> <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.apache.catalina.startup.Bootstrap"/> <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="stop"/> -<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="tomcat-9.0.x"/> -<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dcatalina.home=${project_loc:/tomcat-9.0.x/java/org/apache/catalina/startup/Bootstrap.java}/output/build"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="tomcat-10.1.x"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dcatalina.home=${project_loc:/tomcat-10.1.x/java/org/apache/catalina/startup/Bootstrap.java}/output/build"/> </launchConfiguration> diff --git a/res/maven/mvn-pub.xml b/res/maven/mvn-pub.xml index 10b3978..22c8ddf 100644 --- a/res/maven/mvn-pub.xml +++ b/res/maven/mvn-pub.xml @@ -15,7 +15,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -<project name="Tomcat 10.0 Maven Deployment" default="" basedir="." +<project name="Tomcat 10.1 Maven Deployment" default="" basedir="." xmlns:resolver="antlib:org.apache.maven.resolver.ant" xmlns:if="ant:if" xmlns:unless="ant:unless"> @@ -495,7 +495,7 @@ <param name="maven.repo.repositoryId" value="${maven.snapshot.repo.repositoryId}"/> <param name="maven.repo.url" value="${maven.snapshot.repo.url}"/> - <param name="maven.deploy.version" value="10.0-SNAPSHOT"/> + <param name="maven.deploy.version" value="10.1.0-SNAPSHOT"/> <param name="maven.deploy.binary.version" value="${maven.asf.release.deploy.version}-dev"/> </antcall> diff --git a/res/maven/mvn.properties.default b/res/maven/mvn.properties.default index 8a1a666..cd72824 100644 --- a/res/maven/mvn.properties.default +++ b/res/maven/mvn.properties.default @@ -39,7 +39,7 @@ maven.asf.release.repo.url=https://repository.apache.org/service/local/staging/d maven.asf.release.repo.repositoryId=apache.releases.https # Release version info -maven.asf.release.deploy.version=10.0.7 +maven.asf.release.deploy.version=10.1.0-M1 #Where do we load the libraries from tomcat.lib.path=../../output/build/lib diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index ea8d6df..0a7fa14 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -104,7 +104,15 @@ They eventually become mixed with the numbered issues (i.e., numbered issues do not "pop up" wrt. others). --> -<section name="Tomcat 10.0.7 (markt)" rtext="in development"> +<section name="Tomcat 10.1.0-M1 (markt)" rtext="in development"> + <subsection name="General"> + <changelog> + <scode> + This release contains all of the changes upto and including those in + Apache Tomcat 10.0.6 plus the additional changes listed below. (markt) + </scode> + </changelog> + </subsection> <subsection name="Catalina"> <changelog> <fix> @@ -183,2307 +191,5 @@ </changelog> </subsection> </section> -<section name="Tomcat 10.0.6 (markt)" rtext="2021-05-12"> - <subsection name="Catalina"> - <changelog> - <scode> - Expand coverage of unit tests for JNDIRealm using the UnboundID LDAP SDK - for Java. (markt) - </scode> - <fix> - <bug>65224</bug>: Ensure the correct escaping of attribute values and - search filters in the JNDIRealm. (markt) - </fix> - <fix> - <bug>65235</bug>: Add missing attributes to the MBean descriptor file - for the <code>RemoteIpValve</code>. (markt) - </fix> - <fix> - <bug>65244</bug>: HandlesTypes should include classes that use - the specified annotation types on fields or methods. (remm) - </fix> - <fix> - <bug>65251</bug>: Correct a regression introduced in 10.0.3 that meant - that the auto-deployment process may attempt a second, concurrent - deployment of a web application that is being deployed by the Manager - resulting in one of the deployments failing and errors being reported. - (markt) - </fix> - <fix> - Improve the <code>SSLValve</code> so it is able to handle escaped - client certificate headers from Nginx. Based on a patch by Florent - Guillaume. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Ensure that all HTTP requests that contain an invalid character in the - protocol component of the request line are rejected with a 400 response - rather than some requests being rejected with a 505 response. (markt) - </fix> - <fix> - When generating the error message for an HTTP request with an invalid - request line, ensure that all the available data is included in the - error message. (markt) - </fix> - <fix> - <bug>65272</bug>: Restore the optional HTTP feature that allows - <code>LF</code> to be treated as a line terminator for the request line - and/or HTTP headers lines as well as the standard <code>CRLF</code>. - This behaviour was previously removed as a side-effect of the fix for - CVE-2020-1935. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <scode> - Review code used to generate Java source from JSPs and tags and remove - code found to be unnecessary. (markt) - </scode> - <update> - <code><servlet></code> entries in web.xml that include a - <code><jsp-file></code> element and a negative - <code><load-no-startup></code> element that is not the default - value of <code>-1</code> will no longer be loaded at start-up. This - makes it possible to define a <code><jsp-file></code> that will - not be loaded at start-up. (markt) - </update> - <fix> - Allow the JSP configuration option - <code>useInstanceManagerForTags</code> to be used with Tags that are - implemented as inner classes. (markt) - </fix> - </changelog> - </subsection> - <subsection name="WebSocket"> - <changelog> - <scode> - Refactor the way Tomcat passes path parameters to POJO end points to - simplify the code. (markt) - </scode> - <fix> - <bug>65262</bug>: Refactor the creation of WebSocket end point, decoder - and encoder instances to be more IoC friendly. Instances are now created - via the <code>InstanceManager</code> where possible. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - <bug>65235</bug>: Correct name of <code>changeLocalName</code> in the - documentation for the <code>RemoteIpValve</code>. (markt) - </fix> - <fix> - <bug>65265</bug>: Avoid getting the boot classpath when it is not - available in the Manager diagnostics. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <fix> - Create OSGi <code>Require-Capability</code> sections in manifests for - Jakarta API JARs manually rather than via the - <code>aQute.bnd.annotation.spi.ServiceConsumer</code> annotation as this - triggers TCK failures for downstream consumers of the API JARs. (markt) - </fix> - <update> - Update the packaged version of the Tomcat Native Library to 1.2.28. - (markt) - </update> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.22. (remm) - </update> - <update> - Update the CXF module to Apache CXF 3.4.3. (remm) - </update> - <fix> - <bug>65218</bug>: Update the version number shown on the left-hand - banner of the Tomcat installer for Windows to Apache Tomcat 10. (markt) - </fix> - <fix> - Move <code>SystemPropertySource</code> to be a regular class to allow - more precise configuration if needed. The system property source will - still always be enabled. (remm) - </fix> - <add> - Improvements to Chinese translations. Provided by bytesgo. (mark) - </add> - <add> - Improvements to French translations. (remm) - </add> - <add> - Improvements to Korean translations. (woonsan) - </add> - <update> - Update the version of the Tomcat Migration Tool for Jakarta EE used to - provide automatic deployment for Java EE applications to 1.0.0. (markt) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.5 (markt)" rtext="2021-04-06"> - <subsection name="Catalina"> - <changelog> - <fix> - Avoid NPE when a JNDI reference cannot be resolved in favor of a - NamingException. (remm) - </fix> - <fix> - Avoid using reflection for setting properties on the webapp - classloader. Based on a patch submitted by Romain Manni-Bucau. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Improve consistency of OpenSSL error stack handling in the TLS engine, - and log all errors found as debug. (remm) - </fix> - <fix> - Ensure that HTTP/2 streams are only recycled once as multiple attempts - to recycle an HTTP/2 stream may result in - <code>NullPointerException</code>s. (markt) - </fix> - <scode> - Simplify the closing on an HTTP/2 stream when an error condition is - present. (markt) - </scode> - <fix> - <bug>64771</bug>: Prevent concurrent calls to - <code>ServletInputStream.isReady()</code> corrupting the input buffer. - (markt) - </fix> - <fix> - <bug>65179</bug>: Ensure that the connection level flow control window - from the client to the server is updated when handling DATA frames - received for completed streams else the flow control window may become - exhausted. (markt) - </fix> - <fix> - <bug>65203</bug>: Fix a regression introduced in 10.0.4 that meant that - an error during an asynchronous read broke all future asynchronous reads - associated with the same request instance. (markt) - </fix> - <fix> - Disable keep-alive when inconsistent content delimitation is present in - a request. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <fix> - Include the new <code>org.apache.jasper.optimizations</code> package in - the list of OSGi exported packages for the Jasper embedded JAR. Patch - provided by Sokratis Zappis. (markt) - </fix> - <add> - Add a new option for the <code>trimSpaces</code> configuration. - <code>extended</code> will attempt to remove leading and trailing - whitespace from template text and collapse sequences of whitespace and - newlines within template text into a single new line. Based on a pull - request by kamnani. (markt) - </add> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <add> - Implement the first phase of reproducible builds. Sequential builds on - the same machine now produce identical output provided that the Ant - property <code>ant.tstamp.now.iso</code> is set. The minimum required - Ant version is now 1.9.10. (markt) - </add> - <add> - Improvements to Chinese translations. Provided by Ruan Wenjun. (mark) - </add> - <add> - Improvements to French translations. (remm) - </add> - <add> - Improvements to Japanese translations. Provided by kfujino and - Shirayuking. (markt) - </add> - <add> - Improvements to Korean translations. (woonsan) - </add> - <update> - Update the packaged version of the Tomcat Native Library to 1.2.27. - (markt) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.4 (markt)" rtext="2021-03-10"> - <subsection name="Catalina"> - <changelog> - <fix> - Fix rename operation throwing an exception during the webapp migration - process. (remm) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.3 (markt)" rtext="not released"> - <subsection name="Catalina"> - <changelog> - <fix> - Revert an incorrect fix for a potential resource leak that broke - deployment via the Ant deploy task. (markt) - </fix> - <fix> - Improve error message for failed ConfigurationSource lookups in the - Catalina implementation. (remm) - </fix> - <fix> - <bug>65135</bug>: Rename Context method - <code>isParallelAnnotationScanning</code> to - <code>getParallelAnnotationScanning</code> for consistency and ease - of use in JMX descriptors. (remm) - </fix> - <update> - Allow the loader to directly use the Tomcat Migration Tool for JakartaEE - as a <code>ClassFileTransformer</code> using the - <code>jakartaConverter</code> attribute. This only supports javax to - jakarta conversion for classes, not for classloader resources or - static files. (remm) - </update> - <add> - Integrate the Tomcat Migration Tool for JakartaEE at deployment time. - Java EE web applications placed in the <code>webapps-javaee</code> - directory will be migrated to Jakarta EE 9 and placed in the - <code>webapps</code> where it will be deployed (or not) based on the - current settings for automatic deployment. (markt) - </add> - <fix> - <bug>64938</bug>: Align the behaviour when <code>null</code> is passed - to the <code>ServletResponse</code> methods - <code>setCharacterEncoding()</code>, <code>setContentType()</code> and - <code>setLocale()</code> with the recent clarification from the Jakarta - Servlet project of the expected behaviour in these cases. (markt) - </fix> - <fix> - Ensure that the <code>AsyncListener.onError()</code> event is triggered - when a I/O error occurs during non-blocking I/O. There were some cases - discovered where this was not happening. (markt) - </fix> - <add> - Make the non-blocking I/O error handling more robust by handling the - case where the application code swallows an <code>IOException</code> in - <code>WriteListener.onWritePossible()</code> and - <code>ReadListener.onDataAvailable()</code>. (markt) - </add> - <fix> - Correct syntax error in output of <code>JsonErrorReportValve</code>. - Pull request provided by Viraj Kanwade. (markt) - </fix> - <scode> - Make the <code>StandardContext.postWorkDirectory()</code> protected - rather than private to help users wishing to customise the default - work directory behaviour. (markt) - </scode> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <add> - <bug>64943</bug>: Add support for Unix Domain Sockets to - <code>org.apache.coyote.http11.Http11AprProtocol</code>. Depends on - <code>tomcat-native</code> 1.2.26 and up. (minfrin) - </add> - <fix> - <bug>65118</bug>: Fix a potential <code>NullPointerException</code> when - pruning closed HTTP/2 streams from the connection. (markt) - </fix> - <fix> - Avoid NullPointerException when a secure channel is closed before the - SSL engine was initialized. (remm) - </fix> - <fix> - Ensure that the <code>ReadListener</code>'s <code>onError()</code> event - is triggered if the client closes the connection before sending the - entire request body and the server is ready the request body using - non-blocking I/O. (markt) - </fix> - <fix> - <bug>65137</bug>: Ensure that a response is not corrupted as well as - incomplete if the connection is closed before the response is fully - written due to a write timeout. (markt) - </fix> - <fix> - Related to bug <bug>65131</bug>, make sure all errors from OpenSSL are - fully cleared, as there could be more than one error present after - an operation (confirmed in the OpenSSL API documentation). (remm) - </fix> - <fix> - Make handling of OpenSSL read errors more robust when plain text data is - reported to be available to read. (markt) - </fix> - <fix> - Correct handling of write errors during non-blocking I/O to ensure that - the associated <code>AsyncContext</code> was closed down correctly. - (markt) - </fix> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - Remove the restriction that prevented the Manager web application - deploying different web applications in parallel. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.21. (remm) - </update> - <update> - Update the CXF module to Apache CXF 3.4.2. (remm) - </update> - <add> - Improvements to French translations. (remm) - </add> - <add> - Improvements to Korean translations. (woonsan) - </add> - <add> - Improvements to Brazilian Portuguese translations. Provided by Thiago. - (mark) - </add> - <add> - Improvements to Russian translations. Provided by Azat. (mark) - </add> - <add> - Improvements to Chinese translations. Provided by shawn. (mark) - </add> - <update> - Update to bnd 5.3.0. (markt) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.2 (markt)" rtext="2021-02-02"> - <subsection name="Catalina"> - <changelog> - <fix> - <bug>65106</bug>: Fix the ConfigFileLoader handling of file URIs when - running under a security manager on some JREs. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Ensure that SNI provided host names are matched to SSL virtual host - configurations in a case insensitive manner. (markt) - </fix> - <fix> - <bug>65111</bug>: Free direct memory buffers in the APR connector. - (remm) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.1 (markt)" rtext="not released"> - <subsection name="Catalina"> - <changelog> - <fix> - <bug>60781</bug>: Escape elements in the access log that need to be - escaped for the access log to be parsed unambiguously. - (fschumacher/markt) - </fix> - <add> - <bug>64110</bug>: Add support for additional TLS related request - attributes that provide details of the protocols and ciphers requested - by a client in the initial TLS handshake. (markt) - </add> - <add> - Let the <code>RemoteCIDRValve</code> inherit from - <code>RequestFilterValve</code> and support all of its features. - Especially add support for connector specific configuration - using <code>addConnectorPort</code>. (rjung) - </add> - <add> - Add <code>peerAddress</code> to coyote request, which contains - the IP address of the direct connection peer. If a reverse proxy - sits in front of Tomcat and the protocol used is AJP or HTTP - in combination with the <code>RemoteIp(Valve|Filter)</code>, - the peer address might differ from the <code>remoteAddress</code>. - The latter then contains the address of the client in front of the - reverse proxy, not the address of the proxy itself. - Support for the peer address has been added to the - RemoteAddrValve and RemoteCIDRValve with the new attribute - <code>usePeerAddress</code>. This can be used to restrict access - to Tomcat based on the reverse proxy IP address, which is especially - useful to harden access to AJP connectors. The peer address can also - be logged in the access log using the new <code>%{peer}a</code> - syntax. (rjung) - </add> - <fix> - Avoid uncaught InaccessibleObjectException on Java 16 trying to clear - references threads. (remm) - </fix> - <fix> - <bug>65033</bug>: Fix JNDI realm error handling when connecting to a - failed server when pooling was not enabled. (remm) - </fix> - <fix> - <bug>65047</bug>: If the <code>AccessLogValve</code> is unable to open - the access log file, include information on the current user in the - associated log message (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Additional fix for <bug>64830</bug> to address an edge case that could - trigger request corruption with h2c connections. (markt) - </fix> - <fix> - <bug>64974</bug>: Improve handling of pipelined HTTP requests in - combination with the Servlet non-blocking IO API. It was possible that - some requests could get dropped. (markt) - </fix> - <add> - Add support for using Unix domain sockets for NIO when running - on Java 16 or later. This uses NIO specific - <code>unixDomainSocketPath</code> and - <code>unixDomainSocketPathPermissions</code> attributes. - Based on a PR submitted by Graham Leggett. (remm) - </add> - <fix> - <bug>65001</bug>: Fix error handling for exceptions thrown from calls - to <code>ReadListener</code> and <code>WriteListener</code>. (markt) - </fix> - <fix> - Avoid possible infinite loop in <code>OpenSSLEngine.unwrap</code> - when the destination buffers state is changed concurrently. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <add> - Add a new <code>StringInterpreter</code> interface that allows - applications to provide customised string attribute value to type - conversion within JSPs. This allows applications to provide a conversion - implementation that is optimised for the application. (markt) - </add> - <fix> - <bug>64965</bug>: <code>JspContextWrapper.findAttribute</code> should - ignore expired sessions rather than throw an - <code>IllegalStateException</code>. (remm) - </fix> - <update> - Update to the Eclipse JDT compiler 4.18. (markt) - </update> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - <bug>65007</bug>: Clarify that the commands shown in the TLS - documentation for importing a signed TLS certificate from a certificate - authority are typical examples that may need to be adjusted in some - cases. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Tribes"> - <changelog> - <fix> - Work around DNS caching for the DNS provider of the cloud membership. - (jfclere) - </fix> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <add> - Improvements to Chinese translations. Provided by leeyazhou and Yi Shen. - (markt) - </add> - <add> - Improvements to French translations. (remm) - </add> - <add> - Improvements to Korean translations. (woonsan) - </add> - <update> - Update the packaged version of the Tomcat Native Library to 1.2.26. - (markt) - </update> - <add> - Update the internal fork of Apache Commons Pool to 2.9.1-SNAPSHOT - (2021-01-15). (markt) - </add> - <add> - Update the internal fork of Apache Commons DBCP to 2.9.0-SNAPSHOT - (2021-01-15). (markt) - </add> - <update> - Migrate to new code signing service. (markt) - </update> - <scode> - Use <code>java.nio.file.Path</code> to test for one directory being a - sub-directory of another in a consistent way. (markt) - </scode> - <update> - Update to Commons Daemon 1.2.4. (markt) - </update> - <add> - Improvements to Brazilian Portuguese translations. Provided by Rual - Zaninetti Rosa and Lucas. (markt) - </add> - <add> - Improvements to Russian translations. Provided by Polina and Azat. - (markt) - </add> - <update> - Update the NSIS Installer used to build the Windows installer to version - 3.06.1. (kkolinko) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0 (markt)" rtext="2020-12-08"> - <subsection name="Catalina"> - <changelog> - <fix> - <bug>56181</bug>: Update the RemoteIpValve and RemoteIpFilter so that - calls to <code>ServletRequest.getRemoteHost()</code> are consistent with - the return value of <code>ServletRequest.getRemoteAddr()</code> rather - than always returning a value for the proxy. (markt) - </fix> - <fix> - <bug>56890</bug>: Align the behaviour of - <code>ServletContext.getRealPath(String path)</code> with the recent - clarification from the Servlet specification project. If the path - parameter does not start with <code>/</code> then Tomcat processes the - call as if <code>/</code> is appended to the beginning of the - provided path. (markt) - </fix> - <add> - <bug>64080</bug>: Enhance the graceful shutdown feature. Includes a new - option for <code>StandardService</code>, - <code>gracefulStopAwaitMillis</code>, that allows a time to be - specified to wait for client connections to complete and close before - the Container hierarchy is stopped. (markt) - </add> - <fix> - <bug>64921</bug>: Ensure that the <code>LoadBalancerDrainingValve</code> - uses the correct setting for the secure attribute for any session - cookies it creates. Based on a pull request by Andreas Kurth. (markt) - </fix> - <fix> - <bug>64947</bug>: Don't assume that the <code>Upgrade</code> header has - been set on the <code>HttpServletResponse</code> before any call is made - to <code>HttpServletRequest.upgrade()</code>. (markt) - </fix> - <fix> - Ensure that values are not duplicated when manipulating the vary header. - Based on a pull request by Fredrik Fall. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <update> - The APR/Native Connectors for both HTTP and AJP have been deprecated and - will be removed in Apache Tomcat 10.1.x onwards. (markt) - </update> - <fix> - <bug>64944</bug>: Ensure that the bytesSent metric is correctly updated - when compression is enabled. (markt) - </fix> - </changelog> - </subsection> - <subsection name="WebSocket"> - <changelog> - <fix> - <bug>64951</bug>: Fix a potential file descriptor leak when WebSocket - connections are attempted and fail. Patch provided by Maurizio Adami. - (markt) - </fix> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - Correct a regression in the addition of the HTTP header security filter - to the examples web application that prevented the Servlet examples that - depend on the asynchronous API from functioning correctly. - (kkolinko/markt) - </fix> - </changelog> - </subsection> - <subsection name="Tribes"> - <changelog> - <scode> - Start all core threads when starting the receiver and dispatch - interceptor. (kfujino) - </scode> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.20. (remm) - </update> - <update> - Update the CXF module to Apache CXF 3.4.1. (remm) - </update> - <add> - <bug>64931</bug>: Implement validation of <code>changelog.xml</code> - file at build time. (kkolinko) - </add> - <update> - Update to Maven Ant Resolver Tasks 1.3.0. (markt) - </update> - <fix> - <bug>62695</bug>: Provide SHA-256 and SHA-512 checksums for files - published via Maven. (markt) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M10 (markt)" rtext="2020-11-19"> - <subsection name="Catalina"> - <changelog> - <fix> - <bug>55559</bug>: Add a new attribute, <code>localJndiResource</code>, - that allows a UserDatabaseRealm to obtain a UserDatabase instance from - the local (web application) JNDI context rather than the global JNDI - context. This option is only useful when the Realm is defined on the - Context. (markt) - </fix> - <fix> - <bug>64805</bug>: Correct imports used by <code>JMXProxyServlet</code>. - (markt) - </fix> - <fix> - Fix JNDIRealm pooling problems retrying on another bad connection. Any - retries are made on a new connection, just like with the single - connection scenario. Also remove all connections from the pool after - an error. (remm) - </fix> - <fix> - Remove the entry for - <code>org.apache.tomcat.util.descriptor.tld.LocalStrings</code> - from tomcat-embed-core's GraalVM tomcat-resource.json. It no more part - of the jar since - <a href="https://github.com/apache/tomcat/commit/3815b4951eb3acd30a0b77aafa75fbdb928d5782"> - Fix unwanted JPMS dependency of embed-core on embed-jasper</a>. - (mgrigorov) - </fix> - <fix> - Add <code>org.apache.coyote.http11.Http11Nio2Protocol</code> to the list - of classes which could be instantiated via reflection in GraalVM. - (mgrigorov) - </fix> - <add> - Add <code>JsonErrorReportValve</code> that extends the - <code>ErrorReportValve</code> that returns response as JSON instead of - HTML. (kfujino) - </add> - <add> - Add GraalVM config for Tomcat JNI related classes. This makes it - possible to use the APR protocol in GraalVM native images. - To use it add the following to the native-image arguments: - <code>-H:JNIConfigurationResources=META-INF/native-image/org.apache.tomcat.embed/tomcat-embed-core/tomcat-jni.json</code> - (mgrigorov) - </add> - <fix> - JNDIRealm connections should only be created with the container - classloader as the thread context classloader, just like for the JAAS - realm. (remm) - </fix> - <add> - <bug>64871</bug>: Log a warning if Tomcat blocks access to a file - because it uses symlinks. (markt) - </add> - <update> - Rename <code>JDBCStore</code> to <code>DataSourceStore</code> - and remove bottlenecks for database backed session store. Legacy JDBC - driver configuration is no longer supported. Patch submitted by - Philippe Mouawad. (remm) - </update> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Refactor the HTTP/2 window update handling for padding in data frames to - ensure that the connection window is correctly updated after a data - frame with zero length padding is received. (markt) - </fix> - <fix> - Fix processing of URIs with %nn encoded solidus characters when - <code>encodedSolidusHandling</code> was set to <code>passthrough</code> - and the encoded solidus was preceded by other %nn encoded characters. - Based on a pull request by willmeck. (markt) - </fix> - <fix> - <bug>63362</bug>: Add collection of statistics for HTTP/2, WebSocket and - connections upgraded via the HTTP upgrade mechanism. (markt) - </fix> - <fix> - Restore exception catch around Poller.events, as it would cause - the NIO poller thread to exit. This is a regression caused when - the Poller.events method was refactored. (remm) - </fix> - <add> - Provide messages for some <code>SocketTimeoutException</code> instances - that did not have one. (markt) - </add> - <fix> - Avoid most of the thread pool use during NIO2 socket accept. Patch - submitted by Anil Gursel. (remm) - </fix> - <add> - Add additional debug logging for I/O issues when communicating with the - user agent. (markt) - </add> - <fix> - <bug>64830</bug>: Fix concurrency issue in HPACK decoder. (markt) - </fix> - <fix> - Fix a concurrency issue in the NIO connector that could cause newly - created connections to be removed from the poller. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <fix> - <bug>64784</bug>: Don't include the time the Java file was generated as - a comment when generating Java files for JSPs and/or tags if the Java - file was created during pre-compilation. This is to aid repeatable - builds. (markt) - </fix> - <fix> - <bug>64794</bug>: Security exception reading system property on - JspRuntimeLibrary use. (remm) - </fix> - <add> - Add support for specifying Java 16 (with the value <code>16</code>) as - the compiler source and/or compiler target for JSP compilation. If used - with an ECJ version that does not support these values, a warning will - be logged and the latest supported version will used. (markt) - </add> - <update> - Update to the Eclipse JDT compiler 4.17. (markt) - </update> - <fix> - <bug>64849</bug>: Correct JPMS metadata for the Jakarta Expression - Language JARs to provide missing ServiceLoader information. (markt) - </fix> - </changelog> - </subsection> - <subsection name="WebSocket"> - <changelog> - <fix> - <bug>64848</bug>: Fix a variation of this memory leak when a write I/O - error occurs on a non-container thread. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - <bug>64799</bug>: Added missing resources to host-manager web app. (isapir) - </fix> - <fix> - <bug>64797</bug>: Align manager.xml template file in Host-Manager with - context.xml of real Manager web application. (isapir) - </fix> - <add> - Configure the examples web applications to set - <code>SameSite=strict</code> for all cookies, including session cookies, - created by the application. (markt) - </add> - <add> - Configure the examples, Manager and Host Manager to use the HTTP header - security filter with default settings apart from no HSTS header. Based - on a suggestion by Debangshu Kundu. (markt) - </add> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <add> - Improvements to French translations. (remm) - </add> - <add> - Improvements to Korean translations. (woonsan) - </add> - <add> - Improvements to Russian translations. Provided by Azat. (markt) - </add> - <fix> - <bug>64870</bug>: Update to bnd 5.3.0-SNAPSHOT to work around a - <a href="https://bugs.openjdk.java.net/browse/JDK-8255854">JRE bug</a>. - (markt) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M9 (markt)" rtext="2020-10-09"> - <subsection name="Catalina"> - <changelog> - <update> - The health check valve will now check the state of its associated - containers to report availability. (remm) - </update> - <fix> - Fix race condition when saving and recycling session in - <code>PersistentValve</code>. (kfujino) - </fix> - <update> - Remove the JDBCRealm. (markt) - </update> - <fix> - Correct numerous spellings throughout the code base. Based on a pull - request from John Bampton. (markt) - </fix> - <fix> - <bug>64715</bug>: Add PasswordValidationCallback to the Jakarta - Authentication implementation. Patch provided by Robert Rodewald. - (markt) - </fix> - <update> - Allow using the utility executor for annotation scanning. Patch - provided by Jatin Kamnani. (remm) - </update> - <fix> - <bug>64751</bug>: Correct the JPMS module descriptor so the embedded - JARs may be used with JPMS. (markt) - </fix> - <fix> - When performing an incremental build, ensure bnd does not create - unwanted JPMS dependencies between embedded JARs. (markt) - </fix> - <update> - Add a bloom filter to speed up archive lookup and improve deployment - speed of applications with a large number of JARs. Patch - provided by Jatin Kamnani. (remm) - </update> - <fix> - Throw <code>SQLException</code> instead of - <code>NullPointerException</code> when failing to connect to the - database. (kfujino) - </fix> - <fix> - <bug>64735</bug>: Ensure that none of the methods on a - <code>ServletContext</code> instance always fail when running under a - SecurityManager. Pull request provided by Kyle Stiemann. (markt) - </fix> - <fix> - <bug>64765</bug>: Ensure that the number of currently processing threads - is tracked correctly when a web application is undeployed, long running - requests are being processed and - <code>renewThreadsWhenStoppingContext</code> is enabled for the web - application. (markt) - </fix> - <add> - Improve the error messages when running under JPMS without the necessary - options to enable reflection required by the memory leak prevention / - detection code. (markt) - </add> - <fix> - When estimating the size of a resource in the static resource cache, - include a specific allowance for the path to the resource. Based on a - pull request by blueSky1825821. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Do not send an HTTP/2 PING frame to measure round-trip time when it is - known that the HTTP/2 connection is not in a good state. (markt) - </fix> - <fix> - Ensure HTTP/2 timeouts are processed for idle connections. (markt) - </fix> - <fix> - <bug>64743</bug>: Correct a regression introduced in 10.0.0-M7 that - caused a <code>Connection: close</code> header to be added to the - response if the Connector was configured with - <code>maxSwallowSize=-1</code>. (markt) - </fix> - <fix> - When logging HTTP/2 debug messages, use consistent formatting for stream - identifiers. (markt) - </fix> - <fix> - Correct some double counting in the code that tracks the number of - in-flight asynchronous requests. The tracking enables Tomcat to shutdown - gracefully when asynchronous processing is in use. (markt) - </fix> - <fix> - Improve the error handling for the HTTP/2 connection preface when the - Connector is configured with <code>useAsyncIO="true"</code>. - (markt) - </fix> - <fix> - Refactor the handling of closed HTTP/2 streams to reduce the heap usage - associated with used streams and to retain information for more streams - in the priority tree. (markt) - </fix> - <fix> - Don't send the Keep-Alive response header if the connection has been - explicitly closed. (markt) - </fix> - <fix> - <bug>64710</bug>: Avoid a <code>BufferOverflowException</code> if an - HTTP/2 connection is closed while the parser still has a partial HTTP/2 - frame in the input buffer. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <fix> - Use lazy instantiation to improve the performance when working with - listeners added to the <code>ELContext</code>. Pull request provided by - Thomas Andraschko. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <add> - Configure the Manager and Host Manager web applications to set - <code>SameSite=strict</code> for all cookies, including session cookies, - created by the application. (markt) - </add> - <fix> - Update the Manager How-To in the documentation web application to - clarify when a user may wish to deploy additional instances of the - Manager web application. (markt) - </fix> - <fix> - <bug>64774</bug>: Review references to Tomcat 9 in the documentation - web application and remove them or update them to refer to Tomcat 10 as - appropriate. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <update> - Update to Commons Daemon 1.2.3. This adds support to jsvc for - <code>--enable-preview</code> and native memory tracking (Procrun - already supported these features), adds some additional debug logging and - adds a new feature to Procrun that outputs the command to (re-)configure - the service with the current settings. (markt) - </update> - <add> - When building, only rebuild JAR files (including OSGi and JPMS metadata) - if the contents has changed. (markt) - </add> - <add> - Improvements to Chinese translations. Pull request provided by Yang - Yang. (markt) - </add> - <add> - Expand coverage of Russian translations. Pull request provided by - Nikolay Gribanov. (markt) - </add> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.18. (remm) - </update> - <update> - Update the CXF module to Apache CXF 3.4.0. (remm) - </update> - <fix> - Fix running service.bat when called from <code>$CATALINA_HOME</code>. - (markt) - </fix> - <fix> - Complete the fix for <bug>63815</bug>. Users wishing to use system - properties that require quoting with <code>catalina.sh</code> and the - <code>debug</code> option must use a JRE that includes the fix for <a - href="https://bugs.openjdk.java.net/browse/JDK-8234808">JDK-8234808</a>. - (markt) - </fix> - <add> - Improvements to Chinese translations. Provided by leeyazhou. (markt) - </add> - <add> - Improvements to Czech translations. Provided by Dušan Hlaváč and Arnošt - Havelka. (markt) - </add> - <add> - Improvements to French translations. (remm) - </add> - <add> - Improvements to Korean translations. (woonsan) - </add> - <add> - Improvements to Spanish translations. Provided by Andrewlanecarr. - (markt) - </add> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M8 (markt)" rtext="2020-09-14"> - <subsection name="Catalina"> - <changelog> - <fix> - <bug>64582</bug>: Pre-load the <code>CoyoteOutputStream</code> class to - prevent a potential exception when running under a security manager. - Patch provided by Johnathan Gilday. (markt) - </fix> - <fix> - <bug>64593</bug>: If a request is not matched to a Context, delay - issuing the 404 response to give the rewrite valve, if configured, an - opportunity to rewrite the request. (remm/markt) - </fix> - <fix> - Change top package name for generated embedded classes to avoid - conflict with default host name on case insensitive filesystems. - (remm) - </fix> - <fix> - Add missing code generation for remaining digester rules. (remm) - </fix> - <update> - Add a dedicated loader for generated code to avoid dynamic class - loading. (remm) - </update> - <add> - Refactor the Default servlet to provide a single method that can be - overridden (<code>generateETag()</code>) should a custom entity tag - format be required. (markt) - </add> - <fix> - Improve the validation of entity tags provided with conditional - requests. Requests with headers that contain invalid entity tags will be - rejected with a 400 response code. Improve the matching algorithm used - to compare entity tags in conditional requests with the entity tag for - the requested resource. Based on a pull request by Sergey Ponomarev. - (markt) - </fix> - <fix> - Correct the description of the storage format for salted hashes in the - Javadoc for <code>MessageDigestCredentialHandler</code> and refactor the - associated code for clarity. - Based on a patch provided by Milo van der Zee. (markt) - </fix> - <fix> - Correct the path validation to allow the use of the file system root for - the <code>docBase</code> attribute of a <code>Context</code>. Note that - such a configuration should be used with caution. (markt) - </fix> - <add> - Added filtering expression for requests that are not supposed to use - session in <code>PersistentValve</code>. (kfujino) - </add> - <fix> - Use the correct method to calculate session idle time in - <code>PersistentValve</code>. (kfujino) - </fix> - <fix> - Fix path used by the health check valve when it is not associated with - a <code>Context</code>. (remm) - </fix> - <fix> - <bug>64712</bug>: The JASPIC authenticator now checks the - <code>ServerAuthModule</code> for - <code>jakarta.servlet.http.authType</code> and, if present, uses the - value provided. Based on a patch by Robert Rodewald. (markt) - </fix> - <fix> - <bug>64713</bug>: The JASPIC authenticator now checks the value of - <code>jakarta.servlet.http.registerSession</code> set by the - <code>ServerAuthModule</code> when deciding whether or nor to register - the session. Based on a patch by Robert Rodewald. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <add> - <bug>57661</bug>: For requests containing the - <code>Expect: 100-continue</code> header, add optional support to delay - sending an intermediate 100 status response until the servlet reads the - request body, allowing the servlet the opportunity to respond without - asking for the request body. Based on a pull request by malaysf. (markt) - </add> - <fix> - Remove deprecated <code>CookieProcessor.generateHeader</code> method. - (remm) - </fix> - <fix> - Refactor the implementation of - <code>ServletInputStream.available()</code> to provide a more accurate - return value, particularly when end of stream has been reached. (markt) - </fix> - <fix> - Refactor the stopping of the acceptor to ensure that the acceptor thread - stops when a connector is started immediately after it is stopped. - (markt) - </fix> - <fix> - <bug>64614</bug>: Improve compatibility with FIPS keystores. When a FIPS - keystore is configured and the keystore contains multiple keys, the - alias attribute will be ignored and the key used will be implementation - dependent. (jfclere) - </fix> - <fix> - <bug>64621</bug>: Improve handling HTTP/2 stream reset frames received - from clients. (markt) - </fix> - <fix> - <bug>64660</bug>: Avoid a potential NPE in the AprEndpoint if a socket - is closed in one thread at the same time as the poller is processing an - event for that socket in another. (markt) - </fix> - <fix> - <bug>64671</bug>: Avoid several potential NPEs introduced in the changes - in the previous release to reduce the memory footprint of closed HTTP/2 - streams. (markt) - </fix> - <fix> - Refactor the HTTP/2 implementation to more consistently return a stream - closed error if errors occur after a stream has been reset by the - client. (markt) - </fix> - <fix> - Improve handling of HTTP/2 stream level flow control errors and notify - the stream immediately if it is waiting for an allocation when the flow - control error occurs. (markt) - </fix> - <fix> - Ensure that window update frames are sent for HTTP/2 connections to - account for DATA frames containing padding including when the associated - stream has been closed. (markt) - </fix> - <fix> - Ensure that window update frames are sent for HTTP/2 connections and - streams to account for DATA frames containing zero-length padding. - (markt) - </fix> - <fix> - <bug>64710</bug>: Revert the changes to reduce the memory footprint of - closed HTTP/2 streams as they triggered multiple regressions in the form - of <code>NullPointerException</code>s. (markt) - </fix> - <fix> - Ensure that the HTTP/2 overhead protection check is performed after - each HTTP/2 frame is processed. (markt) - </fix> - </changelog> - </subsection> - <subsection name="WebSocket"> - <changelog> - <fix> - Requests received via proxies may be marked as using the <code>ws</code> - or <code>wss</code> protocol rather than <code>http</code> or - <code>https</code>. Ensure that such requests are not rejected. PR - provided by Ronny Perinke. (markt) - </fix> - <fix> - <bug>64848</bug>: Fix a potential issue where the write lock for a - WebSocket connection may not be released if an exception occurs during - the write. (markt) - </fix> - <add> - <bug>64644</bug>: Add support for a read idle timeout and a write idle - timeout to the WebSocket session via custom properties in the user - properties instance associated with the session. Based on a pull request - by sakshamverma. (markt) - </add> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - Remove the localization of the text output of the Manager application - list of contexts and the Host Manager application list of hosts so that - the output is more consistent. PR provided by Holomark. (markt) - </fix> - <fix> - Clean-up / standardize the XSL files used to generate the documentation. - PR provided by John Bampton. (markt) - </fix> - <fix> - <bug>62723</bug>: Clarify the effects of some options for cluster - <code>channelSendOptions</code>. Patch provided by Mitch Claborn. - (schultz) - </fix> - <fix> - Remove the out of date functional specification section from the - documentation web application. (markt) - </fix> - <fix> - Extracted CSS styles from the Manager we application for better code - maintenance and replaced the GIF logo with SVG. (isapir) - </fix> - <add> - Add document for <code>PersistentValve</code>. (kfujino) - </add> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <fix> - Correct a regression in the fix for <bug>64540</bug> and include - <code>org.apache.tomcat.util.modeler.modules</code> and - <code>org.apache.tomcat.util.net.jsse</code> in the list of exported - packages. (markt) - </fix> - <fix> - Remove the local copy of the <code>javax.transaction.xa</code> package - which is only used during compilation. The package is provided by the - JRE from Java 1.4 onwards so the local copy should be unnecessary. - (markt) - </fix> - <fix> - Rename the local copy of the <code>javax.xml.ws</code> package to - <code>jakarta.xml.ws</code>. (markt) - </fix> - <add> - Improve the quality of the Japanese translations provided with Apache - Tomcat. Includes contributions from Yuki Shira. (markt) - </add> - <fix> - <bug>64645</bug>: Use a non-zero exit code if the - <code>service.bat</code> does not complete normally. (markt) - </fix> - <add> - Update the internal fork of Apache Commons BCEL to 6.5.0. Code clean-up - only. (markt) - </add> - <add> - Update the internal fork of Apache Commons Codec to 53c93d0 (2020-08-18, - 1.15-SNAPSHOT). Code clean-up. (markt) - </add> - <add> - Update the internal fork of Apache Commons FileUpload to c25a4e3 - (2020-08-26, 2.0-SNAPSHOT). Code clean-up and RFC 2231 support. (markt) - </add> - <add> - Update the internal fork of Apache Commons Pool to 2.8.1. Code clean-up - and improved abandoned pool handling. (markt) - </add> - <add> - Update the internal fork of Apache Commons DBCP to 6d232e5 (2020-08-11, - 2.8.0-SNAPSHOT). Code clean-up various bug fixes. (markt) - </add> - <update> - Update the packaged version of the Tomcat Native Library to 1.2.25. - (markt) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M7 (markt)" rtext="2020-07-05"> - <subsection name="Catalina"> - <changelog> - <add> - Remove the error message on start if <code>java.io.tmpdir</code> is - missing and add an explicit error message on application deployment when - the sole feature that depends on it (anti-resource locking) is - configured and can't be used. (markt) - </add> - <update> - Implement a significant portion of the TLS environment variables for - the rewrite valve. (remm) - </update> - <add> - Add the Jakarta EE 9 schema. (markt) - </add> - <fix> - <bug>64506</bug>: Correct a potential race condition in the resource - cache implementation that could lead to - <code>NullPointerException</code>s during class loading. (markt) - </fix> - <add> - Add <code>application/wasm</code> to the media types recognised by - Tomcat. Based on a PR by Thiago Henrique Hüpner. (markt) - </add> - <fix> - Fix a bug in <code>HttpServlet</code> so that a <code>405</code> - response is returned for an HTTP/2 request if the mapped servlet does - implement the requested method rather than the more general - <code>400</code> response. (markt) - </fix> - <add> - Add generated classes using Tomcat embedded as an optional replacement - for the Catalina configuration files. (remm) - </add> - <fix> - <bug>64541</bug>: Refactor the DTD used to validate - <code>mbeans-descriptors.xml</code> files to avoid issues when XML - entity expansion is limited or disabled. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <add> - Include a <code>Connection: close</code> HTTP header when committing a - response and it is known that the <code>maxSwallowSize</code> limit is - going to be exceeded. (markt) - </add> - <fix> - <bug>64509</bug>: Correctly parse RFC 2109 version 1 cookies that use a - comma as a separator between cookies when using the RFC 6265 cookie - processor. Based on a patch by W J Carpenter. (markt) - </fix> - <fix> - Fix the utility code that converted IPv6 addresses to a canonical form - to correctly handle input addresses that ended with a pair of colons. - Based on a patch by syarramsetty-skyhook. (markt) - </fix> - <fix> - Correctly parse RFC 2109 version 1 cookies that have additional linear - white space around cookie attribute names and values when using the RFC - 6265 cookie processor. (markt) - </fix> - <fix> - Once an HTTP/2 stream has been closed, ensure that the code that cleans - up references that are no longer required is called. (markt) - </fix> - <fix> - Reduce the memory footprint of closed HTTP/2 streams. (markt) - </fix> - <fix> - Ensure that the HTTP/1.1 processor is correctly recycled when a direct - connection to h2c is made. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <update> - Update the JSP document validation to permit <code>3.0</code> as a valid - version attribute for the <code><jsp-root></code> element. (markt) - </update> - </changelog> - </subsection> - <subsection name="Cluster"> - <changelog> - <fix> - <bug>64560</bug>: Refactor the replication of a changed session ID for a - replicated session so that the list of changes associated with the - session is not reset when the session ID changes. (markt) - </fix> - </changelog> - </subsection> - <subsection name="WebSocket"> - <changelog> - <fix> - <bug>64563</bug>: Add additional validation of payload length for - WebSocket messages. (markt) - </fix> - <fix> - Correct the calculation of payload length when four or more bytes are - required to represent the payload length. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Web Applications"> - <changelog> - <update> - Update all web applications to use the Jakarta EE 9 schema for web.xml. - (markt) - </update> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <fix> - Fix incorrect version format in OSGi manifests. Patch provided by - Raymond Augé. (markt) - </fix> - <fix> - <bug>64513</bug>: Remove bndlib from dependencies as it is not required. - Pull request provided by Raymond Augé. (markt) - </fix> - <fix> - <bug>64515</bug>: Bnd files don't need to be filtered (save some work). - Pull request provided by Raymond Augé. (markt) - </fix> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.17. (remm) - </update> - <fix> - <bug>64514</bug>: Fixes some missing class dependency issues in bootstrap - to address packaging/dependency concerns for JPMS and OSGi. Pull request - provided by Raymond Augé. (markt) - </fix> - <fix> - <bug>64521</bug>: Avoid moving i18n translations into classes dir since - they are packaged into separate jars. Pull request provided by Raymond - Augé. (markt) - </fix> - <fix> - <bug>64522</bug>: Package jars in effective dependency order. Pull - request provided by Raymond Augé. (markt) - </fix> - <fix> - Store common build details in a shared build-defaults.bnd. Pull - request provided by Raymond Augé. (markt) - </fix> - <fix> - <bug>64532</bug>: Update to bnd 5.1.1. Pull request provided by Raymond - Augé. (markt) - </fix> - <fix> - <bug>64540</bug>: Switch from bndwrap task to bnd task, begin generating - a better manifest and make sure the resulting jar contents are correct. - Pull request provided by Raymond Augé. (markt) - </fix> - <fix> - <bug>64544</bug>: Add built libs to the bnd classpath for introspection. - Pull request provided by Raymond Augé. (markt) - </fix> - <add> - Improve the quality and expand the coverage of the French translations - provided with Apache Tomcat. (remm) - </add> - <fix> - <bug>64548</bug>: Generate JPMS metadata. (rotty3000) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M6 (markt)" rtext="2020-06-07"> - <subsection name="Catalina"> - <changelog> - <fix> - <bug>64432</bug>: Correct a refactoring regression that broke handling - of multi-line configuration in the RewriteValve. Patch provided by Jj. - (markt) - </fix> - <fix> - Fix use of multiple parameters when defining RewriteMaps. - (remm/fschumacher) - </fix> - <update> - Add the special internal rewrite maps for case modification and - escaping. (remm/fschumacher) - </update> - <fix> - Correct a regression in an earlier fix that broke the loading of - configuration files such as keystores via URIs on Windows. (markt) - </fix> - <fix> - Implement a few rewrite SSL env that correspond to Servlet request - attributes. (remm) - </fix> - <update> - <bug>64442</bug>: Be more flexible with respect to the ordering of - groups, roles and users in the <code>tomcat-users.xml</code> file. - (fschumacher) - </update> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <update> - Add support for ALPN on recent OpenJDK 8 releases. (remm) - </update> - <fix> - <bug>64467</bug>: Improve performance of closing idle HTTP/2 streams. - (markt) - </fix> - <update> - Expose server certificate through the <code>SSLSupport</code> - interface. (remm) - </update> - <add> - <bug>64483</bug>: Log a warning if an AJP request is rejected because it - contains an unexpected request attribute. (markt) - </add> - <fix> - <bug>64485</bug>: Fix possible resource leak getting last modified from - <code>ConfigurationSource.Resource</code>. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <update> - Update the Jakarta Server Pages API implementation to align with - specification updates to use generics and add missing - <code>@Deprecated</code> annotations. (markt) - </update> - <fix> - <bug>64488</bug>: Ensure that the ImportHandler from the Expression - Language API is able to load classes from the Java runtime when running - under a SecurityManager. Based on a patch by Volodymyr Siedleck. (markt) - </fix> - </changelog> - </subsection> - <subsection name="WebSocket"> - <changelog> - <add> - Add default implementations for <code>init()</code> and - <code>destroy()</code> to the <code>Encoder</code> and - <code>Decoder</code> interfaces. (markt) - </add> - <fix> - Consistently throw a <code>DeploymentException</code> when an invalid - endpoint path is specified and catch invalid endpoint paths earlier. - (markt) - </fix> - <add> - Include the target URL in the log message when a WebSocket connection - fails. (markt) - </add> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <update> - Update the list of known <code>Charset</code>s in the - <code>CharsetCache</code> to include <code>ISO-8859-16</code>, added in - OpenJDK 15. (markt) - </update> - <add> - Improve the quality and expand the coverage of the French translations - provided with Apache Tomcat. (remm) - </add> - <add> - <bug>64430</bug>: Add support for the <code>CATALINA_OUT_CMD</code> - environment variable that defines a command to which captured stdout and - stderr will be redirected. Patch provided by Harald Dunkel. (markt) - </add> - <update> - Switch from the unsupported Maven Ant Tasks to the supported Maven - Resolver Ant Tasks to upload artifacts to the ASF Maven repository (and - from there to Maven Central). (markt) - </update> - <update> - Update dependency on bnd to 5.1.0. (markt) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M5 (markt)" rtext="2020-05-11"> - <subsection name="Catalina"> - <changelog> - <update> - Remove <code>useAprConnector</code> flag from - <code>AprLifecycleListener</code> so that the only way to use the APR - connectors is to set the full class name. (remm) - </update> - <add> - <bug>59203</bug>: Before calling <code>Thread.stop()</code> (if - configured to do so) on a web application created thread that is not - stopped by the web application when the web application is stopped, try - interrupting the thread first. Based on a pull request by Govinda - Sakhare. (markt) - </add> - <fix> - <bug>62912</bug>: Don't mutate an application provided content header if - it does not contain a charset. Also remove the outdated workaround for - the buggy Adobe Reader 9 plug-in for IE. (markt) - </fix> - <scode> - Remove the <code>reloadable</code> attribute from the - <code>Loader</code> interface as it is duplicated on the - <code>Context</code> interface. (markt) - </scode> - <fix> - Reduce reflection use and remove AJP specific code in the Connector. - (remm/markt/fhanik) - </fix> - <fix> - Rework the fix for <bug>64021</bug> to better support web applications - that use a custom class loader that loads resources from non-standard - locations. (markt) - </fix> - <update> - Remove redundant sole path/URI from error page message on SC_NOT_FOUND. - (michaelo) - </update> - <add> - Log a warning if a <code>CredentialHandler</code> instance is added to - an instance of the <code>CombinedRealm</code> (or a sub-class) as the - <code>CombinedRealm</code> doesn't use a configured - <code>CredentialHandler</code> and it is likely that a configuration - error has occurred. (markt) - </add> - <add> - Add more descriptive error message in DefaultServlet for SC_NOT_FOUND. - (michaelo) - </add> - <fix> - <bug>64309</bug>: Improve the regular expression used to search for - class loader repositories when bootstrapping Tomcat. Pull request - provided by Paul Muriel Biya-Bi. (markt) - </fix> - <fix> - <bug>64384</bug>: Fix multipart configuration ignoring some parameters - in some cases. (schultz) - </fix> - <add> - <bug>64386</bug>: WebdavServlet does not send "getlastmodified" - property for resource collections. (michaelo) - </add> - <update> - Remove reason phrase on WebDAV Multi-Status (207) response. (michaelo) - </update> - <fix> - <bug>64398</bug>: Change default value separator for property - replacement to <code>:-</code> due to possible conflicts. The - syntax is now <code>${name:-default}</code>. (remm) - </fix> - <add> - Improve validation of storage location when using FileStore. (markt) - </add> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Move <code>SocketProperties</code> mbean to its own type rather than - use a subType to improve robustness with tools. (remm) - </fix> - <fix> - Include the problematic data in the error message when reporting that - the provided request line contains an invalid component. (markt) - </fix> - <fix> - Improve the handling of requests that use an expectation. Do not disable - keep-alive where the response has a non-2xx status code but the request - body has been fully read. (rjung/markt) - </fix> - <fix> - <bug>64403</bug>: Ensure that compressed HTTP/2 responses are not sent - with a content length header appropriate for the original, uncompressed - response. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <update> - Remove redundant sole path/URI from error page message on SC_NOT_FOUND. - (michaelo) - </update> - <add> - Add more descriptive error message in DefaultServlet for SC_NOT_FOUND. - (michaelo) - </add> - <fix> - <bug>64373</bug>: When a tag file is packaged in a WAR and then that WAR - is unpacked in <code>/WEB-INF/classes</code> ensure that the tag file - can still be found. Patch provided by Karl von Randow. (markt) - </fix> - <fix> - Ensure that the Jasper code that interfaces with the Eclipse Compiler - for Java (ECJ) enables Jasper to compile JSPs using ECJ 4.14 onwards - when the JSPs have inner classes. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Cluster"> - <changelog> - <update> - Refactor Tribes BufferPool and add the - <code>org.apache.catalina.tribes.io.BufferPool.DEFAULT_POOL_SIZE</code> - system property to configure its size. (remm) - </update> - <update> - Remove java.io based Tribes receiver and sender, in favor of NIO which - was the default. (remm) - </update> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - Fix the saving of a Context configuration file via the scripting - interface of the Manager web application. (markt) - </fix> - <add> - Add a section to the TLS Connector documentation on different key store - types and how to configure them. (markt) - </add> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <update> - Update JUnit to version 4.13. (markt) - </update> - <fix> - Add missing entries to test class path in sample NetBeans configuration - files. Patch provided by Brian Burch. (markt) - </fix> - <scode> - Refactor to use parameterized <code>Collection</code> constructors where - possible. Pull request provided by Lars Grefer. (markt) - </scode> - <scode> - Refactor to use empty arrays with <code>Collections.toArray()</code>. - Pull request provided by Lars Grefer. (markt) - </scode> - <scode> - Refactor loops with a condition to exit as soon as the condition is met. - Pull request provided by Lars Grefer. (markt) - </scode> - <scode> - Refactor bulk addition to collections to use <code>addAll()</code> - rather than a loop. Pull request provided by Lars Grefer. (markt) - </scode> - <add> - Expand the coverage of the Chinese translations provided with Apache - Tomcat. Contributions provided by winsonzhao, ZhangJieWen and Lee - Yazhou. (markt) - </add> - <add> - Improve the quality and expand the coverage of the French translations - provided with Apache Tomcat. (remm) - </add> - <add> - Improve the quality of the Japanese translations provided with Apache - Tomcat. Includes contributions from Yoshy. (markt) - </add> - <add> - Improve the quality of the German translations provided with Apache - Tomcat. (markt) - </add> - <update> - Update the packaged version of the Tomcat Native Library to 1.2.24. - (markt) - </update> - <scode> - Refactor to use enhanced for loops where possible. Pull request by Lars - Grefer. (markt) - </scode> - <add> - Improve IDE support for IntelliJ IDEA. Patch provided by Lars Grefer. - (markt) - </add> - <add> - Improve the coverage and quality of the Korean translations provided - with Apache Tomcat. (woonsan) - </add> - <update> - Update dependency on bnd to 5.0.1. (markt) - </update> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M4 (markt)" rtext="2020-04-08"> - <subsection name="Catalina"> - <changelog> - <fix> - Ensure all URL patterns provided via web.xml are %nn decoded - consistently using the encoding of the web.xml file where specified and - UTF-8 where no explicit encoding is specified. (markt) - </fix> - <update> - Allow a comma separated list of class names for the - <code>org.apache.tomcat.util.digester.PROPERTY_SOURCE</code> - system property. (remm) - </update> - <fix> - <bug>64149</bug>: Avoid NPE when using the access log valve without - a pattern. (remm) - </fix> - <fix> - <bug>64226</bug>: Reset timezone after parsing a date since the date - format is reused. Test case submitted by Gary Thomas. (remm) - </fix> - <fix> - <bug>64247</bug>: Using a wildcard for <code>jarsToSkip</code> should - not override a possibly present <code>jarsToScan</code>. Based on code - submitted by Iridias. (remm) - </fix> - <update> - Refactor DefaultServlet to avoid using an internal Range structure that - is duplicated from the parsing result. (remm) - </update> - <update> - Remove - <code>org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH</code> - system property, replaced by the <code>allowBackslash</code> attribute - on the Connector. (remm) - </update> - <update> - Remove - <code>org.apache.catalina.connector.Response.ENFORCE_ENCODING_IN_GET_WRITER</code> - system property, replaced by the - <code>enforceEncodingInGetWriter</code> attribute on the Connector. - (remm) - </update> - <update> - Remove - <code>org.apache.catalina.session.StandardSession.ACTIVITY_CHECK</code> - system property, replaced by the <code>sessionActivityCheck</code> attribute - on the Manager. (remm) - </update> - <update> - Remove - <code>org.apache.catalina.session.StandardSession.LAST_ACCESS_AT_START</code> - system property, replaced by the - <code>sessionLastAccessAtStart</code> attribute on the Manager. (remm) - </update> - <update> - Remove - <code>org.apache.catalina.core.StandardHostValve.ACCESS_SESSION</code> - system property, replaced by the - <code>alwaysAccessSession</code> attribute on the Context. (remm) - </update> - <update> - Remove - <code>org.apache.catalina.core.ApplicationContext.GET_RESOURCE_REQUIRE_SLASH</code> - system property, replaced by the - <code>contextGetResourceRequiresSlash</code> attribute on the Context. (remm) - </update> - <update> - Remove - <code>org.apache.catalina.core.ApplicationDispatcher.WRAP_SAME_OBJECT</code> - system property, replaced by the - <code>dispatcherWrapsSameObject</code> attribute on the Context. (remm) - </update> - <fix> - <bug>64265</bug>: Fix ETag comparison performed by the default servlet. - The default servlet always uses weak comparison. (markt) - </fix> - <update> - Remove - <code>org.apache.catalina.authenticator.Constants.SSO_SESSION_COOKIE_NAME</code> - system property, replaced by the - <code>cookieName</code> attribute on the SSO valve. (remm) - </update> - <fix> - Add support for default values when using <code>${...}</code> property - replacement in configuration files. Based on a pull request provided by - Bernd Bohmann. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - When closing a NIO channel, avoid canceling keys as a workaround for - deadlocks when running on Java 11. Excessive internal NIO - synchronization on channel close is resolved starting with this - Java version. (remm) - </fix> - <add> - When configuring an HTTP Connector, ensure that the encoding specified - for <code>URIEncoding</code> is a superset of US-ASCII as required by - RFC7230. (markt) - </add> - <fix> - Avoid always retrieving the NIO poller selection key when processing - to reduce sync. (remm) - </fix> - <fix> - <bug>64240</bug>: Ensure that HTTP/0.9 requests that contain additional - data on the request line after the URI are treated consistently. Such - requests will now always be treated as HTTP/1.1. (markt) - </fix> - <add> - Expose the HTTP/2 connection ID and stream ID to applications via the - request attributes <code>org.apache.coyote.connectionID</code> and - <code>org.apache.coyote.streamID</code> respectively. (markt) - </add> - <add> - Replace the system property - <code>org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH</code> - with the Connector attribute <code>encodedSolidusHandling</code> that - adds an additional option to pass the <code>%2f</code> sequence through - to the application without decoding it in addition to rejecting such - sequences and decoding such sequences. (markt) - </add> - <add> - Expose the associated <code>HttpServletRequest</code> to the - <code>CookieProcessor</code> when generating a cookie header so the - header can be tailored based on the properties of the request, such as - the user agent, if required. Based on a patch by Lazar Kirchev. (markt) - </add> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <update> - Update to the Eclipse JDT compiler 4.15. (markt) - </update> - <add> - Add support for specifying Java 14 (with the value <code>14</code>) and - Java 15 (with the value <code>15</code>) as the compiler source and/or - compiler target for JSP compilation. If used with an ECJ version that - does not support these values, a warning will be logged and the latest - supported version will used. (markt) - </add> - <update> - Remove Jasper configuration using system properties and replace them - by a new set of JSP Servlet init parameters. (remm) - </update> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <fix> - Correct the documentation web application to remove references to the - <code>org.apache.catalina.STRICT_SERVLET_COMPLIANCE</code> system - property changing the default for the <code>URIEncoding</code> attribute - of the Connector. (markt) - </fix> - <fix> - Correct the documentation web application to remove references to the - <code>org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH</code> - system property changing how the sequence <code>%5c</code> is - interpreted in a URI. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Tribes"> - <changelog> - <scode> - Remove support for the deprecated system property - <code>org.apache.catalina.tribes.dns_lookups</code>. The default value - of <code>false</code> will now always be used. (markt) - </scode> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <add> - Improve the quality and expand the coverage of the French translations - provided with Apache Tomcat. Contribution provided by Tom Bens. (remm) - </add> - <add> - Expand the coverage of the Chinese translations provided with Apache - Tomcat. Contribution provided by Lee Yazhou. (markt) - </add> - <fix> - <bug>64270</bug>: Set the documented default umask of <code>0027</code> - when using jsvc via <code>daemon.sh</code> and allow the umask used to - be configured via the <code>UMASK</code> environment variable as it is - when using <code>catalina.sh</code>. (markt) - </fix> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.16. (remm) - </update> - <update> - Update the CXF module to Apache CXF 3.3.6. (remm) - </update> - <fix> - Remove the <code>LOGGING_CONFIG</code> environment variable and - replace it with the <code>CATALINA_LOGGING_CONFIG</code> environment - variable to avoid clashes with other components that use - <code>LOGGING_CONFIG</code>. (markt) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M3 (markt)" rtext="2020-03-16"> - <subsection name="Coyote"> - <changelog> - <fix> - <bug>64202</bug>: Use a loop on NIO blocking reads, as it is possible - zero bytes are produced by a network read. (markt/remm) - </fix> - <fix> - <bug>64210</bug>: Correct a regression in the improvements to HTTP - header validation that caused requests to be incorrectly treated as - invalid if a <code>CRLF</code> sequence was split between TCP packets. - Improve validation of request lines, including for HTTP/0.9 requests. - (markt) - </fix> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <fix> - <bug>64206</bug>: Correct a regression introduced in 10.0.0-M1 that - meant that the HTTP port specified when using the Windows Installer was - ignored and 8080 was always used. (markt) - </fix> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M2 (markt)" rtext="not released"> - <subsection name="Catalina"> - <changelog> - <scode> - Refactor <code>HttpServlet.doOptions()</code> to improve performance. - (markt) - </scode> - <update> - Disable StandardManager session persistence by default. It can be - enabled back in <code>context.xml</code>. (remm) - </update> - <add> - Add extension point to DeltaSession to improve subclassing. - Patch provided by ThStock. (schultz) - </add> - <fix> - <bug>64153</bug>: Ensure that the parent for the web application class - loader is set consistently. (markt) - </fix> - <fix> - <bug>64166</bug>: Ensure that the names returned by - <code>HttpServletResponse.getHeaderNames()</code> are unique. (markt) - </fix> - <scode> - Rename <code>org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource</code> - to - <code>org.apache.tomcat.util.digester.EnvironmentPropertySource</code>. - Patch provided by Bernd Bohmann. (markt) - </scode> - <fix> - <bug>63286</bug>: Resolve inconsistencies with access log valve. This - changes the element API to use a nanosecond resolution elapsed time - argument. (remm) - </fix> - <add> - Add new attribute <code>persistAuthentication</code> to both - <code>StandardManager</code> and <code>PersistentManager</code> to - support authentication persistence. Patch provided by Carsten Klein. - (markt) - </add> - <fix> - <bug>64184</bug>: Avoid repeated log messages if a - <code>MemoryUserDatabase</code> is configured but the specified - configuration file is missing. (markt) - </fix> - <add> - <bug>64189</bug>: Expose the web application version String as a - <code>ServletContext</code> attribute named - <code>org.apache.catalina.webappVersion</code>. (markt) - </add> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <fix> - Fix support of native jakarta servlet attributes in AJP connector. - (remm) - </fix> - <update> - <bug>56966</bug>: Add use of System.nanoTime to track request - execution time. (remm) - </update> - <fix> - <bug>64141</bug>: If using a CA certificate, remove a default value - for the truststore file when not using a JSSE configuration. (remm) - </fix> - <fix> - Improve robustness of OpenSSLEngine shutdown. Based on code submitted - by Manuel Dominguez Sarmiento. (remm) - </fix> - <fix> - Add the TLS request attributes used by IIS to the attributes that an AJP - Connector will always accept. (markt) - </fix> - <fix> - A zero length AJP secret will now behave as if it has not been - specified. (remm) - </fix> - <fix> - <bug>64188</bug>: If an error occurs while committing or flushing the - response when using a multiplexing protocol like HTTP/2 that requires - the channel to be closed but not the connection, just close the channel - and allow the other channels using the connection to continue. Based on - a suggestion from Alejandro Anadon. (markt) - </fix> - <fix> - Correct the semantics of <code>getEnableSessionCreation</code> and - <code>setEnableSessionCreation</code> for <code>OpenSSLEngine</code>. - Pull request provided by Alexander Scheel. (markt) - </fix> - <fix> - <bug>64192</bug>: Correctly handle case where unread data is returned to - the read buffer when the read buffer is non empty. Ensure a gathering - TLS read stops once the provided ByteBuffers are full or no more data is - available. (markt) - </fix> - <fix> - Allow async requests to complete cleanly when the Connector is paused - before <code>complete()</code> is called on a container thread. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Cluster"> - <changelog> - <fix> - Allow configuring the <code>DNSMembershipProvider</code> using the - <code>dns</code> alias. Submitted by Bernd Bohmann. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Web applications"> - <changelog> - <add> - Expand the documentation for the <code>address</code> attribute of the - AJP Connector and document that the AJP Connector also supports the - <code>ipv6v6only</code> attribute with the APR/Native implementation. - (markt) - </add> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <update> - Update the OWB module to Apache OpenWebBeans 2.0.15. (remm) - </update> - <update> - Update the CXF module to Apache CXF 3.3.5. (remm) - </update> - <add> - Expand the coverage of the Korean translations provided with Apache - Tomcat. Contributions provided by B. Cansmile Cha. (markt) - </add> - <add> - Expand the coverage of the French translations provided with Apache - Tomcat. (remm) - </add> - <add> - <bug>64190</bug>: Add support for specifying milliseconds (using - <code>S</code>, <code>SS</code> or <code>SSS</code>) in the timestamp - used by JULI's <code>OneLineFormatter</code>. (markt) - </add> - </changelog> - </subsection> -</section> -<section name="Tomcat 10.0.0-M1 (markt)" rtext="2020-02-20"> - <subsection name="General"> - <changelog> - <scode> - This release contains all of the changes upto and including those in - Apache Tomcat 9.0.31 plus the additional changes listed below. (markt) - </scode> - </changelog> - </subsection> - <subsection name="Catalina"> - <changelog> - <update> - Refactor recycle facade system property into a new connector attribute - named <code>discardFacades</code> and enable it by default. (remm) - </update> - <update> - Update to Jakarta Servlet 5.0, Jakarta Server Pages 3.0. Jakarta - Expression Language 4.0, Jakarta WebSocket 2.0, Jakarta Authentication - 2.0 and Jakarta Annotations 2.0. (markt) - </update> - <update> - Remove GenericPrincipal.getPassword. The credentials should remain - managed by the realm. (remm) - </update> - <update> - Add connection pooling to JNDI realm. (remm) - </update> - <update> - Use <code><request-character-encoding></code> and - <code><response-character-encoding></code> in - <code>conf/web.xml</code> to set the default request and response - character encodings to UTF-8. (markt) - </update> - <fix> - Store config compatibility with HostWebXmlCacheCleaner listener. (remm) - </fix> - <fix> - Modify the <code>RewriteValve</code> to use - <code>ServletRequest.getServerName()</code> to populate the - <code>HTTP_HOST</code> variable rather than extracting it from the - <code>Host</code> header as this allows HTTP/2 to be supported. (markt) - </fix> - <fix> - Switch Tomcat embedded to loading MIME type mappings from a property - file generated from the default <code>web.xml</code> so the MIME type - mappings are consistent regardless of how Tomcat is started. (markt) - </fix> - <fix> - Missing store config attributes for Resources elements. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Coyote"> - <changelog> - <update> - Update endpoint cache sizes defaults. (remm) - </update> - <update> - Remove unused NIO blocking selector. (remm) - </update> - <add> - When using an AJP Connector, convert Java Servlet specific request - attributes to the Jakarta Servlet equivalent. (markt) - </add> - <add> - When reporting / logging invalid HTTP headers encode any non-printing - characters using the 0xNN form. (markt) - </add> - <update> - Remove duplication of HTTP/1.1 configuration on the HTTP/2 - UpgradeProtocol element. Configuration from the main Connector element - will now be used. (remm) - </update> - <fix> - When the NIO or APR/native connectors were configured with - <code>useAsyncIO="true"</code> and a zero length read or write was - performed, the read/write would time out rather than return immediately. - (markt) - </fix> - </changelog> - </subsection> - <subsection name="Jasper"> - <changelog> - <scode> - Parameterize JSP version and API class names in localization messages to - allow simpler re-use between major versions. (markt) - </scode> - <fix> - Ensure that TLD files listed in the <code>jsp-config</code> section of - <code>web.xml</code> that are registered in the - <code>uriTldResourcePathMap</code> with the URI specified in - <code>web.xml</code> are also registered with the URI in the TLD file if - it is different. Patch provided by Markus Lottmann. (markt) - </fix> - </changelog> - </subsection> - <subsection name="Cluster"> - <changelog> - <fix> - Fix cloud environment lookup order and add a dedicated - <code>DNS_MEMBERSHIP_SERVICE_NAME</code> environment for use with the - DNS membership provider. Submitted by Bernd Bohmann. (remm) - </fix> - </changelog> - </subsection> - <subsection name="Other"> - <changelog> - <fix> - <bug>53620</bug>: JULI now only creates logging files when there is a - log entry to write. Based on a patch by Karol Bucek. (markt) - </fix> - <fix> - Update implemented specification version information in a few places - where it has not been updated for Jakarta EE 9. (markt) - </fix> - <add> - Expand the coverage of the French translations provided with Apache - Tomcat. (remm) - </add> - <add> - Expand the coverage of the Chinese translations provided with Apache - Tomcat. Contribution provided by BoltzmannWxd. (markt) - </add> - </changelog> - </subsection> -</section> </body> </document> diff --git a/webapps/docs/config/http.xml b/webapps/docs/config/http.xml index b51a0d0..8c807fa 100644 --- a/webapps/docs/config/http.xml +++ b/webapps/docs/config/http.xml @@ -1238,7 +1238,7 @@ <p>In addition to the standard TLS related request attributes defined in section 3.10 of the Servlet specification, Tomcat supports a number of additional TLS related attributes. The full list may be found in the <a - href="http://tomcat.apache.org/tomcat-10.0-doc/api/index.html">SSLSupport + href="http://tomcat.apache.org/tomcat-10.1-doc/api/index.html">SSLSupport Javadoc</a>.</p> <p>For more information, see the diff --git a/webapps/docs/tomcat-docs.xsl b/webapps/docs/tomcat-docs.xsl index 8aa9e9d..acdb0e4 100644 --- a/webapps/docs/tomcat-docs.xsl +++ b/webapps/docs/tomcat-docs.xsl @@ -35,9 +35,9 @@ <xsl:param name="apache-logo" select="'/images/asf-logo.svg'"/> <xsl:param name="subdir" select="''"/> <xsl:param name="relative-path" select="'.'"/> - <xsl:param name="version" select="'10.0.x'"/> + <xsl:param name="version" select="'10.1.x'"/> <xsl:param name="majorversion" select="'10'"/> - <xsl:param name="majorminorversion" select="'10.0'"/> + <xsl:param name="majorminorversion" select="'10.1'"/> <xsl:param name="minjavaversion" select="'8'"/> <xsl:param name="build-date" select="'MMM d yyyy'"/> <xsl:param name="build-date-iso-8601" select="'yyyy-MM-dd'"/> @@ -45,7 +45,7 @@ <xsl:param name="buglink" select="'https://bz.apache.org/bugzilla/show_bug.cgi?id='"/> <xsl:param name="prlink" select="'https://github.com/apache/tomcat/pull/'"/> <xsl:param name="revlink" select="'https://svn.apache.org/viewvc?view=rev&rev='"/> - <xsl:param name="doclink" select="'https://tomcat.apache.org/tomcat-10.0-doc'"/> + <xsl:param name="doclink" select="'https://tomcat.apache.org/tomcat-10.1-doc'"/> <xsl:param name="sylink" select="'https://tomcat.apache.org/security-10.html'"/> <xsl:param name="dllink" select="'https://tomcat.apache.org/download-10.cgi'"/> <xsl:param name="sitedir" select="''"/> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org