zipkin-reporter-java icon indicating copy to clipboard operation
zipkin-reporter-java copied to clipboard

zipkin-reporter-brave implementation has a sneaky dependency on zipkin2

Open codefromthecrypt opened this issue 5 years ago • 1 comments

I noticed that zipkin-reporter-brave still has a dependency on io.zipkin.zipkin2:zipkin because AsyncReporter and Sender extend zipkin2.Component among other things.

AsyncReporter

import zipkin2.Call;
import zipkin2.CheckResult;
import zipkin2.Component;
import zipkin2.Span;
import zipkin2.codec.BytesEncoder;
import zipkin2.codec.SpanBytesEncoder;

Sender

import zipkin2.Call;
import zipkin2.Component;
import zipkin2.codec.BytesEncoder;
import zipkin2.codec.Encoding;

We can't avoid a runtime dependency on io.zipkin.zipkin2:zipkin until some alternative surfaces. One way could be to extract simpler generic types that supports both brave and the old call sites without the Call abstraction.

codefromthecrypt avatar Oct 08 '20 11:10 codefromthecrypt

when this is done, we should update here as cassandra's jar went from 200->420k for reasons including this https://github.com/openzipkin/brave-cassandra/edit/master/cassandra/README.md

codefromthecrypt avatar Nov 28 '20 23:11 codefromthecrypt