You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by GitBox <gi...@apache.org> on 2019/07/01 00:42:26 UTC

[GitHub] [incubator-iceberg] SurenNihalani commented on a change in pull request #236: iceberg: don't bundle hdfs with iceberg runtime

SurenNihalani commented on a change in pull request #236: iceberg: don't bundle hdfs with iceberg runtime
URL: https://github.com/apache/incubator-iceberg/pull/236#discussion_r298857031
 
 

 ##########
 File path: build.gradle
 ##########
 @@ -355,44 +355,38 @@ project(':iceberg-pig') {
 project(':iceberg-runtime') {
   apply plugin: 'com.github.johnrengelman.shadow'
 
-  configurations {
-    shadow
-    compileOnly.extendsFrom shadow
-  }
-
-  shadowJar {
-    configurations = [project.configurations.shadow]
-    from(project.sourceSets.main.output)
-  }
-
-  tasks.build.dependsOn tasks.shadowJar
+  tasks.assemble.dependsOn tasks.shadowJar
   tasks.install.dependsOn tasks.shadowJar
   tasks.javadocJar.dependsOn tasks.shadowJar
 
   dependencies {
-    shadow project(':iceberg-api')
-    shadow project(':iceberg-common')
-    shadow project(':iceberg-core')
-    shadow project(':iceberg-parquet')
-    shadow project(':iceberg-spark')
-    shadow project(':iceberg-pig')
-    shadow project(':iceberg-hive')
-
-    shadow "org.apache.avro:avro:$avroVersion"
-    shadow "org.apache.parquet:parquet-avro:$parquetVersion"
+    compile project(':iceberg-api')
+    compile project(':iceberg-common')
+    compile project(':iceberg-core')
+    compile project(':iceberg-parquet')
+    compile project(':iceberg-spark')
+    compile project(':iceberg-pig')
+    compile project(':iceberg-hive')
+
+    compile "org.apache.avro:avro:$avroVersion"
+    compile "org.apache.parquet:parquet-avro:$parquetVersion"
+
   }
 
   publishing {
     publications {
       withType(IvyPublication) {
-        configurations {
-          'shadow' { extend 'runtime' }
-        }
+        from components.java
       }
     }
   }
 
   shadowJar {
+    dependencies {
+      exclude(dependency {
+        it.moduleGroup == 'org.apache.hadoop'
 
 Review comment:
   @rdblue, I don't think the name of configuration matters here. The way people express that distinction is by using the runtime configuration (Command F for Figure 2 on this page: https://docs.gradle.org/current/userguide/java_plugin.html#sec:java_plugin_and_dependency_management). I decided to move away from shadow because the shadow plugin adds a configuration named "shadow" (https://imperceptiblethoughts.com/shadow/getting-started/#default-java-groovy-tasks) and users use that configuration to specify dependencies that they want to include (https://imperceptiblethoughts.com/shadow/configuration/#configuring-the-runtime-classpath). Overriding the name shadow made things confusing if you know specifics of shadow plugin. 
   
   @rdsr , I'll confirm and update the PR
   
   

----------------------------------------------------------------
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:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org