rhauch commented on a change in pull request #10203:
URL: https://github.com/apache/kafka/pull/10203#discussion_r586853160



##########
File path: build.gradle
##########
@@ -1987,28 +2005,30 @@ project(':connect:json') {
   archivesBaseName = "connect-json"
 
   dependencies {
-    compile project(':connect:api')
-    compile libs.jacksonDatabind
-    compile libs.jacksonJDK8Datatypes
-    compile libs.slf4jApi
+    implementation project(':connect:api')

Review comment:
       The public API is defined in `connect:api`, and `connect:json` and 
`connect:transforms` are implementations of interfaces defined in (and 
therefore cannot be used without) `connect:api`. Within AK, we provide the 
`connect:json` and `connect:transforms` always with the `connect:api` (and 
runtime) modules, and therefore using `implementation` (and `compile` in 
earlier branches) seems appropriate.
   
   From a more abstract perspective, one might argue that the `connect:json` 
and `connect:transforms` could declare their use of `connect:api` as a 
transitive dependency (e.g., `api` rather than `implementation`). It's just 
that as a practical matter we don't need this, and arguably no other projects 
would either.
   
   As such, I think it's safer to use `implementation`, as it's in line with 
what we were doing earlier.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to