hey Guys, first message here :wave: First of all, ...
# arrow
p
hey Guys, first message here 👋 First of all, great work on Arrow, having a good time using it. If I understood correctly Arrow 0.11 will no longer use IO and instead will simply be rely on
suspend
, is that correct ? We are using
grpc-kotlin
and it already converts everything to
suspend
functions and I'm wondering if now is a good time to start migrating the codebase to use 0.10 or should I wait for 0.11 and potentially not even need to use
IO
(if I understood it correctly ofc)
s
should I wait for 0.11
Not sure if I have misunderstood, though v0.11 is the current stable release. I can't speak on behalf of the Arrow crew, though our team has decided to make full use of the suspend functionality in Arrow in v0.11 which so far is working really well. Most of what would've previously been functions returning
EitherT<ForIO, ServiceError, A>
are now simply
suspend fn(): Either<ServiceError, A>
and making heavy use of
either.fx
There was a great doc in the
arrow-fx-coroutines
repo that compared the two previously, though it looks like it has since been repurposed for other content. The previous doc can still be accessed here: https://github.com/arrow-kt/arrow-fx/blob/ad96d2e8348bc56ad20e1014f0e9059622cd259d/arrow-fx-coroutines/README.MD
r
suspend is the future, IO will be deprecated in the next release alongside kind emulation and other redundant APIs to trim down arrow before final stable release
p
thank you both, I'll check that docs and keep in mind that IO will be deprecated 🙇