Skip navigation

Netty 4.0.44.Final and 4.1.8.Final released

I'm happy to announce the latest bug-fix releases for our 4.0.x and 4.1.x series. These releases contains 30+ changes (including bug-fixes, performance enhancements and features) so we encourage everyone to upgrade. Also starting with today we will try to cut a release at least each 4 weeks for the 4.0 and 4.1 branch. This will hopefully help mimimizing the amount of changes that goes into each release and so make it less risky to upgrade.

To make a long story short: Release early, release often FTW.

The most important changes for 4.0.44.Final and 4.1.8.Final are:

  • Correctly detect which protocols are supported when using OpenSSL (#6290)
  • More precise calculate the maximum record size when using SslProvider.OPENSSL (#6276)
  • Null out references to tmpNioBuf and chunk to allow quicker collecting (#6279)
  • Use less memory during writes when using SslHandler with SslProvider.OPENSSL (#6252)
  • Allow to configure SslHandler to wait for close_notify response before closing the Channel and fix racy flush close_notify timeout scheduling (#6257)
  • Ensure calling ReferenceCountedOpenSslEngine.wrap(...) after closeOutbound() was called will not throw an SSLException (#6262)
  • Memory leak when creating ReferenceCountedSslServerContext instances (#6249)
  • Add SslCloseCompletionEvent that is fired once a close_notify was received (#6242)
  • Ensure SslHandler.sslCloseFuture() is notified in all cases (#6239)
  • Ensure calling ReferenceCountedSslEngine.unwrap(...) / wrap(...) called after it was closed (#6238)
  • Fix possible IOOBE when calling ReferenceCountedSslEngine.unwrap(...) with heap buffers (#6236)

The most important changes for 4.1.8.Final only are:

  • Restore add(Promise) and addAll(Promise...) methods to PromiseCombiner (#6292)
  • Update HTTP/2 HPACK Decoder to check for oversized headers after header processing (#6273)
  • DnsNameResolver.resolve*(...) never notifies the Future when empty hostname is used (#6258)
  • PlatformDependent#getClassLoader fails in restrictive classloader environments (#6251)

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

All changes that are in 4.0.44.Final are also included in 4.1.8.Final. All changes only have milestone 4.1.8.Final do not affect 4.0.44.Final.

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

Important note

These releases fixes various bugs related to when SslProvider.OPENSSL is used. So if you use it please upgrade as soon as possible.

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.