Hello Flink PMCs and Flink Scala Users,

I would like to propose an idea to take the 3rd party Scala API
findify/flink-scala-api <https://github.com/findify/flink-scala-api>
project into the Apache Flink organization.

*Motivation *

The Scala-free Flink idea was finally implemented by the 1.15 release and
allowed Flink users to bring their own Scala version and use it via the
Flink Java API. See blog-post here: Scala Free in One Fifteen
<https://flink.apache.org/2022/02/22/scala-free-in-one-fifteen/>. Also,
existing Flink Scala API will be deprecated, because it is too hard to
upgrade it to Scala 2.13 or 3.

Taking into account my Scala experience for the last 8 years, I predict
these wrappers will eventually be abandoned, unless such a Scala library is
a part of some bigger community like ASF.
Also, non-official Scala API will lead people to play safe and choose Java
API only, even if they did want that at the beginning.

https://github.com/findify/flink-scala-api has already advanced and
implemented Scala support for 2.13 and 3 versions on top of Flink Java API.
As I know, FIndify does not want or does not have a capacity to maintain
this library. I propose to fork this great library and create a new Flink
project with its own version and build process (SBT, not Maven), which
would be similar to the StateFun or FlinkML projects.

*Proposal *

1. Create a fork of findify/flink-scala-api and host in Apache Flink Git
space (PMCs please advise).
2. I and Roman
<https://issues.apache.org/jira/secure/ViewProfile.jspa?name=rgrebennikov>
would
be willing to maintain this library in future for the next several years.
Further, we believe it will live on its own.
3. Flink Docs: PMCs, we need your guidelines here. One way I see is to
create new documentation in a similar way as StateFun docs. Alternatively,
we could just fix existing Flink Scala code examples to make sure they work
with the new wrapper. In any case, I see docs will be upgraded/fixed
gradually.

I hope you will find this idea interesting and worth going forward.

P.S. The irony here is that findify/flink-scala-api was also a fork of
Flink Scala-API some time ago, so we have a chance to close the loop :-)

Best regards.
Alexey

Reply via email to