* Update gradle dependencies and module name
* Replace Tracer.withSpan() with currentContextWith()
* Update inject to 0.3.0
* Update extract to 0.3.0
* More updates
* Remove distributedcontext package refs
* Update OpenTelemetry API interoperability
* No need to call setNoParent()
setParent(SpanContext.getInvalid()) should give the same result.
* Update dependency version
* Change getTracerFactory to getTracerProvider
* Update some imports
* Change put to set
* Fix up bridge
* Update package names
* Update test SpanProcessor
* Remove null conditionals around setAttribute
* Update shading
* Update span context extraction
* Rename hibernate modules
* Update tracer name
* Change from gradle inheritance to composition
This will make it possible to have empty "grouping" modules, e.g.
instrumentation:hibernate.
* Introduce empty hibernate grouping module
* Integrate SpotBugs (FindBugs) into build. Set ignoreFailures so spotted bugs do not break the build.
* Fix many SpotBugs-found items, mostly making things final, but also a redundant null check and a reliance on platform character encoding. 2 items remain which will need further work/review, but as ignoreFailures is set, they will not fail the check stage.
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Pulls out utility classes for reuse by other projects.
This also meant the dependency had to be bundled with dd-trace-ot since it isn't published as a separate dependency.
Reduced the size of dd-java-agent jar by about 2 MB. Jackson is not removed completely though as it is still a dependency of jmxfetch.
Trace serialization is primarily done directly with msgpack.
Response deserialization and LoggingWriter serialization is done with mochi.
Msgpack Serialization buffer still not being reused though.