Hi everyone, I would like to discuss the best approach to address the issue raised in FLINK-25927 [1]. It can be summarized as follows:
> flink-connector-base is currently inconsistently used in connectors (directly shaded in some and transitively pulled in via flink-connector-files which is itself shaded in the table uber jar) > FLINK-24687 [2] moved flink-connector-files out of the flink-table uber jar > It is necessary to make usage of flink-connector-base consistent across all connectors One approach is to stop shading flink-connector-files in all connectors and instead package it in flink-dist, making it a part of Flink-wide provided public API. This approach is investigated in the following PoC PR: 18545 [3]. The issue with this approach is that it breaks any existing CI and IDE setups that do not directly rely on flink-dist and also do not include flink-connector-files as an explicit dependency. In theory, a nice alternative would be to make it a part of a dependency that is ubiquitously provided, for instance, flink-streaming-java. Doing that for flink-streaming-java would, however, introduce a dependency cycle and is currently not feasible. It would be great to hear your opinions on what could be the best way forward here. [1] https://issues.apache.org/jira/browse/FLINK-25927 [2] https://issues.apache.org/jira/browse/FLINK-24687 [3] https://github.com/apache/flink/pull/18545 Thanks, Alexander Fedulov
