Configure maven-shade-plugin to "internalize" the Netty dependency: this removes the dependency in the POM, and copies all the classes into driver-core with a renamed package.
This avoids dependency hell for people who use a different Netty version in their app.
We can't do that for Metrics and Guava because they are exposed in the driver's public API.
I assume we'll have to do this for 2.1.x too?
Yes, it will get merged to the 2.1 branch.
: not much to test on this one, it will be covered implicitly by duration tests (which I've tried locally already).
Verified after Following 's tests :
pom.xml still mentions netty as a dependency but (see next point)
mvn dependency:tree in client project does not show netty as a dependency anymore
javap -c in classes like Connection of the packaged jar only show references to com.datastax.shaded.netty classes