[
https://issues.apache.org/jira/browse/BEAM-4087?focusedWorklogId=224926&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-224926
]
ASF GitHub Bot logged work on BEAM-4087:
----------------------------------------
Author: ASF GitHub Bot
Created on: 09/Apr/19 11:44
Start Date: 09/Apr/19 11:44
Worklog Time Spent: 10m
Work Description: adude3141 commented on issue #8255: [DO NOT
MERGE][BEAM-4087] implement configurable dependency versions
URL: https://github.com/apache/beam/pull/8255#issuecomment-481217134
Thx @iemejia for looking into this.
Of course, this does not fix https://issues.apache.org/jira/browse/BEAM-7003
. But I consider this change a kind of prerequisite.
What we are now able to do, is e.g.
```
for kafka in "0.9.0.1" "0.10.0.1" "0.11.0.2" "1.1.0" "2.0.0" "2.1.0"
"2.2.0";
do
echo "testing $kafka";
./gradlew -Pkafka_clients.version=$kafka -p sdks/java/io/kafka/ build;
done
```
Takes about 3mins on my machine and shows we are not compatible with
versions less than 0.11.
```
/Users/michel/GitHub/adude3141/beam/sdks/java/io/kafka/src/main/java/org/apache/beam/sdk/io/kafka/KafkaRecord.java:24:
error: package org.apache.kafka.common.header does not exist
import org.apache.kafka.common.header.Headers;
^
/Users/michel/GitHub/adude3141/beam/sdks/java/io/kafka/src/main/java/org/apache/beam/sdk/io/kafka/ConsumerSpEL.java:28:
error: cannot find symbol
import org.apache.kafka.clients.consumer.OffsetAndTimestamp;
^
symbol: class OffsetAndTimestamp
location: package org.apache.kafka.clients.consumer
/Users/michel/GitHub/adude3141/beam/sdks/java/io/kafka/src/main/java/org/apache/beam/sdk/io/kafka/KafkaRecord.java:38:
error: cannot find symbol
private final Headers headers;
^
symbol: class Headers
location: class KafkaRecord<K,V>
where K,V are type-variables:
K extends Object declared in class KafkaRecord
V extends Object declared in class KafkaRecord
/Users/michel/GitHub/adude3141/beam/sdks/java/io/kafka/src/main/java/org/apache/beam/sdk/io/kafka/KafkaRecord.java:49:
error: cannot find symbol
@Nullable Headers headers,
^
```
So, I d say this does add some value right now, although it does not provide
full integration.
We could implement some similar loop on Jenkins here to get this on CI right
now.
For the build system integration I did not even look any further. I expect
that this change will help implementing, but we might need to modify again. As
dependencies are declared on project level, we currently would need to mess
with testRuntimeClasspath. And - of course - fork a new jvm per test anyway.
This is doable, but we might be better off using this 5.3 variants which seem
to support such use cases.
This change here is easy and quickly implemented. So I decided to give it a
try to support discussion, whether this configurability is something we would
like to have. As variants go even further and I unfortunately do not have a
clue about the implications to our build currently.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 224926)
Time Spent: 1h 10m (was: 1h)
> Gradle build does not allow to overwrite versions of provided dependencies
> --------------------------------------------------------------------------
>
> Key: BEAM-4087
> URL: https://issues.apache.org/jira/browse/BEAM-4087
> Project: Beam
> Issue Type: Sub-task
> Components: build-system
> Affects Versions: 2.5.0
> Reporter: Ismaël Mejía
> Assignee: Michael Luckey
> Priority: Major
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> In order to test modules with provided dependencies in maven we can execute
> for example for Kafka `mvn verify -Prelease -Dkafka.clients.version=0.9.0.1
> -pl 'sdks/java/io/kafka'` However we don't have an equivalent way to do this
> with gradle because the version of the dependencies are defined locally and
> not in the gradle.properties.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)