zipkin-reporter-java
zipkin-reporter-java copied to clipboard
zipkin-reporter-brave implementation has a sneaky dependency on zipkin2
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.
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