nghttp2 1.69.0 rpms released

nghttp2 1.69.0 rpms released and added to all supported platforms.

Major changes:

- src: Simplify format_hex and format_upper_hex
- build(deps): bump actions/upload-artifact from 4 to 5
- hpack: Optimize huffman decoding a bit
- Port ngtcp2_map changes
- Remove unused macros and enums
- src: Rewrite defer
- src: Remove empty parameter list from lambda
- src: Remove noexcept from ~Defer
- src: Adopt EVP_PKEY_get0_EC_KEY
- nghttpx: Avoid separate allocation for QUIC tx buffer
- src: Workaround performance regression since OpenSSL 3.0
- integration: Cope with os.ErrProcessDone
- build(deps): bump github.com/quic-go/quic-go from 0.55.0 to 0.56.0
- src: Simplify DList::remove
- src: Remove the duplicated test
- lib/CMakeLists.txt: Fix NGHTTP2_CONFIG_INSTALL_DIR path
- nghttpx: Ensure resetting downstream h2 stream
- build(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0
- Gha ubuntu arm
- src: Generate lowcase_tbl
- examples: Remove redundant cast in lowcase
- build(deps): bump actions/checkout from 5 to 6
- build(deps): bump github.com/quic-go/quic-go from 0.56.0 to 0.57.0
- Bump ngtcp2 and its dependencies
- build(deps): bump github.com/quic-go/quic-go from 0.57.0 to 0.57.1
- Fix union usage in nghttp2_data_provider_wrap
- Remove union from WorkerID
- Cancel sending RST_STREAM if stream is not found
- nghttpx: Remove stream_closed_ from Http2DownstreamConnection
- Remove extraneous semicolon
- src: Rewrite Address with std::variant
- build(deps): bump actions/upload-artifact from 5 to 6
- build(deps): bump actions/cache from 4 to 5
- build(deps): bump golang.org/x/net from 0.47.0 to 0.48.0
- build(deps): bump github.com/quic-go/quic-go from 0.57.1 to 0.58.0
- Rewrite Dockerfile with heredoc syntax
- src: Avoid strict aliasing violation
- Introduce nghttp2_strlen_lit
- build(deps): bump github.com/quic-go/quic-go from 0.58.0 to 0.59.0
- Increase default glitch rate limit to 10x
- build(deps): bump golang.org/x/net from 0.48.0 to 0.49.0
- GHA: Fix main branch in cancel-in-progress by
- Remove glitch detection for ignored DATA frame by
- Revert "src: Avoid strict aliasing violation" by
- build(deps): bump golang.org/x/net from 0.49.0 to 0.50.0
- Check nghttp2_is_fatal first
- altsvc: Avoid pointer arithmetic against NULL
- Ensure typedefs use named structs and unions
- Revert "Ensure typedefs use named structs and unions"
- build(deps): bump actions/upload-artifact from 6 to 7
- build(deps): bump golang.org/x/net from 0.50.0 to 0.51.0
- h2load: Fix bug that h2load does not stop early with -D option
- h2load: Add median, p95, and p99 metrics
- h2load: Refactor SDStat output
- h2load: Refactor metrics manual
- h2load: Add some QUIC metrics
- h2load: Plot histogram
- Amend #2619
- build(deps): bump docker/build-push-action from 6 to 7
- build(deps): bump docker/setup-buildx-action from 3 to 4
- h2load: Show certificate type and negotiated group
- nghttpd, nghttpx: Accept at most 10 connections per loop
- h2load: Support TLS resumption
- src: Avoid consteval for now
- nghttpx: Accept pending connections until it returns error
- h2load: Make the names of perf metric short and concise
- nghttpx: Rework close-wait packet generation for h3
- nghttpx: Add extra validation for non-regular path for HTTP/1.1
- nghttpx: More strict validation for h1 host
- h2load: Output the measurement results in JSON
- Src pass by value
- src: Refine Defer
- h2load: Print integral samples as integral
- h2load: Refactor with std::span
- nghttpd: Refactor with std::span
- build(deps): bump golang.org/x/net from 0.51.0 to 0.52.0
- nghttp: Refactor with std::span
- h2load: Use span for reading
- nghttp: Move span creation out of loop
- Add missing iframe state validation
- src: Refactor Buffer::write with std::span
- src: Adopt override keyword
- src: Simplify as_uint8_span with auto
- src: Review the use of iterator and range concepts
- nghttpx: Use std::span for upstream interface
- nghttpx: Modernize downstream connection with std::span
- nghttpx: Deal with partial write in API downstream connection
- build(deps): bump microsoft/setup-msbuild from 2 to 3
- nghttpx: Adopt std::span for LiveCheck read path
- Nghttpx connection write span
- Nghttpx connection read span
- nghttpx: Refactor QUIC utils with std::span
- nghttpx: Choose the sensible value for TCP_DEFER_ACCEPT
- src: Refactor riovec with std::span
- nghttpx: Simplify HTTP/2 writer
- h2load: Add --h3 option
- nghttpx: Format doc
- nghttpx: Deal with ECONNRESET for IPC socket on worker process side
- third-party: Bump neverbleed
- doc: Update h2load howto
- Bump llhttp to v9.3.1
- GHA: Add macos-26 build and remove macos-14 build
- h2load: Deal with h3 unidirectional stream closure
- src: Refine allocator with the modern memory construct
- Modernize BlockAllocator and its utility functions
- nghttpx: Rewrite LOG macros with std::source_location
- nghttpx: Amend #2671 to fix double logging
- nghttpx: Call Log ctor directly
- nghttpx: Rename LOG_ENABLED to log_enabled
- src: Remove enclosing anonymous namespace from constexpr variables
- src: Add static constexpr to ngtcp2 and nghttp3 callbacks
- OpenSSL 4.0.0 beta1 fix by @xl32
- build(deps): bump actions/github-script from 8 to 9
- build(deps): bump golang.org/x/net from 0.52.0 to 0.53.0
- GHA: Bump openssl to v4.0.0
- Optimize the decoded length estimation for Huffman encoded string
- Make header related errors stream error with glitch rate limit guard
- Bump ngtcp2 to v1.22.1
- Nghttpx ech
- nghttpx: Log the number of loaded ECH configuration in NOTICE level
- Bump aws-lc
- @trukna made their first contribution
- @cbarrick made their first contribution
- @xl32 made their first contribution

nghttp2 1.62.1 released

nghttp2 1.62.1 rpms released and added to EL7, EL8 and EL9 platforms.

At the same time please note that we already build nghttp2 for EL7 and EL8 since 1.61.0 with patches that allow c-ares 1.10 usage, as c-ares 1.16 is the minimum supported version.

nghttp2 requires C++-20 and is built with GCC 13 on EL8 and EL9.

UPD. EL7 platform is built with clang 15.

nghttp2 1.62.0 released

nghttp2 1.62.0 rpms released and added to EL8 and EL9 platforms.

EL7 platform is excluded as GCC 13 is minimum supported version.

At the same time please note that we already build nghttp2 for EL7 and EL8 since 1.61.0 with patches that allow c-ares 1.10 usage, as c-ares 1.16 is the minimum supported version.

nghttp2 requires C++-20 and is built with GCC 13 on EL8 and EL9.