Monix 3.2.2

The release is binary and source compatible with 3.x.x line. It is released for the following Scala and ScalaJS versions:

  • Scala 2.11: ScalaJS 0.6.x
  • Scala 2.12: ScalaJS 0.6.x and 1.0.x
  • Scala 2.13: ScalaJS 0.6.x and 1.0.x

Upgrading #

To use the new version, include this in your build.sbt:

libraryDependencies += "io.monix" %% "monix" % "3.2.2"

Or in case you just want any of the sub-projects:

// Local, Scheduler, Cancelable, CancelableFuture, Atomic, etc
libraryDependencies += "io.monix" %% "monix-execution" % "3.2.2"

// Utilities built for Cats-Effect, e.g. ConcurrentChannel, FutureLift
libraryDependencies += "io.monix" %% "monix-catnap" % "3.2.2"

// Task, Coeval
libraryDependencies += "io.monix" %% "monix-eval" % "3.2.2"

// Observable
libraryDependencies += "io.monix" %% "monix-reactive" % "3.2.2"

// Iterant
libraryDependencies += "io.monix" %% "monix-tail" % "3.2.2"

Changes #

Relevant updates:

  • #1197: Fixes a memory leak in bracket, introduced in 3.2.0
  • #1195: Fixes non-deterministic behavior in Observable.zip of sources different size
  • #1190: Now Observable.groupBy correctly signals error as a failed stream instead of normal completion
  • #1188: Fixes an issue in ForeachAsyncConsumer where it wasn’t properly propagaing errors in some cases
  • #1187: Fixes an issue where Observable.doAfterSubscribe was not executing its finalizer
  • #1186: Observable.interval method now schedules the first tick asynchronously
  • #1184: Huge performance improvement in CharsReader, InputStream and LinesReaderObservable
  • #1154: Observable.fromInputStream and fromCharsReader now respects the chunkSize
  • #1181: Fix MatchError in Iterant.fromReactivePublisher

Thanks #

People who made this release possible:

  • Akosh Farkash (@aakoshh)
  • Alexander (@ppressives)
  • fnqista (@fnqista)
  • Kasper Kondzielski (@ghostbuster91)
  • Pau Alarcón (@paualarco)
  • Piotr Gawryś (@Avasil)
  • Vasily Kirichenko (@vasily-kirichenko)
  • Viktor Lövgren (@vlovgr)