Netty project - an event-driven asynchronous network application framework
Java C Shell Groovy Protocol Buffer C++
Latest commit 4accd30 Aug 24, 2016 @buchgr buchgr committed with normanmaurer Fix write watermarks comparison to use less than and greater than.
Motivation:

The API documentation in ChannelConfig states that a a channel is writable,
if the number of pending bytes is below the low watermark and a
channel is not writable, if the number of pending bytes exceeds the high
watermark.

Therefore, we should use < operators instead of <= as well as > instead of >=.

Using <= and >= is also problematic, if the low watermark is equal to the high watermark,
as then a channel could be both writable and unwritable with the same number of pending
bytes (depending on whether remove() or addMessage() is called first).

The use of <= and >= was introduced in PR #3036, but
I don't understand why, as there doesn't seem to have been any discussion around that.

Modifications:

Use < and > operators instead of <= and >=.

Result:

High and low watermarks are treated as stated in the API docs.
Failed to load latest commit information.
all [maven-release-plugin] prepare for next development iteration Jul 27, 2016
buffer [#5645] Allow to create ByteBuf from existing memory address. Aug 16, 2016
codec-dns Removed custom split method as it is not effective anymore. Aug 1, 2016
codec-haproxy Removed custom split method as it is not effective anymore. Aug 1, 2016
codec-http Revert "CorsHandler to respect http connection (keep-alive) header." Aug 24, 2016
codec-http2 Ensure we not log missleading errors if the promise was already faile… Aug 18, 2016
codec-memcache [maven-release-plugin] prepare for next development iteration Jul 27, 2016
codec-mqtt [maven-release-plugin] prepare for next development iteration Jul 27, 2016
codec-redis [maven-release-plugin] prepare for next development iteration Jul 27, 2016
codec-smtp [maven-release-plugin] prepare for next development iteration Jul 27, 2016
codec-socks [maven-release-plugin] prepare for next development iteration Jul 27, 2016
codec-stomp Removed custom split method as it is not effective anymore. Aug 1, 2016
codec-xml [maven-release-plugin] prepare for next development iteration Jul 27, 2016
codec small performance fixes : unnecessary unboxing operations removed Aug 1, 2016
common [#5720] Static initializers can cause deadlock Aug 23, 2016
example Support Unicode filenames and spaces in directory listing Aug 16, 2016
handler-proxy Removed custom split method as it is not effective anymore. Aug 1, 2016
handler Ensure SslHandler.close(...) will not throw exception if flush of pen… Aug 24, 2016
license added support for Protobuf codec nano runtime Jan 19, 2016
microbench HTTP/2 Simplify Headers Decode Bounds Checking Aug 13, 2016
resolver-dns Disable IPv6 address lookups when -Djava.net.preferIPv4Stack=true Aug 10, 2016
resolver [maven-release-plugin] prepare for next development iteration Jul 27, 2016
tarball [maven-release-plugin] prepare for next development iteration Jul 27, 2016
testsuite-osgi [maven-release-plugin] prepare for next development iteration Jul 27, 2016
testsuite [#5639] Ensure fireChannelActive() is also called if Channel is close… Aug 24, 2016
transport-native-epoll [#5639] Ensure fireChannelActive() is also called if Channel is close… Aug 24, 2016
transport-rxtx removed unnecessary static holders Aug 3, 2016
transport-sctp [#4204] Broken support of SCTP_INIT_MAXSTREAMS in *SctpServerChannel Aug 5, 2016
transport-udt removed unnecessary static holders Aug 3, 2016
transport Fix write watermarks comparison to use less than and greater than. Aug 24, 2016
.fbprefs Updated Find Bugs configuration Mar 4, 2009
.gitignore Use shaded dependency on JCTools instead of copy and paste Jun 10, 2016
.travis.yml Travis CI branch whitelisting Mar 11, 2013
CONTRIBUTING.md Move the pull request guide to the developer guide Mar 12, 2014
LICENSE.txt Relicensed to Apache License v2 Aug 28, 2009
NOTICE.txt added support for Protobuf codec nano runtime Jan 19, 2016
README.md Updating Branches to look section to match the current branching stru… Mar 10, 2016
pom.xml Use NIO methods when using Java7+ in the NIO transport Aug 24, 2016
run-example.sh Add an example client for codec-redis Apr 23, 2016

README.md

Netty Project

Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.

Links

How to build

For the detailed information about building and developing Netty, please visit the developer guide. This page only gives very basic information.

You require the following to build Netty:

Note that this is build-time requirement. JDK 5 (for 3.x) or 6 (for 4.0+) is enough to run your Netty-based application.

Branches to look

Development of all versions takes place in each branch whose name is identical to <majorVersion>.<minorVersion>. For example, the development of 3.9 and 4.0 resides in the branch '3.9' and the branch '4.0' respectively.