Hey, what's the current status of the various upgr...
# arrow
c
Hey, what's the current status of the various upgrades announced by Arrow? β€’ Renaming of
EffectScope
to
Raise
β†’ is it already in a stable release, or only in alphas? β€’ Arrow 2.0 β†’ I assume it's waiting on K2 and context receivers? Maybe it would be a nice idea to have some kind of roadmap on the Arrow website.
s
Hey @CLOVIS, We have the 1.2.0-RC planned for Friday, and this will have
Raise
stably released. We're releasing
RC
first because we want to gather feedback on new
@Deprecated
before actually rolling out
1.2.0
. This way we can consider removing
@Deprecated
before landing finally`1.2.0` but you can consider
RC
completely stable. When Arrow 2.0 will land is not entirely sure, we're waiting to see what will be announced at KotlinConf πŸ˜… If K2 introduces binary compatible breaking changes, we will put it off until then but I doubt we will wait until context receivers. That seems to be too far in the future still 😞 You can however consider 1.2.0 as Arrow 2.0 + deprecated code. So the change of actually releasing 2.0 will be small, and only a binary breaking change (removing
@Deprecated
code) and thus decreasing the binary size.
c
Nice, I'll jump on 1.2.0-RC, then. My question is mostly because I'm writing a library that uses Arrow heavily, and I want to plan when that goes 2.0. I guess I'll do 2.0 with Arrow 1.2.0 stable, then 3.0 whenever Arrow 2.0 arrives.
s
If you use Arrow as
implementation
then would it cause an issue on the classpath? πŸ€” I think only if you'd rely on
@Deprecated
code. So I don't think even bumping to 3.0 would be necessary.
c
Ahah I use it as
api
πŸ™‚
I mentioned it previously, but I have a multiplatform caching library based on StateFlow + Arrow
s
Did you share a link to the repo yet? πŸ‘€ We'd be happy to put it on the new website, which is also being released next week. I am now wondering, if you don't rely on
@Deprecated
it should be an issue πŸ€” I don't think there is any binary breaking changes in any of the non-deprecated code. So that code should continue to work correctly on the JVM across versions. I am not very familiar with klib binaries though, but I assume it works similar.
c
Here you go, it's the
cache
module: https://gitlab.com/opensavvy/pedestal I'm currently preparing Pedestal 2.0 which will rework error management, I'm not too happy with my current approach, as well as extracting some things in their own modules (for example,
progress
will be a micro-library to report loading information from a coroutine to its parent)
πŸ”₯ 1
s
Feel free to DM me if you want me to check out any PRs πŸ˜‰ I'm going to list it on the Arrow libraries page on the new website πŸ˜‰
c
I also have plans for a small library to do form validation with Arrow for Compose πŸ˜‡
I see you already joined #decouple, I will announce these kinds of projects there as I get to work on them πŸ™‚