aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-devtools/go/grpc-go_git.bb
AgeCommit message (Collapse)Author
2023-11-07grpc-go: Upgrade 1.41.0 -> 1.59.0Peter Marko
CVE: CVE-2023-44487 Bumping grpc-go to version v1.59.0, which comprises the following commits: 7765221f Change version to 1.59.0 (#6695) e88f12e0 server: prohibit more than MaxConcurrentStreams handlers from running at once (#6703) (#6704) be7919c3 transport: Pass Header metadata to tap handle. (#6652) e3f1514c Reapply "status: fix/improve status handling (#6662)" (#6673) (#6688) 696faa98 client: add a test for NewSubConn / StateListener / cc.Close racing (#6678) 318c717a readme: fix badges (#6687) 39972fdd github: add code coverage with codecov.io (#6676) 93dbc059 xds: move virtual host matcher test to the xdsresource package (#6680) 2c004697 github: update actions/setup-go and actions/checkout (#6675) 1f73ed5f Replace the gRFC pull request with the permanent link. (#6674) 9e1fc3e9 Revert "status: fix/improve status handling (#6662)" (#6673) 0772ed73 status: fix/improve status handling (#6662) 1466283c internal/idle: add a test that invokes ClientConn methods concurrently (#6659) fd9ef726 interop: implement rpc-behavior for UnaryCall() (#6575) c6264a9f examples: add an example of flow control behavior (#6648) ee4b62c7 encoding: fix mention of DecompressedSize in docstring (#6665) 09792b58 test: move codec tests to a separate file (#6663) 57cb4d80 internal/backoff: add a helper to run a function with backoff (#6661) 5e4402ff attributes: avoid the use of %#v formatting verb (#6664) 147bd859 balancer: add a warning for balancer names that contain upper case letters (#6647) 4ced6016 googlec2p: remove support for the experimental scheme (#6645) a758b625 xds/googledirectpath: fix google-c2p resolver test case involving bootstrap env config (#6657) e61a14d7 fix testing parameter on xds_client_custom_lb_test (#6646) 58e2f2b1 attributes: print typed nil values instead of panic (#6574) fe0dc227 interop/grpc_testing: regenerate pb.gos (#6653) 130bc428 Improve testutils.MarshalAny (#6617) 3156151a grpclb: teach the manual resolver to handle restarts (#6635) 1457a961 balancer/weightedroundrobin: fix ticker leak on update (#6643) 92f5ba97 xdsclient: completely remove the old WatchCluster API (#6621) 94d8074c grpclb: some minor cleanups (#6634) 1880bd6f resolver/manual: support restarts, required for channel idleness (#6638) 9deee9ba idle: use LB policy close event as a proxy for channel idleness (#6628) 2d1bb21e grpc: ensure transports are closed when the channel enters IDLE (#6620) 552525e5 interop/xds_federation: remove binary file (#6622) 82a568dd cdsbalancer: switch cluster watch to generic xDS client API (#6600) 03172006 health/grpc_health_v1: update pb.go (#6616) 57dcb71f interop/xds: improve error message (#6614) 254bccb3 idle: decrement active call count for streaming RPCs only when the call completes (#6610) b0a946cf xds: fix hash policy header to skip bin headers and use extra metadata (#6609) 1e0d82e9 balancer/leastrequest: Cache atomic load and also add concurrent rpc test (#6602) 8eb4ac4c grpc: Change server stream context handling (#6598) e498bbc9 leastrequest: fix data race in leastrequest picker (#6587) 778e6381 balancergroup: improve observability around balancer cache behavior (#6597) aa6ce35c vet: ensure all usages of grpc_testing package are renamed when importing (#6595) d045b41c interop/grpc_testing: regenerate pb.gos (#6596) 61b7baa4 grpc_test: rename import for grpc_testing (#6594) 18059002 deps: update dependencies for all modules (#6582) 9362f261 grpc: re-enable channel idleness by default (#6585) 8b1a6710 stream: swallow Header errors as we used to; RecvMsg can still return it (#6586) 23ac72b6 update pb.gos by running regenerate.sh (#6584) 2ce7ecd1 cdsbalancer: test cleanup part 3/N (#6564) 7afbb9b9 Change version to 1.59.0-dev (#6581) 4c9777ce clusterresolver: fix deadlock when dns resolver responds inline with update or error at build time (#6563) 81b9df23 idle: move idleness manager to separate package and ~13s of tests into it (#6566) 7d35b8ec test: speed up TestServiceConfigTimeoutTD from 1.8s to 0.03s (#6571) d51b3f41 interop/grpc_testing: update protos from grpc-proto repo (#6567) fe1519ec client: fix ClientStream.Header() behavior (#6557) 8a2c2205 cdsbalancer: test cleanup part 2/N (#6554) 7f66074c vet.sh: fix interface{} check for macos (#6561) b07bf5d0 cdsbalancer: test cleanup part 1/N (#6546) 33f9fa2e test: speed up two tests (#6558) aca07ce9 xds/internal/xdsclient: Add least request support in xDS (#6517) e5d8eac5 test: improve and speed up channelz keepalive test (#6556) ebf0b4e3 idle: speed up test by 5x even while running 2x more iterations (#6555) 7d3996fd grpctest: use an interface instead of reflection (#6553) cc705fe4 interop: regenerate pb.gos (#6551) 3e925040 status: optimize GRPCStatus() calls (#6539) 402ba09a pick_first: de-experiment pick first (#6549) 2821d7fa resolver: remove outdated Target examples (#6547) 53d1f23a benchmark: update proper benchmark binary to use larger buffers (#6537) fbff2abb *: update `interface{}` to `any` and `go.mod` version to `go 1.19` (#6544) e40da661 clientconn: release lock when returning from enterIdleMode() (#6538) dbbc983c balancer/leastrequest: Add least request balancer (#6510) a0100790 *: remove references to old versions of go (#6545) 03d32b9c orca: update example and interop to use StateListener (#6529) c2bc22c7 testing: update Go versions tested to 1.19-1.21 (#6543) 879faf6b test: update client state subscriber test to be not flaky and more stressful about rapid updates (#6512) f3e94ec1 xds: improve error message when matched route on client is not of type RouteActionRoute (#6248) bb410670 balancergroup: do not cache closed sub-balancers by default (#6523) 68704f8e gracefulswitch, stub: remove last UpdateSubConnState references (#6533) 49006996 balancer/rls, xds/wrrlocality: stop forwarding UpdateSubConnState calls (#6532) ebc3c514 internal/balancergroup: remove usage of UpdateSubConnState (#6528) 5da2731c balancer/weightedtarget: stop forwarding UpdateSubConnState calls (#6525) 182b0add interop/grpc_testing: regenerate protos (#6534) e2741524 rls: fix flaky test introduced by #6514 (#6535) 61a1f779 balancer/weightedroundrobin: migrate to StateListener (#6530) 175c84c1 xds/ringhash: use StateListener instead of UpdateSubConnState (#6522) 3fa17cc1 test: speed up test that was taking 10 seconds to timeout (#6531) 694cb64c xds/clusterresolver: stop forwarding UpdateSubConnState calls (#6526) 8f51ca8f tests: stop using UpdateSubConnState (#6527) cea77bb0 xds/clustermanager: stop forwarding UpdateSubConnState calls (#6519) ce684134 xds/priority: stop forwarding UpdateSubConnState calls (#6521) dceb6eef xds/clusterimpl: stop forwarding UpdateSubConnState calls (#6518) 8def12a4 xds/outlierdetection: Stop handling UpdateSubConnState forwarding (#6520) 67a8e73f multiple/test: use stub balancer instead of defining wrapped balancers (#6514) 92b481a6 test: allow set request/response size in interop soak test (#6513) 07609e1b benchmark: restore old buffer size values for published benchmarks (#6516) 2059c6e4 grpc: report connectivity state changes on the ClientConn for Subscribers (#6437) 4832debd test: clean up deadlines set in tests (#6506) 9c46304f xds/cdsbalancer: stop handling subconn state updates (#6509) e9a4e942 base: update base balancer for new APIs (#6503) 6c0c69ef all: replace RemoveSubConn with Shutdown as much as possible (#6505) 28ac6efe xdsclient: make watch timer a no-op if authority is closed (#6502) d06ab0d4 pickfirst: receive state updates via callback instead of UpdateSubConnState (#6495) 7aceafcc balancer: add SubConn.Shutdown; deprecate Balancer.RemoveSubConn (#6493) 4fe8d3d3 balancer: fix tests not properly updating subconn states (#6501) 8ebe4620 outlierdetection: fix unconditional calls of child UpdateSubConnState (#6500) 5d3d9d7c grpc: perform a blocking close of the balancer in ccb (#6497) ecc5645b clusterresolver: fix a flaky test (#6499) b9356e3d client: fix race between connection error and subconn shutdown (#6494) 2db7b17a test/xds: increase default test timeout (#6498) 8f496b2a test/kokoro: Add bootstrap generator test into Go Kokoro script (#6463) 02463732 testutils: remove TestSubConns for future extensibility (#6492) c6354049 balancer: add StateListener to NewSubConnOptions for SubConn state updates (#6481) 94df716d resolver: State: add Endpoints and deprecate Addresses (#6471) 20c51a9f pickfirst: add tests for resolver error scenarios (#6484) b8d36caf pickfirst: add prefix logging (#6482) 5ce5686d pickfirst: guard config parsing on GRPC_EXPERIMENTAL_PICKFIRST_LB_CONFIG (#6470) 41d12327 resolver/weighted_round_robin: remove experimental suffix from name (#6477) 2aa26156 clusterresolver: comply with A37 for handling errors from discovery mechanisms (#6461) d7f45cdf xds/server: create the xDS client when the xDS enabled gRPC server is created (#6446) f1fc2ca3 clientconn: add channel ID to some idleness logs (#6459) 9bb44fbf transport: use a sync.Pool to share per-connection write buffer (#6309) d524b409 multiple: update dependencies after 1.57 branch cut (#6452) 7aab9c05 stats: Add RPC event for blocking for a picker update (#6422) 02946a3f resolver: remove deprecated AddressType (#6451) 919fe359 Change version to 1.58.0-dev (#6450) 94890820 github: replace deprecated command with environment file (#6417) d1868a53 clusterresolver: add logs for dns discovery mechanism error cases (#6444) 8e9c8f8e grpc: do not use balancer attributes during address comparison (#6439) db32c5bf Fix preloader mode in benchmarks (#6359) f0280f9d xds: require EDS service name in new-style CDS clusters (gRFC A47) (#6438) bf5b7aec clusterresolver: handle EDS nacks and resource-not-found errors correctly (#6436) fc0aa468 client: encode the authority by default (#6428) 11feb0a9 resolver: delete Target.Scheme and Target.Authority (#6363) df3e0214 status: fix panic when servers return a wrapped error with status OK (#6374) acbfcbb8 internal/grpcsync: refactor test (#6427) 51042db7 internal/grpcsync: Provide an internal-only pub-sub type API (#6167) 620a118c xds/internal/balancer/clusterimpl: Switch cluster impl child to graceful switch (#6420) 6b8f4274 orca: remove useless log statement (#6424) ea492f55 xdsclient: indicate authority serverURI in authority + transport logs (#6425) 67e881c3 xds: E2E Test for Audit Logging (#6377) 07718ef6 internal/xds/rbac: Add support for string matcher in RBAC header matching (#6419) 575a9365 xds: Fail xDS Server Serve() if called after Stop() or GracefulStop() (#6410) 7eb57278 xds: switch EDS watch to new generic xdsClient API (#6414) e8599844 server: with TLS, set TCP user timeout on the underlying raw connection (#5646) (#6321) 1634254a rpc_util: Reuse memory buffer for receiving message (#5862) 789cf4e3 reflection: rename proto imports for disambiguation in import script (#6411) 0673105e clusterresolver: switch a couple of tests to e2e style (#6394) 0b3a81ea clusterresolver: remove priority LB related tests (#6395) dd931c80 xds: clusterresolver e2e test cleanup (#6391) 10f5b50a [PSM interop] Don't fail target if sub-target already failed (#6390) 963238a6 clusterresolver: move tests around to different files (#6392) f24b4c7e clusterresolver: remove redundant tests (#6388) a9c79427 benchmark: Add support for Poisson load in benchmark client (#6378) dd350d02 stats/opencensus: Fix flaky metrics test (#6372) 642dd63a reflection: expose both v1 and v1alpha reflection services (#6329) 3c6084b7 xds/outlierdetection: fix config handling (#6361) 3e8eca80 Revert "client: encode the authority by default (#6318)" (#6365) 1c0572a5 benchmark: fix package used to reference service to use grpc suffix instead of pb (#6362) 7a7caf36 protoc-gen-go-grpc: Update README.md file (#6349) 89790ea9 grpclb: fix typo (#6356) 907bdaa1 alts: Read max number of concurrent ALTS handshakes from environment variable. (#6267) 2ac1aaed weightedroundrobin: prefer application_utilization to cpu_utilization (#6358) 7aeea8f4 orca: add application utilization and range checking (#6357) 6578ef72 client: handle empty address lists correctly in addrConn.updateAddrs (#6354) 761c084e xds/ringhash: cache connectivity state of subchannels inside picker (#6351) 1b666637 benchmark: Add sleepBetweenRPCs and connections parameters (#6299) 81c513a4 opencensus: stop overwriting ctx parameter in tests (#6350) 68576b3c client: encode the authority by default (#6318) c9d3ea56 deps: google.golang.org/genproto to latest in all modules (#6319) 02188e64 Change version to 1.57.0-dev (#6346) 8edfa1a1 authz: End2End test for AuditLogger (#6304) 2b1d70be xds: enable RLS in xDS by default (#6343) 47f8ed81 interop: Don't fail target if sub-target already failed (#6332) 1f23f6c2 client: fix Connect to handle channel idleness properly (#6331) 3ea58ce4 client: disable channel idleness by default (#6328) 6c2529bc xds: support pick_first custom load balancing policy (A62) (#6314) 9b9b364f internal/envconfig: Set Custom LB Env Var to true by default (#6317) e325737c alts: Fix flaky ALTS TestFullHandshake test. (#6300) 4d3f221d xds/internal/xdsclient: Add support for String Matcher Header Matcher in RDS (#6313) 157db190 stats/opencensus: Fix flaky test span (#6296) f19266cc xds: support built-in Stdout audit logger type (#6298) 59134c30 client: add support for pickfirst address shuffling from gRFC A62 (#6311) a6e1acfc grpc: support sticky TF in pick_first LB policy (#6306) 2ae10b28 xdsclient: remove interface check related to ResourceData (#6308) e9799e79 client: support a 1:1 mapping with acbws and addrConns (#6302) 2a266e78 authz: use pointer to to structpb.Struct instead of value (#6307) 511a9635 interop: let the interop client send additional metadata, controlled by a flag (#6295) 9b7a947c grpc: support channel idleness (#6263) 098b2d00 xds/internal/balancer/outlierdetection: Switch Outlier Detection to use new duration field (#6286) 417d4b68 examples: add error_handling example; move errors to error_details (#6293) 390c392f authz: Rbac engine audit logging (#6225) 52fef6da authz: Stdout logger (#6230) 92e65c89 test/kokoro: Add custom_lb_test to the xds_k8s_lb job (#6290) 756119c7 xds/outlierdetection: forward metadata from child picker (#6287) 8eba9c2d github: upgrade to v3 of checkout & setup-go (#6280) 24fd2521 proto: update generated code to match grpc-proto changes (#6283) 4eb88d7d cleanup: use new Duration type in base ServiceConfig (#6284) 1230f0e4 xds/internal/xdsclient: Split registry up and two separate packages (#6278) 0bdae480 interop: fix interop_test.sh shutdown (#6279) 5dcfb37c interop: hold lock on server for OOB metrics updates; share 30s timeout (#6277) 68381e7b xds: WRR in xDS (#6272) fd376a5c test: fix flaky TimeoutOnDeadServer test; some cleanups (#6276) 1db474c8 weightedroundrobin: fix duration format in lb config (#6271) 523dcddf weightedroundrobin: fix test race accessing timeNow (#6269) 1536887c interop/xds: Add Custom LB needed for interop test (#6262) 7d613442 examples: fix authz example to receive streaming error properly (#6270) afcbdc9a xds/internal/xdsclient/xdslbregistry: Continue in converter if type not found (#6268) b3fbd87a interop: add ORCA test cases and functionality (#6266) 5e587344 xds: Add support for Custom LB Policies (#6224) 5c4bee51 balancer/weightedroundrobin: add load balancing policy (A58) (#6241) c44f77e1 grpc: use CallbackSerializer in balancer wrapper (#6254) f193ec01 orca: fix race when calling listeners coincides with updating the run goroutine (#6258) 417cf846 test: deflake TestBalancerProducerHonorsContext (#6257) 1f3fe1c8 Update ClientStream.SendMsg doc (#6247) ccad7b75 grpc: use CallbackSerializer in resolver_wrapper (#6234) 47b3c554 orca: fix race at producer startup (#6245) 56b33d5c server/transport: send appropriate debug_data in GOAWAY frames (#6220) add90153 orca: allow a ServerMetricsProvider to be passed to the ORCA service and ServerOption (#6223) 40d01479 googledirectpatph: enable ignore_resource_deletion in bootstrap (#6243) ed3ceba6 balancer: make producer RPCs block until the SubConn is READY (#6236) b153b006 multiple: standardize import renaming for typed structs (#6238) 713bd041 orca: minor cleanups (#6239) 21a339ce grpc: handle RemoveSubConn inline in balancerWrapper (#6228) b1538271 xds: make glaze happy for test packages (#6237) 019acf2e stubserver: add option for allowing more services to be registered (#6240) cf89a0b9 authz: Swap to using the correct TypedConfig in audit logger parsing (#6235) df821471 internal: Document gcp/observability 1.0 dependencies in /internal (#6229) da1a5eb2 tests: nix TestClientDoesntDeadlockWhileWritingErroneousLargeMessages (#6227) e853dbf0 authz: add conversion of json to RBAC Audit Logging config (#6192) 497436ce xds/internal/balancer/outlierdetection: Change string to String (#6222) de11139a clusterresolver: improve tests (#6188) eff0942e xds/internal/xdsclient: Custom LB xDS Client Changes (#6165) 8628e075 xds/internal/balancer/outlierdetection: Add Channelz Logger to Outlier Detection LB (#6145) 83c460b8 authz: Move audit package (#6218) 8c70261b grpc: ClientConn cleanup in prep for channel idleness (#6189) 2cd95c75 gcp/observability: remove redundant import (#6215) 16651f60 go.mod: update all dependencies (#6214) ca604628 stubserver: Stop server when StartClient failed (#6190) 7dfd7183 internal/buffer: add Close method to the Unbounded buffer type (#6161) ebeda756 tests: defalke TestTimerAndWatchStateOnSendCallback (#6206) 0ed709c4 Change version to 1.56.0-dev (#6213) 875c97a9 examples/features/observability: use observability module v1.0.0 (#6210) aa8c137d authz: add audit logging APIs (#6158) b91b8842 gcp/observability: Have o11y module point to grpc 1.54 and opencensus 1.0.0 (#6209) eab9e20d test/kokoro: increase PSM Security test timeout to 4h (#6193) d90621f9 remove the unnecessary call to ResetTimer and StopTimer (#6185) fe72db95 testing: add helpers to start test service, and retrieve port (#6187) 5a50b970 Revert "Revert "credentials/alts: defer ALTS stream creation until handshake …" (#6179) 89ec9609 grpc: read the service config channel once instead of twice (#6186) 6237dfe7 internal/stubserver: Close Client Conn in error handling of Start (#6174) 06de8f85 alts: Add retry loop when making RPC in ALTS's TestFullHandshake. (#6183) 6eabd7e1 server: use least-requests loadbalancer for workers (#6004) 8374ff8f Export the unwrapResource method, to allow callers outside of the package (#6181) efb2f459 test/xds: Fix test_grpc import path (#6180) 81b30924 security/advancedtls: add TlsVersionOption to select desired min/max TLS versions (#6007) 17b693d7 alts: Perform full handshake in ALTS tests. (#6177) 01f8b866 Add documentation on some anti-patterns (#6034) 3489bb7d xdsclient/test: deflake TestWatchResourceTimerCanRestartOnIgnoredADSRecvError (#6159) bfb57b8b testing: delete internal copy of test service proto, and use canonical one (#6164) 10401b92 stats/opencensus: the backend to Sent. Attempt. and Recv. (#6173) b0a8b1b9 Use string instead of enum for xds resource type (#6163) 1d5b73a1 xds: add stop to avoid hanging in TestServeWithStop (#6172) ea0a0383 xds/xdsclient: ignore resource deletion as per gRFC A53 (#6035) a51779df xdsclient/test: deflake TestTimerAndWatchStateOnSendCallback (#6169) e9799199 internal/grpcsync: move CallbackSerializer from xdsclient/internal to here (#6153) c2899ddd examples/features/observability: Point o11y example to latest gcp/observability module (#6162) 113d75fb gcp/observability: Add isSampled bool to log entries (#6160) 4a125956 stats/opencensus: Switch helper to return Span Context from context (#6156) c3f1d5e5 gcp/observability: Set the opencensus_task label only for metrics, not tracing and logging (#6155) 42dd7ac9 Use anypb.New instead of ptypes.MarshalAny (#6074) 415ccdf1 go.mod: update all dependencies after 1.54 branch cut (#6132) a357bafa status: FromError: return entire error message text for wrapped errors (#6150) 44cebb8f xds: enable XDS federation by default (#6151) c018273e examples: Add observability example (#6149) 277bb642 Revert "credentials/alts: defer ALTS stream creation until handshake time (#6077)" (#6148) 0fdfd402 gcp/observability: Generate unique process identifier unconditionally (#6144) 1d20f1b5 security/advancedtls: swap from deprecated pkix.CertificateList to x509.RevocationList (#6054) a8a25ce9 transport: use prefix logging (#6135) 9c25653b cdsbalancer: improve log messages (#6134) a02aae61 CONTRIBUTING.md: remove duplicated bullet point (#6139) cdab8ae5 clusterresolver: push empty config to child policy upon removal of cluster resource (#6125) 7651e620 transport: add a draining state check before creating streams (#6142) a2ca46c4 examples: organize READMEs better (#6121) 4efec30e stats/opencensus: remove leading slash for per call metrics (#6141) 78099db0 gcp/observability: Switch hex encoding to string() method (#6138) 70c52915 observability: remove import replace directive and switch it to point to latest commit (#6122) 66e35339 status: handle wrapped errors (#6031) a75fd73d Change version to 1.55.0-dev (#6131) b638faff stats/opencensus: Add message prefix to metrics names (#6126) c84a5005 credentials/alts: defer ALTS stream creation until handshake time (#6077) 6f44ae89 metadata: add benchmark test for FromIncomingContext and ValueFromIncomingContext (#6117) a1e657ce client: log last error on subchannel connectivity change (#6109) 36fd0a43 gcp/observability: Add compressed metrics to observability module and synchronize View data with exporter (#6105) 52ca9571 xds: make comparison of server configs in bootstrap more reliable (#6112) 7507ea6b gcp/observability: Change logging schema and set queue size limit for logs and batching delay (#6118) 16c3b7df examples: add example for ORCA load reporting (#6114) b458a4f1 transport: stop always closing connections when loopy returns (#6110) 11e2506c tests: Scale down keepalive test timings (#6088) 5796c409 interop/observability: Pass interop parameters to client/server as-is (#6111) abd4db22 xdsclient/tests: fix flaky test NodeProtoSentOnlyInFirstRequest (#6108) 3633361c tests: support LRS on the same port as ADS (#6102) 0558239a Update CONTRIBUTING.md (#6089) 22608213 go.mod: upgrade golang.org/x/net to address CVE-2022-41723 (#6106) 60a1aa38 testutils: add support for creating endpoint resources with options (#6103) 92d9e77a xds: NACK route configuration if sum of weights of weighted clusters exceeds uint32_max (#6085) d02039b6 Deflake the integration test. (#6093) 55d87834 gcp/observability: Link logs and traces by logging Trace and Span IDs (#6056) ad4057fc transport: stop returning errors that are always nil (#6098) 558e1b6f examples/authz: add token package docstring (#6095) 33df9fc4 credentials/xds: improve error message upon SAN matching failure (#6080) 32921935 xdsclient: handle race with watch timer handling (#6086) e83e34be xds/resolver/test: use a non-blocking send instead of closing the channel (#6082) b46bdef1 interop/observability: add GCP Observability Testing Client/Server (#5979) f3116846 stats/opencensus: New uncompressed metrics and align with tracing spec (#6051) cc320bf8 grpc: Log server trailers before writing status (#6076) b9e6d59a xdsclient: send Node proto only on first discovery request on ADS stream (#6078) ae4a2315 ringhash: ensure addresses are consistenly hashed across updates (#6066) 52dcd147 xdsclient: move tests from `e2e_test` to `tests` directory (#6073) d8f80bb0 stats/opencensus: Added client api latency and upgrade go.mod (#6042) a8b32264 gcp/observability: Disable logging and traces on channels to cloud ops backends (#6022) 20141c25 examples: add an example to illustrate authorization (authz) support (#5920) 8c374f76 clusterresolver: cleanup resource resolver implementation (#6052) 1d16ef5b metadata: Lowercase appended metadata (#6071) 8ba23be9 cmd/protoc-gen-go-grpc: bump -version to 1.3.0 for release (#6064) a1693ec5 fakeserver: remove ADS and LRS v2 support (#6068) 832ecc25 channelz: use protocmp.Transform() to compare protos (#6065) 28b6bcf9 xds/xdsclient: improve failure mode behavior (gRFC A57) (#5996) d53f0ec3 test: move compressor tests out of end2end_test.go (#6063) dba41efd metadata: fix validation issues (#6001) 75bed1de test: move e2e health checking tests out of end2end_test.go (#6062) 0586c51d internal/transport: reduce running time of test from 5s to 1s (#6061) 7437662f internal/transport: Fix flaky keep alive test (#6059) 681b1338 admin/test: split channelz imports (#6058) 1093d3ac channelz: remove dependency on testing package (#6050) 3775f633 xdsclient/transport: reduce chattiness of logs (#5992) 6fe609da xdsclient: minor cleanup in eds parsing (#6055) 5353eaa4 testing: add helpers to configure cluster specifier plugin type (#5977) 8702a2eb stats/opencensus: Add top level call span (#6030) 85b95dc6 gcp/observability: Register new views (#6026) abff344e stats/opencensus: Add per call latency metric (#6017) 0f02ca5c gcp/observability: Switch observability module to use new opencensus instrumentation code (#6021) 6d612a3e resolver: update Resolver.Scheme() docstring to mention requirement of lowercase scheme names (#6014) 30d8c0a0 xds/internal/xdsclient: NACK empty clusters in aggregate clusters (#6023) 081499f2 xds: remove support for v2 Transport API (#6013) dd12def8 stats/opencensus: Add OpenCensus traces support (#5978) f4feddb3 github: update tests to use go version 1.20 (#6020) 81534105 client: Add dial option to disable global dial options (#6016) 55dfae6e resolver: document handling UpdateState errors by resolvers (#6002) ceb3f071 client: Revert dialWithGlobalOption (#6012) d655f404 internal/transport: fix severity of log when receiving a GOAWAY with error code ENHANCE_YOUR_CALM (#5935) b81e8b62 metadata: slightly improve operateHeaders (#6008) e9d9bd04 tests: reduce the degree of stress testing in long running tests (#6003) f8552261 github: update codeQL action to v2 (#6009) f69e9ad8 stats/opencensus: Add OpenCensus metrics support (#5923) 3151e834 cmd/protoc-gen-go-grpc: export consts for full method names (#5886) d6dabba0 xds/server: reduce chattiness of logs (#5995) 09540972 server: expose API to set send compressor (#5744) a7058f7b xds/csds: switch tests to use the new generic xdsclient API (#6000) 37111547 xdsclient/bootstrap: reduce chattiness of logs (#5991) d103fc70 xdsclient/xdsresource: reduce chattiness of logs (#5993) 6a707eb1 client: add an option to disable global dial options (#5990) c813c17a Change version to 1.54.0-dev (#5985) 2a1e9348 server: after GracefulStop, ensure connections are closed when final RPC completes (#5968) e2d69aa0 tests: fix spelling of variable (#5966) a6376c98 xds/resolver: cleanup tests to use real xDS client 3/n (#5953) bf8fc46f xds/resolver: cleanup tests to use real xDS client 5/n (#5955) 3930549b resolver: replace resolver.Target.Endpoint field with Endpoint() method (#5852) 894816c4 grpclb: rename `grpclbstate` package back to `state` (#5962) e5a0237a encoding: fix duplicate compressor names (#5958) 4adb2a7a xds/resolver: cleanup tests to use real xDS client 2/n (#5952) 52a8392f gcp/observability: update method name validation (#5951) 4075ef07 xds: fix panic involving double close of channel in xDS transport (#5959) 7bf6a58a gcp/observability: Cleanup resources allocated if start errors (#5960) bc9728f9 xds/resolver: cleanup tests to use real xDS client 4/n (#5954) 6e749384 xds/resolver: cleanup tests to use real xDS client (#5950) 9b9b3812 server: fix a few issues where grpc server uses RST_STREAM for non-HTTP/2 errors (#5893) ace80823 xdsclient: close func refactor (#5926) 9326362a transport: fix maxStreamID to align with http2 spec (#5948) 4e4d8288 xds interop: Fix buildscripts not continuing on a failed test suite (#5937) 379a2f67 *: add missing colon to errorf messages to improve readability (#5911) cde2edce Revert "xds interop: Fix buildscripts not continuing on a failed test suite (#5932)" (#5936) 78ddc05d xdsclient: fix race in load report implementation (#5927) 2a9e970f xds interop: Fix buildscripts not continuing on a failed test suite (#5932) 9228cffc rls: fix a data race involving the LRU cache (#5925) be06d526 binarylog: consistently rename imports for binarylog proto (#5931) bf3ad352 *: update all dependencies (#5924) 6de8f50f transport: drain client transport when streamID approaches maxStreamID (#5889) 42b7b633 stats/opencensus: OpenCensus instrumentation api (#5919) 974a5ef8 grpc: document defaults in MaxCallMsgSize functions (#5916) 9b73c42d test/xds: add tests for scenarios where authority in resource name is not specified in bootstrap config (#5890) 3b2da532 xdsclient: handle resource not found errors correctly (#5912) f2fbb0e0 Deprecate use of `ioutil` package (#5906) 8ec85e42 priority: improve and reduce verbosity of logs (#5902) 12b8fb52 test: move e2e HTTP header tests to http_header_end2end_test.go (#5901) f1a9ef9c stream: update ServerStream.SendMsg doc (#5894) c90744f1 oauth: mark `NewOauthAccess` as deprecated and update examples to use `TokenSource` (#5882) 0e5421c1 internal/envconfig: add convenience boolFromEnv to improve readability (#5887) 4565dd70 ringhash: allow overriding max ringhash size via environment variable (#5884) 94a65dca rls: deflake tests (#5877) 08479c5e xdsclient: resource agnostic API implementation (#5776) 07ac97c3 transport: simplify httpClient by moving onGoAway func to onClose (#5885) 5ff7dfcd rls: propagate headers received in RLS response to backends (#5883) f94594d5 interop: add test client for use in xDS federation e2e tests (#5878) 68b388b2 balancer: support injection of per-call metadata from LB policies (#5853) 4f16fbe4 examples: update server reflection tutorial (#5824) b2d4d5db test: fix raceyness check to deflake test http server (#5866) 54b7d03e grpc: Add join Dial Option (#5861) 70617b11 vet & github: run vet separately from tests; make vet-proto only check protos (#5873) 81ad1b55 *: update all dependencies (#5874) 357d7afc Change version to 1.53.0-dev (#5872) a0e8eb9d test: rename race.go to race_test.go (#5869) ae86ff40 benchmark: fix typo in ClientReadBufferSize feature name (#5867) e53d28f5 xdsclient: log node ID with verbosity INFO (#5860) 9373e5cb transport: Fix closing a closed channel panic in handlePing (#5854) 2f413c45 transport/http2: use HTTP 400 for bad requests instead of 500 (#5804) 5003029e testutils: do a better job of verifying pick_first in tests (#5850) 3e27f899 binarylog: Account for key in metadata truncation (#5851) f54bba9a test/xds: minor cleanup in xDS e2e test (#5843) a9709c3f Added logs for reasons causing connection and transport close (#5840) aba03e1a xds: pass options by value to helper routines which setup the management server in tests (#5833) 638141fb examples: add feature/cancellation retry to example test script (#5846) 22c1fd2e deps: update golang.org/x/net to latest in all modules (#5847) 19490352 ringhash: add logs to surface information about ring creation (#5832) f7c110af test: remove use of deprecated WithInsecure() API (#5836) a2054471 examples: add new example to show updating metadata in interceptors (#5788) 001d234e rls: Fix regex in rls test (#5834) 73619713 rls: use a regex for the expected error string (#5827) 617d6c8a security/advancedtls: add test for crl cache expiration behavior (#5749) ef51864f grpclb: improve grpclb tests (#5826) fa99649f xdsclient: deflake new transport ack/nack tests (#5830) 99ba9823 transport/server: flush GOAWAY before closing conn due to max age (#5821) 20c937ee transport: limit AccountCheck tests to fewer streams and iterations to avoid flakes (#5828) 110ed9e6 xdsclient: resource-type-agnostic transport layer (#5808) c91396d4 pickfirst: do not return initial subconn while connecting (#5825) 94f0e7fa benchmark: add a feature for read and write buffer sizes (#5774) 087387ca Deflake Outlier Detection xDS e2e test (#5819) dd123b7f testutils/pickfirst: move helper function to testutils (#5822) be202a26 examples: add an example to illustrate the usage of stats handler (#5657) 9f97673b test: move e2e goaway tests to goaway_test.go (#5820) 0fe49e82 grpc: Improve documentation of read/write buffer size server and dial options (#5800) 09fc1a34 interop: update Go version in docker container used for psm interop (#5811) adfb9155 server: fix ChainUnaryInterceptor and ChainStreamInterceptor to allow retrying handlers (#5666) e0a9f111 reflection: split grpc and pb imports (#5810) 6f96f961 reflection: update proto (#5809) 6e43203e reflection: generate protobuf files from grpc-proto (#5799) 0abb6f9b xdsclient: resource type agnostic WatchResource() API (#5777) 3011eaf7 test/tools: update staticcheck version to latest (#5806) fefb3ec0 test/tools: update everything to latest versions except staticcheck (#5805) 50be6ae2 go.mod: update all dependencies (#5803) ff146806 Cap min and max ring size to 4K (#5801) 0238b6e1 transport: new stream with actual server name (#5748) 817c1e8c passthrough: return error if endpoint is empty and opt.Dialer is nil when building resolver (#5732) 56ac86fa xdsclient: wait for underlying transport to close (#5775) 457c2f54 benchmark: use default buffer sizes (#5762) 689d061d Cleanup usages of resolver.Target's Scheme and Authority (#5761) 5331dbd3 outlierdetection: remove an unused variable in a test (#5778) 81db2506 Change version to 1.52.0-dev (#5784) 72812fe3 gcp/observability: filter logging from cloud ops endpoints calls (#5765) 0ae33e69 xdsclient: remove unused test code (#5772) 824f4491 go.mod: upgrade x/text to v0.4 to address CVE (#5769) 7f23df02 xdsclient: switch xdsclient watch deadlock test to e2e style (#5697) 32f969e8 o11y: Added started rpc metric in o11y plugin (#5768) b597a8e1 xdsclient: improve authority watchers test (#5700) e41e8940 orca: create ORCA producer for LB policies to use to receive OOB load reports (#5669) 36d14dbf Fix binary logging bug which logs a server header on a trailers only response (#5763) fcb8bdf7 xds/google-c2p: validate url for no authorities (#5756) 040b795b xdsclient/e2e_test: use SendContext() where appropriate (#5729) 0d6481fb target: replace parsedTarget.Scheme to parsedTarget.URL.Scheme (#5750) fdcc01b8 transport/test: implement staticcheck suggestion (#5752) aa44ccaf google-c2p: use new-style resource name for LDS subscription (#5743) c858a770 balancer/weightedtarget: fix ConnStateEvltr to ignore transition from TF to Connecting (#5747) 64df6526 google-c2p: include federation env var in the logic which determines when to use directpath (#5745) 3c09650e balancer/weightedtarget: use ConnectivityStateEvaluator (#5734) 3fd80b0c Fix flaky test MultipleClientStatsHandler (#5739) 26071c24 google-c2p resolver: add authority entry to bootstrap config (#5680) 9127159c client: synchronously verify server preface in newClientTransport (#5731) f51d2126 xdsclient: improve RDS watchers test (#5692) 7c168026 tests: refactor tests to use testutils helper functions (#5728) 28fae96c xdsclient: improve federation watchers test (#5696) f88cc659 xdsclient: improve EDS watchers test (#5694) 439221d8 xdsclient: add a convenience type to synchronize execution of callbacks (#5702) dbb8e2bf xdsclient: improve CDS watchers test (#5693) 79ccdd8f clientconn: go idle if conn closed after preface received (#5714) 778860e6 testing: update Go to 1.19 (#5717) eb8aa319 weightedtarget: return a more meaningful error when no child policy is reporting READY (#5391) bb3d7394 fakeserver: add v3 support to the xDS fakeserver implementation (#5698) 912765f7 xds: move bootstrap config generating utility package to testutils (#5713) f52b910b o11y: Fixed o11y bug (#5720) 00d1830c Fix o11y typo (#5719) e163a908 xds/xdsclient: add EDS resource endpoint address duplication check (#5715) 9eba5743 xds: de-experimentalize google c2p resolver (#5707) 8b3b10bd gcp/observability: implement public preview config syntax, logging schema, and exposed metrics (#5704) 8062981d vet: workaround buggy mac git grep behavior (#5716) e81d0a27 xdsclient: improve LDS watchers test (#5691) 7b817b4d client: set grpc-accept-encoding to full list of registered compressors (#5541) c6724519 xds/xdsclient: add sum of EDS locality weights check (#5703) c03925db priority: release references to child policies which are removed (#5682) 5fc798be Add binary logger option for client and server (#5675) 12db695f grpc: restrict status codes from control plane (gRFC A54) (#5653) 202d355a Change version to 1.51.0-dev (#5687) 1451c62c internal/transport: optimize grpc-message encoding/decoding (#5654) be4b63b1 test: minor test cleanup (#5679) d83070ec Changed Outlier Detection Env Var to default true (#5673) 54521b22 client: remove trailing null from unix abstract socket address (#5678) 36e48107 orca: cleanup old code, and get grpc package to use new code (#5627) e8866a83 build: harden GitHub Workflow permissions (#5660) 8458251c xdsclient: ignore routes with cluster_specifier_plugin when GRPC_EXPERIMENTAL_XDS_RLS_LB is off (#5670) a238ceba xDS: Outlier Detection Env Var not hardcoded to false (#5664) b1d7f56b transport: Fix deadlock in transport caused by GOAWAY race with new stream creation (#5652) 9c3e589d rls: delegate pick to child policy as long as it is not in TransientFailure (#5656) 7da8a056 xds: Enable Outlier Detection interop tests (#5632) 21f0259e test: loosen metadata error check to reduce dependence on exact library errors (#5650) 552de120 orca: fix package used to reference service to use pb suffix instead of grpc (#5647) 87d1a90a orca: fix package used to reference service to use grpc suffix instead of pb (#5645) 60eecd91 metadata: add ValueFromIncomingContext to more efficiently retrieve a single value (#5596) 2ebd5943 Documentation/proxy: update due to Go 1.16 behavior change (#5630) 1530d3b2 gcp/observability: fix End() to cleanup global state correctly (#5623) f7d20367 xds: add Outlier Detection Balancer (#5435) 182e9df1 Grab comment from proto file, similar to protoc-gen-go (#5540) 60a3a7e9 cleanup: fixes for issues surfaced by vet (#5617) 99ae81bf roundrobin: optimization of the roundrobin implementation. (#5607) aee9f0ed orca: server side custom metrics implementation (#5531) ddcda5f7 alts: do not set WaitForReady on handshaker RPCs (#5620) d875a0e8 xdsclient: NACK cluster resource if config_source_specifier in lrs_server is not self (#5613) c351f37d chore: remove duplicate word in comments (#5616) f0f9f00f test/kokoro: enable pod log collection in the buildscripts (#5608) 1dd02563 ringhash: implement a no-op ExitIdle() method (#5614) fe592260 clusterresolver: deflake eds_impl tests (#5562) d5dee5fd xds/ringhash: make reconnection logic work for a single subConn (#5601) b225ddaa transport: update http2 spec document link (#5597) 641dc871 transport: add peer information to http2Server and http2Client context (#5589) 02fbca0f xds/resolver: generate channel ID randomly (#5591) 97cb7b16 xds/clusterresolver: prevent deadlock of concurrent Close and UpdateState calls (#5588) c56f196d internal/fakegrpclb: don't listen on all adapters (#5592) 3f5b7ab4 internal/transport: fix typo (#5566) c11858e8 Publish arm64 binaries to GitHub releases (#5561) 802b32e0 Change version to 1.50.0-dev (#5585) 92cee344 gcp/observability: Add logging filters for logging, tracing, and metrics API calls (#5582) c7fe135d O11Y: Added support for custom tags (#5565) 7981af40 test/kokoro: add missing image tagging to the xDS interop url map buildscript (#5569) 6f34b7ad xdsclient: NACK endpoint resource if load_balancing_weight is specified and is zero (#5568) f9409d38 ringhash: handle config updates properly (#5557) 946dde00 xdsclient: NACK endpoint resources with zero weight (#5560) b89f49b0 xdsclient: deflake Test/LDSWatch_PartialValid (#5552) 9bc72deb grpc: remove mentions of WithBalancerName from comments (#5555) a077b946 Switched unlock to defer in newAddrConn (#5556) 57aaa10b test: move clientconn state transition test to test/ directory (#5551) 23f015c3 priority: sync priority with child in use (#5549) c14e29e6 rls: suppress picker updates from children when handling config updates (#5539) 02f1a7ac grpc: prevent a nil stats handler from causing a panic (#5543) 1ec054bb transport/server: fix race that could cause a stray header to be sent (#5513) 2f60cb8b test: improve the logic for checking round_robin (#5534) fd4700cf xdsclient: cleanup listener watchers test (#5506) e72cb1c1 xdsclient: organize existing contents better with new files (#5533) b695a7f2 test/interop: increase pick_first timeout (#5529) 9a689dc4 xdsclient: change receiver on BootstrapConfig() to be consistent (#5532) ae261b06 xds: Fixed GoLang regression for Outlier Detection (#5537) fdc5d2f3 xds/clustermanager: pause picker updates during UpdateClientConnState (#5528) 86117db5 balancer/weightedtarget: pause picker updates during UpdateClientConnState (#5527) 679138d6 gcp/observability: Add support for Environment Variable GRPC_CONFIG_OBSERVABILITY_JSON (#5525) d0f3c561 interop client: fixes for interop soak test (#5502) 6dd40ad6 Change the log-level when a new ServerTransport cannot be created (#5524) f601dfac test/kokoro: Add missing secondary_kube_context to xds LB tests (#5508) 3a77d291 xdsclient: fix LRS stream leaks when errors are encountered (#5505) 30d54d39 client: fix stream creation issue with transparent retry (#5503) 96aa657b xds: readd NewXDSResolverWithConfigForTesting() (#5504) 4f47c8c1 test/xds: wait for all ACKs before forcing stream restart (#5500) a094a109 Fix race between activeStreams and bdp window size (#5494) 5e15eac0 xdsclient: handle empty authority in new style resource names (#5488) c4023787 doc: remove comment about obsolete GRPC_GO_RETRY env var (#5495) 9ba66f1b xdsclient: use top-level server list if authority specific list is empty (#5491) e02f27d9 internal: move baseContentType comment where it should be (#5486) 50170888 internal/xds: generate an entry in the authorities map with empty string key (#5493) 2c0949c2 all: update to 'go 1.17' to enable module graph pruning (#5477) 38df45ca xdsclient: move XDSClient interface definition to client.go (#5479) 03fee09e balancer: fix connectivity state aggregation algorithm to follow the spec (#5473) 0d04c6f5 ringhash: don't recreate subConns when update doesn't change address information (#5431) a6dcb714 xdsclient: don't reset version info after stream restart (#5422) 8c494a9a Change version to 1.49.0-dev (#5484) 5770b1de xds: drop localities with zero weight at the xdsClient layer (#5476) 423cd8e3 interop: update proto to make vet happy (#5475) c9b16c88 transport: remove unused `bufWriter.onFlush()` (#5464) 755bf5a1 fix typo in the binary log (#5467) 15739b5c health: split imports into healthpb and healthgrpc (#5466) c075d201 interop client: provide new flag, --soak_min_time_ms_between_rpcs (#5421) 4b750055 clusterresolver: merge P(p)arseConfig functions (#5462) d883f3d5 test/xds: fail only when state changes to something other than READY and IDLE (#5463) c6ee1c71 xdsclient: only include nodeID in error strings, not the whole nodeProto (#5461) 06ad0b82 internal/proto: remove obsolete test and service_config.pb.go (#5459) 5cdb09fa outlierdetection: fix package level comments (#5457) 28de4866 interop: update grpc_testing proto (#5451) b288a240 interop testing: log the peer address in interop soak client (#5419) 3e7b97fe xds/priority: bug fix and minor behavior change (#5417) 29d9970c xds: Outlier Detection configuration in Cluster Resolver Balancer (#5371) 1dabf545 test/kokoro: use standard TESTING_VERSION in the new framework builds (#5434) f14d6112 resolver: minor improvements to AddressMap (#5426) c0198a9c ringhash: use grpctest.Tester in unit tests (#5428) f229f9c7 weightedroundrobin: update comments to indicate where addrInfo is stored (#5427) 71f16a1d internal/proto: pull in recent changes to service config proto (#5424) 584d9cd1 gcp/observability: update log name (#5414) 9ee2f146 gcp/observability: Implement tracing/metrics via OpenCensus (#5372) 34e4fc3b rls: use UNAVAILABLE instead of status from control plane (#5400) a0d5484e interop: remove duplicated xDS tests in GCE framework (#5395) ca5cc0bc credentials/google: support new-style xDS cluster names (#5399) cbcceaf7 gracefulswitch: fix exit idle race (#5384) ea86bf74 stats: add support for multiple stats handlers in a single client or server (#5347) 13b378bc internal: add global DialOptions and ServerOptions for all clients and servers (#5352) 70a80552 xds/priority: clean up tests (#5387) e41f8685 test/xds: move tests to a package with _test suffix (#5382) da6ef005 xds/clusterresolver: reuse child policy names for the same locality (#5367) 6e253e8a interop: update proto by running regenerate.sh (#5381) a45cd25f xds: Enable aggregate and logical dns clusters by default (#5380) c0e35731 xds: move e2e tests into grpc/test/xds directory (#5363) c6c0a06d Change version to 1.48.0-dev (#5379) ed752259 Don't call cmp in non testing file (#5370) 081c6884 client: fix hctx leakage in addrConn.createTransport (#5337) 30b9d59a client/SubConn: do not recreate addrConn if UpdateAddresses is called with the same addresses (#5373) 459729d6 xds/priority: avoid sending duplicate updates to children (#5374) 9f4b31a1 Added HTTP status and grpc status to POST check (#5364) 333a441e xds/ringhash: update connectivity state aggregation, and make sure at least one SubConn is connecting in TF (#5338) e23132c6 Added support for metadata matcher invert (#5345) d9b952b1 xds/resolver: use correct resource name in log message (#5357) db79903a xds/priority: start the init timer when a child switch to Connecting from non-transient-failure state (#5334) 462d8676 xds: Add Outlier Detection configuration and CDS handling (#5299) 5c46f1aa xdsclient/csds: fix leaked metadata (#5339) ee67b3d8 xds: Handle loops and ignore duplicates in aggregated cluster handling (#5317) 799605c2 client: fix potential panic during RPC retries (#5323) 78b13f27 xds/client: hold authority mutex before making a new authority (#5331) de73b2b6 examples: improve error messages (#5329) dc86d5de internal/proto: update generated code (#5332) 7567a5d9 documentation: fix typo in RegisterCodec godoc (#5306) 3bf6719f test/interop: register RLS to the interop test client (#5272) 8d68434c gcp/observability: correctly test this module in presubmit tests (#5300) ebd09839 xds/eds: reject EDS resources with multiple instances of the same locality in the same priority (#5303) 9711b148 server: clarify documentation around setting and sending headers and ServerStream errors (#5302) 924e4849 server: return better status for context err when writing header (#5292) 5682cc6a Change version to 1.47.0-dev (#5298) 4467a29d gcp/observability: implement logging via binarylog (#5196) 18fdf542 cmd/protoc-gen-go-grpc: allow hooks to modify client structs and service handlers (#5240) 337b815c interop: build client without timeout; add logs to help debug failures (#5294) e583b196 xds: Add RLS in xDS e2e test (#5281) 0066bf69 grpc: perform graceful switching of LB policies in the `ClientConn` by default (#5285) 3cccf6a4 xdsclient: always backoff between new streams even after successful stream (#5280) 4e780933 xds: ignore routes with unsupported cluster specifiers (#5269) 99aae344 cluster manager: Add Graceful Switch functionality to Cluster Manager (#5265) 42cadc17 test: cleanup balancer switching tests (#5271) b6873c00 grpc: move to `TransientFailure` in `pick_first` LB policy when all addresses are removed (#5274) 474948a9 github: run all testing jobs to completion even if one fails (#5282) c57d2b13 clientconn: fix target parsing tests to be tolerant to new url.URL field OmitHost (#5279) 562e12f0 test: use channelz instead of stats handler to determine RPC count (#5275) e63e1230 advancedtls: remove the usage of CDP in CRL enforcement (#5218) 3a74cd52 balancergroup: Add trigger point to gracefully switch a child (#5251) 34660d10 test: use `t.Fatal` instead of `panic` for service config parsing errors (#5266) 96bdede4 pickfirst: cleanup tests (#5263) e49486de test: add a test for clientConn close with pending RPC (#5264) 2fccb822 metadata: copy slices in FromContext() functions (#5267) 9d088969 github: update to test with Go 1.18 (#5262) 597e5d1b don't apply defaultSC upon receipt of invalid service config (#5257) 51ddcbad xds: suppress redundant updates only when we are SERVING (#5258) 4635bf28 make the RLS LB policy name available in the internal package (#5259) 50d0d0a5 server: set TCP_USER_TIMEOUT socket option for linux (#5219) 7840bd63 grpc: add a comment explaining why updateClientConnState is handled inline (#5261) 7ea4af98 internal/googlecloud: refactor OS-dependent code (#5239) 1ffd63de binarylog: generalize binarylog's MethodLogger preparing for new observability features (#5244) 63bdcbcc xds/interop: add xds_k8s_lb test suite (#5250) 89f31959 interop/client: simplify fallback test client and parameterize fallback deadline (#5248) 8078d1d5 balancergroup: Switched subBalancerWrapper to wrap a gracefulswitch.Balancer (#5245) 6131e9d4 examples: regenerate certs to use SHA256 signing algorithm (#5256) f95b001a xds: avoid log spam during server mode switches (better A36 compliance) (#5215) 97c31434 xds/client: accept resources wrapped in discoverypb.Resource message (#5242) 6c3ccbe8 grpc: remove remaining usages of grpc.WithInsecure() (#5246) fbe4ccbc xds/client: include Node ID in error messages from the XdsClient (#5223) c4cabf78 grpc: handle invalid service configs by applying the default if available (#5238) 94ee3865 test: cleanup roundrobin tests to use stubserver (#5236) 23cc28fd security/authorization: upgrade cel-v0.10.1 and fix breaking API change. (#5243) 84793b56 xds/client: reset backoff when a message is received, even when the message is invalid (#5241) 722367c4 proto: regenerate proto to pick up latest (#5237) eead9a82 grpc: delete deprecated API WithBalancerName() (#5232) cf6d4d5a grpc: document ClientConn fields (#5227) 431ea809 internal/balancer: Add graceful switch LB policy (#5207) 63af9747 internal: update service config proto (#5222) 87b0a8d6 test: use real grpc.Server in call tests (#5213) 6b15b135 channelz: replace deprecated timestamp API with recommended ones (#5212) 6f314bd7 reflection: add comments on protos (#5209) 328efcc9 example: add mutual TLS example (#5194) e601f1ae fix: does not validate metadata keys and values (#4886) a73725f4 channelz: include channelz identifier in logs (#5192) 02f384d4 xds: rename rls proto import (#5205) fd1f9881 Change version to 1.46.0-dev (#5204) 011544f7 authz: add additional logs to sdk authz (#5094) 18564ff6 reflection: improve server implementation (#5197) ec717cad xds: minor cleanup in xdsclient bootstrap code (#5195) ebc30b8f reflection: use protobuf/reflect instead of go reflection, fix dynamic messages (#5180) 46009ac9 transport: Add an Unwrap method to ConnectionError (#5148) 75fd0240 remove sdk term from grpc authz (#5191) a354b1ee channelz: rename NewChannelzStorage to NewChannelzStorageForTesting (#5190) 0e055491 Format directory/file references (#5184) c44f627f cleanup: replace grpc.WithInsecure with insecure.NewCredentials (#5177) 91967153 xds/priority: log warnings instead of errors (#5185) 1a633098 xds: Add support for Outlier Detection configuration in xdsclient (#5183) 2af7b5e6 xds/interop: update RPC timeout in blackhole after fallback case (#5174) f664adfe benchmark: update client to include xds library (#5169) c7f7d3a7 xds/bootstrap: add plugin system for credentials specified in bootstrap file (#5136) 2209ed9e cmd/protoc-gen-go-grpc: add hooks to allow overriding generated code (#5056) f68fb05c leakcheck: ignore http read/write goroutine (#5182) 98079086 rls: support `routeLookupChannelServiceConfig` field (#5176) 593ff8d0 rls: service field in RLS request must not contain slashes (#5168) e2fc510d internal/proto: update generated code (#5172) 3b70fe08 xds: fix broken test "unknown field EnableLRS in struct" (#5170) d31dbe7a xds/resource: accept Self as LDS's RDS config source and CDS's EDS config source (#5152) 0a68f8af xds/federation: support federation in LRS (#5128) 61a6a06b server: handle context errors returned by service handler (#5156) e2771749 xds/bootstrap: escape authority when populating resource name template (#5160) 231ca3b2 security/advancedtls: fix CRL issuer comparison (#5130) 449f1b22 grpclb: rename LB policy config field to `serviceName` (#5166) 546e6aeb proto: incorporate recent service config proto definition changes (#5167) 5b376823 Let helloworld example listen to all hosts (#5089) 9cb41138 xdsclient: make Close() idempotent (#5149) 6f54b5dd recommend the use `go test` commands instead of `make test` (#5151) fa62572a rls: make the data cache purge ticker a field in rlsBalancer (#5154) f93e8e67 rls: return status error from server interceptor in test (#5153) 61a352e9 rls: move RLS LB policy implementation out of internal (#5143) 475c62a8 testing: fix potential problems in testFlowControlAccountCheck (#5105) 5350e746 xds/controller: fix test nil panic on stream errors (#5144) eb6ff1ae xds: update RPC timeout in blackhole case (#5126) aad573d8 rls: LB policy implementation (#4992) a0029942 internal/proto: update generated code (#5125) c1198288 xdsclient: allow overriding grpc.Dial function for the xDS controller. (#5108) f231ac52 wrr: improve randomWRR performance (#5067) 0145b50c use insecure.NewCredentials() instead of grpc.WithInsecure (#5087) b49c0c99 xds/clusterresolver: set ClusterName for DNS child (#5119) 9353ae3b credentials/google: stub out the oauth package in test (#5118) 13c41bce Change version to 1.45.0-dev (#5122) 77b478d7 xds/federation: e2e tests (#5103) 907a202a attributes: document that some value types (e.g. `map`s) must implement Equal (#5109) 2fb1ac85 test: fix potential goroutine leak in TestUpdateAddresses_RetryFromFirstAddr (#5023) afded723 xds/federation: update xdsclient to support multi authority (#5042) b0694409 credentials/google: use grpctest.Tester for tests in this package (#5098) fbaf7c55 authz: update representation of allow authenticated in SDK (#5052) 344b93a2 testdata: use SHA256 as signing algorithm in testdata certs (#5074) 4d58dd98 dialoptions.go: Fix WithBlock godoc (#5073) 78df8ec0 test/kokoro: Use xds-test-server-5 as the GCE interop server (#5071) db9fdf70 insecure: remove experimental notice (#5069) b3d19efe rls: move the data cache implementation into the rls package (#5060) ec7cf6c9 grpclb: fix possible nil before conversion in TestDropRequest (#5022) 8ae11f46 grpc: minor improvement on WithInsecure() document (#5068) 7506755e internal/resolver: fix possible goroutine leak in TestSafeConfigSelector (#5058) 956c5948 rls: minor config processing changes (#5061) c285fc70 cmd/protoc-gen-go-grpc: update version for release (#5070) 51835dc0 xds: Remove WithBlock option from the fallback test client (#5066) ce152f20 xds: Add xds dependency to the fallback test client (#5062) 029b8227 xds: Add RLS Cluster Specifier Plugin (#5004) 50f82701 rls: control channel implementation (#5046) 7c8a9321 testing: fix goroutine leak in TestClientUpdatesParamsAfterGoAway (#5024) a32d2778 xds/client: send connection errors to all watchers (#5054) c18e2a28 cmd/protoc-gen-go-grpc: update google.golang.org/protobuf to v1.27.1 (#5053) 5d90b32d authz: fix regex expression match (#5035) fd4e3bdc xds: Added env var for RLS in xDS (#5050) bd707697 test: cleanup roundrobin_test (#5005) d35aff3c xds/federation: resource name parsing (#4991) 62f73ecd xds/client: move xdsclient.New tests to controller.New (#5037) 40916aa0 transport: better error message when per-RPC creds fail (#5033) 1ec7a893 xds/client: send NewStream errors to the watchers (#5032) ccc060cb grpclog.DepthLoggerV2: Correct comment: formats like fmt.Println (#5038) a722e6aa xds/c2p: replace C2P resolver env var with experimental scheme suffix (#5044) f5dc086d internal/balancergroup: eliminate race in exitIdle (#5012) ac4edd2a Change version to 1.44.0-dev (#5041) 3786ae17 xds/resolver: Add support for cluster specifier plugins (#4987) 512e8947 rls: support extra_keys and constant_keys (#4995) f3bbd120 xds/bootstrap_config: add a string function to server config (#5031) 46935b96 fix possible nil before casting (#5017) c2bccd0b xds/kokoro: install go 1.17, and retry go build (#5015) 872a6f12 xds/c2p: fix default client resource template, and xds-client target scheme (#5010) 58beff18 balancergroup: add method to exitIdle a sub-balancer (#4994) 6f8796bc rls: double import rls protos (#5003) d542bfce status: support wrapped errors in FromContextError (#4977) f45e6179 rls: move pb.gos to grpc/internal/proto/grpc_lookup_v1 (#4993) 295d7e66 internal: move leakcheck to t.Cleanup (#4989) 23becb71 examples: Fix server port in route_guide example to work with client (#4975) bdf8336f xds/client: cleanup Dump to remove unnecessary version field (#4978) b2317c76 test/kokoro: rename xds_k8s to psm-security as part of tech-debt cleanup and name clarity (#4979) cf8b64e2 internal: add log when service config is disabled (#4973) 6e79bc8a xdsclient: add Cluster Specifier Name to Route (#4972) 82d8af8b balancer: add Authority field to balancer.BuildOptions (#4969) ea068ed2 rpc_util: Change error message to indicate size after decompression (#4918) d61c7ae8 internal: merge xds/envconfig into env package (#4923) 6a896a3e pickfirst: check b.sc before calling Connect (#4971) 52d94167 xds/client: move transport_helper from xdsclient to a separate struct (#4968) 6603e730 xds: Added validation and construction of RBAC matcher engine to ParseConfig (#4964) d57363ab xds: Add Cluster Specifier Plugin to xdsclient (#4967) dd767416 grpc: implement WithInsecure() using the insecure package (#4718) c25a52b7 config: remove retry disable via environment variable (#4922) 714ba8d5 xds: move balancergroup and weightedtarget our of xds directory (#4966) 14ebd917 lint: fix some unused parameter issues (#4956) 59e024e4 xds/client: move watchers from xdsclient to a separate struct (#4963) bac0a7e4 transport: pass handshake info with attributes to custom dialers (#4938) 82c28251 xds/federation: support new bootstrap fields and protect them by an env var (#4936) c53203c5 xds/federation: support populating resource template in xds-resolver (#4900) 79e9c957 xds/client: move unmarshal functions and types to a separate package (#4904) 3fa19881 internal: update pb.go (#4962) 878cea23 kokoro: Enable xds authz_test (#4954) 5841c8c7 xds/balancergroup: remove xds dependency from balancergroup (#4955) 3b94303f grpc: stabilize WithConnectParams DialOption (#4915) c105005d xds: NACK missing route specifier server side (#4925) 670c133e transport/http2_server : Move up streamID validation in operate headers (#4873) 29deb6bf xds/bootstrap: refactor to support top level and per-authority server config (#4892) 1163cfab xds: move LocalTCPListener to internal/testutils (#4920) 467630fc examples: remove usage of WithBlock in examples (#4858) 6d465fe9 grpclb: move restartableListener to testutils (#4919) d6aca733 Change version to 1.43.0-dev (#4912) bb655a91 internal: update rls.pb.go (#4913) 2d7bdf2d xds: Set RBAC on by default (#4909) d47437c9 xds: Fix invert functionality for header matcher (#4902) 9fa26982 xds/csds: populate new GenericXdsConfig field (#4898) 6e8625df doc: promote WithDisableRetry to stable; clarify retry is enabled by default (#4901) f1d87c14 client: properly disable retry if GRPC_GO_RETRY=off (#4899) 03753f59 creds/google: fix CFE cluster name check (#4893) 4f21cde7 authz: support empty principals and fix rbac authenticated matcher (#4883) f00baa6c resolver: replace AddressMap.Range with Keys (#4891) 2a312458 client: don't force passthrough as default resolver (#4890) bd0f8815 grpclb: recover after receiving an empty server list (#4879) 0d503075 xds/priority: handle new low priority when high priority is in Idle (#4889) fbf9b563 grpc: stabilize WithDefaultServiceConfig and improve godoc (#4888) 3b1d3e48 examples: update load balancing example to use loadBalancingConfig (#4887) 01ed6485 update go.mod to point to latest cncf/udpa repo (#4884) 3d9e9c42 logging: enable json logging in xds server container (#4885) 4757d024 xds: Make regex matchers match on full string, not just partial match (#4875) d590071c status: clarify FromError docstring (#4880) 36d87572 attributes: add Equal method; resolver: add AddressMap and State.BalancerAttributes (#4855) 3db1cb09 xds/clusterimpl: fix SubConn wrapper returned by picker during race (#4876) 7e5fcc68 rls: update rls proto (#4877) 3bae5f5b xds: use protos from cncf/xds instead of cncf/udpa (#4866) aaff9e7a grpc: better RFC 3986 compliant target parsing (#4817) 45097a8a Revert "kokoro: remove expired letsencrypt.org cert and update" (#4860) 2fe71180 xds/e2e: move flag check to each test, and call t.Skip() (#4861) ea41fbfa examples: unix abstract socket (#4848) 6c56e211 grpclb: add `target_field` to service config (#4847) 49f63887 grpclog: support formatting output as JSON (#4854) b99d1040 authz: create file watcher interceptor for gRPC SDK API (#4760) 03ca7b7d Added logs to rbac (#4853) 524d10cb kokoro: source test driver install script from core repo (#4825) b9d7c74e xds: local interop tests (#4823) 404d8fd5 Added imports for HTTP Filters (#4850) d16cfedb Rename env var (#4849) 4bd99953 xds: suppress redundant resource updates using proto.Equal (#4831) ee479e63 creds/google: replace NewComputeEngineCredsWithOptions with NewDefaultCredentialsWithOptions (#4830) 02da6251 github: increase timeout for codeql and disable for PRs (#4841) f2974e77 kokoro: remove expired letsencrypt.org cert and update (#4840) f068a13e server: add missing conn.Close if the connection dies before reading the HTTP/2 preface (#4837) 09970207 xds: remove race in TestUnmarshalCluster_WithUpdateValidatorFunc (#4836) b9f62538 rls: pull proto changes made in grpc-proto/pull/98 (#4832) 69e1b54d test: fix stayConnected to call Connect after state reports IDLE (#4821) 127c052c credentials/google: introduce a new API `NewComputeEngineCredsWithOptions` (#4767) 2ae5ac16 xds: nack if certprovider instance name is missing in bootstrap config (#4799) adb21c46 rls: improve config parsing (#4819) e6d0d281 internal: log SubConn type if it's not the expected type (#4813) 34df1b42 xds: Small RBAC Changes defined in A41 (#4818) 75f1d4b9 transport: call stats handler for trailers before closeStream (#4816) 08927214 xds/rds: NACK unknown route action cluster specifier (#4788) 710419d3 advancedtls: add revocation support to client/server options (#4781) 4555155a xds: Small changes at xDS RBAC Layer (#4815) 689f7b15 transport: logic specified in A41 to support RBAC xDS HTTP Filter (#4803) 11437f66 test: add option to make httpServer wait for END_STREAM; fix RetryStats race (#4811) 6ff68b48 channelz: recommend using admin.Register instead (#4797) 78d3aa8b grpc: cleanup parse target and authority tests (#4787) 83a34615 xds: have separate tests for RBAC on and off (#4807) d7208f02 github: set a shorter timeout on testing jobs (#4806) 32cd3d61 interop: don't use WithBlock dial option in the client (#4805) d623accd xds: fix parent balancers to handle Idle children (#4801) e6246c22 server: optimize chain interceptors (-1 allocation, -10% time/call) (#4746) 458ea764 xds: Added validations for HCM to support xDS RBAC Filter (#4786) 1f12bf44 transport: fix a typo in http2_server.go (#4745) 606403de transport: fix log spam from Server Authentication Handshake errors (#4798) 616977cc Change version to 1.42.0-dev (#4793) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-11-07grpc-go: add grpc to CVE_PRODUCTPeter Marko
Some cves are reported with "cpe:2.3:a:grpc:grpc:*:*:*:*:*:go:*:*" See https://nvd.nist.gov/vuln/detail/CVE-2023-44487 Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-08-24recipes/classes/scripts: Drop SRCPV usageBruce Ashfield
bitbake has been enhanced such that SRCPV is no longer needed in PV to handle updating git hashes and task signatures. We can simplify our PV by dropping SRCPV Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-11-02global: convert github SRC_URIs to use https protocolBruce Ashfield
github is removing git:// access, and fetches will start experiencing interruptions in service, and eventually will fail completely. bitbake will also begin to warn on github src_uri's that don't use https. So we convert the meta-virt instances to use protocol=https (done using the oe-core contrib conversion script) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-11-02global: add explicit branch to all SRC_URIsBruce Ashfield
As introduced in the oe-core post: https://lists.openembedded.org/g/openembedded-core/message/157623 SRC_URIs without an explicit branch will generate warnings, and eventually be an error. We run the provided conversion script to make sure that meta-virt is ready for the change. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-09-16grpc-go: update license to Apache-2.0Bruce Ashfield
The LICENSE was incorrect in grpc-go. According to the LICENSE file, it is Apache-2.0, so we update the recipe accordingly. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-09-16grpc-go: update to 1.4.0Bruce Ashfield
Bumping grpc-go to version v1.0.5-2001-g5d8e5aad, which comprises the following commits: 5d8e5aad Create NOTICE.txt (#4739) 5bfc05fb grpc: clarify the use of transport.ErrConnClosing from createTransport() (#4757) 77ffb2ef xds: RBAC HTTP Filter (#4748) 03268c8e balancer: fix aggregated state to not report idle with zero subconns (#4756) d25e31e7 client: fix case where GOAWAY would leak connections and memory (#4755) 7f560ef4 grpc: close underlying transport when subConn is closed when in connecting state (#4751) 4e07a14b credentials/ALTS: Ensure ALTS record protocol names are consistent (#4754) 16cf6561 xds: update xdsclient NACK to keep valid resources (#4743) 43e8fd4f xds: don't remove env var protection for security on the client yet (#4752) 0a99ae2d xds: support new fields to fetch security configuration (#4747) 2608e38e xds: Added server side routing (#4726) 1fe5adbb interop-testing: add soak test cases to interop client (#4677) a6a63177 xds: add retry support (#4738) 2f3355d2 xds: update go-control-plane to latest (#4737) 973e7cb9 ringhash: the picker (#4730) 00a7dc89 xds: remove env var protection for security on client (#4735) c99a9c19 priority: forward the first IDLE state and picker (#4731) 0ca7dca9 oauth: Allow access to Google API regional endpoints via Google Default Credentials (#4713) b2ba77a3 xds: use separate update channels for listeners in test (#4712) c93e4727 Fixed race in Filter Chain (#4728) b189f5e1 authz: create interceptors for gRPC security policy API (#4664) d6a5f5f4 ringhash: the ring (#4701) 51003aa8 xds: start a management server per test (#4720) ed501aa1 xds/internal/resolver: update github.com/cespare/xxhash to v2 (#4671) f7d66b58 Change to a non-workload-identity GKE cluster (#4723) 198d951d xds: Instantiated HTTP Filters on Server Side (#4669) ef66d13a xds: Required Router Filter for both Client and Server side (#4676) 85b9a1a0 xds: pass empty balancer.BuildOptions in clusterresolver_test (#4711) 43b19ef0 grpctest: extend use of mutex to guard more things (#4710) d074cae6 github: fold security tests into 'tests'; update testing to 1.17-1.15 (#4708) 0b372df5 xds/client: NACK ringhash lb policy if env var is not set (#4707) 712e8d4f Remove support for Go 1.13 and older (cont) (#4706) 498743c1 xds/c2p: update default XDS server name in C2P resolver (#4705) 6bd8e8cf multiple: remove support for Go 1.11 (#4700) 5f4bc667 grpc: fix stayConnected function to connect upon entry (#4699) 46ab723b multiple: remove appengine specific build constraints and code (#4685) bfd964bb xds: use the defaultTestTimeout instead of the short one (#4684) dc3afb20 xds: deflake Test/ServerSideXDS_ServingModeChanges (#4689) 45a623cb test: use non blocking dials in end2end_test (#4687) c361e9ea Move Server Credentials Handshake to transport (#4692) 8ab16ef2 balancer: add ExitIdle optional interface (#4673) 52cea245 server: fix net.conn closed twice (#4663) a42567fe xds: support picking ringhash in xds client and cds policy (#4657) ad87ad00 xds: Add support for Dynamic RDS in listener wrapper (#4655) 88dc96b4 Copy the tag_and_push_docker_image method to grpc-go (#4667) 9c668aea all: preallocate slices where possible (#4609) c7c1e9e0 Update xDS client/server image per-branch tag after build (#4661) 997ce619 clientconn: do not automatically reconnect addrConns; go idle instead (#4613) 01bababd Added connection to transport context (#4649) 574137db xds: fix flaky test (TestPickerUpdateAfterClose) (#4658) fc30d5b5 xds/cluster_resolver: support RING_HASH as a child of cluster_resolver balancer (#4621) 74370577 xds: Add route to filterchain (#4610) 6ba56c81 transport: fix race accessing s.recvCompress (#4645) 0d6854ab transport: fix race accessing s.recvCompress (#4641) edb9b3bc github: update stale bot to v4 (#4636) c052940b server: fix leaked net.Conn (#4633) 8ed8dd26 advancedtls: fix a typo in crl.go (#4634) ea9b7a0a xds: fix a typo (#4631) ad0a2a84 Update MAINTAINERS.md (#4628) 61c70460 fix typo (#4616) 245ad257 Change version to 1.41.0-dev (#4625) 00edd8c1 Add xDS k8s url-map test Kokoro job (#4614) 1ddab338 client: fix detection of whether IO was performed in NewStream (#4611) 582ef458 cluster_resolver: move balancer config types into cluster_resolver package and unexport (#4607) c513103b Add extra layer on top of RBAC Engine (#4576) a0bed723 xds: add http filters to FilterChain matching (#4595) 0a8c6373 grpclb: propagate the most recent connection error when grpclb enters transient failure (#4605) 8332d5b9 test: fix possible goroutine leaks in unit tests (#4570) 0300770d xds: support cluster fallback in cluster_resolver (#4594) 65cabd74 internal/binarylog: Fix data race when calling Write() and Close() in parallel (#4604) ce7bdf50 advancedtls: CRL checking for golang gRPC (#4489) 0103ea2d client: improve GOAWAY debug messages (#4587) b586e921 xds/client: notify the resource watchers of xDS errors (#4564) bfe1d0dc binarylog: Use a simple boolean rather than a sync.Once (#4581) ba41bbac transport: validate http 200 status for responses (#4474) ebfe3be6 cluster_resolver: implement resource resolver to resolve EDS and DNS (#4531) 30dfb4b9 binarylog: Don't continue after failing to marshal the proto (#4582) 51e780ce internal/binarylog: Use defer to unlock mutexes (#4590) afad3761 Fix bootstrap format in comment (#4586) 91e0aeb1 binarylog: Don't leak the flusher goroutine when closing a Sink (#4583) dd589923 clientconn: stop automatically connecting to idle subchannels returned by picker (#4579) 52546c5d authorization: translate SDK policy to Envoy RBAC proto (#4523) b3f274c2 xds/cluster_impl: fix cluster_impl not correctly starting LoadReport stream (#4566) 83f9def5 internal/transport: do not mask ConnectionError (#4561) 9b2fa9f8 server: improve chained interceptors performance (#4524) e24ede59 xds: delete LRS policy and move the functionality to xds_cluster_impl (#4528) d9eb12fe xdsclient: move tests out of tests directory (#4535) b9270c3a client: add deadline for TransportCredentials handshaker (#4559) 4440c3b8 cluster_resolver: fix DiscoveryMechanismType marshal JSON (#4532) 14c7ed60 xds/circuit_breaking: counters should be keyed by {cluster, EDS service name} pair (#4560) 50328cf8 buildscripts: add option to use xds-k8s test driver from a fork (#4548) 4faa31f0 stats: add stream info inside stats.Begin (#4533) 74fe073e Revert "xds: require router filter when filters are empty" (#4556) 1c1e3f88 xds: fix test race in cluster_resolver (#4555) 151c8b77 xds/clusterimpl: fix race between picker update and ClientConn state update (#4551) 00ae0c57 xds: require router filter when filters are empty (#4553) 633fbe4d xds: generate per-request hash config selector (#4525) 7e353565 metadata: add Delete method to MD (#4549) 4c651eda xds: move eds package to cluster_resolver (#4545) 549c53a9 xds/eds: rewrite EDS policy using child policies (#4457) cd9f53ac xds/cds: update CDS balancer to partially handle aggregated cluster (#4539) f06e0060 Change version to 1.40.0-dev (#4543) 22c53581 xds: add HashPolicy fields to RDS update (#4521) 45549242 internal: fix deadlock during switch_balancer and NewSubConn() (#4536) 2d3b1f90 grpc: prevent deadlock in Test/ClientUpdatesParamsAfterGoAway on failure (#4534) 6351a55c xds: remove env var protetion of advanced routing features (#4529) 95e48a89 Add GetServiceInfo to xds.GRPCServer (#4507) aa1169ab vet: remove support for non-module-aware Go versions (#4530) b1418a6e xds: export XDSClient interface and use it in balancer tests (#4510) 7301a311 c2p: add random number to xDS node ID in google-c2p resolver (#4519) d30e2c91 xds/resolver: test xds client closed by resolver Close (#4509) 656cad9a xds: standardize xds client field name (xdsClient) (#4518) 7f9eeeae xds: standardize builder type names (bb) and balancer receiver names (b) (#4517) 7beddeea cleanup: remove "Interface" as suffix of (almost all) interface names (#4512) 5c164e2b xds: rename xds/internal/client package to xdsclient (#4511) 32d5490a metadata: convert keys to lowercase in FromContext() (#4416) c67c056b doc: fix typo in package networktype (#4508) a3715292 csds: return empty response if xds client is not set (#4505) 0956b125 client: handle RemoveSubConn in goroutine to avoid deadlock (#4504) 174b1c28 internal/transport: skip log on EOF when reading client preface (#4458) e7b12ef3 cluster_resolver: add functions to build child balancer config (#4429) 35084521 xds: add test-only injection of xds config to client and server (#4476) e5cad3dc doc: fix broken benchmark dashboard link in README.md (#4503) 8bdcb4c9 client: Clarify that WaitForReady will block for CONNECTING channels (#4477) 2de42fcb kokoro: Specify the correct path to the build config (#4495) 34bd6fbb xds: add RBAC Engine (#4471) 194dcc92 example: improve hello world server with starting msg (#4468) 4bae49e0 mergeable: update relnotes regex (#4488) bbb542c3 Kokoro build configs for PSM security interop tests (#4481) e26e756f Enable logging in xds interop docker containers (#4482) 598e3f6a github: update lock bot to github actions (#4484) 67b72063 github: increase stale bot ops per run to process everything (#4485) 4ecb61be github: limit repo access of testing workflows (#4483) 69da917c github: update stale bot to github actions (#4480) 280df42a mergeable: require RELEASE NOTES in PR description, milestone, and Type label (#4475) 728364ac server: return UNIMPLEMENTED on receipt of malformed method name (#4464) c4ed6360 transport: remove RequestURI field from requests in transport test (#4465) 359fdbb7 Delete .travis.yml file (#4462) a8e85e0d server: allow PreparedMsgs to work for server streams (#3480) b1f7648a client: ensure LB policy is closed before closing resolver (#4478) 3dd75a68 xds_client/rds: weighted_cluster totalWeight default to 100 (#4439) 84d0920b transport: unblock read throttling when controlbuf exits (#4447) 86ac0fbc Documentation: Fix typo (#4445) 23a83dd0 transport: various simplifications noticed during #4447 (#4455) c9c9a753 internal: fix test unset env var AggregateAndDNSSupportEnv (#4454) 74c40c96 xds/cds: fix LOGICAL_DNS cluster semantics (#4434) 584fa418 xds/testing: export variables for testing (#4449) 2713b77e use depth logging from the e2e package (#4448) 39015b9c interop/xds: support xds security on interop server (#4444) 9749a793 transport: remove decodeState from server to reduce allocations (#4423) 78e8edf3 interop/xds: dockerfile for the xds interop client (#4443) a12250e9 xds/cds: add env var for aggregated and DNS cluster (#4440) 50c071e9 example: correct the default value for server_host_override (#4407) b759b408 xds: moved shared matchers to internal/xds (#4441) 71a1ca6c interop/xds: support xds credentials in interop client (#4436) dc77d7ff xds: revert a workaround made in #4413 (#4428) a16b156e internal: fix flaky test KeepaliveClientStaysHealthyWithResponsiveServer (#4427) 6fea90d7 benchmark: do not allow addition of values lower than the minimum allowed in histogram stats a712a738 xds/cds: add separate fields for cluster name and eds service name (#4414) 397adad6 update go.mod and go.sum to point to latest go-control-plane (#4425) 9cb99a52 xds: pretty print xDS updates and service config (#4405) 45e60095 xds: add support for aggregate clusters (#4332) 8bf65c69 xds: use same format while registering and watching resources (#4422) aa59641d interop: use credentials.NewTLS() when possible (#4390) a95a5c3b transport: remove decodeState from client to reduce allocations (#3313) 62adda2e client: fix ForceCodec to set content-type header appropriately (#4401) 81b8cca6 Change version to 1.39.0-dev (#4420) 5f95ad62 xds: workaround to deflake xds e2e tests (#4413) b1940e15 xds: register resources at the mgmt server before requesting them (#4406) 98c895f7 cleanup: use testutils.MarshalAny in more places (#4404) 12a377b1 xds: nack route configuration with regexes that don't compile (#4388) c15291b0 client: initialize safe config selector when creating ClientConn (#4398) 328b1d17 transport: allow InTapHandle to return status errors (#4365) aff517ba xds: make e2e tests use a single management server instance (#4399) 0439465f xds_resolver: fix flaky Test/XDSResolverDelayedOnCommitted (#4393) 0ab423af test: fix flaky GoAwayThenClose (#4394) b6f206b8 grpc: improve docs on StreamDesc (#4397) c7ea7340 dns: fix flaky TestRateLimitedResolve (#4387) cb396472 Revert "grpc: call balancer.Close() before returning from ccBalancerWrapper.close()" (#4391) d2d6bdae server: add ForceServerCodec() to set a custom encoding.Codec on the server (#4205) d426aa5f test: extend the xDS interop tests timeout to 360 mins (#4380) 40b25c5b xds: set correct order of certificate providers in handshake info (#4350) 0fc0397d xds: actually close stuff in cds/eds `Close()` (#4381) 4f3aa7cf xds: optimize fault injection filter with empty config (#4367) 79e55d64 xds: use SendContext() to fail in time when the channel is full (#4386) 11bd7766 xds: work around xdsclient race in fault injection test (#4377) 75497df9 meshca: remove meshca certificate provider implementation (#4385) ebd6aba6 Revert "xds/cds: add separate fields for cluster name and eds service name" (#4382) b418de83 xds/eds: restart EDS watch after previous was canceled (#4378) 28078834 grpc: call balancer.Close() before returning from ccBalancerWrapper.close() (#4364) aa3ef8fb internal: regenerate proto (#4373) c3b66015 xds/circuit_breaking: use cluster name as key, not EDS service name (#4372) 91d8f0c9 serviceconfig: support marshalling BalancerConfig to JSON (#4368) b602d17e metadata: reduce memory footprint in FromOutgoingContext (#4360) 24d03d9f xds/priority: add ignore reresolution boolean to config (#4275) 7c5e7379 xds/cds: add separate fields for cluster name and eds service name (#4352) 145f12a9 reflection: accept interface instead of grpc.Server struct in Register() (#4340) 52a707c0 xds: serving mode changes outlined in gRFC A36 (#4328) 9572fd6f client: include details about GOAWAYs in status messages (#4316) e158e3e8 xds/lrs: server name is not required to be non-empty (#4356) 74fe6eaa github: testing action workflow improvements and update to test Go1.16 (#4358) f02863c3 xds: specify "h2" as the alpn in xds creds (#4361) 7276af6d client: fix leaked addrConn struct when addresses are updated (#4347) f2783f27 Run emulated linux arm64 tests (#4344) 6f35bbbf test: enable xDS CSDS test (#4354) 671707bd internal: fix symbol undefined build failure (#4353) 970aa092 xds/balancers: export balancer names and config structs (#4334) 1c598a11 Move exponential backoff to DNS resolver from resolver.ClientConn (#4270) 41676e61 Fix goroutine leaks (#4214) 1a870aec xds/clusterimpl: trigger re-resolution on subconn transient_failure (#4314) 87eb5b75 credentials/google: remove unnecessary dependency on xds protos (#4339) 6fafb919 xds: support unspecified and wildcard filter chain prefixes (#4333) c2299229 client: propagate connection error causes to RPC statuses (#4311) 7a6ab591 multiple: go mod tidy to make vet happy (#4337) 950ddd3c xds/google_default_creds: handshake based on cluster name in address attributes (#4310) fab5982d xds: server-side listener network filter validation (#4312) d6abfb45 cmd/protoc-gen-go-grpc: add protoc and protoc-gen-go-grpc versions to top comment (#4313) 1d1bbb55 weightedtarget: handle updating child policy name (#4309) 2df4370b examples: update xds examples for PSM security (#4256) 69f6f5a5 xds: add support for unsupported filter matchers (#4315) c7a203dc xds/interop: move header/path matching to all (#4325) 1895da54 xds/resolver: fix panic when two LDS updates are receives without RDS in between (#4327) 493d388a xds/csds: update proto imports to separate grpc from non-grpc symbols (#4326) 004ef8ad xds/clusterimpl: fix picker update race after balancer is closed (#4318) 9a10f357 balancergroup: fix leak child balancer not closed (#4308) 777b228b xds: fix service request counter flaky test (#4324) 8892a7b2 [xds_interop_client_admin] xds/interop: register admin services and reflection (#4307) 5730f8d1 Invoke Go Vet Check in Sub-modules (#4302) db816235 xds: Add fields to cluster update (#4277) f6bb3972 xds: filter chain matching logic for server-side (#4281) c72e1c8f xds/resolver: support inline RDS resource from LDS response (#4299) 0028242d Change version to 1.38.0-dev (#4306) 4a19753e interop: add a flag to clients to statically configure grpclb (#4290) 2456c5cf Allow using interop client for making Traffic Director RPCs (#4291) 80e380ef balancer/base: keep address attributes for pickers (#4253) 702608ff xds: enable timeout, circuit breaking, and fault injection by default (#4286) faf4e1c7 xds: rename proto import to grpc (#4287) 46da49ca xds: use different proto import for grpc services (#4285) b331a48e alts: re-add vmOnGCP and once globals for easier testing (#4284) d26af8e3 admin: implement admin services (#4274) f320c793 test: enable fault_injection xds test (#4283) bce1cded internal: use strings.Replace instead strings.ReplaceAll (#4279) 967933ba xds/cdsbalancer: move xds client close to run() (#4273) 95173a53 csds: implement CSDS service handler (#4243) 1e7119b1 xds: support all matchers for SANs (#4246) 21976fa3 xds: disable fault injection test on 386 (#4264) de3c78e4 xds: validate 'listener_filters' and 'use_original_dst' fields (#4258) d7737376 xds: implement fault injection HTTP filter (A33) (#4236) f168a3cb c2p: add google-c2p resolver (#4204) 2f7f1f6c rls: update pb.gos after https://github.com/grpc/grpc-proto/pull/92 (#4257) e8930beb xds: Prepare to support filter chains on the server (#4222) a45f13b1 xds: Support server_listener_resource_name_template (#4233) d5b62886 vet: set PATH to HOME/go/bin, and print go version (#4254) fce74a94 cleanup: fix typo in Interceptor README (#4249) 19c44c2e xds: add env var protection for client-side security (#4247) 97798356 Added check for POST method in http2_server (#4241) 61f0b5fa client: implement proper config selector interceptors (#4235) 930c7918 csds: update xds_client to populate update metadata (#4226) c275c359 xds: Move tests requiring API client to `tests` directory (#4238) 29bf29e0 xds: add HTTP filter is_optional support (gRFC A39) (#4221) fc8f38cc xds: add support for more resources to e2e server (#4230) c949703b xds/cdsbalancer: Override UpdateAddresses() (#4227) 9dfe6773 balancer: Add UpdateAddresses() to balancer.ClientConn interface (#4215) 60843b10 xds: add support for HTTP filters (gRFC A39) (#4206) c8cef768 csds: update client resource cache to keep and dump metadata (#4217) dabedfb3 encoding/proto: do not panic when types do not match (#4218) 25cf9393 vet: allow golint to run on generated protos (#4220) 26c143bd circuit breaking: update picker inline when there's a counter update (#4212) 1b75f714 circuit breaking: keep max_count per picker, instead of globally, and add support in cluster_impl balancer (#4203) 425d405f test: add timeout to regular xds test runs (#4201) 9f3606cd xds: xds_cluster_impl_balancer part 1 (#4154) c9217c71 priority: pass build options to balancergroup (#4202) ad24ab52 priority: the implementation (#4070) ce29c77c Change version to 1.37.0-dev (#4200) 61962d0e status: document nil error handling of FromError (#4196) 9280052d balancergroup: Propagate balancer.BuildOptions to child policies (#4184) b753f490 xds testing: increase timeout from 90 minutes to 120 minutes (#4191) 7b8d65a7 xds: rename internal/client files to remove client prefix (#4188) f005af03 examples: delete profiling example since profiling support was rolled back (#4182) 0bc74173 xds: report drops by circuit breaking (#4171) e526a292 xds: Remove v3Support environment variable (#4174) 7bb497f7 grpc: Update protobuf regenrate script (#4177) 2c42474a pemfile: Make test happy with Go1.16 (#4164) 7f2581f9 xds interop: add xds v3 kokoro tests (#4165) f579b61a test: Run e2e authority tests only on linux. (#4160) 504caa93 interop/xds: support ClientConfigureRequest.timeout_sec field (#4157) 269d2536 interop/xds: implement new stats response field (#4156) ef9850d4 xds bootstrap: support config content in env variable (#4153) 938f6e2f cmd/protoc-gen-go-grpc: add gRPC-Go version comment and update release version (#4152) 5e3cbb54 interop/grpc_testing: update generated code after recent grpc-proto changes (#4149) d3ae124a cleanup: use different import alias for services than messages (#4148) 4cf4a985 Change version to 1.36.0-dev (#4142) fb40d833 xds interop: turn on circuit breaking test (#4144) 083393f2 xds/resolver: fix resource deletion (#4143) 85e55dc5 interop: update client for xds testing support (#4108) 6a318bb0 xds: add HTTP connection manager max_stream_duration support (#4122) 0bd76be2 lrs: use JSON for locality's String representation (#4135) ecc9a99b interop: remove test.proto clones/variants and use grpc-proto repo instead (#4129) 4f80d77f github: enable CodeQL checker (#4134) 829919d5 xds client: Updated v3 type for http connection manager (#4137) f4a20d2f xds: NACK more invalid RDS responses (#4120) 53788aa5 github: update bug template to link to the CVE process (#4131) 66c13937 github: improve security policy documentation (#4130) 39a500ab support unix-abstract schema (#4079) 666aea1f advancedtls: add IPv6 address to certificate SAN names (#4101) 15458d28 xds: implement RouteAction timeout support (#4116) d79063fd credentials/xds: Move non-user facing functionality to an internal package (#4117) 644d506e xds: Ignore application_protocols field for now (#4115) 2fad6bf4 xds: Implement server-side security (#4092) cfef8c7e pemfile: Update distributor only inside of the for loop (#4114) e2d2703c xds: NACK resource when security config is not as expected (#4113) 668e3ae6 testing: stop listening on externally-visible devices (#4112) 20f4a846 xds: Expect certprovider bootstrap configs when xdsCreds are in use (#4111) 73671aee Updated test.proto to facilitate xds interop testing (#4109) 4cd551ec xds: split routing balancer into config selector + cluster manager (#4083) 17e2cbe8 credentials/xds: ServerHandshake() implementation (#4089) 03d4b887 github: Get tests111 to actually run subset of tests (#4104) 81b95b18 github: Run only a subset of tests for Go1.11 (#4102) c638ab8c Update envoyproxy/go-control-plane (#4098) fd32f6a4 internal/syscall: make Rusage a type alias (#4088) ff161957 xds: Implement circuit breaking support. (#4050) 750abe8f resolver: allow config selector to return an RPC error (#4082) f64220f6 xds: Process `require_client_cert` field in security config (#4090) 96a834a1 xds: `server_features` should be a child of `xds_servers` and not a sibling (#4087) bce1fdfa eds/lrs: handle nil when LRS is disabled (#4086) 0d6a24f6 test: move stubServer to separate package in internal (#4081) 9db56a08 advancedtls: add examples demonstrating reloading behaviors (#4018) c7df457e credentials/xds: Rename test file (#4077) 2efef8fd advancedtls: fix default host name check issue (#4069) f1149b99 xds: support server-side listeners in LDS response (#4046) 5b1874ab xds: Handle child policy configs properly (#4071) 4a0125ac roundrobin: strip attributes from addresses (#4024) c456688b client: fix "unix" scheme handling for some corner cases (#4021) 44e408da Makefile: enable module support in deps (#4062) 53c86237 Makefile: Restore `deps` and `testdeps` (#4060) a82c291b github: Don't use `make` in testing.yaml (#4059) 8238a33b advancedtls: make sni test check common name only (#4055) 21570d76 xds: Read server_resource_name_id from bootstrap config (#4049) 8f3cc6cc protoc-gen-go-grpc: export grpc.ServiceDesc (#4035) 6d0f0110 meshca: Don't use the config proto from grpc-proto (#4056) 9da74c03 xds: Blank import supported certificate provider plugins. (#4047) 8736dcd0 xds: Accept a net.Listener in Serve(). (#4052) 83af8533 trim the Makefile (#4054) f6c335c7 github: Bump up Go version in testing workflow (#4051) 40076094 xds: call xdsclient.New instead of getting xds_client from attributes (#4032) 2af65e80 advancedtls: Make test happy on Go1.15 (#4053) 78864797 balancer: set RPC metadata in address attributes, instead of Metadata field (#4041) 230166b6 xds: Use management server from go-control-plane. (#4039) c5cf5144 github acitons: always run (#4045) 8f126961 Fix typo in encoding.md (#4020) fa59d201 pemfile: Implement certprovider config parsing API (#4023) 3d14af97 Change version to 1.35.0-dev (#4044) f5c42ca7 xds/client: Export a method to return bootstrap config. (#4033) b88744b8 xds: add ConfigSelector to support RouteAction timeouts (#3991) 20636e76 protobuf: update protoc to latest version (#4038) 707e298f internal: fix net.Dial fail without IP (#4037) 1d01bf99 grpclb: consider IDLE SubConns as connecting (#4031) 90f1b3ee client: use "localhost:port" as authority if target is ":port" (#4017) 22dba5eb xds: Remove usages of grpc.WithInsecure(). (#4028) d2629bd4 xds/bootstrap: Add support for `grpc_server_resource_name_id`. (#4030) 6caf9d86 xds: make xds client a singleton (#4015) 28c130fe xds: Minor improvements to xDS server API and test. (#4026) b5d479d6 xds: Deflake xds_server_integration_test.go (#4025) aeb04798 credentials: fix PerRPCCredentials w/RequireTransportSecurity and security levels (#3995) d6f8e6fb grpclb: send custom user-agent (#4011) 9c2f82d9 xds: Server implementation (#3999) bc01f3fa certprovider: API tweaks. (#3987) 5d7f8c9a advancedtls: make example to use new pemfile API (#4012) 25ddfddb rds: allow case_insensitive path matching (#3997) d7a7a304 testing: Avoid using context.Background (#3949) c6fa1217 Fix a typo in interceptor example's README.md (#4014) ea89aca6 xds: Add a package to hold environment variables. (#4002) 9a3c6618 xds: remove xdsclient.New from EDS balancer (#4001) 15ae9fc2 internal: increase timeout non timeout test in xds/client/v2 (#4006) 4e179b8d pemfile: Move file watcher plugin from advancedtls to gRPC (#3981) fe9c99ff xds: CDS balancer security integration. (#3955) f4d9cca4 github: add Github Actions workflow for tests; support in vet.sh (#4005) c8ef9bc9 xds: Check name of transport socket received in Cluster response. (#3988) 89faf1c3 internal/transport: fix a bug causing -bin metadata to be incorrectly encoded. (#3985) b045bc88 priority: add policy config parsing (#3936) fe98b4c6 doc: update keepalive.md to add why (#3993) 15a78f19 xds: Minor cleanup in client/v2 tests. (#3989) 71ef09e6 xdsResolver: call WatchListener and WatchRDS, instead of WatchService (#3972) 4e6166f6 Documentation: fix outgoing metadata example code (#3979) 829af019 advancedtls: add examples for reloading from file system (#3976) a223251d lrs: handle multiple clusters in LRS stream (#3935) e8e22874 Remove experimental comment from client interceptors (#3948) a80e6501 cmd/protoc-gen-go-grpc: bump -version to 1.0.1 for release (#3984) 3e67a200 Add GitHub release action (#3962) eb7fc22e credentials/xds: Handle no acceptedSANs correctly. (#3965) 37b72f94 xdsclient: populate error details for NACK (#3975) 0e8f1cda manual resolver: delete GenerateAndRegisterManualResolver (#3960) 4e8458e5 protobuf: update all generated code to google.golang.org/protobuf (#3932) 8153ecea credentials/insecure: Implement insecure credentials. (#3964) 9519efff cmd/protoc-gen-go-grpc: use grpc.ServiceRegistrar instead of *grpc.Server (#3968) ce5e3665 advancedtls: add PemFileProvider integration tests (#3934) 4be647f7 internal/resolver/unix: Implemented unix resolver. (#3890) ea47aa91 xdsClient: change WatchRDS to return all virtual hosts (#3944) c6cfaba1 advancedtls: Get Instant Updates Before Ticker Runs (#3959) 7b167fd6 encoding/proto: simplify & optimize proto codec (#3958) 7745e521 meshca: Use grpc suffix for grpc specific generated code. (#3954) bc36dc2c advancedtls: fix build on version prior to 1.14 (#3950) 3c400e7f advancedtls: clean up test files and shared code (#3897) 84e85f71 internal/credentials: fix a bug and add one more helper function SPIFFEIDFromCert (#3929) 9abcdab7 cmd/protoc-gen-go-grpc: fix method name in interceptor info (#3889) 06c094c3 xds/client: Process security configuration from Cluster resource (#3931) f0db9671 Change version to 1.34.0-dev (#3941) 5af60402 lrs: add Store.Stats() to report loads for multiple clusters (#3905) 7464f756 channelz: remove redundant case from AddTraceEvent and remove caps from severities (#3925) c0736608 xds: Cleanup CDS balancer code and tests. (#3916) 9a3c02f9 http2_client: fix reader segfault on PROTOCOL_ERRORs (#3926) dad518ae xds: Refactor/cleanup xds client tests. (#3920) b2c5f4a8 stalebot: send first ping after 6 days (#3923) d5280589 xds/bootstrap: Use correct format for "certificate_providers" field. (#3922) 8fbea727 cmd/protoc-gen-go-grpc: add --version flag support (#3921) d9063e7a standardized experimental warnings (#3917) bebda80b internal/balancer: Remove a TODO in stub balancer. (#3919) 2e2833c7 xds: Fix resource type to URL mapping for v3 client. (#3915) e55dd3e1 cmd/protoc-gen-go-grpc: re-add proto3 'optional' support (#3914) bb64fee3 xds: Replace a select with an if statement. (#3912) 866de13d meshca: CertificateProvider plugin implementation. (#3871) 6f47205d credentials/xds: Implementation of client-side xDS credentials. (#3888) 02cd07d9 cmd/protoc-gen-go-grpc: revert to interface-based service registration (#3911) e6c98a47 stats: include message header in stats.InPayload.WireLength (#3886) 21f897ea xds: Add bootstrap support for certificate providers. (#3901) 4e932bbc xds/testutils: Minor cleanup. (#3898) 659b8291 internal: regenerate pb.go (#3893) e4ae8742 xds/cdsbalancer: Use testutils.TestClientConn. (#3899) 0dc99861 lrs: add a layer for clusters in load store (#3880) 64c4c373 xds: Use a grpcsync.Event to represent close in CDS LB policy. (#3894) 400b4a0a binarylog: export Sink (#3879) d81def43 xds: Rename xdsclientWrapper type to xdsClientWrapper in EDS. (#3896) 924b48b0 xds: Use a grpcsync.Event to represent close in EDS LB policy (#3895) 0f7e218c advancedtls: add fields for root and identity providers in API (#3863) 4270c3cf xds bootstrap: support insecure and make Creds required (#3881) bf9584e1 internal/transport: handle h2 errcode on header decoding (#3872) 9ec6f110 xds: Exit from run() goroutine when resolver is closed. (#3882) 4bee4dbc protoc-gen-go-grpc: update README.md to reflect recent changes (#3883) ff9dd65c protoc-gen-go-grpc: generate interfaces optionally; remove NewFooService (#3876) a3e63e87 alts: Specify the build constraints correctly. (#3877) 32e7099c grpctest: Minor improvements to tlogger. (#3874) 86d33e46 connectivity: Get rid of unused Reporter interface. (#3875) 65911230 internal: rename package for test alone file (#3855) 4a2248a4 Remove grpc_cli build instructions (#3868) 52029da1 service reflection: include transitive closure for a file (#3851) 15157e26 test: remove funcServer and some uses of NewTestServiceService (#3867) 8630cac3 xds: update balancer group ID type to string (#3862) 9a132e44 advancedtls: add PEMFileProvider implementation for on-file-change credential reloading (#3826) 8c8305f8 benchmark: Revert to use old certs. (#3860) 0b575750 credentials/alts: Skip ALTS tests on darwin. (#3859) b5802b5f xds: v3 support for LRS. (#3856) 48bf772d credentials/alts: ClientAuthorizationCheck to case-fold compare of peer SA (#3792) d8ef479a internal: fix build for gae (#3852) d25c71b5 testutils: Add a context parameter to the Receive() method. (#3835) 35afeb6e internal: reintroduce legacy appengine build constraints (#3850) d31b6710 cmd/protoc-gen-go-grpc: call interceptor even if handler is unset (#3849) cc8e63ca security/authorization: add integration tests (#3809) c4ba4cc6 Change version to 1.33.0-dev (#3846) ff1fc890 internal: reintroduce legacy appengine build constraints (#3838) 44d73dff cmd/protoc-gen-go-grpc: rework service registration (#3828) 410880dd eds: fix priority timeout failure when EDS removes all priorities (#3830) 0e72e094 server: prevent hang in Go HTTP transport in some error cases (#3833) b9bc8e75 End stream flag bugfix (#3803) e14f1c23 certprovider: API update to include certificate name. (#3797) 6c0171fa rls: Update rls protos and code/test to reflect those changes. (#3832) d16bb4c3 transport: use escaped string instead of int->string conversion (#3831) f640ae6a security/authorization: util function for converting CEL expression string (#3822) 0f73133e xds: Export a WatchListener() method on the xdsClient. (#3817) a3740e5e grpc: Bump up support package version. (#3818) f30caa90 server: Add ServiceRegistrar interface. (#3816) 1dbe29f6 examples: update grpc version (#3813) 6768e33c xds: Fix TestV2ClientBackoffAfterRecvError (#3815) 9310253e meshca: Pull in the MeshCA service proto from istio repo. (#3814) 1605756d xds: add LRS balancing policy (#3799) 0baf4c2d meshca: Pull in the MeshCA config proto from grpc-proto repo. (#3807) 7d892150 internal/wrr: introduce order offset to edf scheduler as a tiebreaker for entries with same deadline (#3800) b54ea173 xds: Support xDS v3 transport protocol. (#3778) 6aaac03d internal/serviceconfig: Fix typo and improve docs. (#3802) 2983360f Fix interop tests which rely on the old certs/keys. (#3804) 244f9ece credentials: Migrate helper functions to /internal/credentials for future cleanup (#3780) d3e3e7a4 security/authorization: Added CEL-based authorization engine (#3707) 7419b444 xds: Improve TestClientWrapperWatchEDS. (#3783) 8beeedb8 internal: clean up all usages of grpclog, and replace with component (#3719) a5514c9e grpc: Minor refactor in server code. (#3779) b830b5f3 advancedtls: fixed SNI testing and put SNI functions back in advancedtls.go (#3774) 446b4dba advancedtls: add spiffe support in aTLS (#3777) b2f0b793 xds: Pass WatchExpiryTimeout to Client via Options. (#3784) fd393c89 testdata: Update testdata certs. (#3786) 94d8df75 xds: Avoid mutex copy in log statement. (#3788) 5f7b337d Add some appengine build constraints. (#3787) 8bec2f5d Re-add Go1.11 support (#3776) bc714cd8 Remove Go 1.9 / AppEngine support; assume go1.12 build tag (#3767) b72d07f8 advancedtls: migrate testing to grpctest (#3773) b2e49701 examples: break from 'PerRPCCredsCallOption' status checking loop (#3772) f92f5343 README: change badge to pkg.go.dev (#3768) 97c30a14 xds: Client refactor in preparation for xDS v3 support (#3743) d6c4e49a internal: delete mock from examples (#3766) 1c32b026 typo: upate->update (#3765) 0e6096e9 interop: update --fail_on_failed_rpc to wait for initial success (#3763) 067255ff xds testing: add path_matching and header_matching (#3764) dfc0c05b advancedtls: Add SNI logic to ServerOptions.GetCertificate (#3697) 8b7764bd xds interop: update interop client to support new tests (#3737) 7408372e xdsrouting: remove env variable for routing (#3754) 9106c3ff Change version to 1.32.0-dev (#3757) cee815db Added support for proto3 field presence (#3752) a1ace910 xdsrouting: resolver to generate service config with routes, and pick routing balancer (#3751) a5a36bd3 client: set auth header to localhost for unix target (#3730) 5f0e7284 xdsrouting: balancer implementation (#3746) ca3959a1 xdsrouting: handle route fields in xds_client (#3747) 266c7b6f xdsrouting: add fake headers (#3748) 6dc7938f xdsrouting: balancer config parsing (#3734) e2f575e5 xdsrouting: all matchers (#3733) 08e6bb18 examples: change xds example to import xds instead of experimental (#3745) 6e77a8b2 xds: delete experimental package and experimental scheme (#3729) 1154df9a balancer: remove deprecated type aliases as planned (#3742) dd8658f9 credentials: check and expose SPIFFE ID (#3626) 9fcde86e credentials/alts: Change ALTS hsConn to a map (#3741) 46d42f13 README: adjust links, and slight rework of page (#3736) a6c3c696 examples: cleanup README.md (#3738) d8193ee9 xds: Add v3 support for client bootstrap. (#3723) abfbf74f doc: fix references to status methods (#3702) 34053813 codes: document which error codes can be returned by the framework (#3699) a86c873a cleanup: fix mention of healthcheck to health (#3731) e8fb6c17 credentials/sts: PerRPCCreds Implementation (#3696) 9af290fa balancergroup: move balancer state (connectivity state and picker) building out (#3685) 4258d120 service config: add default method config support (#3684) 3de8449f xds: use logging components (#3718) 68098483 advancedtls: Add system default CAs to config function (#3663) c95dc4da doc: mark CustomCodec as deprecated (#3698) 506b7730 Implemented component logging (#3617) 42419544 xds: Move test only utility method to testutils. (#3715) 31d22c78 examples: use grpc v1.30.0 rather than v1.30.0-dev.1 (#3710) 7a808837 examples: make test script output easier to read (#3711) 38aafd89 vet.sh: require ALL modules are tidy; tidy some that are not (#3709) 4e63bcab test: replace manual.GenerateAndRegisterManualResolver with grpc.WithResolvers (#3700) 9a465503 alts: Added peer attributes accessor for alts context and updated test method (#3675) dfc058c6 credentials: Add certificate provider plugin APIs. (#3654) 3b63c2b1 retry: re-enable retrying on non-IO transport errors (#3691) 6f5ecbe5 Change version to 1.31.0-dev (#3681) b6d6ede3 xds: use google default creds (#3673) eb11ffdf retry: prevent per-RPC creds error from being transparently retried (#3677) 9aa97f9c stream: fix calloption.After() race in finish (#3672) d5bc6ecb xds: Add cmpopts.EquateEmpty option in tests. (#3671) 479df5ea advancedtls: check error before deferring close (#3659) ad51f572 protoc-gen-go-grpc: add requirement of embedding UnimplementedServer in services (#3657) 42eed59d xds: handle errors in xds_client (#3658) cb7f5de3 xds: handle errors in xds resolver (#3651) a085b3e7 credentials/local: fix incorrect binding of listener port (#3656) 806b6fc5 xds: handle errors in cds balancer (#3649) f818fd2a all: regenerate .pb.go files using cmd/protoc-gen-go-grpc (#3646) e0ec2b83 doc: fix quickstart hyperlink in README (#3648) acd5f849 xds: handle errors in eds balancer (#3645) 6c9e30c0 cmd/protoc-gen-go-grpc: add code generator (#3453) 30c53e74 xds: move balancer/resolver registation to package xds (#3640) e786c2df xds: eds balancer handleEDSUpdate cleanup (#3639) 5cd45224 internal: fix errors after merging (#3643) eb827fbf grpclb, dns: pass balancer addresses via resolver.State (#3614) d071d568 xds: handle weighted cluster as route action (#3613) 4709b05f transport: move append of header and data down to http2 write loop to save garbage (#3568) 5e506934 credentials/alts: Fix ALTS record crypto interface comments (#3638) d6e95de1 xds: rename subBalancerWithConfig to subBalancerWrapper (#3608) 5c35263b internal: update rls.pb.go (#3637) 8bd46590 xds: not cancel and restart RDS watch on the same LDS update (#3619) 9eb3e7dd credentials: local creds implementation (#3517) 636b0d84 internal: fix typos (#3581) 96e5c84c xds: rename resolver scheme to xds (#3621) f5cae438 Fix wording in keep alive documentation (#3625) f62d68d5 benchmark: exit from UnconstrainedStreamingCall() when stream is canceled (#3623) 36493bc3 xds: stop expiry timer after receiving an update (#3615) a6ab4473 cache: callback without cache's mutex (#3603) 42e450fa doc: update "A short introduction to Channelz" url (#3583) 695df7e2 status: wrap status proto in a struct (#3556) 10ccd463 xds_client: make sure LDS sets ConfigSource to ADS (#3588) c8482678 advancedtls: remove test.Fatal() from child goroutine (#3595) e7557c82 xds: reject RDS response containing match with case-sensitive false (#3592) a906ca04 balancergroup: fix connectivity state (#3585) 661d4c96 internal: update service_config.pb.go (#3584) fe604e1f xds: add weighted_target balancer (#3541) eedec2c1 advancedtls: add leaf cert in verify params (#3571) 4b071056 internal: revert change to make travis always build proto (#3580) 695da821 interop: increase xds test client rpc timeout (#3579) 80ff2c9d internal: code regen move file to correct location (#3574) accb8795 cleanup: remove lingering V2 references (#3576) d70354e6 advancedtls: add field names for unit tests (#3570) 4eb418e5 balancer: move Balancer and Picker to V2; delete legacy API (#3431) b0ac6011 rls: LB policy with only control channel handling (#3496) b2df44ea Pass weights to wrr balancer through attributes. (#3530) a3cc4f61 interop: add --fail_on_failed_rpc xds client flag (#3567) 15653fec all: refactor .pb.go generation (#3451) 7d6aa9ed kokoro: use xds-test-server image (#3564) c10d2c6f rls: Update rls protobufs. (#3562) a0cdc21e server.go: use worker goroutines for fewer stack allocations (#3204) 29f40a46 make helper function return error (#3553) 6a3c0388 Pass address attributes from balancer to creds handshaker. (#3548) 8f94cb18 status: remove Error method accidentally added to *Status (#3561) 18b6aa77 xds: unexport edsBalancerImplInterface's function (#3550) f313ade8 advancedtls: add fine-grained verification levels in XXXOptions (#3454) 843b06d5 benchmark: Fix segfault in benchmark code. (#3555) 03def2a1 examples: add go.mod to make examples a separate module (#3546) f67e7c03 Make vet happy on non_linux platforms. (#3549) da151789 internal: move parseMethodName func to internal/grpcutil (#3525) 6774920a xds: Modify return value of getClusterFromRouteConfiguration (#3534) aff515dc env: check GRPC_GO_IGNORE_TXT_ERRORS env var (#3532) d15f1a4a test: Move creds related to tests to creds_test.go (#3542) f9ac13d4 credentials/alts: Properly release server InBytes buffer after the handshake is complete. (#3529) 759569bb balancer: support hierarchical paths in addresses (#3494) f9a1aeb4 xds: accept either "" or "/" as the prefix for the default route (#3535) ff40ef42 xds: refactor xds_client (#3477) 6e001bea README: add link to Go releases (#3526) c7079afb lint: fail on missing package comment (#3524) c97e1d3b Revert "credentials/alts: Properly release server InBytes buffer after the handshake is complete. (#3513)" (#3528) 4c4cafba internal/transport: Get rid of TargetInfo struct. (#3527) 46c755af rename to LocalityID (#3522) 8e6052a0 fix typo in flag description (#3520) a783b25f internal: rename proto import to end with pb (#3523) 27096e82 doc: update README for supported Go versions and travis for tests (#3516) 7c3fd130 credentials/alts: Properly release server InBytes buffer after the handshake is complete. (#3513) b02de000 client: option to surface connection errors to callers (#3430) a9555d04 balancergroup: update methods to V2balancer (#3505) 709091fe service config: move balancer config parsing to internal (#3504) 7f194773 Change version to 1.30.0-dev (#3511) 85e3a6fd credentials: Update doc strings for NewClientTLSFromCert et. al. (#3508) 3038e58e examples: add example to show how to use the health service (#3381) 98e4c7ad xds: move balancer group to a separate package (#3493) c5faf568 status: move statusError to internal/status package (#3432) 7cb4db26 internal: update grpc_lb_v1 proto (#3499) a9601d93 xds: update nonce even if the ACK/NACK is not sent on wire (#3497) 66e9dfe7 transport: fix handling of header metadata in serverHandler (#3484) aedb1362 balancer: change roundrobin to accept empty address list (#3491) fe1d8e71 xds: add temporary logging to LRS (#3490) 508cf420 cleanup: fix typo in grpclib_remote_balancer.go (#3486) cc864071 rls: Manually implement equality of key builder maps. (#3476) e965f2a6 client: add a WithNoProxy dialoption (#3411) 5dbd4c23 kokoro: allow individual test case logs for xds (#3478) 192c8a2a rls: Rename type `picker` to `rlsPicker`. (#3475) 7c502e14 wrr: make random wrr thread safe (#3470) fe80f08f Update test credentials to 2048-bit RSA keys (#3467) b3dcc681 stats: set response compression codec on stats.InHeader and stats.OutHeader (#3390) 197c621d xds: use generated protos from github.com/cncf/udpa/go (#3449) 166461e2 channelz: Make staticchecker happy on darwin. (#3469) 09c4b45e vet: Get it to work on Darwin. (#3452) 71f583e9 xds: split callback in xds_client to avoid type assertions (#3450) ba34a8c5 doc: fix link in xds readme to point gRFC (#3466) b9b4456a README: add KeepaliveParameters hint to FAQ (#3465) 804ff443 rls: Implementation of the picker (#3423) 399ae780 alts: add trailing dot to metadata.google.internal (#3460) 09f5e89a kokora: checkout matching grpc/grpc branch for xds test (#3456) 4e487c16 xds: rename WatchEDS to WatchEndpoints in xds_client (#3447) ecea6ed1 xds: better way to compare and update dropper in EDS (#3434) 9e4ff32c client: fix getResolver to use scheme param (#3437) a6bd1006 kokoro: add xds job (#3448) 0e160327 rls: Implementation of the RLS client. (#3446) 47c04d19 rls: LB config cleanup (#3443) 6d849d5c rls: Some minor updates to the RLS cache. (#3442) dc074d67 rls: Add an Equal method to the KeyBuilderMap type. (#3441) 5c17da69 stats: add comments about why out headers and out trailers have no wire length (#3408) 9a1081e2 xds: handle removing drops (#3433) d179e8f5 xds: Update an error log message. (#3429) 3211773f Change version to 1.29.0-dev (#3428) c1242570 rls: Implementation of lb config parse functionality. (#3379) 759de4dd xds: include nonce from the most recent response in new requests (#3420) cfc5fec3 eds: handle child balancer state asynchronously (#3418) 6af3d372 Fixed channelz test flakyness. (#3417) d3b2eefd xds: include port in VirtualHost domain matching (#3413) c0d37940 xds: Eliminate calls to reflect.DeepEqual from xds code. (#3414) c26257da rls: Initial implementation of the LRU cache. (#3359) 2cd9da62 test: record peers by hostname in xds client (#3409) e139b475 xds: support wildcard domain matching for RDS response (#3397) 73cf2d2a xds: LRS send hostname in metadata (#3394) 6f9eea6e test: include xDS package in test client dependencies (#3407) a63c5550 xds: set no_overprovisioning in request Node (#3402) 224056d3 xds: add reflection and health service to example server (#3403) f8ad812d internal: update interop test.pb.go (#3405) 7f5ddc8a xds: improve logging (#3386) c02d9d17 xds: LRS handle response contains multiple cluster names (#3393) 6cd03861 vet.sh: ensure vet runs on all packages (#3395) b1a5073a Fix vet issues (#3396) a43f3ee9 interop: add xds test client and server (#3326) 5b44288e internal: update service config proto (#3389) 7392afe7 xds: client should handle new watch requests even if there's no working stream (#3376) fff75ae4 channelz: log on channelz trace events and trace on channelz relevant logs. (#3329) a10661dd credentials: deprecate ProtocolInfo.SecurityVersion (#3372) 6b9bf429 Revert "profiling: add hooks within grpc (#3159)" (#3378) 92dd426e balancer/base: keep bad SubConns in TransientFailure until Ready (#3366) d0235e4d interceptor: new APIs for chaining server interceptors. (#3336) 95c834a7 xds: resolver handle good update after getting an error (#3374) 83263d17 profiling: add hooks within grpc (#3159) a431daa3 testutil: add a mutex to tLogger to protect errors map (#3373) f3111a57 interop: Build grpclb_fallback/client.go only for linux. (#3375) e38032e9 internal: Move parseTarget function into internal package and export it. (#3368) eb53a9e8 internal: Update service_config.pb.go (#3365) d76e57cb rls: Implementation of RLS key builders. (#3344) 979f0a2f client: clarify units of send/receive message size call options (#3354) 0ab367d2 examples: add client/server to be used for xds examples (#3362) 132187f0 Modified tests to use tlogger. (#3343) cb03b9f6 balancer/base: consider an empty address list an error (#3361) 597699c0 grpclb: support explicit fallback signal (#3351) 13535f71 rls: Implementation of the adaptive client-side throttler. (#3346) 648cf9b0 advancedtls: use grpc 1.27.0 and small fixes (#3360) 3ae60ebf stats: create new MD for outgoing header if no MD is available (#3357) e0e0cbc7 xds: move "_experimental" to suffix for all balancers (#3356) 77bc3d39 test/tools: update protoc-gen-go version used by vet.sh (#3355) 1f6cca96 README: update SupportPackageIsVersion help in FAQ section (#3350) 7621679b stats: add client side user agent to outgoing header (#3331) b88d2d74 protobuf: update protoc-gen-go version and generated code (#3345) f97821dd advancedtls: add end to end tests (#3318) 822723f7 xds: Enable keepalives on the xds client channel. (#3335) ca10cab1 Change version to 1.28.0-dev (#3342) 1ce75691 rls: Add generated pb.go files for RLS. (#3337) 8c50fc25 revert buffer reuse (#3338) 7afcfdd6 client: add interface for ClientConn to be accepted by generated code (#3334) 1f66bc9e xds: propogate bootstrap error to grpc.Dial (#3330) 27fd7d00 balancer/resolver: remove temporary backward-compatibility type aliases (#3309) 3311b9ea grpclb: update proto from grpc/grpc-proto (#3323) d670c2dc advancedtls: fix internal tests (#3322) cd74fa23 internal: remove withResolverBuilder and use WithResolvers instead (#3321) 62d4bd73 security: Add a package level comment to testdata package in advancedtls (#3317) 0083f6ee client: add WithResolvers options for specifying client-local resolvers (#3320) e8a4440d grpctest: implement grpclogger using testing.T and inject in tests (#3260) c35a580b Revert "balancer: move Balancer and Picker to V2; delete legacy… (#3315) 20bce9a0 advancedtls: add package for testdata (#3306) 336cf8d7 balancer: move Balancer and Picker to V2; delete legacy API (#3301) 69baa3f1 credentials: close tls.Conn on failure (#3300) 02c70004 xds: delete old xds resolver (#3303) 1a3212aa lint: add missing package level comments (#3302) ede71d58 stream: fix returnBuffers race during retry (#3293) 4a4d179f advancedtls: add new module for advanced TLS handshaker (#3187) 4346c592 credentials: create API for transport security level information (#3214) b91517cd dns: ignore TXT errors unless GRPC_GO_IGNORE_TXT_ERRORS=false (#3299) cf9eb4f5 benchmark: add support for payload size curves (#3248) 10cea432 internal: fix initialBackoff typo (#3289) 287dc3e5 eds: move edsBalancer to the package `edsbalancer` (#3294) 1f28521e eds: delete fallback related code from the EDS balancer (#3287) 5bc9b325 fix lbpb package name typo (#3290) 5f3da2a0 Fix resolver.ClientConnection to resolver.ClientConn (#3288) 8a65b845 xds: client test cleanup. (#3284) c6189753 internal: fix profiling go generate proto file path (#3285) aa428f8e xds: fix RDS flaky tests due to ACK (#3279) d14c8346 xds: client test cleanup (#3267) 01d201eb examples: add profiling (#3265) a2a5ae5d credentials/alts: Add Client Authorization Utility API (#3271) 64267512 codec/proto: reuse of marshal byte buffers (#3167) ffcdcbc7 profiling: add cmd binary for retrieving and processing data (#3161) fb8a0977 xds: Improve cdsbalancer_test.go (#3277) f42dee19 trace: fix getting family for the method (#3216) 9819552c xds: Improve xds_resolver_test.go (#3259) d44b1112 profiling: add proto and service (#3160) fcf817f6 dns: report errors from A record lookups instead of zero addresses (#3258) 660df6a0 xds: Improve xds_client_test.go (#3270) 04c17931 xds: support multiple xds servers in bootstrap file (#3247) f3249004 dns: fix timing-based test to be more reliable (#3269) a281b506 xds test: read ACK to clear req chan (#3266) 9efef036 Change version to 1.27.0-dev (#3263) d01454da xds: Improve balancere/xds_test.go. (#3256) f7b39d80 profiling: Fix a data race in the circular buffer. (#3254) e3baa761 grpc: Defer the unlock in newCCResolverWrapper (#3255) 085c9800 grpclb: do not send redundant empty load reports to remote LB (#3249) df18b543 xds: support ack/nack (#3227) 032a3799 godoc: clarify WithTimeout deprecation note (#3226) cb0e11b5 benchmark: include go and grpc version in result files (#3242) d5c817b9 xds: Improve xds_lrs_test.go (#3251) 4323b783 Update README.md (#3231) 9f02faef credentials: move TLS implementation to a separate file (#3243) 021bd573 profiling: add internal changes to support profiling of gRPC (#3158) 505c0d64 xds: skip callback if xds client reports error (#3240) 81a07a98 internal: Improve documentation around buffer.Unbounded (#3241) 3a4f66e0 xds: small fixes (#3238) 11399004 xds: resolver test cleanup (#3233) a4e9d955 xds: Update the check for match field when handling an RDS response. (#3239) 86c8a0cb xds/resolver: Add missing double quote in json SC (#3232) 3180dcb4 server.go: combine defers to reduce stack usage (#3208) da3b1eb4 xds: Implementation of the CDS LB policy. (#3224) 6f8ce092 dns: reapply "dns: stop polling for updates; use UpdateState API" (#3228) 895b36dd travis: run interop tests with examples (#3229) 14426e9c credentials/alts: Ensure that GetBytesConsumed is in-bound (#3225) 22854c88 credentials/alts: Simplify ALTS acquire and release APIs (#3221) 645dd12f alts: Update handshaker.pb.go 1e36139a credentials/alts: Set the handshake extra slice correctly (#3222) 4b2104f1 xds: change lrs server name field in xds balancer config to a string pointer (#3210) 9dc72d1d Revert "dns: stop polling for updates; use UpdateState API" (#3213) 157dc9f3 xds: cleanup eds tests to use fakexds server (#3209) 7e7050be xds: Minor refactoring, prep for CDS LB policy (#3211) d8e3da36 xds: in EDS balancer, use xds_client from attibutes (#3205) 1c4070c2 xds: CDS implementation in v2Client. (#3203) e5e980f2 dns: stop polling for updates; use UpdateState API (#3165) cb47f381 dns: do not call NewServiceConfig when lookups are disabled (#3201) da649b36 xds: use the shared xds client in eds balancer (#3197) 0e8c6a32 github: make stalebot monitor PRs, too (#3202) dc49de8a balancer: add V2Picker, ClientConn.UpdateState, SubConnState.ConnectionError (#3186) 7c1d3267 benchmark: Enable server keepalive in benchmarks (#3196) 24b653e8 xds: Don't override dialFunc in xdsClient in tests. (#3191) d720ab34 server: Keepalive pings should be sent every [Time] period (#3172) 24f6331d server: correct doc regarding unknown handlers and interceptors (#3195) 5d4cc8af xds: Implementation of xds_resolver using LDS/RDS (#3183) 71ba135a xds: handle EDS in xds client (#3181) 967379b1 client: set grpc-accept-encoding header based on outgoing compressor (#3139) 347a6b4d stats: attach metadata to In/Out Headers/Trailers (#3169) 448c8c62 xds: replace eds proto message with xdsclient defined struct in eds balancer (#3174) 0b3a5cc2 Move bootstrap functionality to a new package. (#3176) 2cb07fcd resolver: rename Option to Options, leaving type aliases for now (#3175) dc9615bb xds: Initial implementation of a client using the v2 API (#3144) 460b1d2c dns: disable SRV record lookups unless grpclb is imported (#3149) 51ac07fb vet: revise staticcheck strategy (#3152) 95c37594 examples: change wait into job polling loop after killing tests (#3168) d903dd74 interop: add grpclb fallback test (#2994) 4717e3b5 resolver: add deprecation note to AddressType and its values (#3156) f691f352 resolver: re-add dns and passthrough packages as references to internal versions (#3162) caaa7649 examples: enable debugging to help determine why tests are hanging (#3166) 6071e701 more detailed log message (#3117) c2b74f74 xds: set client node.BuildVersion to gRPC version (#3140) 2548a220 internal: fix EDS test race in cmp/sort (#3154) 0aa47d32 resolver: introduce attributes package and use it for Address and State (#3151) 2d2f6568 cleanup: fix generic comparisons on protobuf messages (#3153) dd568c06 xds: support priority (#3066) 76e6ad37 Change version to 1.26.0-dev (#3148) 6dac0204 test: add test of malformed gzip payload (#3141) 6c48774f travis: move example tests to a separate run (#3143) b09352fc xds: add new fields to XDSConfig (#3100) bbd4b7ae eds: skip unhealthy endpoints (#3137) 583401aa Add a general purpose unbounded buffer implementation (#3099) 88bf0703 resolver: Add new fields to resolver.BuildOption struct to support dialing a remote name resolver (#3098) 7c97d1d5 docs: fix reflection doc (#3138) da2bec01 test & testutils: prevent goroutine leaks in test functions (#3133) 0f32486d transport: minor code simplification (#3136) 8988da6e examples: add examples regression test script (#3118) 8eafb5b7 xds: remove cds from the current xds balancer (#3085) 459a38a0 grpclb: enter fallback if no balancer addresses are available (#3119) ff5f0e93 xds: add script to regenerate orca (#3131) ee90cbda stalebot: only update one issue per run to prepare for re-enabling it (#3129) 5367efb8 cleanup: no x/net/context (#3120) a8f166a0 xds: use generated files from go-control-plane (#3083) 4ec516e5 interop, examples: use localhost instead of 127.0.0.1 (#3124) 88080a24 Update the comment for `newCCResolverWrapper`. (#3123) 0f2d5393 client: Keepalive pings should be sent every [Time] period (#3102) c0909e91 resolver: move dns and passthrough to internal (#3116) a7c1650e fix typos (#3111) 041ead07 xds: cache locality (sub-balancer) (#3067) b53233ce examples: add regression test script to hello world example (#3092) 7c3115d8 client: fix bug with cancellation propagation for unary RPCs (#3106) 5e3ef93a grpclb: avoid use of reflect.DeepEqual on proto.Message types (#3101) 7c8e6037 Add more details in ClientConn GoDoc. (#3096) d5ab7434 credentials: accept another listen error as lack of support in test (#3097) 027cd627 Fix a data race in resolver_conn_wrapper.go (#3090) 0859afa3 xds: set dial target in request resource_names (#3081) 1610f0fd mod: move test/tools to a different module (#3086) c0122323 fix typo for grpclb token key (#3094) ef403a2e Make healthcheck tests in end2end_test.go more readable. (#2883) f07f2cff credentials: Use net.SplitHostPort safely parse IPv6 authorities in ClientHandshake (#3082) ff0c603b proxy_test: Fix a goroutine-leak bug in testHTTPConnect: now use channel done to store err and call t.Fatalf when err not nil (#3080) 2d6a3edc cleanup: fix typo (#3084) 2e7984e2 clientconn: override authority with address's ServerName, if set (#3073) d08614fd examples: add UnimplementedGreeterServer in debugging example (#3079) b4f13811 [xds_config_rename] xds bootstrap: rename helper.go to config.go (#3059) df162eae test: embed Unimplemented___Server in every service (#3076) 691f3b44 cleanup: fix various misspellings (#3075) ed563a02 resolver: add State fields to support error handling (#2951) aa4eae65 Remove couple of unused fields in the resolver wrapper. (#3070) 50c4579f examples: add Unimplemented___Server to all example servers (#3071) dcd1c974 Use exact size, if known, to allocate decompression buffer (#3048) 47d3cfe0 Adding a RequestInfo struct for propagating request data to Get… (#3057) 31911ed0 client: add WithConnectParams to configure connection backoff and timeout (#2960) fb2e5cdc server: add ServerOption HeaderTableSize (#2931) 3778847a examples: create an example for enabling and configuring retry (#3028) 492ab452 xds: incorporate changes to bootstrap file format. (#3065) 5bf44136 xds: make balancer group restartable (#2999) 2e14ef27 transport: don't check s.header on the server side in Stream.Header (#3063) 5df282ef transport: fix race between operateHeaders and closeStream and reading headers (#3062) 7aa94b7e health: Use sync.RWMutex instead of sync.Mutex (#3058) 663e4ce0 client: fix race between client-side stream cancellation and compressed server data arriving (#3054) 861d8e79 internal: fix typos in comments (#3046) 1e7ab3da Move keepalive tests to a separate test file. (#3014) e75b8f48 test: fix flake in GoAwayThenClose (#3052) e3510443 clientconn: fix potential deadlock caused by ResetConnectBackoff (#3051) 1950dc9d travis: add go1.13 and remove go1.10 and go1.9 without GAE (#3050) 275a76f4 Change version to 1.25.0-dev (#3043) 230def76 docs: fix debugging README typo (#3037) 788ffe62 Update governance, contributing, code of conduct docs (#3033) 6b46f470 client: consider service config invalid if loadBalancingConfig… (#3034) a5e64ec4 test: fix channelz test for violating flow control (#3031) e2cfd1c2 internal: update proto library version (#3025) 7b8c5564 Add functionality to read xDS bootstrap file. (#3000) 40ed2eb4 server: set and advertise max frame size of 16KB (#3018) ac35b677 grpclb: fix deadlock in grpclb connection cache (#3017) 4ccf24ac vet: ignore status code from grep -L (#3016) 92075d79 modules: add go 1.11 to go.mod (#3013) 74f33a44 github: add mergeable config (#3008) 5735d6dc github: add stalebot config (#3007) e2d4ecf5 doc: clarify client concurrency (#3001) 59c5eb75 Keepalive test improvements. (#2992) da768de0 Improve xds_test.go (#2991) 6c2b3b1b Add a micro benchmark for context.WithValue() to compare using local and (#2986) 4d39b489 transport: derive transport context from context.Background (#2930) d5a36f00 credentials/alts: Assume not running on GCP if DMI not present (#2996) 45bd2846 Use sync.Cond to implement keepalive dormancy. (#2987) ad20eafd change from Inc. to LLC for Google (#2997) 0574097d example: use proto message Get methods in helloworld (#2990) 6fb38bde Fix a bug in benchmark code. (#2989) dc187547 Implementation of the xds_experimental resolver. (#2967) 3bb34e53 bufconn: Implement read/write deadlines (#2959) 7cc21331 internal: fix context leak when stream is not created successfully #2985 451cf373 add MAINTAINERS.md (#2971) c26cd97e transport: make http2Client.getStream() to only return a stream. (#2984) 03082453 transport: remove defer in http2Client.getStream (#2980) 24a4d6eb Change version to 1.24.0-dev (#2974) ee21c923 transport: block reading frames when too many transport control frames are queued (#2970) ee87494b transport: fix race between header and RPC cancellation (#2947) b8d26754 wrr: add EDF implementation of weighted round robin. (#2957) a074ab2d internal: fix a typo. (#2964) 36ddeccf Move code out of balancer/xds. (#2950) fde0cae1 stream: call stats handler if the attempt failed to get transport (#2962) cd5357d6 Change Unlock to defer Unlock, to avoid data race (#2953) 1f154c6e stream: fix panic caused by failing to get a transport for a retry attempt (#2958) a2bdfb40 balancer: populate endpoint weight by edsbalancer for weighted_round_robin (#2945) 92635fa6 server: avoid call to trace.FromContext and resulting allocations when tracing is disabled (#2926) a4f24690 internal: log when connection is closed due to keepalive (#2940) 120728e1 client: log balancer info messages only for verbosity level >=2 (#2908) 6d6c0413 test: fix race reading while incrementing (#2935) b5748caa server: populate WireLength on stats.InPayload for unary RPCs (#2932) 61f27c14 status: Implement *statusError.Is (#2868) 5da5b1f2 status: avoid allocations when returning an OK status (#2929) decb4380 http2client: remove unnecessary allocations for header fields (#2925) 97714221 client: fix race between transport draining and new RPCs (#2919) a975db93 grpclb: enable keepalive (#2918) c654cab1 server: avoid allocations related to tracking excessive pings (#2923) 04c71b7a server: avoid an unnecessary allocation per-RPC for OK status (#2920) 207b5d80 xds: instructions for regenerating proto (#2898) f7de2c8d balancer: filter out grpclb addresses if balancer is not grpclb (#2907) 64ddb19a client: fix canceled vs deadline exceeded double-check logic (#2906) 24b2fb89 client: remove option to send RPCs before HTTP/2 handshake is completed (#2904) 59fd1f3d server: immediately close all connections created after GracefulStop (#2903) 12906490 docs: clarify "deprecated" to indicate whether some features may be removed in 1.x (#2900) 08d23162 grpclb: recreate SubConns when switching fallback (#2899) 8e511dc1 xds: update proto (#2896) 005a2997 Change version to 1.23.0-dev (#2893) 73b304d8 xds: bazel proto gen code generation scripts (#2775) 95da23bb xds: load report for server loads (from trailer) (#2870) 5caf9629 client: addrConn NewStream and health check cleanup (#2848) 915d20dc grpc: change type of Server.conns 7472edcc metadata: write original md before appended md (#2879) 70e8b380 test: end2end test improvements separate server and client configs. (#2877) e8b58ff6 [xds_ignore_weight_0_localities] xds: ignore localities with weight 0 (#2875) 43c0599b test: fix flaky grpclb TestDropRequest (#2865) ecb921dd test: end2end test cleanup http handler server (#2876) eca11cb9 transport: share recv buffers (#2813) 712624e6 examples: note about ALTS special access permission on GCP (#2846) f7e18a39 examples: fixed spelling mistake in route_guide client example (#2873) 7a12d52f internal: update channelz.pb.go (#2871) fc15416d test: fix GoAwayThenClose by wait for cc state change (#2855) c7831546 test: extend RPC timeout for TestHTTPHeaderFrameErrorHandlingHTTPMode (#2861) 684ef046 Fix a typo in the comment. (#2866) cd89eaf4 test: fix Test/GracefulStop by not removing activeStreams too aggresivelly (#2857) a1d4c283 client: update state earlier to prevent resetTransport calls from killing good transports (#2862) a5396fd4 Remove call to proto.Clone() in http2Server.WriteStatus. (#2842) b681a11d A few more improvements to the benchmark code. (#2840) f2967c2f serviceconfig: mark new package experimental (#2852) d33cecda xds: fix difference between user target name and resource name (#2845) 914c27f8 internal: ignore unexported fields when comparing struct fields (#2853) 2df9cb80 xds: rpc counts (start/end) per locality (#2805) 73e56798 travis: run most test environments on Go 1.12 instead of 1.11 (#2847) 532a0b98 only force update picker when cache is used (sub-balancer is round-robin) (#2843) 99aff99e xds: rename balancer to xds_experimental during testing (#2850) a69f9700 internal: lint receiver name not x (#2844) 82fdf277 addrConn: not reset backoff if update address in TransientFailure (#2740) 58c136ca [xds_112] internal: balancer/xds remove build contrain >= 1.12 (#2834) d40a9958 balancer/resolver: add loadBalancingConfig and pre-parsing support (#2732) 0435a4bb balancer: stop using picker from old balancer with switching balancers (#2833) b3e4b49d xds: fix eds balancer nil pointer panic without addresses (#2809) f34abd95 xds: add orca generated file, and move orca to xds folder (#2804) b7325a31 Update go.mod for golang/x/tools and staticcheck (#2832) 25ad15b8 transport: Fix the inconsistency between headerChan and headerDone (#2818) e73aa7fe Change version to 1.22.0-dev (#2830) c2e0a6d7 Fix a typo. (#2826) 7c037930 benchmark: refactor the benchmark code. (#2820) 8655d473 credentials/alts: Add example of authz in ALTS (#2814) 263405c7 docs: small docs fixed to WithDisableServiceConfig (#2819) 4a199db1 xds: split proto imports for message and service (#2812) ab909771 Fix using grpc.WithBalancerName("grpclb") explicitly (#2778) (#2802) a0be99ad xds: use BuildOptions.Target.endpoint string instead of deprecated cc.Target (#2807) 4748a040 balancer: provide parsed target through BuildOptions (#2803) 39ed87fc xds: report loads to traffic director (#2789) 9949ee0c xds: lrs load store (#2779) 4b60e3b6 credentials/alts: Panic Bug Fix (#2800) 028242f8 xds: fix flaky test due to balancerV2 API update (#2799) 42baa8b1 channelz: wait for clean up before next test (#2797) a9408321 internal: remove err from ClientTransport.GracefulClose (#2771) 5ed5cbab dns: rate limit DNS resolution requests (#2760) d5973a91 xds: support BalancerV2 API (#2781) 47e1ebe5 client: return helpful error message when wait-for-ready RPCs fail with timeout (#2777) a90198c7 internal: seed random for wrr tests (#2791) b78962e5 xds: save category in dropper (#2780) 1e6ab1e9 server: define ServerOption as interfaces (#2784) a8b5bd3c xds: wrr with random (#2745) 4dfb34b0 Mark PreparedMsg as EXPERIMENTAL (#2783) 8260df7a grpc: implementation of PreparedMsg API d7af56a5 internal: tweak ClientTransport.GracefulClose documentation (#2772) 5b263177 xds: make local proto generated files (#2750) 3fc74305 transport: fix a race that could lead to memory leaks (#2765) 9d8d97a2 docs: add note about retrying UNAVAILABLE (#2774) 776edd3b interceptor: new APIs for chaining client interceptors. (#2696) a9de79b9 Use 'go vet' and not 'go tool vet'. (#2768) e1d95c39 credentials/alts: Support UDS addresses in ALTS interop test server (#2763) 597a4aa0 grpc: remove excess new line from the log statement (#2766) ee9f7f0c interop: add test case for "pick_first" (#2762) 3f98697f grpclb: handle service config and switch to pickfirst (#2719) 289eb50d internal: clean up README (#2764) e3305117 Change version to 1.21.0-dev (#2759) bc316a57 doc: fixing link in keepalive docs (#2755) 981ad1f9 doc: fixing broken link in rpc-error doc (#2753) 4abb3622 tls: append h2 to tlsconfig.NextProtos (#2744) b03f6fd5 internal: balancer/xds go1.12 only (#2748) d37bd82d Fix DialContext when using a timeout (#2737) ea5e6da2 service config: default service config (#2686) 4745f6ae grpclb: fallback after init (#2681) 955eb8a3 channelz: cleanup channel registration if Dial fails (#2733) d389f9fa balancer: add server loads from RPC trailers to DoneInfo (#2641) 92445710 syscall: remove logging in init(). (#2734) f1437f7c server: Improve error message when an unknown method is invoked. (#2723) 9a2caafd client: restore remote address in traces (#2718) ed10349f stats: add WireLength to stats.InPayload (#2692) (#2711) 6d8271a0 credentials: add compute engine channel creds (#2708) ef9bac26 cleanup: remove unnecessary ignoreContentType field (#2715) 0e83fbeb encoding: check whether encoding.Name() is empty before calling strings.ToLower (#2707) aded19ed update to use new fancy issue templates (#2712) 3910b873 bar: add ability to update resolver state atomically and pass directly to the balancer (#2693) bcfa7b30 Downgrade grpclb package info logs to V(2). (#2710) 22c2121b benchmark: exit after printing help when using `-h` (#2701) 66cd5249 transport: stop using http.CloseNotifier in handler server (#2697) d021e89b internal: fix Dial_OneBackoffPerRetryGroup (#2689) 495133b6 internal: fix pickoptions in balancer_test (#2698) ce455589 balancer: make sure non-nil done returned by Pick is called (#2688) 272a4b69 transport: do not close channel that can lean to panic (#2695) fba6715d addrConn: resetTransport loop cleanup (#2676) d7d97796 grpclb: support pickfirst (#2652) 3c84def8 balancer: remove Header from PickOptions; it is also available through context (#2674) 2d5c4dfb server: send RST_STREAM after trailers if client has not half-closed (#2684) 2098091c dns: prefixing txt record lookup with "_grpc_config." (#2691) 7c93bdf7 internal: update x/lint dependency (#2690) 3958fc86 addrConn: resetTransport cleanup (#2673) ff28255d cleanup: fix typo in comment (#2657) 9c3a9595 stats: add Trailer to client-side stats.End (#2639) d3f95b27 xds: fix xds api change breakage (#2685) 77ce7bc2 minor: typo fix (#2680) 69e99ca5 grpclb: keep drop index unless a new serverlist is received (#2631) 29adad9d edsbalancer: fix address format (#2675) 5abb3575 client: reset backoff to 0 after a connection is established (#2669) a1a84e16 service config: make retryThrottling maxTokens setting of 1000 valid (#2670) 2369d0a0 travis: add Go 1.12.x to CI (#2671) a618c37a server: Don't log errors on ErrConnDispatched (#2656) 79c9bc67 client: handle HTTP header parsing error correctly (#2599) 45890ffd xds: lowercase the field name (#2666) 914c52b2 xds: eds balancer (#2624) cba9cfed xds Balancer: implementation (#2614) 9ecb6116 grpclb: drop only when at least one SubConn is ready (#2630) 5878d965 transport: remove RequireHandshakeHybrid support (#2529) a51d23e0 transport: return ErrConnClosing for proper handling (#2644) 3aaef9f0 Change version to 1.20.0-dev (#2661) 40cb5618 dialOption: export WithContextDialer() (#2629) 871b88ce doc: fix typos (#2655) 9c297a48 examples: remove duplicated words (#2654) 2773c7bb Fix styling (#2647) ed70822b keepalive: apply minimum ping time of 10s to client and 1s to server (#2642) ae7b4f21 examples: correct typo in keepalive example (#2645) b86a9dbd documentation: Adds package level comments (#2612) 587cec03 Moves swapState up, so it gets executed no matter what. (#2649) 29c406a5 examples: add keepalive example (#2637) 6d026ae4 internal: transport_test init expected byte slice to be not all zero (#2643) 1dbad57d internal: delete an info log (#2640) 32559e21 internal: server deletes stream after receiving an RST_STREAM frame a402911c internal: resetTransport connect deadline is across addresses (#2540) 1263ed4d internal: add buffer for channelz flowcontrol getter channel (#2625) 05de310f Fix typo s/banlacer/balancer/ (#2633) 5d5c0ac4 internal: check flush err (#2632) 2259ee6f makefile: remove testappengine from make all (#2621) 01e57758 grpc: limit reader with maxReceiveMessageSize (#2617) 23ef1279 doc: fix broken link in auth doc (#2613) f959f2e8 xds: balancer group (#2564) c2f12b83 Fix error formatting based on best practices from Code Review Comments (#2615) d14ffaeb client: deprecate CallCustomCodec and provide new version using encoding.Codec (#2556) 1925e244 client: don't allow io.EOF to be passed from balancer to user (#2604) 25e74d3f vet: use fail_on_output so user can see why git client is not porcelain (#2605) 8e6533ee client: clean up v1 balancer wrapper error handling (#2511) eda3b7e3 client: fix handling of GRPC_GO_REQUIRE_HANDSHAKE=on to not interpret as "hybrid" (#2603) 17f24498 Add google_default_credentials interop test case for go (#2600) 6086f8d6 examples: reflection (#2594) 6d855749 travis: add Go 1.12beta2 to CI (#2598) 0e8a6f93 credentials: add TLS 1.3 cipher suites (#2596) 92256663 Modified binary search for the correct delay. (#2584) e9c1ac35 fix: typos (#2591) 4cad6a62 comment: default MaxSendMsgSize should be math.MaxInt32 instead of 4MB (#2586) ec9c18c8 internal: split StateRecordingBalancer in test to balancer and builder (#2578) 9f93218b cleanup: update staticcheck to version supporting modules and new checkers (#2583) d7e8e3da cleanup: remove staticcheck exception (#2582) 9572bbe0 cleanup: remove unused symbols (#2581) efaac523 roundrobin: randomize starting address when rebuilding the picker (#2579) 59acad4c cleanup: more simplifications (#2574) 4e92c060 cleanup: replace unnecessary loops (#2573) dfd7708d cleanup: use time.Until(t) instead of t.Sub(time.Now) (#2571) 38b35dcb cleanup: lower-case starting character of error strings (#2572) a1ead1ef Change version to 1.19.0-dev (#2569) 6cc789b3 client: make handshake required 'on' by default, not 'hybrid' (#2565) 98a94b0c test: disable leakcheck after the first failure (#2563) f647b6fa grpctest: defer Teardown to guarantee it is run even after t.Fatal (#2562) 9e7c1463 Return nil trailer metadata, if the RPC's status is context canceled. (#2554) 954fe273 benchmark: Unconstrained streaming benchmark (#2512) bd0b3b2a grpctest: fix comments to be more readable (#2555) 253dfbcf internal: use -go option to target 1.9 (#2550) b6f0a0f3 grpctest: add example to show how it is used (#2552) 8fd063a5 channelz: Implement GetServer method for channelz (#2537) 76cc5072 internal: rewrite TestDialWithMultipleBackendsNotSendingServerPreface (#2438) 0a391ff2 grpctest: add new package to manage tests and support per-test setup/teardown (#2523) e441557e rpc_util: update deprecated messages (#2545) 98de7e24 internal: change split2() comment to be consistent with behavior (#2547) c71aa624 example: interceptor (#2541) 36f31269 example: name_resolving (#2514) 2197c7b0 example: load_balancing (#2504) 0a3dc64b example: debugging (#2536) 39611680 enhance log for hello world SayHello (#2538) 7b141362 health: resume health server (#2528) 25de51fc example: errors (#2534) f286604f example: cancellation (#2525) 2cb2074d example: authentication (#2531) adac1aea example: compression (#2527) 30155c0b example: errors (#2521) 1838dede channelz: respect max_results in listing methods (#2516) 463950a1 internal: example flag.Parse() and comments (#2526) d9bc55b7 example: encryption (#2524) 1b41b79f internal: refactor transport to single retry mechanism (#2461) 42df0c55 examples: deadline (#2494) 5da252b6 health check test: prevent double close of hcEnterChan (#2441) b74673af examples: wait_for_ready (#2503) 29a7ac4d client: deprecates FailFast & replaces its use by WaitForReady. 39333409 internal: copy testdata to routeguide (#2478) 9d925ce5 examples: metadata (#2500) 53884fa7 grpclb: re-resolve when the stream to GRPCLB balancer fails (#2502) 191cc8e3 grpclb: filter out grpclb addresses if balancer in use is not grpclb (#2509) ebf41aab roundrobin: use balancer.ConnectivityStateEvaluator in roundrobin (#2520) 102aee9b internal: cleanup roundrobin_test with cleanup function (#2519) 14de8b69 WithWaitForHandshake: fix deprecated comment (#2518) a3af876a internal: document example/echo proto (#2517) aad0edee health: shutdown server to set NOT_SERVING and disallow future updates (#2513) e242249c comment typo: MaxConnectionAgeGrace(#2515) 4be7750b plumb lastConn error in v1 balancer (#2508) 187e357a examples: multiplex (#2477) 49616eb1 examples: add echo proto (#2505) 272e9d4f Change version to 1.18.0-dev (#2498) ca62c6b9 channelz: fix GetSecurityValue function name. (#2450) 55ef6013 internal: cleanup remaining x/net/context (#2470) f3eb5bc0 client: add GRPC_GO_REQUIRE_HANDSHAKE options to control connection behavior (#2464) ef2b8e2f internal: move syscall.Conn wrapper into a separate package (#2457) 0fccf8bf transport: increase BDP limit to 16MB to improve performance for high latency networks (#2455) 63ae68c9 proxy: support basic authentication (#2426) 04ea8200 cleanup: replace "x/net/context" import with "context" (#2439) eb55fa50 resolverWrapper: remove the watcher goroutine (#2446) a612bb68 client: block RPCs early until the resolver has returned addresses (#2409) 12ed5d0f internal: split health proto package import in test (#2445) c94cef38 internal: split proto package import in health package (#2442) d27440de client: set TCP_USER_TIMEOUT socket option for linux (#2307) 1b89e78f test: Adds end2end tests for the case that Watch method returns unimplemented. (#2429) 8f2842d4 client: in UpdateBalancerState, update picker before connectivity state (#2431) 761a6b36 binarylog: fix end2end test race (#2433) 59a2cfbd Remove support for Go1.6-1.8 (#2428) 36ef35dd internal: add doc to tlsConn wrapper for channelz (#2421) 0efb1e10 binarylog: no warning if no config string is set (is empty string) (#2430) 61c3ec86 docs: clarify SendMsg/CloseSend usage (#2418) 105f6142 health: Client LB channel health checking (#2387) f4273b1b binarylog: fix racy TestClientBinaryLogCancel (#2423) 5a500ee7 travis: remove Go 1.6 and 1.8 tests (#2415) 7271c8bb Fixes a broken test case. (#2425) c86bc5cd health: Checks if the service's serving status has changed before sending an update (#2424) 6572a802 internal: update golint to use new url (#2393) 3332afdf internal: binarylog test replace += 1 with ++ (#2420) 24638f59 binarylog: call binary log in Client and Server (#2388) a88340f3 internal: add testutils package comment (#2414) c4d3b2fa channelz: register sockets with meaningful refnames (#2416) ec76f14f health: Merges healthcheck package to health package. (#2417) 582d1c9b healthcheck: add package comment (#2413) aaaaffa6 channelz: data race fix (#2411) 0430365f channelz: update generated proto stubs f86585f6 channelz: update generated proto stubs (#2408) 1b1c45ef internal: vet cleanups (#2405) e1660768 healthcheck: clientHealthCheck and its unit test (#2389) 425c07e5 internal: add check for import of ptypes proto packages (#2396) ecb5db9e channelz: returns sockets after startID in GetServerSockets() (#2401) d7518259 Change version to 1.17.0-dev (#2399) e120c3f9 internal: transport nil should happen before backoff (#2392) 93a2ad2c internal: rename proto imports to pb (#2395) ff2aa059 internal: fix GO_AWAY deadlock (#2391) 39444b99 binarylog: implement methodlogger (#2334) 0ee15440 cleanup: remove ac.events (unused) and related dead code (#2385) 13b2b26a internal: update proto generated code (#2386) 04c0c4d2 internal: fix client send preface problems (#2380) 481c28e8 documentation: add proxy doc (#2357) 491af2b0 grpclb: downgrade error logs to warning (#2381) 23d111fa Health server watch method (#2365) cfb96008 server: fix handling of RPC timeouts that overflow int64 nanos (#2379) 557b6b5f healthcheck: client-side internal hook (#2378) 1da8e519 transport: http2Client sends RST_STREAM (#2354) f1b28afd doc: add faq for logging and "transport is closing" error (#2372) dfaadfec server: handleStream() cleanup (#2352) 37181188 balancer: add clarifying note to PickOptions.Header (#2377) 5b2c343e add header metadata to PickOptions (#2376) 1ca9df53 internal: clean up and unflake state transitions test (#2366) 5a2acb1f channelz: remove init logging (#2373) c05280cc cleanup: remove unused channel ready (#2353) dc3d58fc retry go get when it fails (#2345) cb116274 clientconn: not panic when service config updated while closing (#2371) c1fc9faf refactor variable name (#2369) c195587d balancer: add trailer metadata to DoneInfo (#2359) 55cdff2a test: add test for picker DoneInfo.Err (#2358) 8d75951f Fix onclose state transition (#2346) 0361d80f server: reuse function recv() in processUnary (#2351) 179dc636 testing: fix race caused by successful Accept on a shutdown server (#2321) 30f4150e service config: Avoid logging a warning on empty serviceconfig. (#2316) 431e4028 Provide a fake grpclb balancer server that can be used for testing (#2338) ad6d187e keepalive: godoc improvement and behavior explanation (#2342) 945824a2 credentials/alts: Minor typo fix (#2344) fdc936c6 lint: add package comment for package google (#2343) b48e364c client: read from Conn while writing preface to unblock synchronous Conns (#2337) cc41663c client: fix panic caused by WithWaitForHandshake and related races (#2336) f8063d3b tests: fix leak in TestDialParseTargetUnknownScheme (#2320) a3389948 binarylog: implement env variable config parsing (#2299) 7fea98ed Add lock.yml for locking closed, stale PRs/issues (#2331) 4dedfdc8 credentials: support google default creds (#2315) ebea9b5b resolver/dns: support custom dns authority (#2265) 30212c84 internal: fix various problems in transport_test.go 82f263dc internal: fix race between cancel and shutdown 8997b5fa credentials/alts: Pass the target name to ALTS handshaker (#2319) 35c3afad Transport refactor (#2305) 0baa0671 tests: fix goroutine leak (#2317) 8ce7e6ba stream: never return errors from CloseSend (#2312) be59908d testing: upgrade appengine sdk to version 1.9.68 (#2311) bd04c068 vet: move go_vet directory under test directory (#2310) 0ec11dce typo: remove duplicate "the" (#2309) f2aaa9bf Check error when calling compressor.Compress (#2274) acd14295 channelz: channel tracing (#2262) 9cc4fdbd Change version to 1.16.0-dev (#2303) d42ac644 move tools.go to sub-package (#2300) 46ee6abe import check for appengine environment(#2215) 5fe5ce74 credentials/alts: Export test APIs (#2293) 16df5a33 credentials/alts: Rename core package to internal (#2296) 0150fc5d credentials/alts: Move alts/core to alts/internal (#2292) 5fe10fcc Remove unused symbols (#2287) 90f728ea Remove shadowing of built-ins (#2290) ccd64cfc Miscellaneous small cleanups (#2291) 826807ed change 'if x == true' to 'if x' (#2289) ba4eb68a Travis/Makefile/vet cleanups (#2283) 911d6908 Make all error strings use lowercased first letter per Go style (#2286) ce4f3c8a Initial go.mod module definition and corresponding Travis/vet.sh changes (#2281) da7e20b8 channelz: turn on channelz when importing service package, delete RegisterChannelz from grpc package (#2277) a91fb537 credentials/alts: Add ALTS AuthInfoFromPeer API (#2269) 59dd9b3f test: add go 1.11 to travis and remove go 1.7 (#2278) d2aec4d7 client: Add ClientConn.ResetConnectBackoff to force reconnections on demand (#2273) 91c7ef84 client: fix FailOnNonTempDialError and add a test for it (#2276) e00d2494 testdata: get test assets related to package root instead of GOPATH (#2272) 9907ae0e health: update pb.go and add watch method (#2263) 07ef407d channelz: unexport unnecessary API on grpc entities (#2257) f4da7eee channelz: use atomic instead of mutex (#2218) a344a357 internal: remove TestingUseHandlerImpl (#2253) 3b859c04 update proto generated code (#2254) b20cbb44 Revert "internal: remove transportMonitor, replace with callbacks" (#2252) 97da9e08 internal: remove transportMonitor, replace with callbacks (#2219) fb6867e4 Change version to 1.15.0-dev (#2247) 8fbeaf87 interop: implement special_status_message interop test (#2241) efcc5364 internal/grpcsync: introduce package for synchronization (#2244) 804c2a90 remove 1.6 support for channelz (#2242) 339b6cb1 transport: eliminate StreamError; use status errors instead (#2239) c0369724 transport: replace ClientTransport with *http2Client for internal usage (#2238) fe131d6f disable go1.6 travis tests (#2237) 8e36593a go generate: update proto files (#2236) 980d9e03 ClientConn: add Target() returning target string (#2233) 445634bd client: define dialOptions as interfaces instead of functions (#2230) 4f4261e7 interop: loosen restrictions on creds per test in interop client (#2231) 5562178a Convert io.ErrUnexpectedEOF to a codes.Internal-marked status in toRPCerr. (#2228) b534d2d2 internal/transport: remove unnecessary ServerTransport method (#2224) a7d6032d internal/transport_test.go: prevent leaking context (#2227) 7273294e internal/syscall: add package description (#2226) d8ecae53 transport.go: minor typo fix (#2225) c8fcd323 resolver: document that SetDefaultScheme should be called at init time (#2217) 1dab6d18 addrconn: remove unused wait() method (#2220) ce6ee6b0 dns resolver: exponential retry when getting empty address list (#2201) e1937570 internal/transport: remove some unused fields from structs (#2213) 984bb2c6 internal: move DialOptions to a new file (#2193) 8c156464 Benchmark: fix build tags (#2099) 11b58272 transport: move to internal to make room for new, public transport API (#2212) f57a529f balancer: add rpc method to PickOptions (#2204) e85134fd transport: double-check deadline when processing server cancelation (#2211) c491b250 createTransport: timeout under waitForHandshake case should not have transport transferred to ready stage (#2208) 50de898e deprecate stream, move documentation to client|server stream (#2198) 264daa2b Set and respect HTTP/2 SETTINGS_MAX_HEADER_LIST_SIZE (#2084) 7f149975 travis: skip race testing on 386 as it is not supported (#2207) f3361fda internal: changes to travis to make it do less work (#2200) 40cd6b15 stream: in withRetry, block until Status is valid and check on io.EOF (#2199) a3e99ebe grpclb: s/fmt.Errorf/errors.New/ (#2196) d35d0064 Fix flaky test: TestClientStreamingError (#2192) 75703b31 Add documentation for loopy. (#2169) cedd9131 Fix test: wait on server to signal successful accept. (#2183) 6a43dcc2 Allow interop client to use call creds on any secure channel (#2185) 40a879c2 client: Implement gRFC A6: configurable client-side retry support (#2111) f9bde863 documentation: clarify SendMsg documentation (#2171) 2106e3b3 credentials: cleanup version-specific files (#2178) 5ea5eec7 Restrict channelz service test to x86 architecture (#2179) 3ec535a2 client, server: update dial/server buffer options to support a "disable" setting (#2147) f1ab7acf credentials: add more appengine build tags (#2177) b39aa9e0 Revert stickiness (#2175) 4f70de23 minor fix: remove redundant channelz files (#2176) 7268ca41 channelz: stage 4 - add security and socket option info with appengine build tags (#2149) 8e187527 Update flow control test to have multiple concurrent streams. (#2170) 92d38b03 balancer/grpclb: update to latest lb proto (#2172) 0c16dc1c resolver/dns: error if target ends with a colon instead of assuming the default port (#2150) ba63e52f grpclb: remove old grpclb generated code (#2143) cd69bb27 testing: run test in simulated appengine environment (#2145) b519e3d2 interop: set dns as default scheme in interop client (#2165) 2ab07fd5 Change version to 1.14.0-dev (#2163) 536e74e0 Don't log grpclb server ending connection as error (#2162) b28608a9 channelz: move APIs to internal except channelz service (#2157) 3b3ed4f5 transport: notify controlbuf that transport is gracefully closing to ensure proper cleanup (#2158) fd9db51e Register incoming stream with loopy as soon as it gets created. (#2144) 7e6dc36b Import grpclb package in the interop client (#2155) d2f8e5a2 fix: do not percent encode character tilde (#2139) 692f13ae grpclb: backoff for RPC call if init handshake was unsucessful (#2077) e218c924 status: handle invalid utf-8 characters (#2109) (#2134) e074afe7 Don't do extra work for keepalive when it's disabled. (#2148) 24f3cca1 internal: move backoff to internal (#2141) 107f1936 Fix flaky tests in transport. (#2120) fb845db1 internal: Change Lock to RLock since no mutation is performed (#2142) aa30531d grpclb: remove redundent testing struct (#2126) dc86fffc Normalize gRPC LB 6d55ae1a Fix test: Account for the fact that Dial can return successfully before Accept. (#2123) 10a4999d Add some debug info (#2136) 49c8c817 Documentation: create doc describing grpc-go's log levels and their usages (#2033) 39a41182 internal: Update proto generated code (#2133) 6f35246b resolver_conn_wrapper.go: fix minor typo (#2135) 0e5a36b6 internal: move leakcheck to internal/ (#2129) 26ac8d28 Revert "status: handle invalid utf-8 characters" (#2127) 9c658603 status: handle invalid utf-8 characters (#2109) 96cefb43 Revert " channelz: stage 4 - add security and socket option info" (#2124) 629f6bc5 grpclb: minor fixes on comments and tests (#2122) c1a21e22 channelz: stage 4 - add security and socket option info (#2098) 4344c204 Split grpclb out of top level grpc package (#2107) 35085cc9 Reduce error logs in transport. (#2117) 2c5843eb DNS resolver: Throw an error for non-default DNS authority. (#2067) 70e9c284 grpclb: sync messages.proto and update client load reporting (#2101) 130c87fa alts: copy handshake address in Clone() (#2119) b94ea975 codes: fix: marshal/unmarshal a Code to JSON fails (#2116) 590da37e Account for user configured small io write buffer. (#2092) bfe41979 clarify CloseSend vs CloseAndRecv; better formatting (#2071) bd7f82c7 internal/grpcrand: New package for concurrency-safe randoms (#2106) 1fa3750c Clarify newCCResolverWrapper documentation. (#2100) d33a9231 Revert "channelz: stage 4 - add security and socket option info" (#2096) 7cc28372 channelz: stage 4 - add security and socket option info (#1965) c16e07b1 stickiness: limit the max count of stickiness keys (#2021) dea4e573 Benchmarks that runs server and client and separate processes. (#1952) 8f06f82c Synchronize WriteStatus with WriteHeader on server. (#2074) f6692351 internal: update proto generated code (#2093) 3b7feb18 health: generate health proto from grpc-proto (#2081) be1fb4f2 internal: remove redundant channelz service go generate (#2085) 1bacc359 Revert "Strip port from server name in grpclb (#2066)" (#2083) 4e829f02 channelz: generate proto from grpc-proto repo (#2082) b4dd7852 internal: move version to a separate file (#2080) 679ceaae internal: fix travis failure on alts proto (#2079) dbffeabc test: make end2end test use split grpc / proto imports (#2069) 9020130b credentials/alts: make go:generate rebuild alts protos (#2056) f64553fe channelz: split channelz grpc and pb (#2068) d24d0a4b Strip port from server name in grpclb (#2066) 161c1953 benchmark: listen on all addresses in benchmark servers (#2073) a36eb467 regenerate *.pb.go files due to proto-gen-go update (#2070) 9a54b9ab transport: respect http2 setting SETTINGS_HEADER_TABLE_SIZE (#2045) 419de394 Add AuthInfoFromContext utility API (#2062) 4ab6e31b Fix possible data loss; Only let reader goroutine handle connection errors. (#1993) 091a8001 split encode into three functions (#2058) b75baa10 small documentation addition to NewStream (#2060) 0ebfac42 Documentation: Add initial documentation on concurrency (#2034) d07538b1 status: Introduce FromContextError convenience function (#2057) 45d7f3a2 Change version to 1.13.0-dev (#2054) 854695be client: introduce WithDisableServiceConfig DialOption (#2010) a36d2ab5 fix flaky test caused by race in channelz test (#2051) 18957c5f Fix typo (#2050) b412d5aa Ignore metadata that gRPC explicitly sets. (#2026) e09cbb70 internal: better test names (#2043) 0bc7c328 Revert "Less mem (#1987)" (#2049) ed247291 client: fix interceptors after recent cleanup (#2046) e9443916 internal: vet.sh quits when it sees macosx (#2048) 9b03f4f0 channelz: update proto to canonical version and rename directory (#2044) 3592bccf interop: Fix unimplemented method test (#2040) 7c204fd1 health: set health proto canonical path (#2038) f8dbc38b Fix "deprecated" function godoc comments to match standard formatting (#2027) e538e04c proto: update generated code (#2039) 1cd00ab9 Rename proto import. (#2036) 8508314f Fix typos. (#2035) 17a5d9ce credentials/alts: Refer to ALTS gRPC types by a different package (#2028) 71fe8dfd http2Client: send reset stream when closing the stream on protocol error (#2030) 8b851264 Stage 3: Channelz server implementation (#1919) 7a8c9895 Less mem (#1987) fc37cf13 server: export ServerTransportStreamFromContext for unary interceptors to control headers/trailers (#2019) 07709e8a dns resolver: create rand seed at init time (#2007) 66090d99 vet: disallow importing "unsafe" (#2024) 72630890 stickiness: avoid using unsafe (#2023) 247a5d44 Fix typos (#2020) 9c2d308a travis: skip vet install for 386 (#2018) e8a6e284 stickiness: add stickiness support (#1969) 4166ea7d Stage 2: Channelz metric collection (#1909) 75d37eff credentials/alts: Add ServiceOption for server-side ALTS creation (#2009) 4172bfc2 documentation: add instructions for running tests locally (#2006) b4a36ce6 go vet: fix composite literal uses unkeyed fields (#2005) d27df52a documentation: add OAuth2 doc and example (#2003) 6e5192d2 reflection: regenerate pb.go file after typo fix (#2002) 5d889714 Remove unnecessary type conversions (unconvert) (#1995) 7de91393 Fix typos (#1994) 35a2846d Various simplifications (gosimple) 4d9544a0 Simplify make() (gosimple) 749a0db2 Use time.Since() helper function (gosimple) 95bbf696 Remove redundant return statements (gosimple) 35aeaeb5 documentation: mention DialContext is non-blocking by default (#1970) c4a6e758 documentation: mention Register functions should be call at init time (#1975) 0c6b34bb cleanup: extend dial context for TestFailFastRPCErrorOnBadCertificates to 10 seconds (#1984) 2783898b Fix Test: race between t.Write() and t.closeStream() (#1989) db0f0713 Small test readability fixes (#1985) 858463ac documentation: mention peer will only be populated after RPC completes (#1982) b1807c31 Channelz: more stable tesing (#1983) 844b2a52 grpclb: fix issues caused by caching SubConns (#1977) cf3bf7f7 createTransport: check for SHUTDOWN before assigning TransientFailure to ac.state (#1979) e8d9fec3 resolver/dns: Typo in lookupHost failure warning (#1981) 7f73c863 Channelz: Entity Registration and Deletion (#1811) 73169184 clientconn: add support for unix network in DialContext. (#1883) 30fb59a4 documentation: Mark compresser and decompresser as deprecated (#1971) 85ce0565 grpclb: cache SubConns for 10 seconds after it is removed from the backendlist (#1957) 4b176969 internal: clean up deprecated Invoke() usage (#1966) 76b07ed7 Mark old balancer and naming APIs as deprecated (#1951) d0a21a33 Export changes to OSS. (#1962) 291de7f0 metadata: Add Get, Set, and Append methods to metadata.MD (#1940) 2eae9d0c server: add grpc.Method function for extracting method from context (#1961) d354447d resolver/manual: fix minor typo (#1960) 2dfcc11f status: remove redundant import (#1947) 1a70180f client: Fix race when using both client-side default CallOptions and per-call CallOptions (#1948) f72b28a6 Change version to 1.12.0-dev (#1946) f2620c38 resolver: keep full unparsed target string if scheme in parsed target is not registered (#1943) 9d2250f5 status: rename Status to GRPCStatus to avoid name conflicts (#1944) 27569563 status: Allow external packages to produce status-compatible errors (#1927) 0ff1b764 routeguide: reimplement distance calculation dfbefc67 service reflection can lookup enum, enum val, oneof, and field symbols (#1910) 32d9ffab Documentation: Fix broken link in rpc-errors.md (#1935) d5126f92 Correct Go 1.6 support policy (#1934) 5415d183 Add documentation and example of adding details to errors (#1915) 57640c0e Allow storing alternate transport.ServerStream implementations in context (#1904) 031ee13c Fix Test: Update the deadline since small deadlines are prone to flakes on Travis. (#1932) 2249df6d gzip: Add ability to set compression level (#1891) 8124abf7 credentials/alts: Remove the enable_untrusted_alts flag (#1931) b96718f8 metadata: Fix bug where AppendToOutgoingContext could modify another context's metadata (#1930) 738eb6b6 fix minor typos and remove grpc.Codec related code in TestInterceptorCanAccessCallOptions (#1929) 211a7b7e credentials/alts: Update ALTS "New" APIs (#1921) fa28bef9 client: export types implementing CallOptions for access by interceptors (#1902) ec9275ba travis: add Go 1.10 and run vet there instead of 1.9 (#1913) 13975c07 stream: split per-attempt data from clientStream (#1900) 2c2d834e stats: add BeginTime to stats.End (#1907) 3a9e1bab Reset ping strike counter right before sending out data. (#1905) 90dca433 resolver: always fall back to default resolver when target does not follow URI scheme (#1889) 9aba0449 server: Convert all non-status errors to codes.Unknown (#1881) efcc755f credentials/alts: change ALTS protos to match the golden version (#1908) 0843fd0e credentials/alts: fix infinite recursion bug [in custom error type] (#1906) 207e2760 Fix test race: Atomically access minConnecTimout in testing environment. (#1897) 3ae2a613 interop: Add use_alts flag to client and server binaries (#1896) 5190b068 ALTS: Simplify "New" APIs (#1895) 7c5299d7 Fix flaky test: TestCloseConnectionWhenServerPrefaceNotReceived (#1870) f0a1202a examples: Replace context.Background with context.WithTimeout (#1877) a1de3b2b alts: Change ALTS proto package name (#1886) 2e7e633f Add ALTS code (#1865) 583a6303 Expunge error codes that shouldn't be returned from library (#1875) 2759199b Small spelling fixes (unknow -> unknown) (#1868) 12da0261 clientconn: fix a typo in GetMethodConfig documentation (#1867) dfa18343 Change version to 1.11.0-dev (#1863) 46fd263c benchmarks: add flag to benchmain to use bufconn instead of network (#1837) 3926816d addrConn: Report underlying connection error in RPC error (#1855) 445b7284 Fix data race in TestServerGoAwayPendingRPC (#1862) e014063a addrConn: keep retrying even on non-temporary errors (#1856) 484b3ebb transport: fix race causing flow control discrepancy when sending messages over server limit (#1859) 6c48c7f5 interop test: Expect io.EOF from stream.Send() (#1858) 08d62613 metadata: provide AppendToOutgoingContext interface (#1794) d50734d1 Add status.Convert convenience function (#1848) 365770fc streams: Stop cleaning up after orphaned streams (#1854) 7646b536 transport: support stats.Handler in serverHandlerTransport (#1840) 104054ad Fix connection drain error message (#1844) d09ec435 Implement unary functionality using streams (#1835) 37346e31 Revert "Add WithResolverUserOptions for custom resolver build options" (#1839) 424e3e98 Stream: do not cancel ctx created with service config timeout (#1838) f9628db6 Fix lint error and typo (#1843) 0bd008f5 stats: Fix bug causing trailers-only responses to be reported as headers (#1817) 5769e027 transport: remove unnecessary rstReceived (#1834) 0848a097 transport: remove redundant check of stream state in Write (#1833) c22018a9 client: send RST_STREAM on client-side errors to prevent server from blocking (#1823) 82e9f61d Use keyed fields for struct initializers (#1829) 5ba054bf encoding: Introduce new method for registering and choosing codecs (#1813) 4f7a2c71 compare atomic and mutex performance in case of contention. (#1788) b71aced4 transport: Fix a data race when headers are received while the stream is being closed (#1814) 46bef23b Write should fail when the stream was done but context wasn't cancelled. (#1792) 10598f3e Explain target format in DialContext's documentation (#1785) 08b7bd3b gzip: add Name const to avoid typos in usage (#1804) 8b02d69f remove .please-update (#1800) 1cd23462 Documentation: update broken wire.html link in metadata package. (#1791) 6913ad5c Document that all errors from RPCs are status errors (#1782) 8a8ac82f update const order (#1770) e975017b Don't set reconnect parameters when the server has already responded. (#1779) 7aea499f credentials: return Unavailable instead of Internal for per-RPC creds errors (#1776) c998149a Avoid copying headers/trailers in unary RPCs unless requested by CallOptions (#1775) 82462103 Update version to 1.10.0-dev (#1777) 17c6e90c compare atomic and mutex performance for incrementing/storing one variable (#1757) 65c901e4 Fix flakey test. (#1771) 7f2472bb grpclb: Remove duplicate init() (#1764) 09fc336d server: fix bug preventing Serve from exiting when Listener is closed (#1765) 035eb475 Fix TestGracefulStop flakiness (#1767) 2720857d server: fix race between GracefulStop and new incoming connections (#1745) 05479800 Notify parent ClientConn to re-resolve in grpclb (#1699) e6549e63 Add dial option to set balancer (#1697) 6610f9a3 Fix test: Data race while resetting global var. (#1748) f4b52376 status: add Code convenience function (#1754) 47bddd7d vet: run golint on _string files (#1749) 45088c29 examples: fix concurrent map accesses in route_guide server (#1752) 4e393e0b grpc: fix deprecation comments to conform to standard (#1691) 0b24825e Adjust keepalive paramenters in the test such that scheduling delays don't cause false failures too often. (#1730) f9390a7b fix typo (#1746) 6ef45d36 fix stats flaky test (#1740) 98b17f20 relocate check for shutdown in ac.tearDown() (#1723) 5ff10c3b fix flaky TestPickfirstOneAddressRemoval (#1731) 2625f033 bufconn: allow readers to receive data after writers close (#1739) b0e09509 After sending second goaway close conn if idle. (#1736) b8cf13ea Make sure all goroutines have ended before restoring global vars. (#1732) 4742c425 client: fix race between server response and stream context cancellation (#1729) 8fba5fc8 In gracefull stop close server transport only after flushing status of the last stream. (#1734) d1fc8fa7 Deflake tests that rely on Stop() then Dial() not reconnecting (#1728) dba60db4 Switch balancer to grpclb when at least one address is grpclb address (#1692) ca1b23bf Update CONTRIBUTING.md to CNCF CLA 2941ee12 codes: Add UnmarshalJSON support to Code type (#1720) ec61302c naming: Fix build constraints for go1.6 and go1.7 (#1718) b8191e57 remove stringer and go generate (#1715) ff1be3fc Add WithResolverUserOptions for custom resolver build options (#1711) 580defab Fix grpc basics link in route_guide example (#1713) b7dc71e7 Optimize codes.String() method using a switch instead of a slice of indexes (#1712) 1fc873d0 Disable ccBalancerWrapper when it is closed (#1698) bf35f1b9 Refactor roundrobin to support custom picker (#1707) 43083423 Change parseTimeout to not handle non-second durations (#1706) be077907 make load balancing policy name string case-insensitive (#1708) cd563b81 protoCodec: avoid buffer allocations if proto.Marshaler/Unmarshaler (#1689) 61c67402 Add comments to ClientConn/SubConn interfaces to indicate new methods may be added (#1680) ddbb27e5 client: backoff before reconnecting if an HTTP2 server preface was not received (#1648) a4bf3410 use the request context with net/http handler (#1696) c6b46087 transport: fix race sending RPC status that could lead to a panic (#1687) 00383af2 Fix misleading default resolver scheme comments (#1703) a62701e4 Eliminate data race in ccBalancerWrapper (#1688) 1e1a47f0 Re-resolve target when one connection becomes TransientFailure (#1679) 2ef021f7 New grpclb implementation (#1558) 10873b30 Fix panics on balancer and resolver updates (#1684) 646f701c Change version to 1.9.0-dev (#1682) 6253aa93 set context timeout when Timeout value >= 0 (#1678) d6cc7286 switch balancer based on service config info (#1670) 816fa5b0 Add proper support for 'identity' encoding type (#1664) c1fc2961 update code_string.go for new stringer changes (#1674) 409fd8e2 addrConn: set ac.state to TransientFailure upon non-temporary errors (#1657) 87bcb38f Eliminate race on ac.acbw (#1666) 5f2e2f99 Corrected documentation on Server.Serve (#1668) de2209a9 Update picker doc when returned SubConn is not ready (#1659) ebefec97 travis: fix GOARCH=386 and add misspell check (#1658) abd3e10d Add context benchmarks (#1610) 3790967a Add protoc command to example/readme (#1653) 8ff86836 Implement transparent retries for gRFC A6 (#1597) 551f2957 server: add EXPERIMENTAL tag to grpc.ConnectTimeout (#1652) 865013bc *: replace deprecated grpc.Errorf calls with status.Errorf (#1651) 4318e647 server: apply deadline to new connections until all handshaking is completed (#1646) 60f1f6aa codec_benchmark_test: fix racy unmarshal behavior and make some cleanups (#1642) ac0ac2b8 Speed-up quota pools. (#1636) af224a8a Check ac state shutdown before setting it to TransientFailure (#1643) 08a45354 vet.sh: don't check git status when doing -install (#1641) fc6acc5e latency: Listen on localhost:0 instead of :0 in test (#1640) fb4b2b29 reduce timeout for tests to 5m (7m for testrace) (#1635) 5db344a4 Introduce new Compressor/Decompressor API (#1428) 246b2f70 Fix settings ack race (#1630) c91118c8 Update examples/README.md (#1629) a4ff4e29 Get method string from stream (#1588) fe0602d9 fix max msg size type issues on different arch (#1623) 3cc21586 Deflake roundrobin TestOneServerDown, and fix test error messages (#1622) 0d399e63 Remove self-imposed limit on max concurrent streams if the server doesn't impose any. (#1624) e9a5821d Acquire all stream related quota and cache it locally since no more than one write can happen in parallel on stream (#1614) b5eab4cc Make travis 32-bit actually work (#1621) 33ee217d balancer: reduce chattiness (#1608) c5f391bd Revert "cap max msg size to min(max_int, max_uint32) (#1598)" (#1619) 58565387 cap max msg size to min(max_int, max_uint32) (#1598) 0d57c57a Fix parseTarget for unix socket address without scheme (#1611) b3ed81a6 Fix connectivity state transitions when dialing (#1596) 0c2d9db1 Update go_package declarations (#1593) 1687ce57 ClientHandshake should get the dialing endpoint as the authority (#1607) a5986a5c Add functions to ClientConn so it satisfies an interface for generated code (#1599) 5c3d956e Re-add support for Go1.6 (#1603) 94f19176 Make passthrouth resolver the default instead of dns (#1606) de0cff50 Fix goroutine leak in grpclb_test (#1595) 16075983 Add go report card (#1594) 6f3b6ff4 Parse ServiceConfig JSON string (#1515) a353537f Register and use default balancers and resolvers (#1551) 94687c3b fix misspell (#1592) 473b1425 Serve() should not return error on Stop() or GracefulStop() (#1485) faebfcb7 Remove single-entry var blocks (#1589) 16c41925 update fail fast documentation to remove retry language (#1586) 2d4b7e00 Create versioning and release policy document (#1583) c06db1c7 Skip proxy_test in race mode (#1584) c209cdff transport: minor cleanups (comment and error text) (#1576) 5131c1f0 Use proto3 in interop tests and end2end tests (#1574) 90947a8e Change version to 1.8.0-dev (#1573) 3f10311c Make resolver Build() take a target struct (#1567) 06233310 Revert "Temporary disable staticcheck" (#1568) 5279edf2 Update UnknownServiceHandler comment to be clearer about interceptor behavior (#1566) 22c3f92f transport: fix racey send to writes channel in WriteStatus (#1546) cf79c849 fix stats test race (#1560) 7103997b Run tests without -v (#1562) c8405557 Remove Go1.6 support (#1492) dc413bbc Temporary disable staticcheck (#1561) 3bf110cd fix TestServerCredsDispatch and stats test race (#1554) 4b49faaf Make interop client dial blocking (#1559) 8230f98e benchmark: add type assertion benchmarks (#1556) 83acb056 fix typo and lint (#1553) 5a82377e transport: refactor of error/cancellation paths (#1533) 4bbdf230 New implementation of roundrobin and pickfirst (#1506) 8443e311 Update format string to match type (#1548) 8843b88f add comment to dns package (#1545) 8214c28a Make IO Buffer size configurable. (#1544) 6014154b Use the same hpack encoder on a transport and share it between RPCs. (#1536) eaf555a8 DNS with new API (#1513) 4e1a1ebe update markdown render (#1542) a68137c9 Revert "Added localhost to net.Listen() calls to avoid macOS firewall dialog." (#1541) c67cd636 Added localhost to net.Listen() calls to avoid macOS firewall dialog. (#1539) d555c823 transport: remove some defers (#1538) 956d689a Use Type() method for OAuth tokens instead of accessing TokenType field. (#1537) d4b75ebd benchmark: add primivites benchmark for Unlocking via defer vs. inline (#1534) 1253dac1 benchmain: format output of benchmark to a table (#1493) 59cb69e6 Fix misspells (#1531) 8afb9cb8 vet.sh: set PATH to force downloaded binaries to be run (#1529) 47685752 Fix format error on travis (#1527) dce31693 Move primitives benchmarks to package primitives_test (#1522) a7dba25a Speed up end to end tests by removing an unnecessary sleep (#1521) bb788787 Change quota version to uint32 instead on uint64 (#1517) 35170916 Fix deadline error on grpclb streams (#1511) 894322f0 Dedicated goroutine for writing. (#1498) c4431560 benchmark: add primitives benchmarks for informational purposes (#1501) 3214f767 Truncate payload trace string, and turn trace off by default (#1509) d46a3655 Add leak goroutine checking to grpc/balancer tests (#1497) 067cb1fc Add RegisterIgnoreGoroutine to leakcheck package (#1507) 4bbe223b remove a debug print that causes deadlock (#1505) 91999f44 vet.sh: fix protoc installation (#1502) 8233e124 Add new Resolver and Balancer APIs (gRFC L9) (#1408) 1ea63c9e Fix to avoid annoying firewall dialog on macOS (#1499) e67952ee Move leak check into a separate leakcheck package (#1445) 3a378f9d Change version to 1.7.0-dev (#1496) 47d8591b Run Go1.9 and 386 on Travis (#1475) d6870035 Check "x/net/context" with `go vet` like "context" (#1490) 85a1e381 benchmain: add nop compressor and other usability tweaks (#1489) e6069834 Fix context warnings from govet. (#1486) 7fd9c2c6 benchmain: minor bug fixes (#1488) 2be1bca9 Update proto generation commands in example doc (#1481) e696c3d4 Remove expiration_interval from grpclb message (#1477) 41127174 balancer_test: possible ctx leak, cancel before break (#1479) 2b9fb510 Fix for 32-bit architectures (#1471) 39596153 When sending a non heads-up goaway close the connection if there are no active streams. (#1474) 526ef328 Rename packages for grpclb messages/service to match directory name fa59b779 Remove unnecessary function handleStreamSuspension (#1468) e98913ec fix grpclb protos to not cause re-registration of types (#1466) 0b4b292f transport: fix handling of InTapHandle's returned context (#1461) 83368072 the cancel function should be called to avoid ctx leak (#1465) 051e7013 add comment (#1464) 01089b29 Remove buf copy when the compressor exist (#1427) c29d6389 transport: Fix deadlock in client keepalive. (#1460) 7db1564b benchmark: add benchmain/main.go to run benchmark with flag set (#1352) 69abda08 stats: add methods to allow setting grpc-trace-bin and grpc-tags-bin headers (#1404) 9b6ac7dd deduplicate dns record in lookup (#1454) 25d6e52b Add -u to installation command (#1451) 2308131c addrConn: change address to slice of address (#1376) 25b4a426 go-generate pb.go files and check in Travis to make sure they don't change (#1426) 5d9b09e4 Fix host string passed to PerRPCCredentials (#1433) 596a6acc metadata: Remove NewContext and FromContext for gRFC L7 (#1392) bfaf0423 Add status details support to server HTTP handler (#1438) 13084144 put *gzip.Writer back to pool (#1441) 9d99afc2 Automatic WriteStatus for RecvMsg/SendMsg error on server side (#1409) 43d1787a Update ServerInHandle comments (#1437) 7657092a Server should send 2 goaway messages to gracefully shutdown the connection. (#1403) e81b5698 Add and use connectivity package for states (#1430) 73041be9 Add 'experimental' note to ServeHTTP godoc (#1429) 383b1143 Document Server.ServeHTTP (#1406) 059280c9 Set peer before sending request (#1423) 963eb485 Fix missing and wrong license (#1422) 4e56696c Fix a goroutine leak in DialContext (#1424) 39c8c386 Use `NewOutgoingContext ` in the metadata doc (#1425) 53ae6b7e Fix typo 66c9ed80 Add flags for tls file path (#1419) bba722ab Change comment on stats.End.Error (#1418) b463cc32 Call cancel on contexts in tests (#1412) fa1cb32d Don't use 64-bit integers with atomic. (#1411) 4c7bb729 benchmark: don't stop timer until after workers are done (#1407) 7c7afa03 Validate send quota again after acquiring writable channel (#1367) 98bc2cec Use log instead of grpclog in routeguide example (#1395) 971efedc Revert "Make all "grpc-" metadata field names reserved (#1391)" (#1400) aa5b2f73 Enabling client process multiple GoAways (#1393) b31f0c60 Assign testdata path to correct variable (#1397) e64ff5d7 Do not call testdata.Path when defining flags (#1394) 3ddcdc26 Make all "grpc-" metadata field names reserved (#1391) 0c390d8e remove defer funtion in recvBufferReader Read method (#1031) ca9e0c34 Add testdata package and unify testdata to only one dir (#1297) a5684396 DNS resolver (#1300) a5d184a8 Expose ConnectivityState of a ClientConn. (#1385) cdc12d4a status: Add WithDetails and Details functions (#1358) 6495e8df benchmark: remove multi-layer for loop (#1339) 0c418763 transport: fix minor typo in http2_server.go (#1383) b34c88b0 Add doc in default implementation fatal functions on os.Exit() (#1365) 2bb31825 Fix bufconn.Close to not be blocking. (#1377) 98eab9ba Do not create new addrConn when connection error happens (#1369) 2b21bfb9 Change version to 1.6.x (#1382) 939edc09 Revert "Use bufconn in end2end tests." (#1381) 71260d21 Fix logging method (#1375) c7e2c00e Use bufconn in end2end tests. 9a71c794 Create bufconn package for a local, buffered net.Conn and dialer/listener ce03e9cc Fix a typo in examples/gotutorial.md (#1374) d6723916 Use log severity and verbosity level (#1340) 27b2052c fix deadlock of roundrobin balancer (#1353) 8264d619 Ignore goroutines spanwned by log.init during leakcheck. (#1368) 86ec6baa Populate callInfo.peer object for streaming RPCs (#1356) d69dedd8 BDP estimation and window update. (#1310) 93166a0b Canonicalize https://grpc.io as the preferred URL prefix 37be128e Update leckCheck to ignore non-gRPC goroutine introduced in Go1.9 (#1351) 41d9b6ea Do not flush NewStream header on client side for unary RPCs and streaming RPCs with requests. (#1343) 0100e426 adjust import order (#1311) 3c33c262 add license for some proto files (#1322) 9cb02b88 latency: sleep in Write when BDP is exceeded to avoid buffer bloat (#1330) 77d4a9f4 Add documentation to deprecate WithTimeout dial option (#1333) eb7b1305 change objects in recvBuffer queue from interface to concrete type to reduce allocs (#1029) 57ff3285 Catch invalid use of Server.RegisterService after Register.Serve (#828) f0c566b8 benchmark: add latency/MTU/bandwidth into testcases (#1304) 2f3320d9 Updated documentation of ClientStream. (#1320) 1d797552 Add support for grpc.SupportPackageIsVersion3 back (#1331) 8855ede8 Deflake TestServerGoAway (#1321) 79fc236e dont create new reader in recvMsg (#940) 306d7d08 Make Apache 2.0 LICENSE file a verbatim copy (#1329) 40e7a759 Protect bytesSent and bytesReceived with mutex to avoid datarace (#1318) 2887f947 Add Severity and VerboseLevel to grpclog. (#922) ea143546 update LICENSE (#1312) c5c761db fix spell (#1314) c6b96641 Add goroutine safety doc on stream (#1313) 834dbd54 replace 127.0.0.1 with localhost for ipv6 only environment (#1306) 7df48bee transport: fix error handling on Stream deletion (#1275) a3592bda Behaviour Change: transport errors should be coded Unavailable instead of internal. (#1307) 1ab4adf2 Support ipv6 addresses in grpclb (#1303) 89caed9e Return header in Stream.Header() if available (#1281) a94a7ac0 add license for some files (#1296) 20e03965 Make RPCs non-failfast in grpclb_test. (#1302) 0c68d6e2 Specify characters allowed in metadata keys (#1299) ba30de56 use subtests for the benchmark_test and add it into the Makefile (#1278) 84158ac5 update the path of guide (#950) cfd21dac Create latency package for realistically simulating network latency (#1286) dbdb479a Deflake TestFlowContolLogicalRace (#1279) a1857942 patents are part of Apache2 license ddbf6c46 autofix license notice 3c7e64ff add AUTHORS and LICENSE 06c98486 Change version to 1.5.0-dev (#1288) d2a85bf7 transport: fix minor typo in 'GoAway' godoc (#1284) 8de2dff7 Piggyback window updates for connection with those of a stream. (#1273) 6fecf283 Reopening: Server shouldn't Fatalf in case it fails to encode. (#1276) a8cd0c13 Avoid int32 overflow when applying initial window size setting 84311653 Revert "Server shouldn't Fatalf in case it fails to encode. (#1251)" (#1274) d5bc85c1 Server shouldn't Fatalf in case it fails to encode. (#1251) 1e47334c Decouple transport flow control from application read. (#1265) a1135905 Update references to route_guide.proto to use new directory name (#1270) 6bb76488 add MaxConcurrentStreams to benchmark_test when start the server (#1271) e49f6f2d Update CONTRIBUTING.md 0294ac81 Create ISSUE_TEMPLATE 27399678 re-enable handler_server in end2end test, and fix some failed tests (#1259) 3a46d9d5 Avoid panic caused by stdlib context package errors (#1258) 72395c53 Initialize stream properly in handler_server. (#1260) 6dff7c5f Expand stream's flow control in case of an active read. (#1248) 79f73d62 Suppress server log message when EOF without receiving data for preface (#1052) 5e42b6f3 Fixed comment spelling (#1254) 4a7b4d03 minor fix cb649383 fix minor issues 9bf8ea0a clientconn, server: replace time.After with time.NewTimer (#998) c7379be7 grpclb balancer.Close() should not panic if called more than once (#1250) 27ae1472 remove some todo comments 074dbfbc Add doc and example for mocking streaming RPCs (#1230) ed64d51c remove unnecessary ok d19bbe84 change max message size functions name 11d93ecd Test for EmptyCallOption ce595b84 Implement `EmptyCallOption` 3419b429 Reuse Token for serviceAccount credentials (#1238) 37737978 Travis: add staticcheck (#1019) 75054818 comments added 4d2b4b5c fix minor typo e2f22b02 Defined GA and add pointer to benchmarks (#1239) bdf9a640 add timeout test, add check or pointer filed in callOption, fix minor issues aacd01c2 call listen with "localhost:port" instead of ":port" in tests (#1237) 135247d8 fix server panic trying to send on stream as client disconnects #1111 (#1115) 1c69e4ca Eagerly set a pointer to nil to help GC (#1232) 780308da add logs to grpclb on send and recv (#1235) a0c3e722 Add stats test for client streaming and server streaming RPCs (#1140) 88a73d35 Adding dial options for PerRPCCredentials (#1225) 07bd9434 Pass custom dialer to balancer (#1205) 3dd14ccc Http status to grpc status conversion (#1195) 17760cfd Calling handleRPC with context derived from the original (#1227) 600406e6 Use pooled gzip.{Writer,Reader} in gzip{Compressor,Decompressor} (#1217) 4013f8d5 tentative fix to a flow control over-give-back bug (#1170) 59426b3c gofmt d9265441 remove unessary nil in return statement ffa4ec7d Ensure that RoundRobin.Close() does not panic. (#1139) 2eb11e10 Log the actual error when inTapHandle fails in http2Server (#1185) 66a9140c make ServerOption panic messages more clear. (#1194) f3b5bf53 Make window size configurable. (#1210) 07f4e6bf Reset proto before unmarshalling (#1222) a40b8d44 Address the comments 7ddf89f9 Fix doc 68a5d50f Fix go buildable source file problem (#1213) 0914b461 don't add defer func if stats handler is nil (#1214) 0eb507a2 Change version to 1.4.0-dev (#1212) 84cd50a2 Fix nil pointer dereferences from status.FromProto(nil) (#1211) fc5d3552 Split grpclb client load report test to deflake test. (#1206) 4d1604cc Use unpadded base64 encoding for binary metadata headers; handle padded or unpadded input (#1209) b610ffd3 Never encode binary metadata within the metadata map (#1188) 277e90a4 Client load report for grpclb. (#1200) a7fee9fe Use proto.Equal for equalities on Go proto messages (#1204) ea230c71 update ecbc34aa move server defaults, delete defer cancel() in stream.go eaa9ccb0 minor comment change 9c5f260e make max size a pointer type and initialize function a CallOption c73e0165 Update grpclb proto and move grpclb into package grpc (#1186) 38df39ba Revert "temporary disable 1.6 on travis (#1198)" (#1199) 983d8372 update the merge of client api and sc 72b617aa temporary disable 1.6 on travis (#1198) ef10a566 Revert "To adhere with protocol the server should send RST_STREAM on observing timeout on a strea, (#1130)" 2d949be2 Make sure all in-flight streams close when ClientConn.Close() is called. (#1136) 6d0e6b04 To adhere with protocol the server should send RST_STREAM on observing timeout on a strea, (#1130) 6914ab1e Fix broken Markdown headings in examples/gotutorial.md (#1189) 955c8670 Support proxy with dialer (#1098) cb02ab4d change error message from InvalidArgument to ResourceExhausted 8a6eb0f6 grpclb should connect to the second balancer (#1181) 0e8b58d2 use proto.Buffer API for protobuf codec and cache proto.Buffer structs (#1010) cd8432ec Move handling stats.End to clientStream.finish() (#1182) 6d158dbf Fix markdown in README.md (#1180) ff17eeb5 opt in to frame reuse on the framer to reduce garbage (#1096) bfa5dd27 Client should update keepalive parameters upon receiving GoAway with … (#1169) b47cbd15 Use proto import from google.golang.org instead of github.com (#1176) 0c1d39df Separate incoming and outgoing metadata in context 087f3d6e transport: implement GoString on Stream (#1167) 74a632af fix comments aad28b3c add error handling for InvalidArgument error from sendResponse() c6a39370 fix send response error case 6f8b5531 fix the testMaxMsgSizeServerAPI failure 9f9c1906 Fix typo in interceptor.go (#1172) 1d27587e Change status package to deal with concrete types instead of interfaces (#1171) f1bb70fa gofmt a66f9231 Make initial service config non-blocking in Dial() b5071124 Add status package for reporting gRPC status and errors (#1156) f45e6e3b Bug fix(Issue#1141): Check if peer is nil before trying to derefer it. (#1143) ad16b942 fix gofmt goimports go tool vet errors ee8ed34b get more metrics from go benchmark servers (#913) a0b902a1 fix missing import 50d41750 Add client and service side apis for limiting the send/recv msg size. Update MethodConfig struct b982c1ca Behavior change: do not strip out gRPC user-agent (#1158) b2fae0cf Implementation for server enforcement of keepalive policy. (#1147) 7fc29d0c populate initReq target name and fix IP []byte type in grpclb (#1145) b3cc2b5e pick a random address if the current in use is deleted by resolver (#1135) ccdf2704 add document to ClientHandshake about returning temporary error (#1125) 0df08a7a :authority should include port number (#1123) 14a6be43 Add grpc.Version string and use it in the UA (#1144) 0a207581 remove support for go1.5 (#1132) d9541d75 post-review commit. 9d8d0c6e Update test to work according to changes made to maxStreams behavior. (#1137) 50fcb6ab post review update f1ab3d93 Post review update c5a5dbc5 Don't return an error from dial if the balancer returns no initial servers (#1112) 3c9df8ef Post review updates 55353842 Removing unnecessary change to http2_server 6b28425a Upon observing timeout on rpc context, the client should send a RST_STREAM to the server before freeing the quota for more rpcs to be created. 82fb96a3 Rest of the implementation e5a289ce MaxConnectionIdle implementation. More to follow 659f9812 more initial commits 0e716191 making client consistent with server 1bf38b6a initial commit b9b6d489 test debug a94b0948 Client should have a check on maximum size of received message size. d9b58b5c Initial commit 5ebdd304 lint update and test fix 0d5b22c2 golint update 9d235766 post-review update 77204bfd Add comment explaining why cancel is not called in success path after client transport is created 25f14b7f post-review updates ba23d25e relax the checking on error string f2206190 post-review updates 0dc1a7dd post review updates f28d4877 future-proofing e328eded more refactoring 3ad78109 removing dead code bc3cca99 Implementation changes;Using an independent goroutine for keepalive checks. 9871e09f Use codes.Code.String() rather than logging integers e59576b1 add support for user-provided UnknownStreamHandler 0dd2b961 comment update 3d392908 fix go vet in end2end test 467c1fdc add go1.8 to travis.yml 2e56e83e Use tls.Config.Clone() for go1.8 3de1621f account for padding in flow control, when received frame uses it 7f74821f experimental commit 6810d346 fix issue #1056 and #1050 888efe30 style update df4f24b1 1. Initialize streamsQuota at object creation. 2. Defer adding back to streamsQuota pool in CloseStream 4ad16bc3 Authority overwrite only works if TLS is not present 336b4ea3 post review update 9e922bde Issue #1060 maximum number of streams on the client should be capped at 100 by default ba8cd6e3 fix FileContainingExtension in server reflection bcc367f3 get rid of extra payload local variable a0bd789d fix wording c7430a06 Only override :authority for insecure dials dfb494c6 post review update 09fddba2 remove debug code 97c325c9 Replace "127.0.0.1" with "localhost" to support IPv6-only environments. 66de296a post review update f9065ac5 Added test. 794873f0 Added calloption to retrieve peer information a050dbc8 Fix and modify logging. 84bee50b Add DialOption to overwrite :authority pseudo-header 0bdf0596 post review updates c8983baf const variable name change for goimports 0ba0eafe update activity on recieveing settings 5fcb58f0 post review updates b2448f6c intermediate change 6e0ace39 Change max message size fields from uint64 to uint32. 50955793 Debugging tests for AuthInfo (#1046) 9d8ac145 Add Go interop http2 client cb653e4b Change stats APIs (#1030) 4ed34891 ClientHandshake to return AuthInfo (#956) 325a0c20 Update comment. 49d2a88c Comment formatting eeb6f5ba code cleaning ec1de5b4 call cancel on context in DoTimeoutOnSleepingServer dd6905b8 Wait until all rpcs are done instead of a hard stop. 97b8c7c5 Set failfast to false for stress tests. 47b25d4b remove proto object allocs on streaming benchmark server 09aecb09 Add the initial service config support (#1009) 64362e65 FIX: use /usr/bin/env bash in shebang 541319e4 Update gomock-example.md 6a68fd85 post review updates a0474a67 exclude mockgen generated code from golint 54f30019 Update gomock-example.md 5202729e Update gomock-example.md e6b46622 Update gomock-example.md 0708983f Create gomock-example.md 9cc4fd4c Example code on how to mock gRPC services 5ad7c5b8 add always returns non-nil error comment to server.serve() 74849601 remove stats.Stop() and fix flaky stats test (#1016) 4203221f Lint fix 8da57eb8 Add availible interop tests to stress client 417442a7 transport: fix logical race in flow control (#1005) deb01f42 add stats tagger APIs and connection stats. (#992) 4a119ee2 Use InfoDepth/FatalDepth in glogger.go 87da9042 Add logging of new flags f45b8d1e fix the flakiness of timeout_on_sleeping_server interop test e9ab0757 Add new flags to go stress client 901cdf6f Post review updates b7d24ba0 correct errors in documentation 4f404a1c fix a circular dependency in clientconn_test 97fb58a2 go tool vet again 45907c27 go tool vet rectification 058907d0 refactored and rectified test failures 93111e4c sending ping the right way a417b824 Added synchronization e58450b5 Keepalive client-side implementation b13ef794 add more comments to metadata Fromcontext (#986) 85518587 Grpclb: Support server list expiration (#962) dd61a2fa fix golint c31bccc2 add FailOnNonTempDialError to control if gRPC should fail on non-temp dial error 524f4213 fix flaky stats test and reuse functions in stats test 2769b6ca Fix comments from github df5d48b5 fix comments 947e436e return non temporary connection error if dialer returns non temprary errors fd15d531 add note in readme pre-req section to get the latest go version 88bdb956 fixes in test f511c49a remove Stream.TraceContext f80f54e4 fix failing tests 6445dedf fix wrong context when handling stats 183e5e98 fix comments in stats testing 11b929be remove wrong comments from stats testing proto 0b062e4d cache conn LocalAddr and RemoteAddr ff0b1db3 fix comments 3de821b7 remote end stats in header() and SendMsg() badd5540 fix comments 3f9a96ea move inPayload.RecvTime to after unmarshal d23fdd77 fix comments 5938492b fix comments a4edc462 renaming aa5b5c7e client side, use user context, and change sent time 1896a21f fix review comments 1d2a929a add stats.Begin and stats.End 8a126b02 change stats comments e4784867 remove isStats from interface c0087b3c add failfast option to stats 0d345b58 change package stats comment be665028 change behavior of stats register handler and start stop c6985882 Renaming types and variables e42a66c8 add client stats 2de8bacb change stats interface API to include ClientStats() function adaae033 remove initStats, merge into headerStats aa914665 add isclient to errorstats 1054f1c4 add payload with original type to payload stats 85c5e0e3 add errorStats 7984a9c6 change CallBack to handler, and move ctx out of Stats. 46e80bf1 fix race in test and add import comments 17ee5a36 Add package stats, and export stats on server side. c3d1b960 Fix broken markdown 3ff3e89d add grpc.SupportPackageIsVersion faq 0225e28a add a TODO f3469bf2 add the missing comment b85d2b0b Support transport tap 86765df8 Add comments and no longer export helper func 687c9584 Reimplement unimplemented_method and address gofmt issues 5b6bca7d Add unimplemented test cases to Go interop client dc220c92 Add support for custom metadata to Go interop code 883bfc7b pb.go file update 5303e26e update reflection test pb.go 727a60e4 update server reflection code to comply with the change to the grpc generator b1efb1e3 fixes in reflection_tutorial 522de0d7 Add server-reflection-tutorial.md Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-08-02global: overrides syntax conversionBruce Ashfield
OEcore/bitbake are moving to use the clearer ":" as an overrides separator. This is pass one of updating the meta-virt recipes to use that syntax. This has only been minimally build/runtime tested, more changes will be required for missed overrides, or incorrect conversions Note: A recent bitbake is required: commit 75fad23fc06c008a03414a1fc288a8614c6af9ca Author: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Sun Jul 18 12:59:15 2021 +0100 bitbake: data_smart/parse: Allow ':' characters in variable/function names It is becomming increasingly clear we need to find a way to show what is/is not an override in our syntax. We need to do this in a way which is clear to users, readable and in a way we can transition to. The most effective way I've found to this is to use the ":" charater to directly replace "_" where an override is being specified. This includes "append", "prepend" and "remove" which are effectively special override directives. This patch simply adds the character to the parser so bitbake accepts the value but maps it back to "_" internally so there is no behaviour change. This change is simple enough it could potentially be backported to older version of bitbake meaning layers using the new syntax/markup could work with older releases. Even if other no other changes are accepted at this time and we don't backport, it does set us on a path where at some point in future we could require a more explict syntax. I've tested this patch by converting oe-core/meta-yocto to the new syntax for overrides (9000+ changes) and then seeing that builds continue to work with this patch. (Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2017-02-09docker: fixup failing buildMark Asselstine
Docker is failing to build because it is attempting to download missing go dependencies. Add new recipes for missing dependencies and update existing recipes to ensure the version defined in docker's vendor.conf is available. Note that this fixes the build only. At this time many docker functions are working, such as 'docker image', 'docker pull' and more, but 'docker run' is currently failing. Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>