ringpop-go v0.7.0 Release Notes

Release Date: 2016-10-20 // over 7 years ago
    • ๐Ÿ”‹ Feature: Added label support to ringpop for nodes to annotate themselves with more information #167 #171 #172
    • ๐Ÿ”จ Maintainability: Refactored internal representation of member state for more flexible reincarnation and state change of a member #159 #161
    • ๐Ÿ›  Fix: Make sure ringpop is listening for requests before bootstrapping #176 #146
    • ๐Ÿ›  Fix: Added support for imports in .thrift files in generated code for thrift forwarding #162
    • ๐Ÿ›  Fix: Mark generated code as being generated for suppression in diffs #169
    • ๐Ÿ›  Fix: Be more specific in the functionality required from TChannel #166
    • โœ… Tests: Run all tests on go 1.7 #179
    • โœ… Tests: More stable unit tests, integration tests and race detector tests. Races are now mandatory tests on ci #164 #178 #181 #182
    • โœ… Tests: All examples are tested on every pull request #157 #170

    ๐Ÿš€ Release notes

    ๐Ÿ”„ Change to ringpop interface

    The ringpop interface changed two existing functions GetReachableMembers and CountReachableMembers that now take a variadic argument of type swim.MemberPredicate instead of no arguments. This does not change the usage of these functions, but does change the type of the function. This might cause custom declared interfaces to not match ringpop anymore. The solution is to ๐Ÿ”„ change these functions in the interface used to match the current signature.

    Previously the signature was:

      GetReachableMembers() ([]string, error)
      CountReachableMembers() (int, error)
    

    The current signature is:

      GetReachableMembers(predicates ...swim.MemberPredicate) ([]string, error)
      CountReachableMembers(predicates ...swim.MemberPredicate) (int, error)
    

    ๐Ÿ—„ Deprecated RegisterListener

    ๐Ÿ”จ Due to a refactor in how event emitting is done the RegisterListener method is ๐Ÿ—„ deprecated. Even though it still works and behaves as previously it will start โš  logging warnings. Since this code is not on the hot path only little log volume is expected. Instead of this function it is now advised to use AddListener. This function also returns if the listener has been added or not.