cats-effect
cats-effect copied to clipboard
The pure asynchronous runtime for Scala
using a bounded queue with `dispatcher.unsafeRunAndForget` doesn't propagate back pressure and the dispatcher list of registrations will still grow unboundedly the dispatcher docs use `unsafeRunAndForget` with an unbounded queue in...
Look I don't even know… ``` java.lang.ArrayIndexOutOfBoundsException: Index -268435455 out of bounds for length 402653184 | => tat cats.effect.ByteStack$.push(ByteStack.scala:59) at cats.effect.IOFiber.runLoop(IOFiber.scala:560) at cats.effect.IOFiber.autoCedeR(IOFiber.scala:1439) at cats.effect.IOFiber.run(IOFiber.scala:119) at cats.effect.unsafe.WorkerThread.run(WorkerThread.scala:743) ``` See `DispatcherSpec`...
I'm not really sure how feasible it is to run Scala on the Loom Early Access JDK builds, but we should start thinking about what `IO` would look like in...
Hi! Thinking about adding a wrapper for system props, similar to what `Env` is for env vars. I came up with ``` trait Prop[F[_]] { def get(name: String): F[Option[String]] def...
We currently rely on [`Runtime#availableProcessors`](https://docs.oracle.com/javase/8/docs/api/java/lang/Runtime.html#availableProcessors--) to size the work-stealing threadpool. The JavaDoc warns that > Applications that are sensitive to the number of available processors should therefore occasionally poll this...
Yay ``` [error] x warn on cpu starvation Warning: error] doesn't contain '[WARNING] Your app's responsiveness' (IOAppSpec.scala:213) ``` This is in GHA. Two consecutive runs, different runners. We probably have...
Scala Native 0.5 will support multithreading 🎉 in fact it has already been implemented in a series of PRs starting from https://github.com/scala-native/scala-native/pull/3114 and there are reports of early success in...
Related to https://www.javadoc.io/doc/co.fs2/fs2-docs_2.13/3.9.3/fs2/interop/flow/index.html - [x] `Publisher[A] => F[A]` - [x] `F[A] => Resource[F, Publisher[A]]` _(safe)_ - [x] `F[A] => Publisher[A]` _(unsafe)_ - [ ] Add them to `IO` / `Dispather`...
Full discussion here: https://discord.com/channels/632277896739946517/839263556754472990/1078054700932419695 The short version is that `race`, in its current form, represents a resource leak. If there's a tie (i.e. `f.cancel *> f.join` does *not* produce `Outcome.Canceled()`),...