[
https://issues.apache.org/jira/browse/CALCITE-3871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17073374#comment-17073374
]
Danny Chen commented on CALCITE-3871:
-------------------------------------
As a downstream project, Flink did see these dependency change of calcite-core
for Calcite 1.23 compared to 1.22:
- Additional avatica-server jar which is fixed in CALCITE-3888
- commons-io jar
- apiguardian jar
- google guava changes from scope compile to runtime
- Junit5 for test scope
Theses changes has lead some confusion/breaking for existing code/tests more or
less, i think we should keep caution to change the dependency, maybe we should
add a test for the dependencies.
As for the apiguardian, it's really weird from Flink side, why we have to
introduce an additional jar that we never uses. calcite-core is a jar that may
be used as dependency of many downstream projects, so the less indirect
dependency the better.
I didn't see much harm to copy the API.java, we can still use it and we reduce
a dependency.
> Remove dependency of org.apiguardian:apiguardian-api
> ----------------------------------------------------
>
> Key: CALCITE-3871
> URL: https://issues.apache.org/jira/browse/CALCITE-3871
> Project: Calcite
> Issue Type: Improvement
> Components: core, linq4j
> Affects Versions: 1.22.0
> Reporter: Danny Chen
> Assignee: Danny Chen
> Priority: Major
> Labels: pull-request-available
> Time Spent: 20m
> Remaining Estimate: 0h
>
> The org.apiguardian:apiguardian-api is introduced in CALCITE-3652 in order to
> mark the new introduced API status.
> Remove the dependency and copy the class into Calcite because the
> org.apiguardian:apiguardian-api jar has only a single API.java class and it
> is not necessary to add a dependency for that(All the downstream projects
> that have calcite-core as a dependency would see this jar which is annoying).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)