The upcoming eighth draft of the “HPACK - Header Compression for HTTP/2” introduces a number of changes over the previous version. Nothing too drastic, but enough to make libhpack's test bench fail loudly.
Some of the libhpack code is being auto-generated from the HPACK spec document. It wasn’t trivial to put together at first, but it has proven to be a great way of avoiding a lot of potential human mistakes.
Surprisingly, it’s also been quite handy for making sure the library actually complies with the latest bits in the - still WIP - standard. Since the QA bench is executed against the last available draft, it fails depending of whether or not incompatible changes were introduced recently. Though it is never pleasant to receive a CI report with a failure status, the almost instant notification of an incompatible update in the spec is quite valuable.
Once the final version of the protocol specification is finally published this approach won’t be as useful. However, for the time being, it’s being of great help to deal with this sort of moving target.
Changes since draft-ietf-httpbis-header-compression-07:
I’m planning to update libhpack to support the changes above within a day or two. It first sight it looks like it won’t be tough to make our continuous integration system report a green light again.