Skip to content

Conversation

@vietj
Copy link
Member

@vietj vietj commented Oct 20, 2025

Implementation of HTTP API with HTTP/3.

This implementation makes use of Vert.x Quic stream implementation.

Todo

  • implementation
    • outer context integration and testing
    • metrics
    • tracing
    • send file
    • push
      • client
      • server
  • API
    • breaking changes
      • identify
      • decide
    • dev
      • options
      • connection close payload
  • go away strategies ?
  • documentation
  • ...

Breaking changes

Implementing HTTP/3 implies a few potential breaking changes, the strategy to handle them will be on a case by case basis and attempt to minimize the amount of breaking changes to delay them until Vert.x 6 is implemented, here is a non exhaustive list:

  • stream id declares long type instead of int
  • settings
  • ...

H2/H3 discrepancies

Shutdown / GoAway

H2

GoAway carries stream id + error code + debug data

H3

GoAway only carries stream id, but quic can close with an error code + reason data, error code seems similar but reason is not the same semantic than debug.

@vietj vietj added this to the 5.1.0 milestone Oct 20, 2025
@vietj vietj self-assigned this Oct 21, 2025
@vietj vietj force-pushed the http3-impl branch 8 times, most recently from 7fda2f3 to 45fa673 Compare October 23, 2025 15:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants