-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
java CDK: clean up dependencies, refactor modules #34745
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 1 Ignored Deployment
|
c9f0502
to
5cb441e
Compare
@@ -180,6 +180,7 @@ subprojects { subproj -> | |||
} | |||
|
|||
apply plugin: 'java' | |||
apply plugin: 'java-test-fixtures' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This costs nothing and allows us to blanket-add lombok, junit, etc. dependencies to the fixtures sources.
@@ -319,45 +324,27 @@ subprojects { subproj -> | |||
finalizedBy jacocoTestReportTask | |||
} | |||
|
|||
// TODO: These should be added to the CDK or to the individual projects that need them: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done. The dependencies have been hardcoded in the CDK, which no longer relies on deps.toml. We want to avoid significant version changes sneaking into the CDK.
testFixturesImplementation jarName(it) | ||
} | ||
PRE_V017_TEST_IMPLEMENTATION.each {testImplementation jarName(it) } | ||
PRE_V017_INTEGRATION_TEST_IMPLEMENTATION.each {integrationTestJavaImplementation jarName(it) } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is required to maintain backward-compatibility with old CDK versions. We can remove these once we update all connectors to recent CDK versions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
which is already happening for java sources : #34453
useLocalCdk = false | ||
cdkVersionRequired = '0.17.0' | ||
features = ['db-destinations', 's3-destinations', 'typing-deduping', 'datastore-bigquery'] | ||
useLocalCdk = true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
destination-bigquery needs to be in this PR because it used to depend on destination-gcs, but no longer does.
implementation ('com.github.airbytehq:json-avro-converter:1.1.0') { exclude group: 'ch.qos.logback', module: 'logback-classic'} | ||
|
||
testImplementation 'org.apache.commons:commons-lang3:3.11' | ||
testImplementation 'org.xerial.snappy:snappy-java:1.1.8.4' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most of the code in destination-gcs has been hoisted into the CDK's s3-destinations module, which is a much better home for it because the deps are the same.
|
||
|
||
implementation 'org.mongodb:mongodb-driver-sync:4.3.0' | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This connector lacks a metadata.yaml
file and is therefore dead. Removing.
@@ -1,13 +1,22 @@ | |||
import org.openapitools.generator.gradle.plugin.tasks.GenerateTask |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This dependencies
module was built from all the airbyte-*
and *-oss
modules, which are left-overs from the times of the monorepo. I ruled out importing things like airbyte-commons from the platform because of the considerable amount of dependencies they pull there. To be fair, dependencies are a lot less of a concern in that repo than they are here. Still, this code changes little enough that IMO it's safe to maintain two distinct copies of it.
9efadca
to
894c72a
Compare
/publish-java-cdk
|
/approve-and-merge reason="CI all green except for destination-mongodb" |
This PR aims to change very little in terms of functionality and just moves stuff around for the most part. The CDK will be adopted (and thereby validated) in other PRs based on this one.