Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is arrow meta stable enough for adventurous production use? #782

Open
LifeIsStrange opened this issue Nov 2, 2020 · 5 comments
Open

Is arrow meta stable enough for adventurous production use? #782

LifeIsStrange opened this issue Nov 2, 2020 · 5 comments
Labels
question Further information is requested

Comments

@LifeIsStrange
Copy link

What I mean is:
I'm OK with frequent breaking changes but I wouldn't like to use union types and then have a weird compiler plugin error that would be impossible to debug.

So are some parts of arrow meta stable in the sense of free of critical bugs? If so what are those parts/features?

Should intellij eap be used?
Should kotlin plugin eap be used?

@LifeIsStrange LifeIsStrange added the bug Something isn't working label Nov 2, 2020
@raulraja
Copy link
Member

raulraja commented Nov 2, 2020

Arrow meta is not stable because it depends in the Kotlin compiler IR backend which is still flagged as experimental. It's going to become the default backends and at that point the nets APIs will be stable.

As for type system features like union types the changes that can happen are related exclusively to internals since union types and other type system features are exposed as proofs and not custom adhoc plugins. There is no such thing as a union types plugin it's actually coercion functions. Those may change in API perhaps depending on what direction Kotlin goes with multiple receivers but other than meta will become stable.

Meta will be stable at the same time as Arrow in the first 2021 stable release in which we are currently actively working.

@LifeIsStrange
Copy link
Author

LifeIsStrange commented Nov 2, 2020

I'm hyped, thanks :)

(feel free to close this issue right now or when arrow meta become stable enough)

@raulraja raulraja added question Further information is requested and removed bug Something isn't working labels Nov 3, 2020
@Shpota
Copy link

Shpota commented Jan 3, 2021

It's going to become the default backends and at that point the nets APIs will be stable

Do you know when this will happen?

I would like to depend on arrow-meta in my plugin but because it is still a snapshot I cannot do that. Could you please release a 0.x version? I am ok with using experimental APIs and knowing that they might not work with newer versions of Kotlin. I just want to depend on something that would stay the same every time I pull it from artifactory.

@LifeIsStrange
Copy link
Author

LifeIsStrange commented Jan 3, 2021

The new backend can already be used it's "stable enough" since kotlin 1.4.30
It will become default in kotlin 1.5
Cf #765
And Kotlin 1.4.30 is already usable and will release soon https://github.com/JetBrains/kotlin/releases/tag/build-1.4.30-RC-182
https://github.com/JetBrains/kotlin/releases/tag/v1.4.30-M1

@raulraja
Copy link
Member

We are currently working toward the first stable release of meta which is going to come out with Arrow 1.0 before the end of the summer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants