(tomcat) branch main updated: Code clean-up - formatting. No functional change.

2025-05-13 Thread markt
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 6f309ee463 Code clean-up - formatting. No functional change.
6f309ee463 is described below

commit 6f309ee46355e347da692ea9511d5b72f11a63e7
Author: Mark Thomas 
AuthorDate: Tue May 13 14:50:58 2025 +0100

Code clean-up - formatting. No functional change.
---
 java/org/apache/tomcat/buildutil/CheckEol.java | 42 --
 .../apache/tomcat/buildutil/MimeTypeMappings.java  |  4 +-
 .../apache/tomcat/buildutil/RepeatableArchive.java |  8 +-
 java/org/apache/tomcat/buildutil/Txt2Html.java | 90 ++
 .../buildutil/translate/BackportEnglish.java   |  8 +-
 .../buildutil/translate/BackportTranslations.java  |  9 +--
 .../apache/tomcat/buildutil/translate/Export.java  |  5 +-
 .../apache/tomcat/buildutil/translate/Import.java  |  3 +-
 .../apache/tomcat/buildutil/translate/Utils.java   |  8 +-
 9 files changed, 75 insertions(+), 102 deletions(-)

diff --git a/java/org/apache/tomcat/buildutil/CheckEol.java 
b/java/org/apache/tomcat/buildutil/CheckEol.java
index f654586fac..727cb55488 100644
--- a/java/org/apache/tomcat/buildutil/CheckEol.java
+++ b/java/org/apache/tomcat/buildutil/CheckEol.java
@@ -31,13 +31,10 @@ import org.apache.tools.ant.Task;
 import org.apache.tools.ant.types.FileSet;
 
 /**
- * Ant task that checks that all the files in the given fileset have 
end-of-line
- * delimiters that are appropriate.
- *
+ * Ant task that checks that all the files in the given fileset have 
end-of-line delimiters that are appropriate.
  * 
- * The goal is to check whether we have problems with Subversion's 
svn:eol-style
- * property or Git's autocrlf setting when files are committed on one OS and 
then
- * checked on another one.
+ * The goal is to check whether we have problems with Subversion's 
svn:eol-style property or Git's autocrlf setting when
+ * files are committed on one OS and then checked on another one.
  */
 public class CheckEol extends Task {
 
@@ -52,8 +49,8 @@ public class CheckEol extends Task {
  *
  * @param fs The fileset to be checked.
  */
-public void addFileset( FileSet fs ) {
-filesets.add( fs );
+public void addFileset(FileSet fs) {
+filesets.add(fs);
 }
 
 /**
@@ -61,12 +58,12 @@ public class CheckEol extends Task {
  *
  * @param mode The line ending mode (either LF or CRLF)
  */
-public void setMode( String mode ) {
-this.mode = Mode.valueOf( mode.toUpperCase(Locale.ENGLISH) );
+public void setMode(String mode) {
+this.mode = Mode.valueOf(mode.toUpperCase(Locale.ENGLISH));
 }
 
 private Mode getMode() {
-if ( mode != null ) {
+if (mode != null) {
 return mode;
 } else {
 if ("\n".equals(System.lineSeparator())) {
@@ -82,14 +79,13 @@ public class CheckEol extends Task {
 /**
  * Perform the check
  *
- * @throws BuildException if an error occurs during execution of
- *this task.
+ * @throws BuildException if an error occurs during execution of this task.
  */
 @Override
 public void execute() throws BuildException {
 
 Mode mode = getMode();
-if ( mode == null ) {
+if (mode == null) {
 log("Line ends check skipped, because OS line ends setting is 
neither LF nor CRLF.", Project.MSG_VERBOSE);
 return;
 }
@@ -107,25 +103,21 @@ public class CheckEol extends Task {
 log("Checking line ends in " + files.length + " file(s)");
 for (String filename : files) {
 File file = new File(basedir, filename);
-log("Checking file '" + file + "' for correct line ends",
-Project.MSG_DEBUG);
+log("Checking file '" + file + "' for correct line ends", 
Project.MSG_DEBUG);
 try {
 check(file, errors, mode);
 } catch (IOException e) {
-throw new BuildException("Could not check file '"
-+ file.getAbsolutePath() + "'", e);
+throw new BuildException("Could not check file '" + 
file.getAbsolutePath() + "'", e);
 }
 count++;
 }
 }
 }
 if (count > 0) {
-log("Done line ends check in " + count + " file(s), "
-+ errors.size() + " error(s) found.");
+log("Done line ends check in " + count + " file(s), " + 
errors.size() + " error(s) found.");
 }
 if (!errors.isEmpty()) {
-String message = "The following files have wrong line ends: "
-+ errors;
+String message = "The followi

svn commit: r1925531 - in /tomcat/site/trunk/docs: ./ tomcat-11.0-doc/ tomcat-11.0-doc/annotationapi/ tomcat-11.0-doc/annotationapi/jakarta/annotation/ tomcat-11.0-doc/annotationapi/jakarta/annotation

2025-05-13 Thread markt
Author: markt
Date: Tue May 13 07:51:47 2025
New Revision: 1925531

URL: http://svn.apache.org/viewvc?rev=1925531&view=rev
Log:
Update docs for 11.0.7 release


[This commit notification would consist of 115 parts, 
which exceeds the limit of 50 ones, so it was shortened to the summary.]

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



svn commit: r1925532 - in /tomcat/site/trunk: build.properties.default xdocs/download-11.xml xdocs/index.xml xdocs/migration-11.0.xml xdocs/oldnews.xml xdocs/whichversion.xml

2025-05-13 Thread markt
Author: markt
Date: Tue May 13 07:52:41 2025
New Revision: 1925532

URL: http://svn.apache.org/viewvc?rev=1925532&view=rev
Log:
Update site for 11.0.7 release

Modified:
tomcat/site/trunk/build.properties.default
tomcat/site/trunk/xdocs/download-11.xml
tomcat/site/trunk/xdocs/index.xml
tomcat/site/trunk/xdocs/migration-11.0.xml
tomcat/site/trunk/xdocs/oldnews.xml
tomcat/site/trunk/xdocs/whichversion.xml

Modified: tomcat/site/trunk/build.properties.default
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/build.properties.default?rev=1925532&r1=1925531&r2=1925532&view=diff
==
--- tomcat/site/trunk/build.properties.default (original)
+++ tomcat/site/trunk/build.properties.default Tue May 13 07:52:41 2025
@@ -38,7 +38,7 @@ tomcat.loc=https://downloads.apache.org/
 # - Tomcat versions -
 tomcat9.0=9.0.105
 tomcat10.1=10.1.41
-tomcat11.0=11.0.6
+tomcat11.0=11.0.7
 
 # - Download destination -
 tomcat-site-docs.home=${base.path}/tomcat-site-docs/

Modified: tomcat/site/trunk/xdocs/download-11.xml
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/xdocs/download-11.xml?rev=1925532&r1=1925531&r2=1925532&view=diff
==
--- tomcat/site/trunk/xdocs/download-11.xml (original)
+++ tomcat/site/trunk/xdocs/download-11.xml Tue May 13 07:52:41 2025
@@ -31,7 +31,7 @@
  Define variable to hold the current version number.
  Documentation for ezt.py: https://code.google.com/p/ezt/wiki/Syntax
 -->
-[define v]11.0.6[end]
+[define v]11.0.7[end]
 https://downloads.apache.org/tomcat/tomcat-11/KEYS";>KEYS |
 [v] |
 Browse |

Modified: tomcat/site/trunk/xdocs/index.xml
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/xdocs/index.xml?rev=1925532&r1=1925531&r2=1925532&view=diff
==
--- tomcat/site/trunk/xdocs/index.xml (original)
+++ tomcat/site/trunk/xdocs/index.xml Tue May 13 07:52:41 2025
@@ -54,6 +54,39 @@ wiki page.
 project logo are trademarks of the Apache Software Foundation.
 
 
+
+
+The Apache Tomcat Project is proud to announce the release of version 11.0.7
+of Apache Tomcat. This release implements specifications that are part of the
+Jakarta EE 11 platform.
+Users of Tomcat 10 onwards should be aware that, as a result of the move 
from
+Java EE to Jakarta EE as part of the transfer of Java EE to the Eclipse
+Foundation, the primary package for all implemented APIs has changed from
+javax.* to jakarta.*. This will almost certainly
+require code changes to enable applications to migrate from Tomcat 9 and 
earlier
+to Tomcat 10 and later. A
+https://github.com/apache/tomcat-jakartaee-migration";>migration
+tool is available to aid this process.
+The notable changes in this release are:
+
+  Process possible path parameters rewrite production in the rewrite
+  valve.
+  Enable allowLinking to be set on PreResources, JarResources and
+  PostResources. If not set explicitly, the setting will be inherited
+  from the Resources.
+  Add support for optimized execution of c:set and c:remove tags, when
+  activated via JSP servlet param useNonstandardTagOptimizations.
+
+
+Full details of these changes, and all the other changes, are available in the
+Tomcat 11
+changelog.
+
+
+
+Download
+
+
 
 
 
@@ -118,36 +151,6 @@ changelog.
 
 
 
-
-
-The Apache Tomcat Project is proud to announce the release of version 11.0.6
-of Apache Tomcat. This release implements specifications that are part of the
-Jakarta EE 11 platform.
-Users of Tomcat 10 onwards should be aware that, as a result of the move 
from
-Java EE to Jakarta EE as part of the transfer of Java EE to the Eclipse
-Foundation, the primary package for all implemented APIs has changed from
-javax.* to jakarta.*. This will almost certainly
-require code changes to enable applications to migrate from Tomcat 9 and 
earlier
-to Tomcat 10 and later. A
-https://github.com/apache/tomcat-jakartaee-migration";>migration
-tool is available to aid this process.
-The notable changes in this release are:
-
-  Remove the requirement that an MD5 implementation must be provided
-   by JRE.
-  Improve the handling of %nn URL encoding in the RewriteValve
-  Various improvements to the JsonErrorReportValve
-
-
-Full details of these changes, and all the other changes, are available in the
-Tomcat 11
-changelog.
-
-
-
-Download
-
-
 
 
 

Modified: tomcat/site/trunk/xdocs/migration-11.0.xml
URL: 
http://svn.apache.org/viewvc/tomcat/site/trunk/xdocs/migration-11.0.xml?rev=1925532&r1=1925531&r2=1925532&view=diff
==
--- tomcat/site/trunk/xdocs/migration-11.0.xml (original)
+++ tomcat/site/trunk/xdocs/migration-11.0.xml Tue May 13 07:52:41 2025
@@ -211,8 +211,9 @@ versions of Apache Tomcat®11.0.2
 11.0.3
 11.0.4
-

(tomcat) branch 11.0.x updated: Code clean-up - formatting. No functional change

2025-05-13 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/11.0.x by this push:
 new c2d0d0ea24 Code clean-up - formatting. No functional change
c2d0d0ea24 is described below

commit c2d0d0ea2485be5212d69567c4770b433a3ecbab
Author: Mark Thomas 
AuthorDate: Tue May 13 15:51:08 2025 +0100

Code clean-up - formatting. No functional change
---
 java/org/apache/tomcat/buildutil/CheckEol.java | 42 --
 .../apache/tomcat/buildutil/MimeTypeMappings.java  |  4 +-
 .../apache/tomcat/buildutil/RepeatableArchive.java |  8 +-
 java/org/apache/tomcat/buildutil/Txt2Html.java | 90 ++
 .../buildutil/translate/BackportEnglish.java   |  8 +-
 .../buildutil/translate/BackportTranslations.java  |  9 +--
 .../apache/tomcat/buildutil/translate/Import.java  |  3 +-
 .../apache/tomcat/buildutil/translate/Utils.java   |  8 +-
 8 files changed, 73 insertions(+), 99 deletions(-)

diff --git a/java/org/apache/tomcat/buildutil/CheckEol.java 
b/java/org/apache/tomcat/buildutil/CheckEol.java
index f654586fac..727cb55488 100644
--- a/java/org/apache/tomcat/buildutil/CheckEol.java
+++ b/java/org/apache/tomcat/buildutil/CheckEol.java
@@ -31,13 +31,10 @@ import org.apache.tools.ant.Task;
 import org.apache.tools.ant.types.FileSet;
 
 /**
- * Ant task that checks that all the files in the given fileset have 
end-of-line
- * delimiters that are appropriate.
- *
+ * Ant task that checks that all the files in the given fileset have 
end-of-line delimiters that are appropriate.
  * 
- * The goal is to check whether we have problems with Subversion's 
svn:eol-style
- * property or Git's autocrlf setting when files are committed on one OS and 
then
- * checked on another one.
+ * The goal is to check whether we have problems with Subversion's 
svn:eol-style property or Git's autocrlf setting when
+ * files are committed on one OS and then checked on another one.
  */
 public class CheckEol extends Task {
 
@@ -52,8 +49,8 @@ public class CheckEol extends Task {
  *
  * @param fs The fileset to be checked.
  */
-public void addFileset( FileSet fs ) {
-filesets.add( fs );
+public void addFileset(FileSet fs) {
+filesets.add(fs);
 }
 
 /**
@@ -61,12 +58,12 @@ public class CheckEol extends Task {
  *
  * @param mode The line ending mode (either LF or CRLF)
  */
-public void setMode( String mode ) {
-this.mode = Mode.valueOf( mode.toUpperCase(Locale.ENGLISH) );
+public void setMode(String mode) {
+this.mode = Mode.valueOf(mode.toUpperCase(Locale.ENGLISH));
 }
 
 private Mode getMode() {
-if ( mode != null ) {
+if (mode != null) {
 return mode;
 } else {
 if ("\n".equals(System.lineSeparator())) {
@@ -82,14 +79,13 @@ public class CheckEol extends Task {
 /**
  * Perform the check
  *
- * @throws BuildException if an error occurs during execution of
- *this task.
+ * @throws BuildException if an error occurs during execution of this task.
  */
 @Override
 public void execute() throws BuildException {
 
 Mode mode = getMode();
-if ( mode == null ) {
+if (mode == null) {
 log("Line ends check skipped, because OS line ends setting is 
neither LF nor CRLF.", Project.MSG_VERBOSE);
 return;
 }
@@ -107,25 +103,21 @@ public class CheckEol extends Task {
 log("Checking line ends in " + files.length + " file(s)");
 for (String filename : files) {
 File file = new File(basedir, filename);
-log("Checking file '" + file + "' for correct line ends",
-Project.MSG_DEBUG);
+log("Checking file '" + file + "' for correct line ends", 
Project.MSG_DEBUG);
 try {
 check(file, errors, mode);
 } catch (IOException e) {
-throw new BuildException("Could not check file '"
-+ file.getAbsolutePath() + "'", e);
+throw new BuildException("Could not check file '" + 
file.getAbsolutePath() + "'", e);
 }
 count++;
 }
 }
 }
 if (count > 0) {
-log("Done line ends check in " + count + " file(s), "
-+ errors.size() + " error(s) found.");
+log("Done line ends check in " + count + " file(s), " + 
errors.size() + " error(s) found.");
 }
 if (!errors.isEmpty()) {
-String message = "The following files have wrong line ends: "
-+ errors;
+String message = "The following files have wrong line ends: " + 
errors;
 //

(tomcat) branch 9.0.x updated: Code clean-up - formatting. No functional change

2025-05-13 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
 new ef266f041b Code clean-up - formatting. No functional change
ef266f041b is described below

commit ef266f041b7a9f607cc54221cf5d005370a3e32d
Author: Mark Thomas 
AuthorDate: Tue May 13 15:57:35 2025 +0100

Code clean-up - formatting. No functional change
---
 java/org/apache/tomcat/buildutil/CheckEol.java | 42 +-
 .../apache/tomcat/buildutil/RepeatableArchive.java |  8 +-
 java/org/apache/tomcat/buildutil/Txt2Html.java | 89 ++
 .../apache/tomcat/buildutil/translate/Import.java  |  3 +-
 .../apache/tomcat/buildutil/translate/Utils.java   |  8 +-
 5 files changed, 64 insertions(+), 86 deletions(-)

diff --git a/java/org/apache/tomcat/buildutil/CheckEol.java 
b/java/org/apache/tomcat/buildutil/CheckEol.java
index 042af608a2..aec3990fa0 100644
--- a/java/org/apache/tomcat/buildutil/CheckEol.java
+++ b/java/org/apache/tomcat/buildutil/CheckEol.java
@@ -31,13 +31,10 @@ import org.apache.tools.ant.Task;
 import org.apache.tools.ant.types.FileSet;
 
 /**
- * Ant task that checks that all the files in the given fileset have 
end-of-line
- * delimiters that are appropriate.
- *
+ * Ant task that checks that all the files in the given fileset have 
end-of-line delimiters that are appropriate.
  * 
- * The goal is to check whether we have problems with Subversion's 
svn:eol-style
- * property or Git's autocrlf setting when files are committed on one OS and 
then
- * checked on another one.
+ * The goal is to check whether we have problems with Subversion's 
svn:eol-style property or Git's autocrlf setting when
+ * files are committed on one OS and then checked on another one.
  */
 public class CheckEol extends Task {
 
@@ -52,8 +49,8 @@ public class CheckEol extends Task {
  *
  * @param fs The fileset to be checked.
  */
-public void addFileset( FileSet fs ) {
-filesets.add( fs );
+public void addFileset(FileSet fs) {
+filesets.add(fs);
 }
 
 /**
@@ -61,12 +58,12 @@ public class CheckEol extends Task {
  *
  * @param mode The line ending mode (either LF or CRLF)
  */
-public void setMode( String mode ) {
-this.mode = Mode.valueOf( mode.toUpperCase(Locale.ENGLISH) );
+public void setMode(String mode) {
+this.mode = Mode.valueOf(mode.toUpperCase(Locale.ENGLISH));
 }
 
 private Mode getMode() {
-if ( mode != null ) {
+if (mode != null) {
 return mode;
 } else {
 if ("\n".equals(System.lineSeparator())) {
@@ -82,14 +79,13 @@ public class CheckEol extends Task {
 /**
  * Perform the check
  *
- * @throws BuildException if an error occurs during execution of
- *this task.
+ * @throws BuildException if an error occurs during execution of this task.
  */
 @Override
 public void execute() throws BuildException {
 
 Mode mode = getMode();
-if ( mode == null ) {
+if (mode == null) {
 log("Line ends check skipped, because OS line ends setting is 
neither LF nor CRLF.", Project.MSG_VERBOSE);
 return;
 }
@@ -107,25 +103,21 @@ public class CheckEol extends Task {
 log("Checking line ends in " + files.length + " file(s)");
 for (String filename : files) {
 File file = new File(basedir, filename);
-log("Checking file '" + file + "' for correct line ends",
-Project.MSG_DEBUG);
+log("Checking file '" + file + "' for correct line ends", 
Project.MSG_DEBUG);
 try {
 check(file, errors, mode);
 } catch (IOException e) {
-throw new BuildException("Could not check file '"
-+ file.getAbsolutePath() + "'", e);
+throw new BuildException("Could not check file '" + 
file.getAbsolutePath() + "'", e);
 }
 count++;
 }
 }
 }
 if (count > 0) {
-log("Done line ends check in " + count + " file(s), "
-+ errors.size() + " error(s) found.");
+log("Done line ends check in " + count + " file(s), " + 
errors.size() + " error(s) found.");
 }
 if (!errors.isEmpty()) {
-String message = "The following files have wrong line ends: "
-+ errors;
+String message = "The following files have wrong line ends: " + 
errors;
 // We need to explicitly write the message to the log, because
 // long BuildException messages may be trimmed. E.g. I observed
 // this problem with Eclipse IDE

(tomcat) branch main updated: Marker class should be static

2025-05-13 Thread markt
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 a54fb645f3 Marker class should be static
a54fb645f3 is described below

commit a54fb645f39ac40dc8cdae4aba305ebede981cbe
Author: Mark Thomas 
AuthorDate: Tue May 13 11:33:14 2025 +0100

Marker class should be static
---
 java/jakarta/el/ELResolver.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/java/jakarta/el/ELResolver.java b/java/jakarta/el/ELResolver.java
index d650069cb0..becf8051c7 100644
--- a/java/jakarta/el/ELResolver.java
+++ b/java/jakarta/el/ELResolver.java
@@ -144,9 +144,9 @@ public abstract class ELResolver {
  * The EL implementation is required to set this key with the value {@code 
Boolean#TRUE} when resolving a single,
  * stand-alone identifier.
  *
- * @since Jakarta Expression Language 6.1
+ * @since EL 6.1
  */
-public class StandaloneIdentifierMarker {
+public static class StandaloneIdentifierMarker {
 
 private StandaloneIdentifierMarker() {
 // Non-public default constructor as there is no need to create 
instances of this class.


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



(tomcat) branch main updated: Use new EL 6.1 marker class for this optimisation

2025-05-13 Thread markt
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 68c92190b0 Use new EL 6.1 marker class for this optimisation
68c92190b0 is described below

commit 68c92190b05b137f47ff3a6f93e47dee04a312b1
Author: Mark Thomas 
AuthorDate: Tue May 13 09:51:06 2025 +0100

Use new EL 6.1 marker class for this optimisation
---
 java/jakarta/el/ELResolver.java   | 19 +
 java/jakarta/servlet/jsp/el/ImportELResolver.java | 33 ++-
 java/org/apache/el/parser/AstIdentifier.java  |  9 +++
 webapps/docs/changelog.xml|  6 +
 4 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/java/jakarta/el/ELResolver.java b/java/jakarta/el/ELResolver.java
index 0b9be0327a..d650069cb0 100644
--- a/java/jakarta/el/ELResolver.java
+++ b/java/jakarta/el/ELResolver.java
@@ -133,4 +133,23 @@ public abstract class ELResolver {
 context.setPropertyResolved(false);
 return null;
 }
+
+/**
+ * This class is used as a key for {@link ELContext#getContext(Class)}. 
The key references a context object that if
+ * present and set to {@code Boolean#TRUE}, indicates that the identifier 
being resolved is a single, stand-alone
+ * identifier. This allows {@link ELResolver} instances - and in particular
+ * {@code jakarta.servlet.jsp.el.ImportELResolver} - to optimise the 
resolution of the identifier and avoid
+ * unnecessary and expensive class loader lookups.
+ * 
+ * The EL implementation is required to set this key with the value {@code 
Boolean#TRUE} when resolving a single,
+ * stand-alone identifier.
+ *
+ * @since Jakarta Expression Language 6.1
+ */
+public class StandaloneIdentifierMarker {
+
+private StandaloneIdentifierMarker() {
+// Non-public default constructor as there is no need to create 
instances of this class.
+}
+}
 }
diff --git a/java/jakarta/servlet/jsp/el/ImportELResolver.java 
b/java/jakarta/servlet/jsp/el/ImportELResolver.java
index eb3746bbce..3b003c3a12 100644
--- a/java/jakarta/servlet/jsp/el/ImportELResolver.java
+++ b/java/jakarta/servlet/jsp/el/ImportELResolver.java
@@ -30,20 +30,6 @@ import jakarta.el.ImportHandler;
  */
 public class ImportELResolver extends ELResolver {
 
-// Indicates if a performance short-cut is available
-private static final Class AST_IDENTIFIER_KEY;
-
-static {
-Class key = null;
-try {
-key = Class.forName("org.apache.el.parser.AstIdentifier");
-} catch (Exception e) {
-// Ignore: Expected if not running on Tomcat. Not a problem since
-// this just allows a short-cut.
-}
-AST_IDENTIFIER_KEY = key;
-}
-
 /**
  * Default constructor.
  */
@@ -60,17 +46,14 @@ public class ImportELResolver extends ELResolver {
 if (base == null) {
 if (property != null) {
 boolean resolveClass = true;
-// Performance short-cut available when running on Tomcat
-if (AST_IDENTIFIER_KEY != null) {
-// Tomcat will set this key to Boolean.TRUE if the
-// identifier is a stand-alone identifier (i.e.
-// identifier) rather than part of an AstValue (i.e.
-// identifier.something). Imports do not need to be
-// checked if this is a stand-alone identifier
-Boolean value = (Boolean) 
context.getContext(AST_IDENTIFIER_KEY);
-if (value != null && value.booleanValue()) {
-resolveClass = false;
-}
+/*
+ * The EL implementation will set this key to Boolean.TRUE if 
the identifier is a stand-alone identifier
+ * (i.e. identifier) rather than part of an AstValue (i.e. 
identifier.something). Imports do not need to
+ * be checked if this is a stand-alone identifier.
+ */
+Boolean value = (Boolean) 
context.getContext(ELResolver.StandaloneIdentifierMarker.class);
+if (value != null && value.booleanValue()) {
+resolveClass = false;
 }
 
 ImportHandler importHandler = context.getImportHandler();
diff --git a/java/org/apache/el/parser/AstIdentifier.java 
b/java/org/apache/el/parser/AstIdentifier.java
index a1f9759932..63b6e89e7a 100644
--- a/java/org/apache/el/parser/AstIdentifier.java
+++ b/java/org/apache/el/parser/AstIdentifier.java
@@ -19,6 +19,7 @@ package org.apache.el.parser;
 
 import jakarta.el.ELClass;
 import jakarta.el.ELException;
+import jakarta.el.ELResolver;
 import jakarta.el.MethodExpression;
 import jakarta.el.MethodInfo;
 import 

Re: [ANN] Apache Tomcat 9.0.105 available

2025-05-13 Thread Michael Osipov
Please fix the release changelog for jakarta.el.ImportHandler.

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



Re: [ANN] Apache Tomcat 9.0.105 available

2025-05-13 Thread Rémy Maucherat
On Tue, May 13, 2025 at 10:14 AM Michael Osipov  wrote:
>
> Please fix the release changelog for jakarta.el.ImportHandler.

It is fixed, but after the 9.0.105 tag, so it will be in 9.0.106.

Rémy

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



(tomcat) branch 11.0.x updated: Add release date for 11.0.7

2025-05-13 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/11.0.x by this push:
 new a4ec93e06d Add release date for 11.0.7
a4ec93e06d is described below

commit a4ec93e06d20a6affafce7dffba4702fc1294217
Author: Mark Thomas 
AuthorDate: Tue May 13 08:01:15 2025 +0100

Add release date for 11.0.7
---
 webapps/docs/changelog.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 587cf9cb6f..12160757cd 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -114,7 +114,7 @@
 
   
 
-
+
   
 
   


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



(tomcat) branch 9.0.x updated: Add release date

2025-05-13 Thread remm
This is an automated email from the ASF dual-hosted git repository.

remm pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
 new 214ede5470 Add release date
214ede5470 is described below

commit 214ede5470759d84b9387ba38c5ed3e07a8b1bad
Author: remm 
AuthorDate: Tue May 13 09:32:47 2025 +0200

Add release date
---
 webapps/docs/changelog.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 0c7d539174..e4501ae9cd 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -114,7 +114,7 @@
 
   
 
-
+
   
 
   


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



[PR] Refactor: Use enum for parsingRequestLinePhase in Http11InputBuffer [tomcat]

2025-05-13 Thread via GitHub


devjohnpark opened a new pull request, #855:
URL: https://github.com/apache/tomcat/pull/855

   ## Refactor `parsingRequestLinePhase` in `Http11InputBuffer` to use `enum 
RequestLineParsePhase`
   
   *   Changed the type of the `parsingRequestLinePhase` field from `int` to 
the `enum RequestLineParsePhase`.
   *   This is a pure refactoring and introduces no functional changes.
   *   All tests pass.
   
    Motivation for Replacing the int-typed parsingRequestLinePhase with an 
Enum
   
   1.  Readability
   Using the `enum RequestLineParsePhase` instead of `int` makes the purpose of 
the `parsingRequestLinePhase` variable much clearer. Developers can immediately 
understand the current parsing state (e.g., `RequestLineParsePhase.METHOD`) 
just by looking at the enum constant.
   
   
   2. Type Safety
   The `enum` type ensures that only valid `RequestLineParsePhase` constants 
can be assigned to the `parsingRequestLinePhase` variable. The compiler 
prevents accidental assignment of arbitrary or invalid integer values (e.g., 
`9`, which is outside the range of valid phase values), which could lead to 
runtime errors if the variable were still an `int`.
   
    Summary of Changes
   
   *   The type of the `parsingRequestLinePhase` field was changed from `int` 
to `enum RequestLineParsePhase`.
   *   To ensure compatibility with the original integer values, each `enum` 
constant explicitly retains its corresponding integer representation via an 
internal `int phase` field.
   *   The existing `public int getParsingRequestLinePhase()` method is still 
used to provide the phase value to `Http11Processor`. To support this gradually 
and maintain API compatibility for now, the `int phase` field within `enum 
RequestLineParsePhase` was kept. The `getParsingRequestLinePhase()` method now 
returns the `phase` value from the current enum constant.
   *   **Future Intention:** If this PR is merged, a potential follow-up task 
could be to remove the `getParsingRequestLinePhase()` method and provide more 
specific, intention-revealing methods for `Http11Processor`, further improving 
readability and decoupling.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


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



NIO2 connector

2025-05-13 Thread Mark Thomas

All,

This was mentioned briefly before (I think on a BZ issue) but needs a 
wider discussion before taking action - if we do anything.


It has been suggested that there isn't much benefit to maintaining the 
NIO2 connector and that we could simplify maintenance by removing it 
(deprecating in 11.0.x, removing in 12.0.x). The current code structure 
would be retained should there ever be an NIO3 or similar that we wanted 
to add.


NIO and NIO2 performance is very similar.

The NIO2 code is arguably more complicated. I've always found it harder 
to get me head around but that could just be me.


There is the odd bug with NIO2 we haven't been able to track down.

A similar case might be made for dropping NIO and only maintaining NIO2 
although, as stated above, I have a preference for NIO over NIO2.


What do folks think?

Mark



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



Re: [PR] improve log context to add thread name for webappClassLoader.stackTra… [tomcat]

2025-05-13 Thread via GitHub


ChristopherSchultz commented on PR #850:
URL: https://github.com/apache/tomcat/pull/850#issuecomment-2877047878

   Oh, sorry @markt-asf I forgot about POEditor.com. I'll coordinate off-line 
about this.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


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



Re: NIO2 connector

2025-05-13 Thread Rémy Maucherat
On Tue, May 13, 2025 at 5:22 PM Mark Thomas  wrote:
>
> All,
>
> This was mentioned briefly before (I think on a BZ issue) but needs a
> wider discussion before taking action - if we do anything.
>
> It has been suggested that there isn't much benefit to maintaining the
> NIO2 connector and that we could simplify maintenance by removing it
> (deprecating in 11.0.x, removing in 12.0.x). The current code structure
> would be retained should there ever be an NIO3 or similar that we wanted
> to add.
>
> NIO and NIO2 performance is very similar.
>
> The NIO2 code is arguably more complicated. I've always found it harder
> to get me head around but that could just be me.
>
> There is the odd bug with NIO2 we haven't been able to track down.
>
> A similar case might be made for dropping NIO and only maintaining NIO2
> although, as stated above, I have a preference for NIO over NIO2.
>
> What do folks think?

It was Oracle's decision basically:
- The necessary fixes and refactorings were finally made in NIO, long
after I expected them to happen.
- Features were added that were not added to NIO2 (inherited channel
and domain sockets).

As a result, I would recommend removing NIO2 from Tomcat 12 since
there's no point keeping it. I volunteer to do it.

Since the connector stays in Tomcat 11 and will be kept in sync, it
can be resurrected easily. This should address Michael's concern. Also
APR is very different since it needs a very costly to maintain native
library to work.

Rémy

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



Buildbot success in on tomcat-9.0.x

2025-05-13 Thread buildbot
Build status: Build succeeded!
Worker used: bb_worker2_ubuntu
URL: https://ci2.apache.org/#builders/37/builds/1406
Blamelist: Mark Thomas , felix-zhang-0818 
, remm 
Build Text: build successful
Status Detected: restored build
Build Source Stamp: [branch 9.0.x] ef266f041b7a9f607cc54221cf5d005370a3e32d


Steps:

  worker_preparation: 0

  git: 0

  shell: 0

  shell_1: 0

  shell_2: 0

  shell_3: 0

  shell_4: 0

  shell_5: 0

  shell_6: 0

  compile: 1

  shell_7: 0

  shell_8: 0

  shell_9: 0

  shell_10: 0

  Rsync docs to nightlies.apache.org: 0

  shell_11: 0

  Rsync RAT to nightlies.apache.org: 0

  compile_1: 1

  shell_12: 0

  Rsync Logs to nightlies.apache.org: 0


-- ASF Buildbot


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



(tomcat) branch 10.1.x updated: Code clean-up - formatting. No functional change

2025-05-13 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/10.1.x by this push:
 new d23a5f757a Code clean-up - formatting. No functional change
d23a5f757a is described below

commit d23a5f757a1af1e365efca819ab4a05901844d65
Author: Mark Thomas 
AuthorDate: Tue May 13 15:51:29 2025 +0100

Code clean-up - formatting. No functional change
---
 java/org/apache/tomcat/buildutil/CheckEol.java | 42 +-
 .../apache/tomcat/buildutil/MimeTypeMappings.java  |  4 +-
 .../apache/tomcat/buildutil/RepeatableArchive.java |  8 +-
 java/org/apache/tomcat/buildutil/Txt2Html.java | 89 ++
 .../buildutil/translate/BackportEnglish.java   |  8 +-
 .../buildutil/translate/BackportTranslations.java  |  9 +--
 .../apache/tomcat/buildutil/translate/Import.java  |  3 +-
 .../apache/tomcat/buildutil/translate/Utils.java   |  8 +-
 8 files changed, 72 insertions(+), 99 deletions(-)

diff --git a/java/org/apache/tomcat/buildutil/CheckEol.java 
b/java/org/apache/tomcat/buildutil/CheckEol.java
index 042af608a2..aec3990fa0 100644
--- a/java/org/apache/tomcat/buildutil/CheckEol.java
+++ b/java/org/apache/tomcat/buildutil/CheckEol.java
@@ -31,13 +31,10 @@ import org.apache.tools.ant.Task;
 import org.apache.tools.ant.types.FileSet;
 
 /**
- * Ant task that checks that all the files in the given fileset have 
end-of-line
- * delimiters that are appropriate.
- *
+ * Ant task that checks that all the files in the given fileset have 
end-of-line delimiters that are appropriate.
  * 
- * The goal is to check whether we have problems with Subversion's 
svn:eol-style
- * property or Git's autocrlf setting when files are committed on one OS and 
then
- * checked on another one.
+ * The goal is to check whether we have problems with Subversion's 
svn:eol-style property or Git's autocrlf setting when
+ * files are committed on one OS and then checked on another one.
  */
 public class CheckEol extends Task {
 
@@ -52,8 +49,8 @@ public class CheckEol extends Task {
  *
  * @param fs The fileset to be checked.
  */
-public void addFileset( FileSet fs ) {
-filesets.add( fs );
+public void addFileset(FileSet fs) {
+filesets.add(fs);
 }
 
 /**
@@ -61,12 +58,12 @@ public class CheckEol extends Task {
  *
  * @param mode The line ending mode (either LF or CRLF)
  */
-public void setMode( String mode ) {
-this.mode = Mode.valueOf( mode.toUpperCase(Locale.ENGLISH) );
+public void setMode(String mode) {
+this.mode = Mode.valueOf(mode.toUpperCase(Locale.ENGLISH));
 }
 
 private Mode getMode() {
-if ( mode != null ) {
+if (mode != null) {
 return mode;
 } else {
 if ("\n".equals(System.lineSeparator())) {
@@ -82,14 +79,13 @@ public class CheckEol extends Task {
 /**
  * Perform the check
  *
- * @throws BuildException if an error occurs during execution of
- *this task.
+ * @throws BuildException if an error occurs during execution of this task.
  */
 @Override
 public void execute() throws BuildException {
 
 Mode mode = getMode();
-if ( mode == null ) {
+if (mode == null) {
 log("Line ends check skipped, because OS line ends setting is 
neither LF nor CRLF.", Project.MSG_VERBOSE);
 return;
 }
@@ -107,25 +103,21 @@ public class CheckEol extends Task {
 log("Checking line ends in " + files.length + " file(s)");
 for (String filename : files) {
 File file = new File(basedir, filename);
-log("Checking file '" + file + "' for correct line ends",
-Project.MSG_DEBUG);
+log("Checking file '" + file + "' for correct line ends", 
Project.MSG_DEBUG);
 try {
 check(file, errors, mode);
 } catch (IOException e) {
-throw new BuildException("Could not check file '"
-+ file.getAbsolutePath() + "'", e);
+throw new BuildException("Could not check file '" + 
file.getAbsolutePath() + "'", e);
 }
 count++;
 }
 }
 }
 if (count > 0) {
-log("Done line ends check in " + count + " file(s), "
-+ errors.size() + " error(s) found.");
+log("Done line ends check in " + count + " file(s), " + 
errors.size() + " error(s) found.");
 }
 if (!errors.isEmpty()) {
-String message = "The following files have wrong line ends: "
-+ errors;
+String message = "The following files have wrong line ends: " + 
errors;
 //

[PR] allow users to plug in a ProgressListener via some factory. [tomcat]

2025-05-13 Thread via GitHub


reiern70 opened a new pull request, #856:
URL: https://github.com/apache/tomcat/pull/856

   (no comment)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


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



Re: NIO2 connector

2025-05-13 Thread Michael Osipov
On 2025/05/13 15:20:48 Mark Thomas wrote:
> All,
> 
> This was mentioned briefly before (I think on a BZ issue) but needs a 
> wider discussion before taking action - if we do anything.
> 
> It has been suggested that there isn't much benefit to maintaining the 
> NIO2 connector and that we could simplify maintenance by removing it 
> (deprecating in 11.0.x, removing in 12.0.x). The current code structure 
> would be retained should there ever be an NIO3 or similar that we wanted 
> to add.
> 
> NIO and NIO2 performance is very similar.
> 
> The NIO2 code is arguably more complicated. I've always found it harder 
> to get me head around but that could just be me.
> 
> There is the odd bug with NIO2 we haven't been able to track down.
> 
> A similar case might be made for dropping NIO and only maintaining NIO2 
> although, as stated above, I have a preference for NIO over NIO2.
> 
> What do folks think?

You should also compares features/benefits/limitation of each. What about 
performance? If NIO performs well, I'd prefer to keep the simpler codebase.

In that regard it is a pity that the APR connector was dropped. It was a good 
counterpart to NIO(2).

M

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