slachiewicz opened a new pull request, #12693:
URL: https://github.com/apache/maven/pull/12693

   Backport of #12692 to `maven-4.0.x`. The core IT suite still runs its test 
HTTP server on Jetty 9.4, end-of-life since 2022 and last released on Central 
as `9.4.58.v20250814`. This moves it to Jetty 12.1.12 and the Jetty **core** 
API, which drops the servlet API from the IT suite entirely.
   
   The migration commit is @olamy's, from #11730, cherry-picked here.
   
   ### Differences from the master PR
   
   The 4.0.x IT suite predates the NIO2 `Path` migration, so it cherry-picked 
far more cleanly — 7 conflicts, all the same one: master's handlers write 
`<project xmlns="http://maven.apache.org/POM/4.0.0";>` while 4.0.x writes a bare 
`<project>`. 4.0.x's form is kept throughout.
   
   Otherwise identical to #12692, including:
   
   * **Jetty 12.1.6 → 12.1.12**, matching the version `maven-resolver` already 
uses.
   * **MNG-4360 (WebDAV)** — the wagons under test request `//org/apache/...` 
with an empty leading path segment. Jetty 9 served it; Jetty 12 rejects it as 
ambiguous with `400`. The connector now uses `UriCompliance.LEGACY`, the only 
named mode other than `UNSAFE` that permits `AMBIGUOUS_EMPTY_SEGMENT`.
   * **MNG-4554 (`testitRefetched`)** — Jetty 12's `ResourceHandler` caches 
file content by default. The test swaps the served repository between 
invocations and was answered from a stale cache. It now serves straight off 
disk via `ResourceHttpContentFactory`.
   * **MNG-2387** — `proxyServer = new Server(0)` was assigned twice, 
discarding the instance the `ResourceFactory` had been bound to.
   * The review feedback from #12692: role-based BASIC auth constraints 
restored at all 11 sites (the port had flattened them to 
`Authorization.ANY_USER`), repeated `Request.getPathInContext(request)` calls 
hoisted into locals, and the dropped `import static ... REPLACE_EXISTING` 
restored.
   
   ### Verification
   
   The full IT suite was run locally on macOS / JDK 25, both on this branch and 
on unmodified `maven-4.0.x` as a control. Both runs give **1036 tests with the 
same 14 failures in the same 10 classes** — no regressions from the migration. 
Those 14 are local environment failures (trust store, import scope, CI-friendly 
versions, resolver transport) and are unrelated to Jetty; none of the 10 
classes reference Jetty except `MavenITmng4428FollowHttpRedirectTest`, which 
fails on the baseline too.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to