Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: enable mozilla-central http3server to use neqo-bin #1878

Merged
merged 8 commits into from
May 8, 2024

Commits on May 3, 2024

  1. refactor(bin): introduce server/http3.rs and server/http09.rs

    The QUIC Interop Runner requires an http3 and http09 implementation for both
    client and server. The client code is already structured into an http3 and an
    http09 implementation since mozilla#1727.
    
    This commit does the same for the server side, i.e. splits the http3 and http09
    implementation into separate Rust modules.
    mxinden committed May 3, 2024
    Configuration menu
    Copy the full SHA
    ae5cbf5 View commit details
    Browse the repository at this point in the history

Commits on May 4, 2024

  1. refactor: merge mozilla-central http3 server into neqo-bin

    There are two server implementations based on neqo:
    
    1. https://github.com/mozilla/neqo/tree/main/neqo-bin/src/server
      - http3 and http09 implementation
      - used for manual testing and QUIC Interop
    
    2. https://searchfox.org/mozilla-central/source/netwerk/test/http3server/src/main.rs
      - used to test Firefox
    
    I assume one was once an exact copy of the other. Both implement their own I/O,
    event loop, ... Since then, the two implementations diverged significantly.
    Especially (1) saw a lot of improvements in recent months:
    
    - mozilla#1564
    - mozilla#1569
    - mozilla#1578
    - mozilla#1581
    - mozilla#1604
    - mozilla#1612
    - mozilla#1676
    - mozilla#1692
    - mozilla#1707
    - mozilla#1708
    - mozilla#1727
    - mozilla#1753
    - mozilla#1756
    - mozilla#1766
    - mozilla#1772
    - mozilla#1786
    - mozilla#1787
    - mozilla#1788
    - mozilla#1794
    - mozilla#1806
    - mozilla#1808
    - mozilla#1848
    - mozilla#1866
    
    At this point, bugs in (2) are hard to fix, see e.g.
    mozilla#1801.
    
    This commit merges (2) into (1), thus removing all duplicate logic and
    having (2) benefit from all the recent improvements to (1).
    mxinden committed May 4, 2024
    Configuration menu
    Copy the full SHA
    98b969e View commit details
    Browse the repository at this point in the history

Commits on May 6, 2024

  1. Configuration menu
    Copy the full SHA
    733d97e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    190bb75 View commit details
    Browse the repository at this point in the history
  3. Extract constructor

    mxinden committed May 6, 2024
    Configuration menu
    Copy the full SHA
    ad9e881 View commit details
    Browse the repository at this point in the history
  4. Remove unused deps

    mxinden committed May 6, 2024
    Configuration menu
    Copy the full SHA
    e7ff2df View commit details
    Browse the repository at this point in the history

Commits on May 7, 2024

  1. Merge branch 'main' of https://github.com/mozilla/neqo into merge-moz…

    …-central-http3-server
    mxinden committed May 7, 2024
    Configuration menu
    Copy the full SHA
    ee65cae View commit details
    Browse the repository at this point in the history
  2. Remove clap color feature

    Nice to have. Adds multiple dependencies. Hard to justify for mozilla-central.
    mxinden committed May 7, 2024
    Configuration menu
    Copy the full SHA
    955aaa9 View commit details
    Browse the repository at this point in the history