* Added publish configurations in build file.
* Changed cronet dependency to cronet-api for implementation, only use full cronet implementation provider for testing.
* Set minSdkVersion to 16 as cronet dependency requires that.
* Added errorprone plugin.
* Use reflection to load and invoke setTrafficStats* and addRequestAnnotation methods for ExperimentalBidirectionalStream.Builder.
* Load reflection method lazily and cache for later usages.
* Fixed mistaken method invocation for privateKeyId getter/setter.
* Added test coverage to verify jwt credentials are applied to request metadata correctly.
* No need to expose serviceUri method for testing.
NETTY_LOCAL seem to have a flow control issue. Disable it since we don't
really look at it very often and we care about the
streamingCallsMessageThroughput benchmark.
This replaces FlowControlledMessagesPerSecondBenchmark, except it does not
avoid local flow control issues via request(5). If hacking in a request(5),
this benchmark produces similar results (non-direct: 671k vs previously 641k
msg/s).
This is equivalent to UnaryCallResponseBandwidthBenchmark and
StreamingResponseBandwidthBenchmark, although without the interface selection
logic (which allows for traffic shaping).
TearDown is guaranteed to execute after Setup; there is no synchronization
necessary. Although the volatile doesn't hurt anything functionally, it is
misleading and confusing.
It is basically the same as TransportBenchmark without protobuf, smaller
payload, and only Netty. It does show latencies around 66 µs instead of
TransportBenchmark's 70 µs on my laptop, but a quick conversion of
TransportBenchmark to ByteBufOutputMarshaller made it 66 µs as well.
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