Skip to content

H2 h1, clang-tidy, other stuff - #4

Merged
pgit merged 4 commits into
masterfrom
h2-h1
Nov 9, 2026
Merged

pgit merged 4 commits into
masterfrom
h2-h1

Conversation

@pgit

@pgit pgit commented Nov 9, 2026

Copy link
Copy Markdown
Owner

No description provided.

pgit and others added 4 commits November 8, 2026 12:20
--h3, --h2 and --h1 now say which protocols to speak, in any combination, and all three without
any of them. HTTP/3 still comes only by a record that offers it, while HTTP/2 and HTTP/1.1 come by
a record that offers them or by having no usable record, on the default port. A host that offers
none of the protocols given, wherever its records point, is left out, with a note on why, and
counted as "left out" instead of "without h3". So --h3 alone no longer falls back to TCP.

anyhttp offers HTTP/1.1 along with h2, and a server may take it. With --h2 and without --h1, the
connection is closed before the request goes out, which counts as one that failed, so the next
address or route still gets its turn. A test server that speaks nothing but HTTP/1.1 shows that.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A host now takes as long as its slowest address rather than all of them
together. Replies and notes stay in the order of the addresses.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A 3xx response gets its Location at the end of the status line, as the
server sent it: not resolved against the URL and not requested. This
matters most with --each-address, which prints no header fields.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copy anyhttp's config at the pin (ecc70cf): re-enable
modernize-concat-nested-namespaces and performance-avoid-endl, which find
nothing here, disable readability-redundant-qualified-alias and
performance-enum-size, and allow std::exception_ptr by value.

Fix the findings other than missing includes: designated initializers,
reserve() and emplace_back, std::move of the exception, the executor by
const reference, internal linkage in the tests, explicit discard of
fflush(), and the program_options headers that are used instead of the
umbrella header.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@pgit
pgit merged commit 08cbdb6 into master Nov 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant