Skip navigation

Netty 4.1.22.Final released

I'm happy to announce the latest release of the 4.1 series.

These releases contains bug-fixes, performance enhancements and feature so we encourage everyone to upgrade.

The most important changes are:

  • To detect Android, check the VM property rather than the classpath (#7679)
  • Propagate full Unsafe unavailability reason in PlatformDependent (#7684)
  • Use long for http2 ping payload (#7690)
  • Introduce an alternative IdentityCipherSuiteFilter that defaults to supportedCiphers (#7691)
  • Reduce the default number of objects retained by the Recycler per thread (#7701)
  • Bump Conscrypt version to 1.0.0 (#7703)
  • ByteBufUtil to not pool direct memory by default (#7704)
  • NioDatagramChannel invalid usage of internalNioBuffer (#7705)
  • Http2MultiplexCodec now propagates SETTINGS and GOAWAY frames in pipeline (#7711)
  • Correctly handle the case when converting of value fails and return null or default value (#7715)
  • DefaultHeaders / CharSequenceValueConverter should treat boolean consistently (#7720)
  • Get memory address from Unsafe for OpenSSL (#7725)
  • SSL connection not closed properly after handshake failure (#7727)
  • Epoll flush/writabilityChange deadlock (#7730)
  • Fix Snappy decoding of large 2-byte literal lengths and copy offsets (#7731)
  • Ensure we always release the AddressEnvelope when doing DNS queries. (#7734)

For the details and all changes, please browse our issue tracker for 4.1.22.Final.

Important notes


We changed the payload type for ping frames from ByteBuf to long as this simplifies things and the payload is 8 bytes all the time as defined by the RFC.

As always, please let us know if you find any issues. We love feedback!

Thank You

Every idea and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report an unintended omission.