This can be used to prevent duplicate classes in the classpath, one via
Maven and one via Bazel-native.
See census-instrumentation/opencensus-java#1963 and #5359
* Added missing Javadoc for public methods, deprecate fromBuilder and replace with usingBuilder.
* Removed unnecessary final keyword for static methods.
* call usingBuilder in deprecated fromBuilder
* Changed Javadoc description for usingBuilder method.
* Implemented an XdsNameResolver that always returns a hard-coded service config
* Implemented XdsNameResolverProvider
* Added unit tests for XdsNameResolver and XdsNameResolverProvider
* Added META-INF file for XdsNameReresolverProvider
* Removed balancer name field in hard-coded service config
* Changed URI scheme to xds-experimental.
* Deleted unnecessary executors for running name resolution in a separate thread.
* Fixed nits.
* Fixed usage of GrpcUtil.getDefaultProxyDetector() as it was deleted.
* Removed unnecessary shutdown implementation.
* Replaced return with AssertionError as it hard-coded service config should never have error.
* Removed unused name resolver args.
* Added tail blank line.
* android: fix Javadoc symbol/class not found errors
* Removed redundant join, files API can already handle list.
* Replace usage of javaCompile with javaCompileProvider
* Avoid afterEvaluate by filling javadocs.classpath in android configuration.
* Construct FileCollection via files(Closure), which delays the file resolution.
* okhttp: add PerfMark tracing for okhttp transport
* change task for AsyncSink to give more accurate task description
* add final to field tag
* add PerfMark dependency in okhttp package bazel
This fixes the following warning when building grpc-android:
WARNING: API 'variant.getJavaCompiler()' is obsolete and has been replaced with 'variant.getJavaCompileProvider()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
To determine what is calling variant.getJavaCompiler(), use -Pandroid.debug.obsoleteApi=true on the command line to display a stack trace.
Http2ControlFrameLimitEncoder is from Netty. It is copied here as a
temporary measure until we upgrade to the version of Netty that includes
the class.
See CVE-2019-9515
* xds: do not add a new CallMetricRecorder instance to context if there is already one
* save a local reference to CallMetricRecorder instance to allow ServerCall#close() being called in a different context
* added test coverage for having ServerInterceptor/ServerStreamTracerFactory both install CallMetricRecorder
ServerImpl uses that ticker to create incoming Deadlines. This feature is specifically restricted to in-process, as it can also customize ScheduledExecutorService, and them together can fake out the clock which is useful in tests. On the other hand, a fake Ticker won't work with Netty's ScheduledExecutorService.
Also improved mismatch detection, documentation and tests in Deadline.
Fixes#5593 and supersedes #5601
Now that https://github.com/census-instrumentation/opencensus-java/pull/1854 has been merged & released as 0.21.0. We can start using the method & status tags.
Background:
Opencensus introduced new tags for status and method (https://github.com/census-instrumentation/opencensus-java/pull/1115). The old views that used those tags were deprecated and new views were created that used the new tags. However grpc-java wasn't updated to use the new tags due to concern of breaking existing metrics. This resulted in the old views being deprecated while the new views were broken (goomics #50).
https://github.com/census-instrumentation/opencensus-java/pull/1854 added a compatibility layer to opencensus that would remap new tags to old tags for old views. This should unblock grpc to switching to the new tags while allowing old views to still be populated. That commit was released as part of opencensus 0.21, which grpc currently uses
This makes Deadline more test-friendly. Next step is to allow
ServerBuilder to take a custom Ticker and use it for creating
incoming Deadlines. With both changes in, application logic will be
able to verify the Deadlines they set.
* Added methods in CallMetricRecorder accessor for accessing context key and creating new CallMetricRecorder instance.
* Added impl for a server interceptor that records and sends custom metric values to client side.
* Added unit test for the server interceptor.
* Modified dependencies to have xds package depends on grpc-services (for CallMetricRecorder) and grpc-testing-proto (for testing proto).
* Changed usage of GrpcServerRule to GrpcCleanupRule.
* make constant fields static
* use GrpcCleanupRule to register InProcessChannel to avoid manual shutdown.
* Make class public and match the usage of grpclb's load reporting server tracer.
* added ExperimentalApi annotation
* services: implement a lb policy agnostic call metric recorder for backend applications.
* Renamed snapshot() to finalizeAndDump() and make it package-private with an internal accessor class.
* Added Javadoc link for Context.
* Added ExperimentalApi annotation.
* Added since annotations.
* compiler: Use 'SERVICE_NAME' instead of duplicated '$Package$$service_name$'
* compiler: Align indentation
* Fix typo
* Add modified golden files and all re-generated code to meet Travis CI and Windows build requirements
See PR #5943
* Polishing