Skip to content

RxBroadcast 2.0

Latest
Compare
Choose a tag to compare
@whymarrh whymarrh released this 07 Nov 23:24
· 113 commits to master since this release

v2.0.0 (2017-11-06)

This 2.0 release represents a good few months of work and debugging. This release includes breaking changes and a lot of bug fixes. The 1.x branch may as well not exist (though it will be updated as needed).

Breaking changes

  • The package has been renamed from rx.broadcast to rxbroadcast (ced55f2)

  • BasicOrder has been renamed to NoOrder (79e8fc1)

    This new name better (more obviously) reflects the guarantees it provides on broadcast ordering: none at all. The old name was somewhat esoteric and came from a single text on distributed systems.

  • Errors in the broadcast stream are now propagated to subscribers

    Subscribers to broadcasts (i.e. broadcast.valuesOfType(Foo.class).subscribe(s)) will now need to retry or resubscribe if or when an error terminates the stream.

Improvements

  • More @NotNull annotations have been added
  • The library is now tested and works on Java 9
  • All no-argument constructors intended strictly for serialization have been deprecated

Bug fixes

Too many to list, honestly. In developing 2.0, a handful of static analyzers have been included in the build process (Infer, FindBugs, Error Prone, and PMD) and there were a lot of bugs discovered by them.

Development Improvements

Resources

As always:

  • The rxbroadcast.webstite

  • The Javadoc exists online at RxBroadcast API Javadoc

    There will be an update with more complete Javadoc soon. The Javadoc in this version is lacking if not useless and that needs to be fixed.