cats-effect
cats-effect copied to clipboard
The pure asynchronous runtime for Scala
... and laws/tests :) Slipped a fix in here, but probably deserves its own PR: https://github.com/typelevel/cats-effect/pull/2545/commits/bdc7429e6b333500a07d357b7dbe783f34aeee26#diff-5acd9e5b3bc8897d205aa4590f18c307679d41279ca72a125764900fffe9d568 Discord discussion: https://discord.com/channels/632277896739946517/839263556754472990/910242079341412433 Related: https://github.com/typelevel/cats-effect/pull/1392
Resolves one part of #1715 . @djspiewak I'm gonna tag you because you submitted the issue. Apart from local fixes (typos, wording etc.), let me know what you think about...
The fact that `tracing` is a separate package means that `TracingConstants` needs to be public. We can avoid that problem if we squeeze it into the `cats.effect` package, along with...
This is the result of the following experiment: - start `n` fibers - each fiber has an `id` - the fiber loops, infinitely incrementing an ID-bound value in a `Ref[IO,...
I don't think we have a documentation issue for this one. We should be able to backport anything we write about `TestContext` to CE2 as well.
It could be shown by a [simple test harness](https://scastie.scala-lang.org/bGCMtl8xR6exef5XRzug8Q) that 1. `IO.pure(1).start.map(_.join.flatMap(_.embedNever)) === IO(IO.pure(1))`, but 2. `IO.pure(1).background.map(_.flatMap(_.embedNever)) !== Resource.pure(IO.pure(1))`. I believe that with test `Eq[Resource[F, *]` instance like `Eq.by(_.use(F.pure))` above...
Could be shown with a simple test case (several run may be needed): ```scala import cats.effect.std.Console import cats.effect.{ IO, IOApp } import cats.syntax.all._ import scala.concurrent.duration._ object GuaranteeBroken extends IOApp.Simple {...
We should be able to enumerate all the cases in which errors are discarded and ensure they're appropriately side-channeled (and documented).