FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Do not write WebSocket handshake response to the tail of the pipeline by el-psy-kongroo-d · Pull Request #17192 · netty/netty · GitHub

/ netty Public

Do not write WebSocket handshake response to the tail of the pipeline - #17192

Merged
normanmaurer merged 2 commits into
netty:4.2from
el-psy-kongroo-d:fix-websocket-handshake-response-write
Aug 3, 2026
Merged

normanmaurer merged 2 commits into
netty:4.2from
el-psy-kongroo-d:fix-websocket-handshake-response-write

Conversation

Copy link
Copy Markdown
Contributor

Motivation:

WebSocketServerHandshaker writes the 101 Switching Protocols response via
Channel.writeAndFlush(). The write starts at the tail of the pipeline, so every
ChannelOutboundHandler placed after WebSocketServerProtocolHandler sees the
raw HTTP upgrade response, even though handlers there operate on WebSocket
frames. In #17141 a handler that queues outbound messages until
HandshakeComplete captured the response itself, so the handshake could never
complete.

WebSocketServerHandshaker already provides ChannelHandlerContext overloads
for close() for the same reason; this change applies the same pattern to the
handshake response.

Modification:

  • Add handshake(ChannelHandlerContext, ...) overloads to
    WebSocketServerHandshaker, following the existing
    close(ChannelHandlerContext, ...) overloads in the same class, and route both
    variants through a shared handshake0(ChannelOutboundInvoker, Channel, ...).
  • WebSocketServerProtocolHandshakeHandler now passes its ctx, so the response
    is written from the handshake handler's former position.
  • Update the benchmarkserver example to use the new overload.
  • Tests: a regression test asserts a handler behind the protocol handler
    observes no write during the handshake, for both full and non-full upgrade
    requests. Existing tests that captured the response behind the protocol
    handler now read it via readOutbound(). Four handshake(null, ...) calls
    needed a (Channel) cast to stay unambiguous.

Notes:

  • With the documented pipeline ordering (extension/compression handler before
    the protocol handler, as in WebSocketServerInitializer) nothing changes: the
    write still traverses WebSocketServerExtensionHandler and the HTTP encoder.
    Only handlers behind the protocol handler stop seeing the 101, which is the
    bug being fixed.
  • The tail-write behavior of the Channel overloads is unchanged and still
    covered by WebSocketServerHandshaker00/08/13Test and
    WebSocketServerHandshakerTest.

Result:

Fixes #17141.

Motivation:

WebSocketServerHandshaker wrote the 101 Switching Protocols response via
Channel.writeAndFlush(), so the write started at the tail of the pipeline
and traversed every ChannelOutboundHandler placed after
WebSocketServerProtocolHandler. Handlers placed there operate on WebSocket
frames and do not expect the raw HTTP upgrade response; in netty#17141 a handler
that queues outbound messages until HandshakeComplete captured the response
itself, deadlocking the handshake until it timed out.

Modification:

- Add handshake(ChannelHandlerContext, ...) overloads to
  WebSocketServerHandshaker, following the existing
  close(ChannelHandlerContext, ...) overloads in the same class, and route
  both variants through a shared
  handshake0(ChannelOutboundInvoker, Channel, ...).
- Let WebSocketServerProtocolHandshakeHandler pass its ctx instead of the
  Channel so the response is written from the handshake handler's position.
- Update the benchmarkserver example to use the new overload.
- Add a regression test asserting that handlers behind the protocol handler
  do not see the handshake response, for both full and non-full upgrade
  requests, and adjust existing tests that relied on the tail write.

Result:

Fixes netty#17141. Handlers placed after WebSocketServerProtocolHandler no
longer see the raw 101 response. The Channel overloads keep their existing
behavior; binary compatibility is preserved. Callers passing a null literal
need a cast when recompiling.

Copy link
Copy Markdown
Member

@el-psy-kongroo-d did you sign our icla yet ? https://netty.io/s/icla

Copy link
Copy Markdown
Contributor Author

@normanmaurer I wasn't aware of the ICLA — just signed it now (GitHub user name: el-psy-kongroo-d). Thanks for the pointer!

normanmaurer added this to the 4.2.17.Final milestone Aug 3, 2026
normanmaurer added needs-cherry-pick-4.1 This PR should be cherry-picked to 4.1 once merged. needs-cherry-pick-5.0 This PR should be cherry-picked to 5.0 once merged. labels Aug 3, 2026
Co-authored-by: Norman Maurer <norman_maurer@apple.com>

testlens-app Bot commented Aug 3, 2026

Copy link
Copy Markdown

✅ All tests passed ✅

🏷️ Commit: 6b5de50
▶️ Tests: 36370 executed
⚪️ Checks: 18/18 completed


Learn more about TestLens at testlens.app.

normanmaurer merged commit 41f1db5 into netty:4.2 Aug 3, 2026
19 checks passed

Copy link
Copy Markdown
Contributor

Could not create auto-port PR.
Got conflicts when cherry-picking onto 4.1.

Copy link
Copy Markdown
Contributor

Could not create auto-port PR.
Got conflicts when cherry-picking onto 5.0.

Copy link
Copy Markdown
Member

PR for 4.1 #17200

normanmaurer added a commit that referenced this pull request Aug 3, 2026
…#17192) (#17200)

`WebSocketServerHandshaker` writes the 101 Switching Protocols response
via
`Channel.writeAndFlush()`. The write starts at the tail of the pipeline,
so every
`ChannelOutboundHandler` placed after `WebSocketServerProtocolHandler`
sees the
raw HTTP upgrade response, even though handlers there operate on
WebSocket
frames. In #17141 a handler that queues outbound messages until
`HandshakeComplete` captured the response itself, so the handshake could
never
complete.

`WebSocketServerHandshaker` already provides `ChannelHandlerContext`
overloads
for `close()` for the same reason; this change applies the same pattern
to the
handshake response.

- Add `handshake(ChannelHandlerContext, ...)` overloads to
  `WebSocketServerHandshaker`, following the existing
`close(ChannelHandlerContext, ...)` overloads in the same class, and
route both
variants through a shared `handshake0(ChannelOutboundInvoker, Channel,
...)`.
- `WebSocketServerProtocolHandshakeHandler` now passes its ctx, so the
response
  is written from the handshake handler's former position.
- Update the benchmarkserver example to use the new overload.
- Tests: a regression test asserts a handler behind the protocol handler
observes no write during the handshake, for both full and non-full
upgrade
requests. Existing tests that captured the response behind the protocol
handler now read it via `readOutbound()`. Four `handshake(null, ...)`
calls
  needed a `(Channel)` cast to stay unambiguous.

Notes:

- With the documented pipeline ordering (extension/compression handler
before
the protocol handler, as in `WebSocketServerInitializer`) nothing
changes: the
write still traverses `WebSocketServerExtensionHandler` and the HTTP
encoder.
Only handlers behind the protocol handler stop seeing the 101, which is
the
  bug being fixed.
- The tail-write behavior of the `Channel` overloads is unchanged and
still
  covered by `WebSocketServerHandshaker00/08/13Test` and
  `WebSocketServerHandshakerTest`.

Fixes #17141.

---------

Co-authored-by: el-psy-kongroo-d
<307969302+el-psy-kongroo-d@users.noreply.github.com>
Co-authored-by: Norman Maurer <norman_maurer@apple.com>

Co-authored-by: el-psy-kongroo-d <el.psy.kongroo.d@gmail.com>
Co-authored-by: el-psy-kongroo-d <307969302+el-psy-kongroo-d@users.noreply.github.com>
normanmaurer added a commit that referenced this pull request Aug 3, 2026
…#17192) (#17201)

`WebSocketServerHandshaker` writes the 101 Switching Protocols response
via
`Channel.writeAndFlush()`. The write starts at the tail of the pipeline,
so every
`ChannelOutboundHandler` placed after `WebSocketServerProtocolHandler`
sees the
raw HTTP upgrade response, even though handlers there operate on
WebSocket
frames. In #17141 a handler that queues outbound messages until
`HandshakeComplete` captured the response itself, so the handshake could
never
complete.

`WebSocketServerHandshaker` already provides `ChannelHandlerContext`
overloads
for `close()` for the same reason; this change applies the same pattern
to the
handshake response.

- Add `handshake(ChannelHandlerContext, ...)` overloads to
  `WebSocketServerHandshaker`, following the existing
`close(ChannelHandlerContext, ...)` overloads in the same class, and
route both
variants through a shared `handshake0(ChannelOutboundInvoker, Channel,
...)`.
- `WebSocketServerProtocolHandshakeHandler` now passes its ctx, so the
response
  is written from the handshake handler's former position.
- Update the benchmarkserver example to use the new overload.
- Tests: a regression test asserts a handler behind the protocol handler
observes no write during the handshake, for both full and non-full
upgrade
requests. Existing tests that captured the response behind the protocol
handler now read it via `readOutbound()`. Four `handshake(null, ...)`
calls
  needed a `(Channel)` cast to stay unambiguous.

Notes:

- With the documented pipeline ordering (extension/compression handler
before
the protocol handler, as in `WebSocketServerInitializer`) nothing
changes: the
write still traverses `WebSocketServerExtensionHandler` and the HTTP
encoder.
Only handlers behind the protocol handler stop seeing the 101, which is
the
  bug being fixed.
- The tail-write behavior of the `Channel` overloads is unchanged and
still
  covered by `WebSocketServerHandshaker00/08/13Test` and
  `WebSocketServerHandshakerTest`.

Fixes #17141.

---------

Co-authored-by: el-psy-kongroo-d
<307969302+el-psy-kongroo-d@users.noreply.github.com>
Co-authored-by: Norman Maurer <norman_maurer@apple.com>

Co-authored-by: el-psy-kongroo-d <el.psy.kongroo.d@gmail.com>
Co-authored-by: el-psy-kongroo-d <307969302+el-psy-kongroo-d@users.noreply.github.com>
mergify Bot added a commit to ArcadeData/arcadedb that referenced this pull request Aug 9, 2026
…l [skip ci]

Bumps [io.netty:netty-all](https://github.com/netty/netty) from 4.2.16.Final to 4.2.17.Final.
Release notes

*Sourced from [io.netty:netty-all's releases](https://github.com/netty/netty/releases).*

> netty-4.2.17.Final
> ------------------
>
> What's Changed
> --------------
>
> * AsciiString.cached(String) should sanitize the provided String ([#13749](https://redirect.github.com/netty/netty/issues/13749)) by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * Fix deploy workflow by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17071](https://redirect.github.com/netty/netty/pull/17071)
> * Fix AsciiString.cached(String) performance regression by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17074](https://redirect.github.com/netty/netty/pull/17074)
> * SslHandler: Fix possible buffer leak when an OOME is thrown during allocation by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17059](https://redirect.github.com/netty/netty/pull/17059)
> * Avoid leak presence detector in leak profile by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17073](https://redirect.github.com/netty/netty/pull/17073)
> * Add HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by [`@​reta`](https://github.com/reta) in [netty/netty#17068](https://redirect.github.com/netty/netty/pull/17068)
> * IoUring: preserve readPending when rescheduling cancelled reads by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17087](https://redirect.github.com/netty/netty/pull/17087)
> * Reject negative maxOrder in PooledByteBufAllocator by [`@​coderbruis`](https://github.com/coderbruis) in [netty/netty#17093](https://redirect.github.com/netty/netty/pull/17093)
> * Fix AdaptiveByteBuf.\_setLongLE calling checked setLongLE by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17098](https://redirect.github.com/netty/netty/pull/17098)
> * Snappy: Guard decoder against invalid chunk lengths by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17099](https://redirect.github.com/netty/netty/pull/17099)
> * Fix OCSP Tests by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17114](https://redirect.github.com/netty/netty/pull/17114)
> * Update to latest netty-tcnative release by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17056](https://redirect.github.com/netty/netty/pull/17056)
> * Use safe decompressor in Lz4FrameDecoder by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17118](https://redirect.github.com/netty/netty/pull/17118)
> * Configure TestLens for the PR builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17129](https://redirect.github.com/netty/netty/pull/17129)
> * IoUring: add SO\_INQ support for Unix domain sockets by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17127](https://redirect.github.com/netty/netty/pull/17127)
> * fix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by [`@​ChunMengLu`](https://github.com/ChunMengLu) in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * Propagate the CI envionment variables through to the docker builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17138](https://redirect.github.com/netty/netty/pull/17138)
> * Codec-compression: Add decompressor API by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16745](https://redirect.github.com/netty/netty/pull/16745)
> * Fix silent failures and optimize error short-circuit in multi-threaded tests by [`@​rajan-github`](https://github.com/rajan-github) in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * Codec-compression: Add Bzip2Decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17145](https://redirect.github.com/netty/netty/pull/17145)
> * Fix buddy cache evicting chunks with live buffers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17154](https://redirect.github.com/netty/netty/pull/17154)
> * Codec-compression: Add Snappy frame decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17153](https://redirect.github.com/netty/netty/pull/17153)
> * Codec-compression: Add zlib decompressors by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17155](https://redirect.github.com/netty/netty/pull/17155)
> * Codec-compression: Add Zstd decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17152](https://redirect.github.com/netty/netty/pull/17152)
> * Codec-compression: Add LZF decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17147](https://redirect.github.com/netty/netty/pull/17147)
> * Codec-compression: Add BrotliDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17146](https://redirect.github.com/netty/netty/pull/17146)
> * Codec-compression: Add Lz4FrameDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17148](https://redirect.github.com/netty/netty/pull/17148)
> * `HttpObjectEncoder` / `DefaultHttp2FrameWriter`: fix buffer leak when a `Throwable` is thrown during header encoding by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17089](https://redirect.github.com/netty/netty/pull/17089)
> * Fix direct memory OOM on low-core containers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17166](https://redirect.github.com/netty/netty/pull/17166)
> * IoUring: Fix the recvmmsg emulation by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17187](https://redirect.github.com/netty/netty/pull/17187)
> * Avoid classloader leak via GlobalEventExecutor terminationFuture failure by [`@​seonwooj0810`](https://github.com/seonwooj0810) in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * BrotliEncoder: Prevent duplicate close scheduling by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17175](https://redirect.github.com/netty/netty/pull/17175)
> * Fix JdkZlibDecompressor losing the tail of highly compressible streams by [`@​renechoi`](https://github.com/renechoi) in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)
> * Update compress-lzf to 1.2.1 by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17194](https://redirect.github.com/netty/netty/pull/17194)
> * Do not write WebSocket handshake response to the tail of the pipeline by [`@​el-psy-kongroo-d`](https://github.com/el-psy-kongroo-d) in [netty/netty#17192](https://redirect.github.com/netty/netty/pull/17192)
> * `HttpServerCodec`: do not consume the method queue for 1xx interim responses by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17182](https://redirect.github.com/netty/netty/pull/17182)
> * Weakly reference engines from the OpenSSL engine map by [`@​bryce-anderson`](https://github.com/bryce-anderson) in [netty/netty#17199](https://redirect.github.com/netty/netty/pull/17199)
> * OpenSSL: Allow to obtain used named group via OpenSslSession by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17058](https://redirect.github.com/netty/netty/pull/17058)
> * Add `.editorconfig` to enforce consistent coding style by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17052](https://redirect.github.com/netty/netty/pull/17052)
> * Update surefire plugin to latest version by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17210](https://redirect.github.com/netty/netty/pull/17210)
> * Merge changes from forks by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17213](https://redirect.github.com/netty/netty/pull/17213)
>
> New Contributors
> ----------------
>
> * [`@​vpelikh`](https://github.com/vpelikh) made their first contribution in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * [`@​ChunMengLu`](https://github.com/ChunMengLu) made their first contribution in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * [`@​rajan-github`](https://github.com/rajan-github) made their first contribution in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * [`@​seonwooj0810`](https://github.com/seonwooj0810) made their first contribution in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * [`@​renechoi`](https://github.com/renechoi) made their first contribution in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)

... (truncated)


Commits

* [`e0789d3`](netty/netty@e0789d3) [maven-release-plugin] prepare release netty-4.2.17.Final
* [`1b5abc6`](netty/netty@1b5abc6) Merge changes from forks ([#17213](https://redirect.github.com/netty/netty/issues/17213))
* [`36fbf57`](netty/netty@36fbf57) Update surefire plugin to latest version ([#17210](https://redirect.github.com/netty/netty/issues/17210))
* [`a96226c`](netty/netty@a96226c) Add `.editorconfig` to enforce consistent coding style ([#17052](https://redirect.github.com/netty/netty/issues/17052))
* [`14a4e6a`](netty/netty@14a4e6a) OpenSSL: Allow to obtain used named group via OpenSslSession ([#17058](https://redirect.github.com/netty/netty/issues/17058))
* [`26255b1`](netty/netty@26255b1) Weakly reference engines from the OpenSSL engine map ([#17199](https://redirect.github.com/netty/netty/issues/17199))
* [`ae41417`](netty/netty@ae41417) `HttpServerCodec`: do not consume the method queue for 1xx interim responses ...
* [`41f1db5`](netty/netty@41f1db5) Do not write WebSocket handshake response to the tail of the pipeline ([#17192](https://redirect.github.com/netty/netty/issues/17192))
* [`035d76e`](netty/netty@035d76e) Update compress-lzf to 1.2.1 ([#17194](https://redirect.github.com/netty/netty/issues/17194))
* [`7681aff`](netty/netty@7681aff) Fix JdkZlibDecompressor losing the tail of highly compressible streams ([#17191](https://redirect.github.com/netty/netty/issues/17191))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.16.Final...netty-4.2.17.Final)
  
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility\_score?dependency-name=io.netty:netty-all&package-manager=maven&previous-version=4.2.16.Final&new-version=4.2.17.Final)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
mergify Bot added a commit to ArcadeData/arcadedb that referenced this pull request Aug 9, 2026
…ip ci]

Bumps `netty.version` from 4.2.16.Final to 4.2.17.Final.
Updates `io.netty:netty-transport` from 4.2.16.Final to 4.2.17.Final
Release notes

*Sourced from [io.netty:netty-transport's releases](https://github.com/netty/netty/releases).*

> netty-4.2.17.Final
> ------------------
>
> What's Changed
> --------------
>
> * AsciiString.cached(String) should sanitize the provided String ([#13749](https://redirect.github.com/netty/netty/issues/13749)) by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * Fix deploy workflow by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17071](https://redirect.github.com/netty/netty/pull/17071)
> * Fix AsciiString.cached(String) performance regression by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17074](https://redirect.github.com/netty/netty/pull/17074)
> * SslHandler: Fix possible buffer leak when an OOME is thrown during allocation by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17059](https://redirect.github.com/netty/netty/pull/17059)
> * Avoid leak presence detector in leak profile by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17073](https://redirect.github.com/netty/netty/pull/17073)
> * Add HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by [`@​reta`](https://github.com/reta) in [netty/netty#17068](https://redirect.github.com/netty/netty/pull/17068)
> * IoUring: preserve readPending when rescheduling cancelled reads by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17087](https://redirect.github.com/netty/netty/pull/17087)
> * Reject negative maxOrder in PooledByteBufAllocator by [`@​coderbruis`](https://github.com/coderbruis) in [netty/netty#17093](https://redirect.github.com/netty/netty/pull/17093)
> * Fix AdaptiveByteBuf.\_setLongLE calling checked setLongLE by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17098](https://redirect.github.com/netty/netty/pull/17098)
> * Snappy: Guard decoder against invalid chunk lengths by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17099](https://redirect.github.com/netty/netty/pull/17099)
> * Fix OCSP Tests by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17114](https://redirect.github.com/netty/netty/pull/17114)
> * Update to latest netty-tcnative release by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17056](https://redirect.github.com/netty/netty/pull/17056)
> * Use safe decompressor in Lz4FrameDecoder by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17118](https://redirect.github.com/netty/netty/pull/17118)
> * Configure TestLens for the PR builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17129](https://redirect.github.com/netty/netty/pull/17129)
> * IoUring: add SO\_INQ support for Unix domain sockets by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17127](https://redirect.github.com/netty/netty/pull/17127)
> * fix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by [`@​ChunMengLu`](https://github.com/ChunMengLu) in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * Propagate the CI envionment variables through to the docker builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17138](https://redirect.github.com/netty/netty/pull/17138)
> * Codec-compression: Add decompressor API by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16745](https://redirect.github.com/netty/netty/pull/16745)
> * Fix silent failures and optimize error short-circuit in multi-threaded tests by [`@​rajan-github`](https://github.com/rajan-github) in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * Codec-compression: Add Bzip2Decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17145](https://redirect.github.com/netty/netty/pull/17145)
> * Fix buddy cache evicting chunks with live buffers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17154](https://redirect.github.com/netty/netty/pull/17154)
> * Codec-compression: Add Snappy frame decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17153](https://redirect.github.com/netty/netty/pull/17153)
> * Codec-compression: Add zlib decompressors by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17155](https://redirect.github.com/netty/netty/pull/17155)
> * Codec-compression: Add Zstd decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17152](https://redirect.github.com/netty/netty/pull/17152)
> * Codec-compression: Add LZF decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17147](https://redirect.github.com/netty/netty/pull/17147)
> * Codec-compression: Add BrotliDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17146](https://redirect.github.com/netty/netty/pull/17146)
> * Codec-compression: Add Lz4FrameDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17148](https://redirect.github.com/netty/netty/pull/17148)
> * `HttpObjectEncoder` / `DefaultHttp2FrameWriter`: fix buffer leak when a `Throwable` is thrown during header encoding by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17089](https://redirect.github.com/netty/netty/pull/17089)
> * Fix direct memory OOM on low-core containers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17166](https://redirect.github.com/netty/netty/pull/17166)
> * IoUring: Fix the recvmmsg emulation by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17187](https://redirect.github.com/netty/netty/pull/17187)
> * Avoid classloader leak via GlobalEventExecutor terminationFuture failure by [`@​seonwooj0810`](https://github.com/seonwooj0810) in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * BrotliEncoder: Prevent duplicate close scheduling by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17175](https://redirect.github.com/netty/netty/pull/17175)
> * Fix JdkZlibDecompressor losing the tail of highly compressible streams by [`@​renechoi`](https://github.com/renechoi) in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)
> * Update compress-lzf to 1.2.1 by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17194](https://redirect.github.com/netty/netty/pull/17194)
> * Do not write WebSocket handshake response to the tail of the pipeline by [`@​el-psy-kongroo-d`](https://github.com/el-psy-kongroo-d) in [netty/netty#17192](https://redirect.github.com/netty/netty/pull/17192)
> * `HttpServerCodec`: do not consume the method queue for 1xx interim responses by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17182](https://redirect.github.com/netty/netty/pull/17182)
> * Weakly reference engines from the OpenSSL engine map by [`@​bryce-anderson`](https://github.com/bryce-anderson) in [netty/netty#17199](https://redirect.github.com/netty/netty/pull/17199)
> * OpenSSL: Allow to obtain used named group via OpenSslSession by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17058](https://redirect.github.com/netty/netty/pull/17058)
> * Add `.editorconfig` to enforce consistent coding style by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17052](https://redirect.github.com/netty/netty/pull/17052)
> * Update surefire plugin to latest version by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17210](https://redirect.github.com/netty/netty/pull/17210)
> * Merge changes from forks by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17213](https://redirect.github.com/netty/netty/pull/17213)
>
> New Contributors
> ----------------
>
> * [`@​vpelikh`](https://github.com/vpelikh) made their first contribution in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * [`@​ChunMengLu`](https://github.com/ChunMengLu) made their first contribution in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * [`@​rajan-github`](https://github.com/rajan-github) made their first contribution in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * [`@​seonwooj0810`](https://github.com/seonwooj0810) made their first contribution in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * [`@​renechoi`](https://github.com/renechoi) made their first contribution in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)

... (truncated)


Commits

* [`e0789d3`](netty/netty@e0789d3) [maven-release-plugin] prepare release netty-4.2.17.Final
* [`1b5abc6`](netty/netty@1b5abc6) Merge changes from forks ([#17213](https://redirect.github.com/netty/netty/issues/17213))
* [`36fbf57`](netty/netty@36fbf57) Update surefire plugin to latest version ([#17210](https://redirect.github.com/netty/netty/issues/17210))
* [`a96226c`](netty/netty@a96226c) Add `.editorconfig` to enforce consistent coding style ([#17052](https://redirect.github.com/netty/netty/issues/17052))
* [`14a4e6a`](netty/netty@14a4e6a) OpenSSL: Allow to obtain used named group via OpenSslSession ([#17058](https://redirect.github.com/netty/netty/issues/17058))
* [`26255b1`](netty/netty@26255b1) Weakly reference engines from the OpenSSL engine map ([#17199](https://redirect.github.com/netty/netty/issues/17199))
* [`ae41417`](netty/netty@ae41417) `HttpServerCodec`: do not consume the method queue for 1xx interim responses ...
* [`41f1db5`](netty/netty@41f1db5) Do not write WebSocket handshake response to the tail of the pipeline ([#17192](https://redirect.github.com/netty/netty/issues/17192))
* [`035d76e`](netty/netty@035d76e) Update compress-lzf to 1.2.1 ([#17194](https://redirect.github.com/netty/netty/issues/17194))
* [`7681aff`](netty/netty@7681aff) Fix JdkZlibDecompressor losing the tail of highly compressible streams ([#17191](https://redirect.github.com/netty/netty/issues/17191))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.16.Final...netty-4.2.17.Final)
  
Updates `io.netty:netty-codec` from 4.2.16.Final to 4.2.17.Final
Release notes

*Sourced from [io.netty:netty-codec's releases](https://github.com/netty/netty/releases).*

> netty-4.2.17.Final
> ------------------
>
> What's Changed
> --------------
>
> * AsciiString.cached(String) should sanitize the provided String ([#13749](https://redirect.github.com/netty/netty/issues/13749)) by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * Fix deploy workflow by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17071](https://redirect.github.com/netty/netty/pull/17071)
> * Fix AsciiString.cached(String) performance regression by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17074](https://redirect.github.com/netty/netty/pull/17074)
> * SslHandler: Fix possible buffer leak when an OOME is thrown during allocation by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17059](https://redirect.github.com/netty/netty/pull/17059)
> * Avoid leak presence detector in leak profile by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17073](https://redirect.github.com/netty/netty/pull/17073)
> * Add HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by [`@​reta`](https://github.com/reta) in [netty/netty#17068](https://redirect.github.com/netty/netty/pull/17068)
> * IoUring: preserve readPending when rescheduling cancelled reads by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17087](https://redirect.github.com/netty/netty/pull/17087)
> * Reject negative maxOrder in PooledByteBufAllocator by [`@​coderbruis`](https://github.com/coderbruis) in [netty/netty#17093](https://redirect.github.com/netty/netty/pull/17093)
> * Fix AdaptiveByteBuf.\_setLongLE calling checked setLongLE by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17098](https://redirect.github.com/netty/netty/pull/17098)
> * Snappy: Guard decoder against invalid chunk lengths by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17099](https://redirect.github.com/netty/netty/pull/17099)
> * Fix OCSP Tests by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17114](https://redirect.github.com/netty/netty/pull/17114)
> * Update to latest netty-tcnative release by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17056](https://redirect.github.com/netty/netty/pull/17056)
> * Use safe decompressor in Lz4FrameDecoder by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17118](https://redirect.github.com/netty/netty/pull/17118)
> * Configure TestLens for the PR builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17129](https://redirect.github.com/netty/netty/pull/17129)
> * IoUring: add SO\_INQ support for Unix domain sockets by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17127](https://redirect.github.com/netty/netty/pull/17127)
> * fix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by [`@​ChunMengLu`](https://github.com/ChunMengLu) in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * Propagate the CI envionment variables through to the docker builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17138](https://redirect.github.com/netty/netty/pull/17138)
> * Codec-compression: Add decompressor API by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16745](https://redirect.github.com/netty/netty/pull/16745)
> * Fix silent failures and optimize error short-circuit in multi-threaded tests by [`@​rajan-github`](https://github.com/rajan-github) in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * Codec-compression: Add Bzip2Decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17145](https://redirect.github.com/netty/netty/pull/17145)
> * Fix buddy cache evicting chunks with live buffers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17154](https://redirect.github.com/netty/netty/pull/17154)
> * Codec-compression: Add Snappy frame decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17153](https://redirect.github.com/netty/netty/pull/17153)
> * Codec-compression: Add zlib decompressors by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17155](https://redirect.github.com/netty/netty/pull/17155)
> * Codec-compression: Add Zstd decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17152](https://redirect.github.com/netty/netty/pull/17152)
> * Codec-compression: Add LZF decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17147](https://redirect.github.com/netty/netty/pull/17147)
> * Codec-compression: Add BrotliDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17146](https://redirect.github.com/netty/netty/pull/17146)
> * Codec-compression: Add Lz4FrameDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17148](https://redirect.github.com/netty/netty/pull/17148)
> * `HttpObjectEncoder` / `DefaultHttp2FrameWriter`: fix buffer leak when a `Throwable` is thrown during header encoding by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17089](https://redirect.github.com/netty/netty/pull/17089)
> * Fix direct memory OOM on low-core containers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17166](https://redirect.github.com/netty/netty/pull/17166)
> * IoUring: Fix the recvmmsg emulation by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17187](https://redirect.github.com/netty/netty/pull/17187)
> * Avoid classloader leak via GlobalEventExecutor terminationFuture failure by [`@​seonwooj0810`](https://github.com/seonwooj0810) in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * BrotliEncoder: Prevent duplicate close scheduling by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17175](https://redirect.github.com/netty/netty/pull/17175)
> * Fix JdkZlibDecompressor losing the tail of highly compressible streams by [`@​renechoi`](https://github.com/renechoi) in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)
> * Update compress-lzf to 1.2.1 by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17194](https://redirect.github.com/netty/netty/pull/17194)
> * Do not write WebSocket handshake response to the tail of the pipeline by [`@​el-psy-kongroo-d`](https://github.com/el-psy-kongroo-d) in [netty/netty#17192](https://redirect.github.com/netty/netty/pull/17192)
> * `HttpServerCodec`: do not consume the method queue for 1xx interim responses by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17182](https://redirect.github.com/netty/netty/pull/17182)
> * Weakly reference engines from the OpenSSL engine map by [`@​bryce-anderson`](https://github.com/bryce-anderson) in [netty/netty#17199](https://redirect.github.com/netty/netty/pull/17199)
> * OpenSSL: Allow to obtain used named group via OpenSslSession by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17058](https://redirect.github.com/netty/netty/pull/17058)
> * Add `.editorconfig` to enforce consistent coding style by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17052](https://redirect.github.com/netty/netty/pull/17052)
> * Update surefire plugin to latest version by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17210](https://redirect.github.com/netty/netty/pull/17210)
> * Merge changes from forks by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17213](https://redirect.github.com/netty/netty/pull/17213)
>
> New Contributors
> ----------------
>
> * [`@​vpelikh`](https://github.com/vpelikh) made their first contribution in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * [`@​ChunMengLu`](https://github.com/ChunMengLu) made their first contribution in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * [`@​rajan-github`](https://github.com/rajan-github) made their first contribution in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * [`@​seonwooj0810`](https://github.com/seonwooj0810) made their first contribution in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * [`@​renechoi`](https://github.com/renechoi) made their first contribution in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)

... (truncated)


Commits

* [`e0789d3`](netty/netty@e0789d3) [maven-release-plugin] prepare release netty-4.2.17.Final
* [`1b5abc6`](netty/netty@1b5abc6) Merge changes from forks ([#17213](https://redirect.github.com/netty/netty/issues/17213))
* [`36fbf57`](netty/netty@36fbf57) Update surefire plugin to latest version ([#17210](https://redirect.github.com/netty/netty/issues/17210))
* [`a96226c`](netty/netty@a96226c) Add `.editorconfig` to enforce consistent coding style ([#17052](https://redirect.github.com/netty/netty/issues/17052))
* [`14a4e6a`](netty/netty@14a4e6a) OpenSSL: Allow to obtain used named group via OpenSslSession ([#17058](https://redirect.github.com/netty/netty/issues/17058))
* [`26255b1`](netty/netty@26255b1) Weakly reference engines from the OpenSSL engine map ([#17199](https://redirect.github.com/netty/netty/issues/17199))
* [`ae41417`](netty/netty@ae41417) `HttpServerCodec`: do not consume the method queue for 1xx interim responses ...
* [`41f1db5`](netty/netty@41f1db5) Do not write WebSocket handshake response to the tail of the pipeline ([#17192](https://redirect.github.com/netty/netty/issues/17192))
* [`035d76e`](netty/netty@035d76e) Update compress-lzf to 1.2.1 ([#17194](https://redirect.github.com/netty/netty/issues/17194))
* [`7681aff`](netty/netty@7681aff) Fix JdkZlibDecompressor losing the tail of highly compressible streams ([#17191](https://redirect.github.com/netty/netty/issues/17191))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.16.Final...netty-4.2.17.Final)
  
Updates `io.netty:netty-handler` from 4.2.16.Final to 4.2.17.Final
Release notes

*Sourced from [io.netty:netty-handler's releases](https://github.com/netty/netty/releases).*

> netty-4.2.17.Final
> ------------------
>
> What's Changed
> --------------
>
> * AsciiString.cached(String) should sanitize the provided String ([#13749](https://redirect.github.com/netty/netty/issues/13749)) by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * Fix deploy workflow by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17071](https://redirect.github.com/netty/netty/pull/17071)
> * Fix AsciiString.cached(String) performance regression by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17074](https://redirect.github.com/netty/netty/pull/17074)
> * SslHandler: Fix possible buffer leak when an OOME is thrown during allocation by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17059](https://redirect.github.com/netty/netty/pull/17059)
> * Avoid leak presence detector in leak profile by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17073](https://redirect.github.com/netty/netty/pull/17073)
> * Add HttpContentCompressor constructor with ability to specify desired maxPipelineDepth by [`@​reta`](https://github.com/reta) in [netty/netty#17068](https://redirect.github.com/netty/netty/pull/17068)
> * IoUring: preserve readPending when rescheduling cancelled reads by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17087](https://redirect.github.com/netty/netty/pull/17087)
> * Reject negative maxOrder in PooledByteBufAllocator by [`@​coderbruis`](https://github.com/coderbruis) in [netty/netty#17093](https://redirect.github.com/netty/netty/pull/17093)
> * Fix AdaptiveByteBuf.\_setLongLE calling checked setLongLE by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17098](https://redirect.github.com/netty/netty/pull/17098)
> * Snappy: Guard decoder against invalid chunk lengths by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17099](https://redirect.github.com/netty/netty/pull/17099)
> * Fix OCSP Tests by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17114](https://redirect.github.com/netty/netty/pull/17114)
> * Update to latest netty-tcnative release by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17056](https://redirect.github.com/netty/netty/pull/17056)
> * Use safe decompressor in Lz4FrameDecoder by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17118](https://redirect.github.com/netty/netty/pull/17118)
> * Configure TestLens for the PR builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17129](https://redirect.github.com/netty/netty/pull/17129)
> * IoUring: add SO\_INQ support for Unix domain sockets by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17127](https://redirect.github.com/netty/netty/pull/17127)
> * fix(mqtt): drop UNSUBACK reason codes for MQTT 3.x encoding by [`@​ChunMengLu`](https://github.com/ChunMengLu) in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * Propagate the CI envionment variables through to the docker builds by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17138](https://redirect.github.com/netty/netty/pull/17138)
> * Codec-compression: Add decompressor API by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#16745](https://redirect.github.com/netty/netty/pull/16745)
> * Fix silent failures and optimize error short-circuit in multi-threaded tests by [`@​rajan-github`](https://github.com/rajan-github) in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * Codec-compression: Add Bzip2Decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17145](https://redirect.github.com/netty/netty/pull/17145)
> * Fix buddy cache evicting chunks with live buffers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17154](https://redirect.github.com/netty/netty/pull/17154)
> * Codec-compression: Add Snappy frame decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17153](https://redirect.github.com/netty/netty/pull/17153)
> * Codec-compression: Add zlib decompressors by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17155](https://redirect.github.com/netty/netty/pull/17155)
> * Codec-compression: Add Zstd decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17152](https://redirect.github.com/netty/netty/pull/17152)
> * Codec-compression: Add LZF decompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17147](https://redirect.github.com/netty/netty/pull/17147)
> * Codec-compression: Add BrotliDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17146](https://redirect.github.com/netty/netty/pull/17146)
> * Codec-compression: Add Lz4FrameDecompressor by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17148](https://redirect.github.com/netty/netty/pull/17148)
> * `HttpObjectEncoder` / `DefaultHttp2FrameWriter`: fix buffer leak when a `Throwable` is thrown during header encoding by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17089](https://redirect.github.com/netty/netty/pull/17089)
> * Fix direct memory OOM on low-core containers by [`@​franz1981`](https://github.com/franz1981) in [netty/netty#17166](https://redirect.github.com/netty/netty/pull/17166)
> * IoUring: Fix the recvmmsg emulation by [`@​dreamlike-ocean`](https://github.com/dreamlike-ocean) in [netty/netty#17187](https://redirect.github.com/netty/netty/pull/17187)
> * Avoid classloader leak via GlobalEventExecutor terminationFuture failure by [`@​seonwooj0810`](https://github.com/seonwooj0810) in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * BrotliEncoder: Prevent duplicate close scheduling by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17175](https://redirect.github.com/netty/netty/pull/17175)
> * Fix JdkZlibDecompressor losing the tail of highly compressible streams by [`@​renechoi`](https://github.com/renechoi) in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)
> * Update compress-lzf to 1.2.1 by [`@​yawkat`](https://github.com/yawkat) in [netty/netty#17194](https://redirect.github.com/netty/netty/pull/17194)
> * Do not write WebSocket handshake response to the tail of the pipeline by [`@​el-psy-kongroo-d`](https://github.com/el-psy-kongroo-d) in [netty/netty#17192](https://redirect.github.com/netty/netty/pull/17192)
> * `HttpServerCodec`: do not consume the method queue for 1xx interim responses by [`@​HwangRock`](https://github.com/HwangRock) in [netty/netty#17182](https://redirect.github.com/netty/netty/pull/17182)
> * Weakly reference engines from the OpenSSL engine map by [`@​bryce-anderson`](https://github.com/bryce-anderson) in [netty/netty#17199](https://redirect.github.com/netty/netty/pull/17199)
> * OpenSSL: Allow to obtain used named group via OpenSslSession by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17058](https://redirect.github.com/netty/netty/pull/17058)
> * Add `.editorconfig` to enforce consistent coding style by [`@​vpelikh`](https://github.com/vpelikh) in [netty/netty#17052](https://redirect.github.com/netty/netty/pull/17052)
> * Update surefire plugin to latest version by [`@​normanmaurer`](https://github.com/normanmaurer) in [netty/netty#17210](https://redirect.github.com/netty/netty/pull/17210)
> * Merge changes from forks by [`@​chrisvest`](https://github.com/chrisvest) in [netty/netty#17213](https://redirect.github.com/netty/netty/pull/17213)
>
> New Contributors
> ----------------
>
> * [`@​vpelikh`](https://github.com/vpelikh) made their first contribution in [netty/netty#17007](https://redirect.github.com/netty/netty/pull/17007)
> * [`@​ChunMengLu`](https://github.com/ChunMengLu) made their first contribution in [netty/netty#17117](https://redirect.github.com/netty/netty/pull/17117)
> * [`@​rajan-github`](https://github.com/rajan-github) made their first contribution in [netty/netty#17106](https://redirect.github.com/netty/netty/pull/17106)
> * [`@​seonwooj0810`](https://github.com/seonwooj0810) made their first contribution in [netty/netty#17140](https://redirect.github.com/netty/netty/pull/17140)
> * [`@​renechoi`](https://github.com/renechoi) made their first contribution in [netty/netty#17191](https://redirect.github.com/netty/netty/pull/17191)

... (truncated)


Commits

* [`e0789d3`](netty/netty@e0789d3) [maven-release-plugin] prepare release netty-4.2.17.Final
* [`1b5abc6`](netty/netty@1b5abc6) Merge changes from forks ([#17213](https://redirect.github.com/netty/netty/issues/17213))
* [`36fbf57`](netty/netty@36fbf57) Update surefire plugin to latest version ([#17210](https://redirect.github.com/netty/netty/issues/17210))
* [`a96226c`](netty/netty@a96226c) Add `.editorconfig` to enforce consistent coding style ([#17052](https://redirect.github.com/netty/netty/issues/17052))
* [`14a4e6a`](netty/netty@14a4e6a) OpenSSL: Allow to obtain used named group via OpenSslSession ([#17058](https://redirect.github.com/netty/netty/issues/17058))
* [`26255b1`](netty/netty@26255b1) Weakly reference engines from the OpenSSL engine map ([#17199](https://redirect.github.com/netty/netty/issues/17199))
* [`ae41417`](netty/netty@ae41417) `HttpServerCodec`: do not consume the method queue for 1xx interim responses ...
* [`41f1db5`](netty/netty@41f1db5) Do not write WebSocket handshake response to the tail of the pipeline ([#17192](https://redirect.github.com/netty/netty/issues/17192))
* [`035d76e`](netty/netty@035d76e) Update compress-lzf to 1.2.1 ([#17194](https://redirect.github.com/netty/netty/issues/17194))
* [`7681aff`](netty/netty@7681aff) Fix JdkZlibDecompressor losing the tail of highly compressible streams ([#17191](https://redirect.github.com/netty/netty/issues/17191))
* Additional commits viewable in [compare view](netty/netty@netty-4.2.16.Final...netty-4.2.17.Final)
  
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-cherry-pick-4.1 This PR should be cherry-picked to 4.1 once merged. needs-cherry-pick-5.0 This PR should be cherry-picked to 5.0 once merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

WebSocketServerHandshaker writes response at tail of pipeline

3 participants


Back | FazBrowse Home | New Git URL