[
https://issues.apache.org/jira/browse/GROOVY-11922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18072846#comment-18072846
]
ASF GitHub Bot commented on GROOVY-11922:
-----------------------------------------
utafrali commented on code in PR #2461:
URL: https://github.com/apache/groovy/pull/2461#discussion_r3067957066
##########
gradle/verification-metadata.xml:
##########
@@ -963,12 +963,22 @@
<sha512
value="b810ce040ed0671a3161fb197845f3ae750cd38c474ef54c351b7b127ff3b4d624a26c33450c62474f42c1cde21c65324cda63b1b3ea0515a286e0bcb0c0c9d5"
origin="Generated by Gradle" reason="A key couldn't be downloaded"/>
</artifact>
</component>
+ <component group="jakarta.servlet" name="jakarta.servlet-api"
version="6.1.0">
Review Comment:
The new `jakarta.servlet-api-6.1.0.jar` entry relies only on SHA-512 for
verification. Older entries (e.g. `jakarta.servlet.jsp-api-3.1.1.jar`) include
both a `<pgp>` value and a SHA-512, even when the key couldn't be downloaded.
It would be worth adding PGP verification here as well (even with `reason="A
key couldn't be downloaded"` if necessary) to stay consistent with the
project's existing artifact verification approach.
##########
subprojects/groovy-servlet/src/spec/doc/servlet-userguide.adoc:
##########
@@ -29,7 +29,7 @@ rather than Java code.
* An `AbstractHttpServlet` class for defining traditional Servlets.
* Helper classes like `ServletBinding` and `ServletCategory` which let you
access some of the features offered by the `groovy-servlet` module in
additional contexts.
-From Groovy 5, `groovy-servlet` supports Jakarta EE Servlet specifications.
Javax EE servlet specifications are supported in version before Groovy 5 or
with Groovy 5 by using the `javax` classifier when specifying your dependency.
+From Groovy 6, `groovy-servlet` targets Jakarta EE 11 (Servlet 6.1). It
remains compatible with Jakarta EE 10 (Servlet 6.0) containers. The `javax`
classifier is available for pre-Jakarta containers (e.g. Tomcat 9, Jetty 9).
Review Comment:
The claim "It remains compatible with Jakarta EE 10 (Servlet 6.0)
containers" is asserted without qualification, but it depends entirely on
whether any Servlet 6.1-exclusive API is called by groovy-servlet at runtime.
Since the dependency is `compileOnlyApi`, the container provides the Servlet
implementation at runtime. If any method or class added in 6.1 is invoked,
users running on Tomcat 10.1 or Jetty 12.0.x (Servlet 6.0 containers) will get
a `NoSuchMethodError` or `NoClassDefFoundError`.
Consider either: (a) auditing that only Servlet 6.0 APIs are used and adding
a note about this constraint, or (b) changing the wording to something more
conservative like "It may be compatible with Jakarta EE 10 (Servlet 6.0)
containers provided no Servlet 6.1-exclusive APIs are used."
> Jakarta EE 11 compatibility for groovy-servlet
> ----------------------------------------------
>
> Key: GROOVY-11922
> URL: https://issues.apache.org/jira/browse/GROOVY-11922
> Project: Groovy
> Issue Type: Improvement
> Affects Versions: 5.0.5
> Reporter: Oleg K.
> Assignee: Paul King
> Priority: Major
> Fix For: 6.0.0-alpha-1
>
>
> Same as GROOVY-1190 but for EE11
--
This message was sent by Atlassian Jira
(v8.20.10#820010)