Skip to content

v7.10 release

Compare
Choose a tag to compare
@jfriesne jfriesne released this 04 Dec 02:23
· 1169 commits to master since this release

7.10 Released 12/3/2018

  • Under C++11 and later, the status_t type is now a
    class rather than a simple typedef for int32. It
    is used pretty much the same way as before, except
    now it provides better compile-time error-checking.
  • Under C++11 and later, the status_t type (and its
    values B_OK, B_ERROR, and B_NO_ERROR) are now part
    of the muscle namespace.
  • Added a WithoutNumericSuffix() convenience method to
    the String class.
  • The CMakeLists.txt file has been modified so that it
    is now usable by CMake 2.8.x and higher.
  • Functions in the C APIs have been modified to return
    type c_status_t (CB_ERROR or CB_NO_ERROR) rather than
    status_t, to avoid ambiguities with the new C++11
    version of status_t in mixed C/C++11 programs.
  • BitChord::GetNumBitsInBitChord() and friends are now
    declared as static/constexpr rather than const methods,
    so that they can be called at compile-time now.
  • Replaced the MUSCLE_ENABLE_KEEPALIVE_API compile-flag
    with a new MUSCLE_DISABLE_KEEPALIVE_API flag (i.e.
    so that the socket-keepalive API is now enabled by
    default if neither flag is specified)
  • DOxygen documentation is now generated with C++11
    enabled (before it was documenting the pre-C++11 API)
  • In the BitChord class, GetNumBytesInBitChord() and
    GetNumWordsInBitChord() were mis-named. Fixed.
  • Fixed a bug that affected MUSCLE subscriptions that
    included a QueryFilter: If a DataNode matched a
    subscription's node-path string, but its Message-payload
    didn't match the QueryFilter's criteria (at the time the
    subscription was created), then future modifications to the
    DataNode would not cause the subscriber to be notified
    even if the updated Message-payload did change to match
    the QueryFilter's criteria.
  • Modified StorageReflectSession::DoSubscribeRefCallback() to
    take its argument via an object-pointer rather than
    smuggling an integer delta-value to it inside a (void *).