On Tue, Sep 21, 2021 at 01:14:21PM -0700, Carlo Arenas wrote: > On Tue, Sep 21, 2021 at 12:48 PM Jeff King <peff@xxxxxxxx> wrote: > > But certainly I found the behavior surprising. :) I'd guess it's because > > HTTP/2 is sending some binary goo instead of text headers, and the names > > we get are just coming from some lookup table? Or maybe I'm just showing > > my ignorance of HTTP/2. > > AFAIK headers in HTTP/2 MUST be lowercase as per the SPEC[1] > > Carlo > > [1] https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2 Yeah, I did some more reading and found that, too. From Daniel on StackOverflow, no less: https://stackoverflow.com/questions/54067796/preserving-case-of-http-headers-with-curl So it probably is reasonable to present them to the debug code in that way. It is a bit weird that we may see them differently depending on whether curl decided to use HTTP/1.1 or HTTP/2 under the hood, but matching the on-the-wire format is probably the least-bad thing. -Peff