jetty / jetty.project

Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
https://eclipse.dev/jetty
Other
3.79k stars 1.91k forks source link

Refactor GzipHandler into DynamicCompressionHandler and allow ServiceLoader to find other implementations #8769

Open joakime opened 1 year ago

joakime commented 1 year ago

Jetty version(s) Jetty 12

Enhancement Description The current GzipHandler does a good job at handling Content-Encoding: gzip (and Accept-Encoding: gzip), but we shouldn't hardcode only gzip support.

Can we refactor the existing GzipHandler to be more generic, something like DynamicCompressionHandler and have the Gzip support (courtesy of the existing GzipRequest object) just be loaded via a ServiceLoader?

This way we can encourage other compression algorithms under the same Accept-Encoding / Content-Encoding / already compressed rules that the existing codebase handles for us?

Other compression algorithms that have been requested in our issue tracker.

(FYI, curl supports both of these compression types now)

github-actions[bot] commented 8 months ago

This issue has been automatically marked as stale because it has been a full year without activity. It will be closed if no further activity occurs. Thank you for your contributions.

joakime commented 2 months ago

When we do this we need to keep in mind the effort for Compression Dictionary Transport.

gregw commented 1 month ago

@joakime lets start working on this in the 12.1.x branch

joakime commented 1 month ago

I'm working on this now.