Re: [PATCH] http: match headers case-insensitively when redacting
- From
Jeff King <peff@peff.net>
- Date
- Sep 22, 2021, 02:30 UTC
- Message-ID
- <YUqVMbhqiwMFmbqg@coredump.intra.peff.net>
- In-Reply-To
- <YUpMreNwBDSygFSf@nand.local>
On Tue, Sep 21, 2021 at 05:20:45PM -0400, Taylor Blau wrote:
> I'd be fine with assuming that the http2 module is available everywhere, > but only because the tests are optional in the first place. I agree that > we'd want to run our suite of HTTP-related tests in both HTTP/2 and > HTTP/1.1 mode.
Yeah, it's really only a problem if we lose some coverage of http on particular platforms. But I suspect it's relatively rare for people to run the http tests in the first place.
Show 5 quoted lines
> But that doesn't mean we have to reconfigure our Apache server midway > through the test, since HTTP/2 servers should keep the HTTP/1.1 > conversation going if the client doesn't reply with 'Connection: > upgrade; Upgrade: h2c'. At least, I think that's the case based on my > fairly rudimentary understanding of HTTP/2 ;).
Right. If we were doing ALPN, curl would automatically do HTTP/2 if the server supports it. But since we're not, then yes, we can control it from the client side. I think I'd probably break it into two scripts anyway, though, like:
#!/bin/sh
test_description='variant of t5551 for http2' . ./test-lib.sh
test_expect_success 'turn on http/2' ' git config --global http.version HTTP/2 && test_set_prereq HTTP2 '
# presumably it learns to skip its preamble if test_description is # already set. Or we could pull it out to a common lib-t5551 file. . t5551-http-fetch-smart.sh
But TBH I'm not sure if it's even worth the effort. We did find one obscure case here, but AFAICT this would be unlikely to turn up anything useful. I dunno. And really, you'd want to do it for all http-related test scripts, not just this one. That's quite a bit more work.
-Peff