I'm happy to announce the release of Netty 4.0.35.Final after almost 2 months of hard work.

This release contains 90+ changes, including bug-fixes, performance improvements and new features.

The most important changes are:

Add support for TCP_DEFER_ACCEPT and TCP_QUICKACK (#4951)

WebSocketHandshaker.finishHandshake could result in recursive channelRead event (#4533) (#4815)

Enabling SNI, OpenSSL client from netty does not work (#4746) (#4791)

Certificate failing set in OpenSslServerContext on Linux (#4793)

Enable SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER when using OpenSslContext (#4816)

OpenSslContext throws UnsupportedOperationException when Unsafe not available (#4828) (#4843)

Correctly pass ChannelPromise on to the next ChannelOutboundHandler when use CombinedChannelDuplexHandler (#4838)

Fix segfault if UnpooledUnsafeHeapByteBuf.getShort(..) is used and UNALGINED access is not possible. (#4845) (#4841)

Ensure handlerAdded(...) and handlerRemoved(...) is always called from the right thread (#4863)

Ensure read components can be discarded when COMPOSITE_CUMULATOR is used (#4880)

Correctly set the alert type depending of the CertificateException (#4885)

NetUtil can prevent using Netty due to SecurityManager denial (#4936) (#4977)

Guard against re-entrance in PendingWriteQueue (#4969)

Change arena to thread cache mapping algorithm to be closer to ideal (#4983)

Ensure all pending SSL data is written before closing channel during handshake error (#5003)

Add ! to allowed cookie value chars (#4998)

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

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.