He-Pin opened a new pull request, #1041: URL: https://github.com/apache/pekko-http/pull/1041
Motivation: Port the upstream Akka HTTP fix for recovering HTTP/2 handler failures into 500 responses. The upstream commit is https://github.com/akka/akka-http/commit/02bb9872e1d391f53e21b663336e5052085a0b8c, which is now Apache licensed. Modification: - Wrap HTTP/2 request handlers so failed futures and synchronous NonFatal throws become `500 InternalServerError` responses. - Keep HTTP/1 fallback requests on the original handler so existing HTTP/1 error classification is preserved. - Reject unknown HTTP/2 pseudo-headers during request parsing so protocol errors remain HTTP/2 protocol errors instead of being converted to 500 responses. - Add HTTP/2 regression coverage for failed futures and synchronous handler throws. Result: HTTP/2 user handler failures now return 500 responses without breaking the connection, while malformed HTTP/2 pseudo-headers still produce protocol errors as required by h2spec. References: - Upstream: https://github.com/akka/akka-http/commit/02bb9872e1d391f53e21b663336e5052085a0b8c - Source range: https://github.com/akka/akka-http/compare/v10.2.6...v10.5.2 Validation: - `git diff --check` - `sbt 'http-core / scalafmtCheck' 'http2-tests / scalafmtCheck' 'http2-tests / Test / testOnly org.apache.pekko.http.impl.engine.http2.Http2ClientServerSpec org.apache.pekko.http.impl.engine.http2.H2SpecIntegrationSpec'` -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
