[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-28 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=116867=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-116867
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 28/Jun/18 16:23
Start Date: 28/Jun/18 16:23
Worklog Time Spent: 10m 
  Work Description: kennknowles commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-401092738
 
 
   We have turned on autoformatting of the codebase, which causes small 
conflicts across the board. You can probably safely rebase and just keep your 
changes. Like this:
   
   ```
   $ git rebase
   ... see some conflicts
   $ git diff
   ... confirmed that the conflicts are just autoformatting
   ... so we can just keep our changes are do our own autoformat
   $ git checkout --theirs --
   $ git add -u
   $ git rebase --continue
   $ ./gradlew spotlessJavaApply
   ```
   
   Please ping me if you run into any difficulty. 


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 116867)
Time Spent: 6h 50m  (was: 6h 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 6h 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111601=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111601
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 18:32
Start Date: 13/Jun/18 18:32
Worklog Time Spent: 10m 
  Work Description: swegner commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-397040445
 
 
   Above comments are mostly about documentation. No other major concerns from 
me (LGTM)


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111601)
Time Spent: 6h 40m  (was: 6.5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 6h 40m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111595=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111595
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 18:31
Start Date: 13/Jun/18 18:31
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195184085
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1260,6 +1261,146 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(failOnWarning: true, enableFindbugs: false, shadowClosure: {
+// The relocation paths below specifically use the major version number of 
the dependency
+// since we assume that packages following semantic versioning rules. For 
packages
+// with a major version number that is 0 (implying that the dependency is 
unstable),
+// we use the full version identifier in the relocated path (e.g. 
v0_minor_patch).
+// For stable dependencies, if two or more packages use the same major 
version number,
 
 Review comment:
   Thanks for writing this extensive documentation. This will be a useful 
reference for anyone that needs to maintain dependencies.
   
   Could you define what you mean by "stable dependencies"; in contrast to 
those which change more frequently?
   
   It may also be useful to talk about the implications of having multiple 
versions of a dependency. IMO shading is one of the more 
difficult-to-understand areas of the Beam codebase, so I welcome any 
documentation that helps explain how we use it. This may even deserve separate 
markdown doc or wiki page.
   
   Just my 2cents. Feel free to disagree or defer to later.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111595)
Time Spent: 6h 10m  (was: 6h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 6h 10m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111598=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111598
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 18:31
Start Date: 13/Jun/18 18:31
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195187056
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1260,6 +1261,146 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(failOnWarning: true, enableFindbugs: false, shadowClosure: {
+// The relocation paths below specifically use the major version number of 
the dependency
+// since we assume that packages following semantic versioning rules. For 
packages
+// with a major version number that is 0 (implying that the dependency is 
unstable),
+// we use the full version identifier in the relocated path (e.g. 
v0_minor_patch).
+// For stable dependencies, if two or more packages use the same major 
version number,
+// we should bias to vendoring the highest version to minimize jar files 
instead of
+// vendoring using their minor or patch version numbers. Some packages may 
be incompatible
+// across minor or patch versions and in those instances we should either 
attempt to update our
+// usage of the dependency so we don't need to vendor both or choose to 
vendor
+// both specifying the minor version in the relocation path.
+
+// To produce the list of necessary relocations, one needs to start with a 
set of target
 
 Review comment:
   This also seems like an area to expand into its own document somewhere ("How 
to update Beam Dependencies"). I wouldn't normally expect to go through this 
workflow when updating a dependency version. /cc @yifanzou and @chamikaramj, 
who are adding policy checks to make dependency updates more regular.
   
   Can you mention any tools or commands you're familiar with to capture the 
set of transitive dependency versions which need to be updated?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111598)
Time Spent: 6.5h  (was: 6h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 6.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111597=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111597
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 18:31
Start Date: 13/Jun/18 18:31
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195190138
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
+// We have to be careful with these replacements as they must not match any
+// string in NativeLibraryLoader, else they cause corruption. Note that
+// this includes concatenation of string literals and constants.
+relocate 'META-INF/native/libnetty', 
'META-INF/native/liborg_apache_beam_vendor_netty_v4_netty'
+relocate 'META-INF/native/netty', 
'META-INF/native/org_apache_beam_vendor_netty_v4_netty'
+
+// Don't include errorprone, JDK8 annotations, objenesis, junit, and 
mockito in the bundled jar
+exclude "com/google/errorprone/**"
+exclude "com/google/instrumentation/**"
+exclude "javax/annotation/**"
+exclude "junit/**"
+exclude "org/hamcrest/**"
+exclude "org/junit/**"
+exclude "org/mockito/**"
+exclude "org/objenesis/**"
+  })
+
+  // Don't force modules here because we don't want to take the shared 
declarations in build_rules.gradle
+  // because we would like to have the freedom to choose which versions of 
dependencies we
+  // are using for the portability APIs separate from what is being used 
inside other modules such as GCP.
+  configurations.all { config ->
+config.resolutionStrategy {
+  forcedModules = []
+}
+  }
+
+  apply plugin: "com.google.protobuf"
+  protobuf {
+protoc {
+  // The artifact spec for the Protobuf Compiler
+  artifact = "com.google.protobuf:protoc:3.5.1"
+}
+
+// Configure the codegen plugins
+plugins {
+  // An artifact spec for a protoc plugin, with "grpc" as
+  // the identifier, which can be referred to in the "plugins"
+  // container of the "generateProtoTasks" closure.
+  grpc {
+artifact = "io.grpc:protoc-gen-grpc-java:1.12.0"
+  }
+}
+
+generateProtoTasks {
+  ofSourceSet("main")*.plugins {
+// Apply the "grpc" plugin whose spec is defined above, without
+// options.  Note the braces cannot be omitted, otherwise the
+// plugin will not be added. This is because of the implicit way
+// NamedDomainObjectContainer binds the methods.
+grpc { }
+  }
+}
+  }
+
+  dependencies {
+compile 'com.google.guava:guava:20.0'
 
 Review comment:
   Hmm, I still worry about the two version lists drifting. It seems like in 
the common scenario we want the versions to match, right? Would 

[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111596=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111596
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 18:31
Start Date: 13/Jun/18 18:31
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195190537
 
 

 ##
 File path: 
runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/ArtifactServiceStager.java
 ##
 @@ -57,6 +54,9 @@
 import 
org.apache.beam.model.jobmanagement.v1.ArtifactStagingServiceGrpc.ArtifactStagingServiceStub;
 import org.apache.beam.sdk.util.MoreFutures;
 import org.apache.beam.sdk.util.ThrowingSupplier;
+import org.apache.beam.vendor.grpc.v1.io.grpc.Channel;
 
 Review comment:
   Makes sense to me, thanks


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111596)
Time Spent: 6h 20m  (was: 6h 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 6h 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111592=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111592
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 18:16
Start Date: 13/Jun/18 18:16
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-397035671
 
 
   This change is blocked on deletion of the POMs as this will break the Maven 
build.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111592)
Time Spent: 6h  (was: 5h 50m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 6h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111583=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111583
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 17:57
Start Date: 13/Jun/18 17:57
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195180327
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   Done


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111583)
Time Spent: 5h 50m  (was: 5h 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 5h 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111581=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111581
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 17:54
Start Date: 13/Jun/18 17:54
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195179217
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   I agree that the value of static analysis on a project of all generated code 
is dubious. But there is value in getting the entire codebase opted-in to 
static analysis, and our build logic will be simpler if there's just one set of 
configuration.
   
   Since ErrorProne passes, let's enable that. My understanding is that there 
is effort to remove FindBugs, so don't worry about that for now.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111581)
Time Spent: 5h 40m  (was: 5.5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 5h 40m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111579=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111579
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 17:48
Start Date: 13/Jun/18 17:48
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195176159
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   We have no control over the generated code so it seems silly to force it to 
a standard such as error prone/findbugs
   
   I tested this out right now and findbugs fails but error prone doesn't cause 
any warnings so if you really want the check, I'll swap.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111579)
Time Spent: 5.5h  (was: 5h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 5.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111578=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111578
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 17:45
Start Date: 13/Jun/18 17:45
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195176159
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   We have no control over the generated code so it seems silly to force it to 
a standard such as error prone/findbugs


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111578)
Time Spent: 5h 20m  (was: 5h 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 5h 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-13 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111571=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111571
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 13/Jun/18 17:32
Start Date: 13/Jun/18 17:32
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r195172189
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   If that's the case, can we make `failOnWarning: true`? Eventually we want to 
remove the switch altogether and make failOnWarning default; if these projects 
are only generated code then I wouldn't expect to get any violations anyway. 
ErrorProne is configured to ignore generated code.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111571)
Time Spent: 5h 10m  (was: 5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 5h 10m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111251=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111251
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 20:15
Start Date: 12/Jun/18 20:15
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194861219
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
+// We have to be careful with these replacements as they must not match any
+// string in NativeLibraryLoader, else they cause corruption. Note that
+// this includes concatenation of string literals and constants.
+relocate 'META-INF/native/libnetty', 
'META-INF/native/liborg_apache_beam_vendor_netty_v4_netty'
+relocate 'META-INF/native/netty', 
'META-INF/native/org_apache_beam_vendor_netty_v4_netty'
+
+// Don't include errorprone, JDK8 annotations, objenesis, junit, and 
mockito in the bundled jar
+exclude "com/google/errorprone/**"
+exclude "com/google/instrumentation/**"
+exclude "javax/annotation/**"
+exclude "junit/**"
+exclude "org/hamcrest/**"
+exclude "org/junit/**"
+exclude "org/mockito/**"
+exclude "org/objenesis/**"
+  })
+
+  // Don't force modules here because we don't want to take the shared 
declarations in build_rules.gradle
+  // because we would like to have the freedom to choose which versions of 
dependencies we
+  // are using for the portability APIs separate from what is being used 
inside other modules such as GCP.
+  configurations.all { config ->
+config.resolutionStrategy {
+  forcedModules = []
+}
+  }
+
+  apply plugin: "com.google.protobuf"
+  protobuf {
+protoc {
+  // The artifact spec for the Protobuf Compiler
+  artifact = "com.google.protobuf:protoc:3.5.1"
+}
+
+// Configure the codegen plugins
+plugins {
+  // An artifact spec for a protoc plugin, with "grpc" as
+  // the identifier, which can be referred to in the "plugins"
+  // container of the "generateProtoTasks" closure.
+  grpc {
+artifact = "io.grpc:protoc-gen-grpc-java:1.12.0"
+  }
+}
+
+generateProtoTasks {
+  ofSourceSet("main")*.plugins {
+// Apply the "grpc" plugin whose spec is defined above, without
+// options.  Note the braces cannot be omitted, otherwise the
+// plugin will not be added. This is because of the implicit way
+// NamedDomainObjectContainer binds the methods.
+grpc { }
+  }
+}
+  }
+
+  dependencies {
+compile 'com.google.guava:guava:20.0'
 
 Review comment:
   With vendoring, version drift only leads to larger jars since we will 
possibly be packaging multiple versions of the same dependency, 

[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111241=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111241
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 20:00
Start Date: 12/Jun/18 20:00
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194860296
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
 
 Review comment:
   Added comment explaining the process.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111241)
Time Spent: 4.5h  (was: 4h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 4.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111243=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111243
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 20:00
Start Date: 12/Jun/18 20:00
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194861219
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
+// We have to be careful with these replacements as they must not match any
+// string in NativeLibraryLoader, else they cause corruption. Note that
+// this includes concatenation of string literals and constants.
+relocate 'META-INF/native/libnetty', 
'META-INF/native/liborg_apache_beam_vendor_netty_v4_netty'
+relocate 'META-INF/native/netty', 
'META-INF/native/org_apache_beam_vendor_netty_v4_netty'
+
+// Don't include errorprone, JDK8 annotations, objenesis, junit, and 
mockito in the bundled jar
+exclude "com/google/errorprone/**"
+exclude "com/google/instrumentation/**"
+exclude "javax/annotation/**"
+exclude "junit/**"
+exclude "org/hamcrest/**"
+exclude "org/junit/**"
+exclude "org/mockito/**"
+exclude "org/objenesis/**"
+  })
+
+  // Don't force modules here because we don't want to take the shared 
declarations in build_rules.gradle
+  // because we would like to have the freedom to choose which versions of 
dependencies we
+  // are using for the portability APIs separate from what is being used 
inside other modules such as GCP.
+  configurations.all { config ->
+config.resolutionStrategy {
+  forcedModules = []
+}
+  }
+
+  apply plugin: "com.google.protobuf"
+  protobuf {
+protoc {
+  // The artifact spec for the Protobuf Compiler
+  artifact = "com.google.protobuf:protoc:3.5.1"
+}
+
+// Configure the codegen plugins
+plugins {
+  // An artifact spec for a protoc plugin, with "grpc" as
+  // the identifier, which can be referred to in the "plugins"
+  // container of the "generateProtoTasks" closure.
+  grpc {
+artifact = "io.grpc:protoc-gen-grpc-java:1.12.0"
+  }
+}
+
+generateProtoTasks {
+  ofSourceSet("main")*.plugins {
+// Apply the "grpc" plugin whose spec is defined above, without
+// options.  Note the braces cannot be omitted, otherwise the
+// plugin will not be added. This is because of the implicit way
+// NamedDomainObjectContainer binds the methods.
+grpc { }
+  }
+}
+  }
+
+  dependencies {
+compile 'com.google.guava:guava:20.0'
 
 Review comment:
   With vendoring, version drift only leads to larger jars since we will 
possibly be packaging multiple versions of the same dependency, 

[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111244=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111244
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 20:00
Start Date: 12/Jun/18 20:00
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194863255
 
 

 ##
 File path: model/fn-execution/build.gradle
 ##
 @@ -17,17 +17,14 @@
  */
 
 apply from: project(":").file("build_rules.gradle")
-applyJavaNature(enableFindbugs: false, enableErrorProne: false)
-applyGrpcNature()
+applyPortabilityNature()
 
 description = "Apache Beam :: Model :: Fn Execution"
 ext.summary = "Portable definitions for execution user-defined functions."
 
 dependencies {
-  compile library.java.guava
-  shadow project(path: ":beam-model-pipeline", configuration: "shadow")
-  shadow library.java.protobuf_java
-  shadow library.java.grpc_core
-  shadow library.java.grpc_protobuf
-  shadow library.java.grpc_stub
+  // We purposely depend on the unshaded classes for compilation and
 
 Review comment:
   I couldn't figure out a way to have the generated source use a vendored 
version of grpc/protobuf. So the generated code uses imports like 
`com.google.protobuf.Message` and expects classes from `beam-model-pipeline` to 
extend non-vendored gRPC/protobuf classes.
   
   The flow is:
   1) generate code using non-vendored imports
   2) compile code using non-vendored dependencies
   3) produce shaded classes using the same shading rules as 
`beam-model-pipeline`
   
   This works because `beam-model-pipeline`, `beam-model-job-management`, and 
`beam-model-fn-execution` all use the same relocation rules so when the jar is 
loaded by java, java will see that they all extend the same vendored code 
locations.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111244)
Time Spent: 4h 50m  (was: 4h 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 4h 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111242=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111242
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 20:00
Start Date: 12/Jun/18 20:00
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194861371
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
+// We have to be careful with these replacements as they must not match any
+// string in NativeLibraryLoader, else they cause corruption. Note that
+// this includes concatenation of string literals and constants.
+relocate 'META-INF/native/libnetty', 
'META-INF/native/liborg_apache_beam_vendor_netty_v4_netty'
+relocate 'META-INF/native/netty', 
'META-INF/native/org_apache_beam_vendor_netty_v4_netty'
+
+// Don't include errorprone, JDK8 annotations, objenesis, junit, and 
mockito in the bundled jar
+exclude "com/google/errorprone/**"
+exclude "com/google/instrumentation/**"
+exclude "javax/annotation/**"
+exclude "junit/**"
+exclude "org/hamcrest/**"
+exclude "org/junit/**"
+exclude "org/mockito/**"
+exclude "org/objenesis/**"
+  })
+
+  // Don't force modules here because we don't want to take the shared 
declarations in build_rules.gradle
+  // because we would like to have the freedom to choose which versions of 
dependencies we
+  // are using for the portability APIs separate from what is being used 
inside other modules such as GCP.
+  configurations.all { config ->
+config.resolutionStrategy {
+  forcedModules = []
+}
+  }
+
+  apply plugin: "com.google.protobuf"
+  protobuf {
+protoc {
+  // The artifact spec for the Protobuf Compiler
+  artifact = "com.google.protobuf:protoc:3.5.1"
+}
+
+// Configure the codegen plugins
+plugins {
+  // An artifact spec for a protoc plugin, with "grpc" as
+  // the identifier, which can be referred to in the "plugins"
+  // container of the "generateProtoTasks" closure.
+  grpc {
+artifact = "io.grpc:protoc-gen-grpc-java:1.12.0"
+  }
+}
+
+generateProtoTasks {
+  ofSourceSet("main")*.plugins {
+// Apply the "grpc" plugin whose spec is defined above, without
+// options.  Note the braces cannot be omitted, otherwise the
+// plugin will not be added. This is because of the implicit way
+// NamedDomainObjectContainer binds the methods.
+grpc { }
+  }
+}
+  }
+
+  dependencies {
+compile 'com.google.guava:guava:20.0'
+compile 'com.google.protobuf:protobuf-java:3.5.1'
+compile 'com.google.protobuf:protobuf-java-util:3.5.1'
+compile 'com.google.code.gson:gson:2.7'
+ 

[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111233=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111233
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 19:24
Start Date: 12/Jun/18 19:24
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r19486
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
 
 Review comment:
   That is already being done by the 
`validateShadedJarDoesntLeakNonOrgApacheBeamClasses` task.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111233)
Time Spent: 4h 20m  (was: 4h 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 4h 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111232=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111232
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 19:23
Start Date: 12/Jun/18 19:23
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194859792
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   Eventually all projects will not do any shading and instead use normal 
dependencies (no more `shadow`, `shadowTest`). The only reason why I place this 
into a function right now is that I want to repeat this same logic across 
`model/pipeline`, `model/job-management`, `model/fn-execution`.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111232)
Time Spent: 4h 10m  (was: 4h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 4h 10m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-12 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=111229=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-111229
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 19:20
Start Date: 12/Jun/18 19:20
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194858852
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
 
 Review comment:
   Because I wanted to include support for domain sockets and other epoll 
alternatives which is not part of the gRPC netty-shaded equivalent.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 111229)
Time Spent: 3h 50m  (was: 3h 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3h 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110919=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110919
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:41
Start Date: 12/Jun/18 00:41
Worklog Time Spent: 10m 
  Work Description: chamikaramj commented on a change in pull request 
#5594: [BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not 
have dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194586156
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
 
 Review comment:
   Is there a way to error out if a jar contains a package that is not 
relocated here ?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110919)
Time Spent: 3h 40m  (was: 3.5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3h 40m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110917=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110917
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:41
Start Date: 12/Jun/18 00:41
Worklog Time Spent: 10m 
  Work Description: chamikaramj commented on a change in pull request 
#5594: [BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not 
have dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194587134
 
 

 ##
 File path: model/fn-execution/build.gradle
 ##
 @@ -17,17 +17,14 @@
  */
 
 apply from: project(":").file("build_rules.gradle")
-applyJavaNature(enableFindbugs: false, enableErrorProne: false)
-applyGrpcNature()
+applyPortabilityNature()
 
 description = "Apache Beam :: Model :: Fn Execution"
 ext.summary = "Portable definitions for execution user-defined functions."
 
 dependencies {
-  compile library.java.guava
-  shadow project(path: ":beam-model-pipeline", configuration: "shadow")
-  shadow library.java.protobuf_java
-  shadow library.java.grpc_core
-  shadow library.java.grpc_protobuf
-  shadow library.java.grpc_stub
+  // We purposely depend on the unshaded classes for compilation and
 
 Review comment:
   Can you explain how this works ? Won't compiled classes refer to unshaded 
classes ?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110917)
Time Spent: 3.5h  (was: 3h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110918=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110918
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:41
Start Date: 12/Jun/18 00:41
Worklog Time Spent: 10m 
  Work Description: chamikaramj commented on a change in pull request 
#5594: [BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not 
have dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194586401
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
 
 Review comment:
   Add a function for formatting relocation path from various parts 
("org.apache.beam", library name, package, etc) ?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110918)
Time Spent: 3.5h  (was: 3h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110920=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110920
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:41
Start Date: 12/Jun/18 00:41
Worklog Time Spent: 10m 
  Work Description: chamikaramj commented on a change in pull request 
#5594: [BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not 
have dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194586642
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
 
 Review comment:
   Why not upgrade to gRPC netty shaded instead ?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110920)
Time Spent: 3h 40m  (was: 3.5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3h 40m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110914=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110914
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:29
Start Date: 12/Jun/18 00:29
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-396427930
 
 
   @kennknowles It isn't a separate package yet, its just being shaded into the 
model jars since one of the issues that I didn't figure out was how to get the 
generated code to use vendored classes.
   
   As a side note, I was hoping that you would use this as an example in the PR 
that you created that vendored guava and I would be able to re-use what you 
created.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110914)
Time Spent: 3h 20m  (was: 3h 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110908=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110908
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:25
Start Date: 12/Jun/18 00:25
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194585437
 
 

 ##
 File path: 
runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/ArtifactServiceStager.java
 ##
 @@ -57,6 +54,9 @@
 import 
org.apache.beam.model.jobmanagement.v1.ArtifactStagingServiceGrpc.ArtifactStagingServiceStub;
 import org.apache.beam.sdk.util.MoreFutures;
 import org.apache.beam.sdk.util.ThrowingSupplier;
+import org.apache.beam.vendor.grpc.v1.io.grpc.Channel;
 
 Review comment:
   Having sorted order is easiest and supported by the most amount of tooling 
so deviating makes those peoples lives worse.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110908)
Time Spent: 3h 10m  (was: 3h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3h 10m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110907=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110907
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:23
Start Date: 12/Jun/18 00:23
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194585279
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -560,6 +560,7 @@ ext.applyJavaNature = {
   shadowJar ({
 classifier = "shaded"
 mergeServiceFiles()
+zip64 true
 
 Review comment:
   It allows jar files to contain 2^16 or more files.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110907)
Time Spent: 3h  (was: 2h 50m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110906=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110906
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 12/Jun/18 00:22
Start Date: 12/Jun/18 00:22
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194585154
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   These modules that this applies to only have generated code so I don't 
believe error prone will be of use which is why I don't expose it.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110906)
Time Spent: 2h 50m  (was: 2h 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110849=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110849
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 21:26
Start Date: 11/Jun/18 21:26
Worklog Time Spent: 10m 
  Work Description: kennknowles commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-396392713
 
 
   Where is the bit where the vendored jar is published?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110849)
Time Spent: 2h 40m  (was: 2.5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110804=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110804
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194534119
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
+// We have to be careful with these replacements as they must not match any
+// string in NativeLibraryLoader, else they cause corruption. Note that
+// this includes concatenation of string literals and constants.
+relocate 'META-INF/native/libnetty', 
'META-INF/native/liborg_apache_beam_vendor_netty_v4_netty'
+relocate 'META-INF/native/netty', 
'META-INF/native/org_apache_beam_vendor_netty_v4_netty'
+
+// Don't include errorprone, JDK8 annotations, objenesis, junit, and 
mockito in the bundled jar
+exclude "com/google/errorprone/**"
+exclude "com/google/instrumentation/**"
+exclude "javax/annotation/**"
+exclude "junit/**"
+exclude "org/hamcrest/**"
+exclude "org/junit/**"
+exclude "org/mockito/**"
+exclude "org/objenesis/**"
+  })
+
+  // Don't force modules here because we don't want to take the shared 
declarations in build_rules.gradle
+  // because we would like to have the freedom to choose which versions of 
dependencies we
+  // are using for the portability APIs separate from what is being used 
inside other modules such as GCP.
+  configurations.all { config ->
+config.resolutionStrategy {
+  forcedModules = []
+}
+  }
+
+  apply plugin: "com.google.protobuf"
+  protobuf {
+protoc {
+  // The artifact spec for the Protobuf Compiler
+  artifact = "com.google.protobuf:protoc:3.5.1"
+}
+
+// Configure the codegen plugins
+plugins {
+  // An artifact spec for a protoc plugin, with "grpc" as
+  // the identifier, which can be referred to in the "plugins"
+  // container of the "generateProtoTasks" closure.
+  grpc {
+artifact = "io.grpc:protoc-gen-grpc-java:1.12.0"
+  }
+}
+
+generateProtoTasks {
+  ofSourceSet("main")*.plugins {
+// Apply the "grpc" plugin whose spec is defined above, without
+// options.  Note the braces cannot be omitted, otherwise the
+// plugin will not be added. This is because of the implicit way
+// NamedDomainObjectContainer binds the methods.
+grpc { }
+  }
+}
+  }
+
+  dependencies {
+compile 'com.google.guava:guava:20.0'
+compile 'com.google.protobuf:protobuf-java:3.5.1'
+compile 'com.google.protobuf:protobuf-java-util:3.5.1'
+compile 'com.google.code.gson:gson:2.7'
+  

[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110808=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110808
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194532725
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
 
 Review comment:
   Where do these version strings come from? If they need to be maintained, can 
you add some notes/validation?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110808)
Time Spent: 2h 20m  (was: 2h 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110806=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110806
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194531533
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -560,6 +560,7 @@ ext.applyJavaNature = {
   shadowJar ({
 classifier = "shaded"
 mergeServiceFiles()
+zip64 true
 
 Review comment:
   What does this do?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110806)
Time Spent: 2h  (was: 1h 50m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 2h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110809=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110809
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194536787
 
 

 ##
 File path: 
runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/ArtifactServiceStager.java
 ##
 @@ -57,6 +54,9 @@
 import 
org.apache.beam.model.jobmanagement.v1.ArtifactStagingServiceGrpc.ArtifactStagingServiceStub;
 import org.apache.beam.sdk.util.MoreFutures;
 import org.apache.beam.sdk.util.ThrowingSupplier;
+import org.apache.beam.vendor.grpc.v1.io.grpc.Channel;
 
 Review comment:
   Code style bikeshed: Would it be useful to separate out vendored imports? 
For checkstyle we could declare a separate import group to sort them at the 
end: http://checkstyle.sourceforge.net/config_imports.html#ImportOrder


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110809)
Time Spent: 2.5h  (was: 2h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110807=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110807
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194533859
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
+// guava uses the com.google.common and com.google.thirdparty package 
namespaces
+relocate "com.google.common", 
"org.apache.beam.vendor.guava.v20.com.google.common"
+relocate "com.google.thirdparty", 
"org.apache.beam.vendor.guava.v20.com.google.thirdparty"
+
+relocate "com.google.protobuf", 
"org.apache.beam.vendor.protobuf.v3.com.google.protobuf"
+relocate "com.google.gson", 
"org.apache.beam.vendor.gson.v2.com.google.gson"
+relocate "io.grpc", "org.apache.beam.vendor.grpc.v1.io.grpc"
+relocate "com.google.auth", 
"org.apache.beam.vendor.google_auth_library_credentials.v0_9_1.com.google.auth"
+relocate "com.google.api", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.api"
+relocate "com.google.cloud", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.cloud"
+relocate "com.google.logging", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.logging"
+relocate "com.google.longrunning", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.longrunning"
+relocate "com.google.rpc", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.rpc"
+relocate "com.google.type", 
"org.apache.beam.vendor.proto_google_common_protos.v1.com.google.type"
+relocate "io.opencensus", 
"org.apache.beam.vendor.opencensus.v0_11.io.opencensus"
+
+// Adapted from 
https://github.com/grpc/grpc-java/blob/e283f70ad91f99c7fee8b31b605ef12a4f9b1690/netty/shaded/build.gradle#L41
+relocate "io.netty", "org.apache.beam.vendor.netty.v4.io.netty"
+// We have to be careful with these replacements as they must not match any
+// string in NativeLibraryLoader, else they cause corruption. Note that
+// this includes concatenation of string literals and constants.
+relocate 'META-INF/native/libnetty', 
'META-INF/native/liborg_apache_beam_vendor_netty_v4_netty'
+relocate 'META-INF/native/netty', 
'META-INF/native/org_apache_beam_vendor_netty_v4_netty'
+
+// Don't include errorprone, JDK8 annotations, objenesis, junit, and 
mockito in the bundled jar
+exclude "com/google/errorprone/**"
+exclude "com/google/instrumentation/**"
+exclude "javax/annotation/**"
+exclude "junit/**"
+exclude "org/hamcrest/**"
+exclude "org/junit/**"
+exclude "org/mockito/**"
+exclude "org/objenesis/**"
+  })
+
+  // Don't force modules here because we don't want to take the shared 
declarations in build_rules.gradle
+  // because we would like to have the freedom to choose which versions of 
dependencies we
+  // are using for the portability APIs separate from what is being used 
inside other modules such as GCP.
+  configurations.all { config ->
+config.resolutionStrategy {
+  forcedModules = []
+}
+  }
+
+  apply plugin: "com.google.protobuf"
+  protobuf {
+protoc {
+  // The artifact spec for the Protobuf Compiler
+  artifact = "com.google.protobuf:protoc:3.5.1"
+}
+
+// Configure the codegen plugins
+plugins {
+  // An artifact spec for a protoc plugin, with "grpc" as
+  // the identifier, which can be referred to in the "plugins"
+  // container of the "generateProtoTasks" closure.
+  grpc {
+artifact = "io.grpc:protoc-gen-grpc-java:1.12.0"
+  }
+}
+
+generateProtoTasks {
+  ofSourceSet("main")*.plugins {
+// Apply the "grpc" plugin whose spec is defined above, without
+// options.  Note the braces cannot be omitted, otherwise the
+// plugin will not be added. This is because of the implicit way
+// NamedDomainObjectContainer binds the methods.
+grpc { }
+  }
+}
+  }
+
+  dependencies {
+compile 'com.google.guava:guava:20.0'
 
 Review comment:
   Is it an explicit choice to maintain these dependency versions separate from 
the `ext.library` map? Any reason why? It seems like we 

[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110805=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110805
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194537105
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   Will this shading configuration eventually be common to all java projects 
(not just portability)?


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110805)
Time Spent: 1h 50m  (was: 1h 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110803=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110803
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:29
Start Date: 11/Jun/18 20:29
Worklog Time Spent: 10m 
  Work Description: swegner commented on a change in pull request #5594: 
[BEAM-4481, BEAM-4484] Start vendoring portability dependencies to not have 
dependency conflicts
URL: https://github.com/apache/beam/pull/5594#discussion_r194532318
 
 

 ##
 File path: build_rules.gradle
 ##
 @@ -1253,6 +1254,125 @@ ext.applyGrpcNature = {
 
 
/*/
 
+ext.applyPortabilityNature = {
+  println "applyPortabilityNature with " + (it ? "$it" : "default 
configuration") + " for project $project.name"
+  applyJavaNature(enableFindbugs: false, enableErrorProne: false, 
shadowClosure: {
 
 Review comment:
   We've been working hard to fix ErrorProne warnings per-module with the 
eventual goal of making ErrorProne violations produce errors by default. How 
about hoisting the `enableErrorProne`configuration as a parameter to 
`applyPortabilityNature()`. Then make sure to retain the configured state for 
migrated projects.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110803)
Time Spent: 1.5h  (was: 1h 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110759=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110759
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:05
Start Date: 11/Jun/18 20:05
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-396369306
 
 
   R: @swegner 


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110759)
Time Spent: 1h 20m  (was: 1h 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110755=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110755
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 20:04
Start Date: 11/Jun/18 20:04
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-396368946
 
 
   Run Go PreCommit


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110755)
Time Spent: 1h 10m  (was: 1h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110689=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110689
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 17:06
Start Date: 11/Jun/18 17:06
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-396289440
 
 
   Run Go PreCommit


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110689)
Time Spent: 1h  (was: 50m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-11 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=110654=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-110654
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 11/Jun/18 15:43
Start Date: 11/Jun/18 15:43
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5594: [BEAM-4481, 
BEAM-4484] Start vendoring portability dependencies to not have dependency 
conflicts
URL: https://github.com/apache/beam/pull/5594#issuecomment-396289440
 
 
   Run Go PreCommit


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 110654)
Time Spent: 50m  (was: 40m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-05 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=109157=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-109157
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 05/Jun/18 18:25
Start Date: 05/Jun/18 18:25
Worklog Time Spent: 10m 
  Work Description: lukecwik closed pull request #5560: [BEAM-4481] Remove 
duplicate definitions of dependencies in runners/direct-java
URL: https://github.com/apache/beam/pull/5560
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/runners/direct-java/build.gradle b/runners/direct-java/build.gradle
index 1cb6f49709f..d095ae116f6 100644
--- a/runners/direct-java/build.gradle
+++ b/runners/direct-java/build.gradle
@@ -63,13 +63,7 @@ dependencies {
   dependOnProjects.each {
 compile project(path: it, configuration: "shadow")
   }
-  compile project(path: ":beam-model-pipeline", configuration: "shadow")
-  compile project(path: ":beam-runners-core-construction-java", configuration: 
"shadow")
-  compile project(path: ":beam-runners-core-java", configuration: "shadow")
-  compile project(path: ":beam-runners-java-fn-execution", configuration: 
"shadow")
-  compile project(path: ":beam-runners-local-java-core", configuration: 
"shadow")
   shadow project(path: ":beam-sdks-java-core", configuration: "shadow")
-  shadow project(path: ":beam-sdks-java-fn-execution", configuration: "shadow")
   shadow library.java.joda_time
   shadow library.java.findbugs_jsr305
   shadow library.java.slf4j_api


 


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 109157)
Time Spent: 40m  (was: 0.5h)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-05 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=109133=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-109133
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 05/Jun/18 17:12
Start Date: 05/Jun/18 17:12
Worklog Time Spent: 10m 
  Work Description: boyuanzz commented on issue #5560: [BEAM-4481] Remove 
duplicate definitions of dependencies in runners/direct-java
URL: https://github.com/apache/beam/pull/5560#issuecomment-394789026
 
 
   So sorry forgetting remove these duplications last time. Thanks Luke! LGTM.


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 109133)
Time Spent: 0.5h  (was: 20m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-05 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=109131=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-109131
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 05/Jun/18 17:07
Start Date: 05/Jun/18 17:07
Worklog Time Spent: 10m 
  Work Description: lukecwik commented on issue #5560: [BEAM-4481] Remove 
duplicate definitions of dependencies in runners/direct-java
URL: https://github.com/apache/beam/pull/5560#issuecomment-394787548
 
 
   R: @boyuanzz 


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 109131)
Time Spent: 20m  (was: 10m)

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Work logged] (BEAM-4481) Remove duplicate dependency declarations from runners/direct-java

2018-06-05 Thread ASF GitHub Bot (JIRA)


 [ 
https://issues.apache.org/jira/browse/BEAM-4481?focusedWorklogId=109130=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-109130
 ]

ASF GitHub Bot logged work on BEAM-4481:


Author: ASF GitHub Bot
Created on: 05/Jun/18 17:07
Start Date: 05/Jun/18 17:07
Worklog Time Spent: 10m 
  Work Description: lukecwik opened a new pull request #5560: [BEAM-4481] 
Remove duplicate definitions of dependencies in runners/direct-java
URL: https://github.com/apache/beam/pull/5560
 
 
   
   
   
   Follow this checklist to help us incorporate your contribution quickly and 
easily:
   
- [ ] Format the pull request title like `[BEAM-XXX] Fixes bug in 
ApproximateQuantiles`, where you replace `BEAM-XXX` with the appropriate JIRA 
issue, if applicable. This will automatically link the pull request to the 
issue.
- [ ] If this contribution is large, please file an Apache [Individual 
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   It will help us expedite review of your Pull Request if you tag someone 
(e.g. `@username`) to look at it.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on 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


Issue Time Tracking
---

Worklog Id: (was: 109130)
Time Spent: 10m
Remaining Estimate: 0h

> Remove duplicate dependency declarations from runners/direct-java
> -
>
> Key: BEAM-4481
> URL: https://issues.apache.org/jira/browse/BEAM-4481
> Project: Beam
>  Issue Type: Bug
>  Components: runner-direct
>Reporter: Luke Cwik
>Assignee: Luke Cwik
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> beam-model-pipeline and others are duplicated in the dependency list



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)