MUSCLE (Multi User Server Client Linking Environment) is an N-way messaging server and networking API. It includes client-side networking APIs for various languages, including C, C++, C#, Delphi, Java, and Python. MUSCLE lets programs communicate over a network via streams of serialized Message objects. The included server program ("muscled") lets its clients message each other and store information in its server-side hierarchical database. The database supports flexible queries via hierarchical wildcarding, and "live" updates via a subscription mechanism.


This release adds a SocketMultiplexer class which hides the details of select() and poll() behind a simpler and more consistent API. It also fixes a bug in Message::FindFlat() which could cause it to return incorrect results when called on locally-created Messages containing FlatCountableRef-referenced objects.