Monix v3.0.0-M3 Release Notes
Release Date: 2017-01-07 // over 7 years ago-
๐ Final milestone release before the RC and the final and stable
3.0.0
.Highlights
Local and TaskLocal
๐ Special thanks to Leandro Bolivar for implementing propagation of "local vars" (aka
Local
andTaskLocal
, the equivalents ofThreadLocal
, but for usage withFuture
andTask
). The inspiration was com.twitter.util.Local and scala.util.DynamicVariable.โฑ Right now the Monix
Task
is the only (known) IO data type for Scala that can work with such locals and because of the providedTracingScheduler
, you can work with Scala'sFuture
too.๐ See:
Pure cancellation, .start, .uncanceled, race
๐ This release also lands a long awaited feature for
Task
โ pure cancellation, akaTask.cancel
. It's building on top of the currentTask
implementation, however it changes the API โ e.g. in order to keepTask
pure, thechooseFirstOf
operator is now gone, being replaced with an equivalentracePair
that operates with tasks and pure functions.๐ See:
๐ Performance optimizations
๐ One other highlight of the release are the performance improvements for
Task
andCoeval
, an on-going process to make sure that Monix'sTask
remains the best implementation in Scala's ecosystem.๐ See:
Typelevel Cats
We now depend on Cats
1.0.1
and cats-effect0.8
.๐ This unblocks the 3.0.0 release, because Cats 1.x has stronger backwards compatibility guarantees.
Pull requests
- โก๏ธ PR #464: updates dependencies, Scala to
2.12.4
and2.11.12
, JCTools to2.1.1
, Minitest to2.0.0
, Scala.js to0.6.21
- โฑ PR #462: Fix for
timeoutTo
to cancel source task directly after timeout - PR #444: Add
localContextPropagation
toTask.Options
, implement tracingLocal
vars - โ PR 470: increase test coverage
- PR #473: Fix issue where
fromAsyncStateAction
is not safe for user code - โก๏ธ PR #485 and PR #489: Updates Cats to
1.0.1
and cats-effect to0.8
- PR #474:
Task
/Coeval
Run-loop Optimizations, First Batch - PR #492: Second batch of optimizations
- PR #494:
Task.cancel
as a pure action, along with.start
,.race
and.uncancelable
- โก๏ธ PR #464: updates dependencies, Scala to