dnowak
06/10/2020, 12:50 PMTry
?
I do not think that its existence promotes eager execution of effects. This is how'Try<out A>' is deprecated. Try will be deleted soon as it promotes eager execution of effects, so it's better if you work with Either's suspend constructors or an effect handler like IO
Try
works and simetimes it is what you want.
I tried to replace it with Either.catch
but then I have to run it with runBlocking
and it looks strange.raulraja
06/10/2020, 2:42 PMraulraja
06/10/2020, 2:43 PMeither
eliminate the need to ever map or flatMap and Either so it’s one operator vs 15 to learn for a beginnerdnowak
06/10/2020, 3:00 PMraulraja
06/10/2020, 7:51 PMraulraja
06/10/2020, 7:53 PMstojan
06/22/2020, 7:30 PMCallK
from the retrofit integrations? With Retrofit's native suspend
support it's not needed anymore. Creates a bit of confusion: https://github.com/LordRaydenMK/Android-Fx-Examples/issues/8tavish pegram
07/18/2020, 6:03 PMpablisco
07/19/2020, 12:04 PMpablisco
07/19/2020, 5:55 PMcallbackFlow
for Streams
? 🙂tavish pegram
07/21/2020, 1:55 PMmapN
https://github.com/arrow-kt/arrow-core/pull/189 Would appreciate any feedback!pablisco
07/23/2020, 9:54 AMarrow-android
where we can put all android related libs? and slowly move things like arrow-fx-android
and similar over there.
It will help with discoverability as well as remove Android build dependencies from other repositories (which can cause minor build time increases)Jannis
07/25/2020, 9:16 AMinstallAllWithLocalDeps
. This is pretty nice, but for me it fails on the arrow-android
module because of a missing sdk. Can we change this method to skip failure rather than full on crash? Building anything with arrow-android
as a dep should still fail, but at least one can build anything else without problems. This will mean buildAllWithLocalDeps
will still fail, but buidWithLocalDeps
shouldn't, which I think is preferable.pablisco
07/29/2020, 9:07 AMpablisco
07/29/2020, 9:38 AMpablisco
07/31/2020, 7:34 PMarrow-extras
and create a module called arrow-smash
2️⃣ Create a sole repository called arrow-smash
with Can
, Smash
and Wedge
from this hackage
3️⃣ Create a module inside arrow-core
called arrow-core-extras
(to be moved along to arrow-datatypes
when we untangle arrow-core
4️⃣ Something completely different (please comment)
Thank you allJuan Antonio Breña Moral
08/17/2020, 11:12 AMJannis
08/29/2020, 12:11 PMarrow-benchmarks-fx
module in arrow-fx
seems like a good start but it does not have fx-coroutines
benchmarks as far as I can tell (do we even have some and if so where?) so I am not sure if that package is still supposed to be used... Also does it make sense to automate running benchmarks and show results in prs if any relevant code changes? (Could be a manual task as well but just having a way to compare performance for a pr and visualize the changes if we have benchmarks set up would be nice). Any ideas? I'd love to do some groundwork here so that adding benchmarks throughout other arrow repos becomes a more straightforward process...tavish pegram
09/04/2020, 2:23 AMtavish pegram
09/07/2020, 5:26 PMparMapN
up to arity 9 but I’m running into some issues
1. ParTupledN
has a huge amount of lag for me in intellij once I kind of scaffolded out the new functions. To the point it’s basically impossible to use intellij to edit that particular file. I haven’t been able to find a solution for that on my own (looks like the the kotlin plugins type checker freaks out when code analysis runs, so anytime anything is edited on the page). I don’t know if its just me, but if it isn’t, is this code new enough that I can split it into multiple files (it’s getting a bit big anyway). I would hope that might help, but its just a guess.
2. Many of the arrow coroutine tests hang indefinitely for me when running the tests locally (though they appear to work in the builds on the PR, such as https://github.com/arrow-kt/arrow-fx/actions/runs/243281626 ) Is this another me problem or is there something weird happening?
3. I’m adding some tests for parMapN for arity 2 and 3 (since it already exists), but it looks like arity 3 was failing one of the tests "parMapN 3 cancels losers if a failure occurs in one of the tasks"
. When messing with the test I found that putting the winner in the third position always caused a hang, so I updated parMapN 3
to use parMapN 2
instead of the existing implementation of parMapN(ctx, fa, fb, fc, f)
and it appears to have fixed it. Is that correct or is there a reason to definitely be using the stand alone implementation of N = 3 instead of composing with N = 2?
Any suggestions appreciated! Thanks!tavish pegram
09/07/2020, 7:19 PMparMapN
being used in parJoin
but I didn’t dig through it exhaustively. https://github.com/arrow-kt/arrow-fx/pull/279/checks?check_run_id=1082708601tavish pegram
09/11/2020, 4:30 PMSatyam Agarwal
09/13/2020, 8:49 PMinline fun <reified A, reified B> Either<Throwable, A>.product(f: () -> Either<Throwable, B>): Either<Throwable, Tuple2<A, B>> {
return this.flatMap { a -> f().map { b -> a toT b } }
}
stojan
09/16/2020, 7:14 AMpablisco
09/18/2020, 6:43 PMstojan
09/19/2020, 9:33 AMOption
there.
At first I made arrow-option
depend on arrow-core-data
(Option
need Show
, Predicate
, Either
and a few other utilities from core-data).
However arrow-core-data also needs Option
. MonadLogic
, Monoidal
, Semigroup
, Travers
etc... use it internally or in a public API.
Since Option
was marked for deprecation, I assume removing the Option
usages from arrow-core-data is the way to go, right?tavish pegram
09/21/2020, 4:25 PMstojan
09/26/2020, 10:47 AMpablisco
09/28/2020, 5:15 PMpablisco
09/29/2020, 1:45 PMkotlin.time
instead? I’m asking as it requires opt-in 🙂pablisco
09/29/2020, 1:45 PMkotlin.time
instead? I’m asking as it requires opt-in 🙂simon.vergauwen
09/29/2020, 2:53 PMkotlin.time
to stop being experimental, but it seems that's taking much longer than we expected 😕
What is Jetbrains stance on using kotlin.time
? Are they suggesting to move ahead with it and just annotate it? They seem to have non kotlin.time
available APIs in KotlinX next to their kotlin.time
APIs.pablisco
09/29/2020, 4:24 PMsimon.vergauwen
09/30/2020, 7:27 AM