bearcove / loona

HTTP 1+2 in Rust, with io_uring & ktls
https://docs.rs/loona
Apache License 2.0
361 stars 13 forks source link

Introduce httpwg crate #173

Closed fasterthanlime closed 6 months ago

fasterthanlime commented 6 months ago

Closes #157

This gets rid of h2spec, the custom coverage script, and instead uses httpwg, a new Rust crate that is similar to h2spec in spirit, but allows running cases as Rust test cases.

There's only 3 test cases ported over so far, the rest will come later. All tests run in parallel now, and TCP isn't involved at all when they're run as unit tests. Due to the structure of httpwg / httpwg-gen / httpwg-macros, it's possible to generate a CLI, too.

In time, httpwg may move to its own repository (or even change name). For now, it's being developed together with fluke, since it reuses some of the base code (fluke-h2-parse, for starters), much like h2spec uses Go's http2 (de)framer.