From 1ee46abfef9278407c54ed598317e901b44c553b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Oct 2025 12:40:27 +0000 Subject: [PATCH] build(deps): bump the build group with 6 updates Bumps the build group with 6 updates: | Package | From | To | | --- | --- | --- | | [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.39.3` | `1.39.4` | | [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) | `1.18.17` | `1.18.19` | | [github.com/aws/aws-sdk-go-v2/feature/ec2/imds](https://github.com/aws/aws-sdk-go-v2) | `1.18.10` | `1.18.11` | | [github.com/aws/aws-sdk-go-v2/feature/s3/manager](https://github.com/aws/aws-sdk-go-v2) | `1.19.13` | `1.19.15` | | [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.88.5` | `1.88.7` | | [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.252.0` | `0.253.0` | Updates `github.com/aws/aws-sdk-go-v2` from 1.39.3 to 1.39.4 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.39.3...v1.39.4) Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.18.17 to 1.18.19 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.17...config/v1.18.19) Updates `github.com/aws/aws-sdk-go-v2/feature/ec2/imds` from 1.18.10 to 1.18.11 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.10...config/v1.18.11) Updates `github.com/aws/aws-sdk-go-v2/feature/s3/manager` from 1.19.13 to 1.19.15 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/efs/v1.19.13...service/sqs/v1.19.15) Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.88.5 to 1.88.7 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.88.5...service/s3/v1.88.7) Updates `google.golang.org/api` from 0.252.0 to 0.253.0 - [Release notes](https://github.com/googleapis/google-api-go-client/releases) - [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.252.0...v0.253.0) --- updated-dependencies: - dependency-name: github.com/aws/aws-sdk-go-v2 dependency-version: 1.39.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: build - dependency-name: github.com/aws/aws-sdk-go-v2/credentials dependency-version: 1.18.19 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: build - dependency-name: github.com/aws/aws-sdk-go-v2/feature/ec2/imds dependency-version: 1.18.11 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: build - dependency-name: github.com/aws/aws-sdk-go-v2/feature/s3/manager dependency-version: 1.19.15 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: build - dependency-name: github.com/aws/aws-sdk-go-v2/service/s3 dependency-version: 1.88.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: build - dependency-name: google.golang.org/api dependency-version: 0.253.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: build ... Signed-off-by: dependabot[bot] --- go.mod | 32 +++--- go.sum | 80 ++++++------- .../aws-sdk-go-v2/aws/go_module_metadata.go | 2 +- .../feature/ec2/imds/CHANGELOG.md | 4 + .../feature/ec2/imds/go_module_metadata.go | 2 +- .../feature/s3/manager/CHANGELOG.md | 8 ++ .../feature/s3/manager/go_module_metadata.go | 2 +- .../internal/configsources/CHANGELOG.md | 4 + .../configsources/go_module_metadata.go | 2 +- .../endpoints/awsrulesfn/partitions.go | 7 ++ .../endpoints/awsrulesfn/partitions.json | 3 + .../internal/endpoints/v2/CHANGELOG.md | 4 + .../endpoints/v2/go_module_metadata.go | 2 +- .../aws-sdk-go-v2/internal/v4a/CHANGELOG.md | 4 + .../internal/v4a/go_module_metadata.go | 2 +- .../service/internal/checksum/CHANGELOG.md | 4 + .../internal/checksum/go_module_metadata.go | 2 +- .../internal/presigned-url/CHANGELOG.md | 4 + .../presigned-url/go_module_metadata.go | 2 +- .../service/internal/s3shared/CHANGELOG.md | 4 + .../internal/s3shared/go_module_metadata.go | 2 +- .../aws/aws-sdk-go-v2/service/s3/CHANGELOG.md | 8 ++ .../service/s3/go_module_metadata.go | 2 +- .../s3/internal/endpoints/endpoints.go | 3 + .../go-jose/go-jose/v4/CHANGELOG.md | 101 ----------------- .../github.com/go-jose/go-jose/v4/README.md | 76 +++++++------ .../github.com/go-jose/go-jose/v4/crypter.go | 4 + vendor/github.com/go-jose/go-jose/v4/jwk.go | 59 +++++++--- .../github.com/go-jose/go-jose/v4/shared.go | 1 - vendor/golang.org/x/time/rate/rate.go | 2 +- .../google.golang.org/api/internal/version.go | 2 +- vendor/google.golang.org/grpc/CONTRIBUTING.md | 99 ++++++++++++---- .../balancer/grpclb/grpclb_remote_balancer.go | 10 +- .../grpc/balancer/pickfirst/pickfirst.go | 2 +- .../pickfirst/pickfirstleaf/pickfirstleaf.go | 11 +- vendor/google.golang.org/grpc/clientconn.go | 2 +- .../grpc/encoding/proto/proto.go | 20 +++- .../grpc/internal/buffer/unbounded.go | 1 + .../grpc/internal/channelz/trace.go | 2 +- .../grpc/internal/envconfig/xds.go | 6 + .../internal/grpcsync/callback_serializer.go | 22 +--- .../grpc/internal/transport/http2_client.go | 33 ++++-- .../xds}/balancer/balancer.go | 12 +- .../xds}/balancer/cdsbalancer/cdsbalancer.go | 6 +- .../balancer/cdsbalancer/cluster_watcher.go | 2 +- .../xds}/balancer/cdsbalancer/logging.go | 0 .../xds}/balancer/clusterimpl/clusterimpl.go | 15 ++- .../xds}/balancer/clusterimpl/config.go | 0 .../xds}/balancer/clusterimpl/logging.go | 0 .../xds}/balancer/clusterimpl/picker.go | 8 +- .../clustermanager/balancerstateaggregator.go | 0 .../balancer/clustermanager/clustermanager.go | 0 .../xds}/balancer/clustermanager/config.go | 0 .../xds}/balancer/clustermanager/picker.go | 0 .../clusterresolver/clusterresolver.go | 8 +- .../xds}/balancer/clusterresolver/config.go | 2 +- .../balancer/clusterresolver/configbuilder.go | 16 +-- .../configbuilder_childname.go | 4 +- .../xds}/balancer/clusterresolver/logging.go | 0 .../clusterresolver/resource_resolver.go | 2 +- .../clusterresolver/resource_resolver_dns.go | 0 .../clusterresolver/resource_resolver_eds.go | 2 +- .../balancer/loadstore/load_store_wrapper.go | 4 +- .../balancer/outlierdetection/balancer.go | 0 .../balancer/outlierdetection/callcounter.go | 0 .../xds}/balancer/outlierdetection/config.go | 0 .../xds}/balancer/outlierdetection/logging.go | 0 .../outlierdetection/subconn_wrapper.go | 0 .../xds}/balancer/priority/balancer.go | 0 .../xds}/balancer/priority/balancer_child.go | 0 .../balancer/priority/balancer_priority.go | 0 .../xds}/balancer/priority/config.go | 0 .../balancer/priority/ignore_resolve_now.go | 18 +-- .../xds}/balancer/priority/logging.go | 0 .../xds}/balancer/wrrlocality/balancer.go | 4 +- .../xds}/balancer/wrrlocality/logging.go | 0 .../xds}/clients/config.go | 0 .../clients/grpctransport/grpc_transport.go | 2 +- .../xds}/clients/internal/backoff/backoff.go | 0 .../xds}/clients/internal/buffer/unbounded.go | 0 .../xds}/clients/internal/internal.go | 2 +- .../xds}/clients/internal/pretty/pretty.go | 0 .../internal/syncutil/callback_serializer.go | 24 +--- .../xds}/clients/internal/syncutil/event.go | 0 .../clients/lrsclient/internal/internal.go | 0 .../xds}/clients/lrsclient/load_store.go | 4 +- .../xds}/clients/lrsclient/logging.go | 0 .../xds}/clients/lrsclient/lrs_stream.go | 2 +- .../xds}/clients/lrsclient/lrsclient.go | 6 +- .../xds}/clients/lrsclient/lrsconfig.go | 2 +- .../xds}/clients/transport_builder.go | 0 .../xds}/clients/xdsclient/ads_stream.go | 16 +-- .../xds}/clients/xdsclient/authority.go | 103 +++++++---------- .../xds}/clients/xdsclient/channel.go | 58 +--------- .../clients/xdsclient/clientimpl_watchers.go | 2 +- .../clients/xdsclient/internal/internal.go | 4 - .../internal/xdsresource/ads_stream.go | 0 .../xdsclient/internal/xdsresource/errors.go | 0 .../xdsclient/internal/xdsresource/name.go | 0 .../xdsclient/internal/xdsresource/type.go | 0 .../xdsclient/internal/xdsresource/version.go | 0 .../xds}/clients/xdsclient/logging.go | 0 .../xds}/clients/xdsclient/metrics/metrics.go | 0 .../xds}/clients/xdsclient/resource_type.go | 0 .../clients/xdsclient/resource_watcher.go | 0 .../xds}/clients/xdsclient/xdsclient.go | 56 +++------ .../xds}/clients/xdsclient/xdsconfig.go | 11 +- .../clusterspecifier/cluster_specifier.go | 0 .../xds}/clusterspecifier/rls/rls.go | 2 +- .../xds}/httpfilter/fault/fault.go | 2 +- .../xds}/httpfilter/httpfilter.go | 0 .../xds}/httpfilter/rbac/rbac.go | 2 +- .../xds}/httpfilter/router/router.go | 2 +- .../xds}/resolver/internal/internal.go | 0 .../xds}/resolver/logging.go | 0 .../xds}/resolver/serviceconfig.go | 6 +- .../xds}/resolver/watch_service.go | 2 +- .../xds}/resolver/xds_resolver.go | 6 +- .../xds}/server/conn_wrapper.go | 2 +- .../xds}/server/listener_wrapper.go | 2 +- .../xds}/server/rds_handler.go | 2 +- .../grpc/internal/xds/xds.go | 66 ++++++++++- .../xds}/xdsclient/attributes.go | 0 .../xds}/xdsclient/client.go | 4 +- .../xds}/xdsclient/clientimpl.go | 29 ++--- .../xds}/xdsclient/clientimpl_loadreport.go | 6 +- .../xds}/xdsclient/clientimpl_watchers.go | 2 +- .../xds}/xdsclient/logging.go | 0 .../xds}/xdsclient/pool.go | 9 +- .../xds}/xdsclient/requests_counter.go | 0 .../xds}/xdsclient/resource_types.go | 6 +- .../xdslbregistry/converter/converter.go | 4 +- .../xdsclient/xdslbregistry/xdslbregistry.go | 0 .../xdsresource/cluster_resource_type.go | 4 +- .../xdsresource/endpoints_resource_type.go | 4 +- .../xds}/xdsclient/xdsresource/errors.go | 0 .../xdsclient/xdsresource/filter_chain.go | 4 +- .../xdsresource/listener_resource_type.go | 4 +- .../xds}/xdsclient/xdsresource/logging.go | 0 .../xds}/xdsclient/xdsresource/matcher.go | 0 .../xdsclient/xdsresource/matcher_path.go | 0 .../xds/xdsclient/xdsresource/metadata.go | 93 +++++++++++++++ .../xds}/xdsclient/xdsresource/name.go | 0 .../xdsclient/xdsresource/resource_type.go | 6 +- .../xdsresource/route_config_resource_type.go | 4 +- .../xds}/xdsclient/xdsresource/type.go | 2 +- .../xds}/xdsclient/xdsresource/type_cds.go | 0 .../xds}/xdsclient/xdsresource/type_eds.go | 4 +- .../xds}/xdsclient/xdsresource/type_lds.go | 2 +- .../xds}/xdsclient/xdsresource/type_rds.go | 4 +- .../xdsclient/xdsresource/unmarshal_cds.go | 4 +- .../xdsclient/xdsresource/unmarshal_eds.go | 89 ++++++++++++--- .../xdsclient/xdsresource/unmarshal_lds.go | 2 +- .../xdsclient/xdsresource/unmarshal_rds.go | 2 +- .../xdsclient/xdsresource/version/version.go | 0 vendor/google.golang.org/grpc/stream.go | 17 ++- vendor/google.golang.org/grpc/version.go | 2 +- .../google.golang.org/grpc/xds/csds/csds.go | 2 +- .../grpc/xds/googledirectpath/googlec2p.go | 9 +- .../grpc/xds/internal/internal.go | 84 -------------- vendor/google.golang.org/grpc/xds/server.go | 6 +- .../grpc/xds/server_options.go | 2 +- vendor/google.golang.org/grpc/xds/xds.go | 14 +-- vendor/modules.txt | 107 +++++++++--------- 164 files changed, 880 insertions(+), 782 deletions(-) delete mode 100644 vendor/github.com/go-jose/go-jose/v4/CHANGELOG.md rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/balancer.go (75%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/cdsbalancer/cdsbalancer.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/cdsbalancer/cluster_watcher.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/cdsbalancer/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterimpl/clusterimpl.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterimpl/config.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterimpl/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterimpl/picker.go (95%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clustermanager/balancerstateaggregator.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clustermanager/clustermanager.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clustermanager/config.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clustermanager/picker.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/clusterresolver.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/config.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/configbuilder.go (96%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/configbuilder_childname.go (96%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/resource_resolver.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/resource_resolver_dns.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/clusterresolver/resource_resolver_eds.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/loadstore/load_store_wrapper.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/outlierdetection/balancer.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/outlierdetection/callcounter.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/outlierdetection/config.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/outlierdetection/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/outlierdetection/subconn_wrapper.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/priority/balancer.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/priority/balancer_child.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/priority/balancer_priority.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/priority/config.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/priority/ignore_resolve_now.go (77%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/priority/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/wrrlocality/balancer.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/balancer/wrrlocality/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/config.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/grpctransport/grpc_transport.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/internal/backoff/backoff.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/internal/buffer/unbounded.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/internal/internal.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/internal/pretty/pretty.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/internal/syncutil/callback_serializer.go (84%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/internal/syncutil/event.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/lrsclient/internal/internal.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/lrsclient/load_store.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/lrsclient/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/lrsclient/lrs_stream.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/lrsclient/lrsclient.go (96%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/lrsclient/lrsconfig.go (95%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/transport_builder.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/ads_stream.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/authority.go (93%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/channel.go (86%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/clientimpl_watchers.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/internal/internal.go (86%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/internal/xdsresource/ads_stream.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/internal/xdsresource/errors.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/internal/xdsresource/name.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/internal/xdsresource/type.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/internal/xdsresource/version.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/metrics/metrics.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/resource_type.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/resource_watcher.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/xdsclient.go (90%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clients/xdsclient/xdsconfig.go (88%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clusterspecifier/cluster_specifier.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/clusterspecifier/rls/rls.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/httpfilter/fault/fault.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/httpfilter/httpfilter.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/httpfilter/rbac/rbac.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/httpfilter/router/router.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/resolver/internal/internal.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/resolver/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/resolver/serviceconfig.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/resolver/watch_service.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/resolver/xds_resolver.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/server/conn_wrapper.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/server/listener_wrapper.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/server/rds_handler.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/attributes.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/client.go (95%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/clientimpl.go (90%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/clientimpl_loadreport.go (90%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/clientimpl_watchers.go (95%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/pool.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/requests_counter.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/resource_types.go (91%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdslbregistry/converter/converter.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdslbregistry/xdslbregistry.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/cluster_resource_type.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/endpoints_resource_type.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/errors.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/filter_chain.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/listener_resource_type.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/logging.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/matcher.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/matcher_path.go (100%) create mode 100644 vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/metadata.go rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/name.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/resource_type.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/route_config_resource_type.go (97%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/type.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/type_cds.go (100%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/type_eds.go (95%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/type_lds.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/type_rds.go (98%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/unmarshal_cds.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/unmarshal_eds.go (72%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/unmarshal_lds.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/unmarshal_rds.go (99%) rename vendor/google.golang.org/grpc/{xds/internal => internal/xds}/xdsclient/xdsresource/version/version.go (100%) delete mode 100644 vendor/google.golang.org/grpc/xds/internal/internal.go diff --git a/go.mod b/go.mod index f8b16f836..ce1e79d1c 100644 --- a/go.mod +++ b/go.mod @@ -9,11 +9,11 @@ require ( cloud.google.com/go/storage v1.57.0 github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.0 github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.6.3 - github.com/aws/aws-sdk-go-v2 v1.39.3 - github.com/aws/aws-sdk-go-v2/credentials v1.18.17 - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.10 - github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.13 - github.com/aws/aws-sdk-go-v2/service/s3 v1.88.5 + github.com/aws/aws-sdk-go-v2 v1.39.4 + github.com/aws/aws-sdk-go-v2/credentials v1.18.19 + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.11 + github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.15 + github.com/aws/aws-sdk-go-v2/service/s3 v1.88.7 github.com/beevik/etree v1.6.0 github.com/containers/libhvee v0.10.0 github.com/coreos/go-semver v0.3.1 @@ -31,7 +31,7 @@ require ( golang.org/x/net v0.46.0 golang.org/x/oauth2 v0.32.0 golang.org/x/sys v0.37.0 - google.golang.org/api v0.252.0 + google.golang.org/api v0.253.0 gopkg.in/yaml.v3 v3.0.1 ) @@ -49,13 +49,13 @@ require ( github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.53.0 // indirect github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.2 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.10 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.10 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.10 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.11 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.11 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.11 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.10 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.10 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.2 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.11 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.11 // indirect github.com/aws/smithy-go v1.23.1 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 // indirect @@ -64,7 +64,7 @@ require ( github.com/envoyproxy/go-control-plane/envoy v1.32.4 // indirect github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect - github.com/go-jose/go-jose/v4 v4.1.1 // indirect + github.com/go-jose/go-jose/v4 v4.1.2 // indirect github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/godbus/dbus/v5 v5.1.0 // indirect @@ -92,10 +92,10 @@ require ( golang.org/x/crypto v0.43.0 // indirect golang.org/x/sync v0.17.0 // indirect golang.org/x/text v0.30.0 // indirect - golang.org/x/time v0.13.0 // indirect + golang.org/x/time v0.14.0 // indirect google.golang.org/genproto v0.0.0-20250603155806-513f23925822 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20251002232023-7c0ddcbb5797 // indirect - google.golang.org/grpc v1.75.1 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20251014184007-4626949a642f // indirect + google.golang.org/grpc v1.76.0 // indirect google.golang.org/protobuf v1.36.10 // indirect ) diff --git a/go.sum b/go.sum index a22d889f2..3c9fa1388 100644 --- a/go.sum +++ b/go.sum @@ -44,42 +44,42 @@ github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0 github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.53.0/go.mod h1:jUZ5LYlw40WMd07qxcQJD5M40aUxrfwqQX1g7zxYnrQ= github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0 h1:Ron4zCA/yk6U7WOBXhTJcDpsUBG9npumK6xw2auFltQ= github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0/go.mod h1:cSgYe11MCNYunTnRXrKiR/tHc0eoKjICUuWpNZoVCOo= -github.com/aws/aws-sdk-go-v2 v1.39.3 h1:h7xSsanJ4EQJXG5iuW4UqgP7qBopLpj84mpkNx3wPjM= -github.com/aws/aws-sdk-go-v2 v1.39.3/go.mod h1:yWSxrnioGUZ4WVv9TgMrNUeLV3PFESn/v+6T/Su8gnM= +github.com/aws/aws-sdk-go-v2 v1.39.4 h1:qTsQKcdQPHnfGYBBs+Btl8QwxJeoWcOcPcixK90mRhg= +github.com/aws/aws-sdk-go-v2 v1.39.4/go.mod h1:yWSxrnioGUZ4WVv9TgMrNUeLV3PFESn/v+6T/Su8gnM= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.2 h1:t9yYsydLYNBk9cJ73rgPhPWqOh/52fcWDQB5b1JsKSY= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.2/go.mod h1:IusfVNTmiSN3t4rhxWFaBAqn+mcNdwKtPcV16eYdgko= -github.com/aws/aws-sdk-go-v2/config v1.31.13 h1:wcqQB3B0PgRPUF5ZE/QL1JVOyB0mbPevHFoAMpemR9k= -github.com/aws/aws-sdk-go-v2/config v1.31.13/go.mod h1:ySB5D5ybwqGbT6c3GszZ+u+3KvrlYCUQNo62+hkKOFk= -github.com/aws/aws-sdk-go-v2/credentials v1.18.17 h1:skpEwzN/+H8cdrrtT8y+rvWJGiWWv0DeNAe+4VTf+Vs= -github.com/aws/aws-sdk-go-v2/credentials v1.18.17/go.mod h1:Ed+nXsaYa5uBINovJhcAWkALvXw2ZLk36opcuiSZfJM= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.10 h1:UuGVOX48oP4vgQ36oiKmW9RuSeT8jlgQgBFQD+HUiHY= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.10/go.mod h1:vM/Ini41PzvudT4YkQyE/+WiQJiQ6jzeDyU8pQKwCac= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.13 h1:9XV2TkOvCs6Fis10b4scQbv/eDPhklhU/65GikPxXAA= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.13/go.mod h1:X5gq64GsjuOIJRIUzR3x3Du96zUF+U1if3Qw/qNx1k8= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.10 h1:mj/bdWleWEh81DtpdHKkw41IrS+r3uw1J/VQtbwYYp8= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.10/go.mod h1:7+oEMxAZWP8gZCyjcm9VicI0M61Sx4DJtcGfKYv2yKQ= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.10 h1:wh+/mn57yhUrFtLIxyFPh2RgxgQz/u+Yrf7hiHGHqKY= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.10/go.mod h1:7zirD+ryp5gitJJ2m1BBux56ai8RIRDykXZrJSp540w= +github.com/aws/aws-sdk-go-v2/config v1.31.15 h1:gE3M4xuNXfC/9bG4hyowGm/35uQTi7bUKeYs5e/6uvU= +github.com/aws/aws-sdk-go-v2/config v1.31.15/go.mod h1:HvnvGJoE2I95KAIW8kkWVPJ4XhdrlvwJpV6pEzFQa8o= +github.com/aws/aws-sdk-go-v2/credentials v1.18.19 h1:Jc1zzwkSY1QbkEcLujwqRTXOdvW8ppND3jRBb/VhBQc= +github.com/aws/aws-sdk-go-v2/credentials v1.18.19/go.mod h1:DIfQ9fAk5H0pGtnqfqkbSIzky82qYnGvh06ASQXXg6A= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.11 h1:X7X4YKb+c0rkI6d4uJ5tEMxXgCZ+jZ/D6mvkno8c8Uw= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.11/go.mod h1:EqM6vPZQsZHYvC4Cai35UDg/f5NCEU+vp0WfbVqVcZc= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.15 h1:OsZ2Sk84YUPJfi6BemhyMQyuR8/5tWu37WBMVUl8lJk= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.15/go.mod h1:CYZDjBMY+MyT+U+QmXw81GBiq+lhgM97kIMdDAJk+hg= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.11 h1:7AANQZkF3ihM8fbdftpjhken0TP9sBzFbV/Ze/Y4HXA= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.11/go.mod h1:NTF4QCGkm6fzVwncpkFQqoquQyOolcyXfbpC98urj+c= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.11 h1:ShdtWUZT37LCAA4Mw2kJAJtzaszfSHFb5n25sdcv4YE= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.11/go.mod h1:7bUb2sSr2MZ3M/N+VyETLTQtInemHXb/Fl3s8CLzm0Y= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4 h1:WKuaxf++XKWlHWu9ECbMlha8WOEGm0OUEZqm4K/Gcfk= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4/go.mod h1:ZWy7j6v1vWGmPReu0iSGvRiise4YI5SkR3OHKTZ6Wuc= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.10 h1:FHw90xCTsofzk6vjU808TSuDtDfOOKPNdz5Weyc3tUI= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.10/go.mod h1:n8jdIE/8F3UYkg8O4IGkQpn2qUmapg/1K1yl29/uf/c= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.11 h1:bKgSxk1TW//00PGQqYmrq83c+2myGidEclp+t9pPqVI= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.11/go.mod h1:vrPYCQ6rFHL8jzQA8ppu3gWX18zxjLIDGTeqDxkBmSI= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.2 h1:xtuxji5CS0JknaXoACOunXOYOQzgfTvGAc9s2QdCJA4= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.2/go.mod h1:zxwi0DIR0rcRcgdbl7E2MSOvxDyyXGBlScvBkARFaLQ= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.1 h1:ne+eepnDB2Wh5lHKzELgEncIqeVlQ1rSF9fEa4r5I+A= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.1/go.mod h1:u0Jkg0L+dcG1ozUq21uFElmpbmjBnhHR5DELHIme4wg= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.10 h1:DRND0dkCKtJzCj4Xl4OpVbXZgfttY5q712H9Zj7qc/0= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.10/go.mod h1:tGGNmJKOTernmR2+VJ0fCzQRurcPZj9ut60Zu5Fi6us= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.10 h1:DA+Hl5adieRyFvE7pCvBWm3VOZTRexGVkXw33SUqNoY= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.10/go.mod h1:L+A89dH3/gr8L4ecrdzuXUYd1znoko6myzndVGZx/DA= -github.com/aws/aws-sdk-go-v2/service/s3 v1.88.5 h1:FlGScxzCGNzT+2AvHT1ZGMvxTwAMa6gsooFb1pO/AiM= -github.com/aws/aws-sdk-go-v2/service/s3 v1.88.5/go.mod h1:N/iojY+8bW3MYol9NUMuKimpSbPEur75cuI1SmtonFM= -github.com/aws/aws-sdk-go-v2/service/sso v1.29.7 h1:fspVFg6qMx0svs40YgRmE7LZXh9VRZvTT35PfdQR6FM= -github.com/aws/aws-sdk-go-v2/service/sso v1.29.7/go.mod h1:BQTKL3uMECaLaUV3Zc2L4Qybv8C6BIXjuu1dOPyxTQs= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.2 h1:scVnW+NLXasGOhy7HhkdT9AGb6kjgW7fJ5xYkUaqHs0= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.2/go.mod h1:FRNCY3zTEWZXBKm2h5UBUPvCVDOecTad9KhynDyGBc0= -github.com/aws/aws-sdk-go-v2/service/sts v1.38.7 h1:VEO5dqFkMsl8QZ2yHsFDJAIZLAkEbaYDB+xdKi0Feic= -github.com/aws/aws-sdk-go-v2/service/sts v1.38.7/go.mod h1:L1xxV3zAdB+qVrVW/pBIrIAnHFWHo6FBbFe4xOGsG/o= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.2 h1:DGFpGybmutVsCuF6vSuLZ25Vh55E3VmsnJmFfjeBx4M= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.2/go.mod h1:hm/wU1HDvXCFEDzOLorQnZZ/CVvPXvWEmHMSmqgQRuA= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.11 h1:GpMf3z2KJa4RnJ0ew3Hac+hRFYLZ9DDjfgXjuW+pB54= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.11/go.mod h1:6MZP3ZI4QQsgUCFTwMZA2V0sEriNQ8k2hmoHF3qjimQ= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.11 h1:weapBOuuFIBEQ9OX/NVW3tFQCvSutyjZYk/ga5jDLPo= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.11/go.mod h1:3C1gN4FmIVLwYSh8etngUS+f1viY6nLCDVtZmrFbDy0= +github.com/aws/aws-sdk-go-v2/service/s3 v1.88.7 h1:Wer3W0GuaedWT7dv/PiWNZGSQFSTcBY2rZpbiUp5xcA= +github.com/aws/aws-sdk-go-v2/service/s3 v1.88.7/go.mod h1:UHKgcRSx8PVtvsc1Poxb/Co3PD3wL7P+f49P0+cWtuY= +github.com/aws/aws-sdk-go-v2/service/sso v1.29.8 h1:M5nimZmugcZUO9wG7iVtROxPhiqyZX6ejS1lxlDPbTU= +github.com/aws/aws-sdk-go-v2/service/sso v1.29.8/go.mod h1:mbef/pgKhtKRwrigPPs7SSSKZgytzP8PQ6P6JAAdqyM= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.3 h1:S5GuJZpYxE0lKeMHKn+BRTz6PTFpgThyJ+5mYfux7BM= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.3/go.mod h1:X4OF+BTd7HIb3L+tc4UlWHVrpgwZZIVENU15pRDVTI0= +github.com/aws/aws-sdk-go-v2/service/sts v1.38.9 h1:Ekml5vGg6sHSZLZJQJagefnVe6PmqC2oiRkBq4F7fU0= +github.com/aws/aws-sdk-go-v2/service/sts v1.38.9/go.mod h1:/e15V+o1zFHWdH3u7lpI3rVBcxszktIKuHKCY2/py+k= github.com/aws/smithy-go v1.23.1 h1:sLvcH6dfAFwGkHLZ7dGiYF7aK6mg4CgKA/iDKjLDt9M= github.com/aws/smithy-go v1.23.1/go.mod h1:LEj2LM3rBRQJxPZTB4KuzZkaZYnZPnvgIhb4pu07mx0= github.com/beevik/etree v1.6.0 h1:u8Kwy8pp9D9XeITj2Z0XtA5qqZEmtJtuXZRQi+j03eE= @@ -110,8 +110,8 @@ github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfU github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/go-jose/go-jose/v4 v4.1.1 h1:JYhSgy4mXXzAdF3nUx3ygx347LRXJRrpgyU3adRmkAI= -github.com/go-jose/go-jose/v4 v4.1.1/go.mod h1:BdsZGqgdO3b6tTc6LSE56wcDbMMLuPsw5d4ZD5f94kA= +github.com/go-jose/go-jose/v4 v4.1.2 h1:TK/7NqRQZfgAh+Td8AlsrvtPoUyiHh0LqVvokh+1vHI= +github.com/go-jose/go-jose/v4 v4.1.2/go.mod h1:22cg9HWM1pOlnRiY+9cQYJ9XHmya1bYW8OeDM6Ku6Oo= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI= github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= @@ -208,20 +208,20 @@ golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ= golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/text v0.30.0 h1:yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k= golang.org/x/text v0.30.0/go.mod h1:yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM= -golang.org/x/time v0.13.0 h1:eUlYslOIt32DgYD6utsuUeHs4d7AsEYLuIAdg7FlYgI= -golang.org/x/time v0.13.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4= +golang.org/x/time v0.14.0 h1:MRx4UaLrDotUKUdCIqzPC48t1Y9hANFKIRpNx+Te8PI= +golang.org/x/time v0.14.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4= gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk= gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E= -google.golang.org/api v0.252.0 h1:xfKJeAJaMwb8OC9fesr369rjciQ704AjU/psjkKURSI= -google.golang.org/api v0.252.0/go.mod h1:dnHOv81x5RAmumZ7BWLShB/u7JZNeyalImxHmtTHxqw= +google.golang.org/api v0.253.0 h1:apU86Eq9Q2eQco3NsUYFpVTfy7DwemojL7LmbAj7g/I= +google.golang.org/api v0.253.0/go.mod h1:PX09ad0r/4du83vZVAaGg7OaeyGnaUmT/CYPNvtLCbw= google.golang.org/genproto v0.0.0-20250603155806-513f23925822 h1:rHWScKit0gvAPuOnu87KpaYtjK5zBMLcULh7gxkCXu4= google.golang.org/genproto v0.0.0-20250603155806-513f23925822/go.mod h1:HubltRL7rMh0LfnQPkMH4NPDFEWp0jw3vixw7jEM53s= google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c h1:AtEkQdl5b6zsybXcbz00j1LwNodDuH6hVifIaNqk7NQ= google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c/go.mod h1:ea2MjsO70ssTfCjiwHgI0ZFqcw45Ksuk2ckf9G468GA= -google.golang.org/genproto/googleapis/rpc v0.0.0-20251002232023-7c0ddcbb5797 h1:CirRxTOwnRWVLKzDNrs0CXAaVozJoR4G9xvdRecrdpk= -google.golang.org/genproto/googleapis/rpc v0.0.0-20251002232023-7c0ddcbb5797/go.mod h1:HSkG/KdJWusxU1F6CNrwNDjBMgisKxGnc5dAZfT0mjQ= -google.golang.org/grpc v1.75.1 h1:/ODCNEuf9VghjgO3rqLcfg8fiOP0nSluljWFlDxELLI= -google.golang.org/grpc v1.75.1/go.mod h1:JtPAzKiq4v1xcAB2hydNlWI2RnF85XXcV0mhKXr2ecQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20251014184007-4626949a642f h1:1FTH6cpXFsENbPR5Bu8NQddPSaUUE6NA2XdZdDSAJK4= +google.golang.org/genproto/googleapis/rpc v0.0.0-20251014184007-4626949a642f/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk= +google.golang.org/grpc v1.76.0 h1:UnVkv1+uMLYXoIz6o7chp59WfQUYA2ex/BXQ9rHZu7A= +google.golang.org/grpc v1.76.0/go.mod h1:Ju12QI8M6iQJtbcsV+awF5a4hfJMLi4X0JLo94ULZ6c= google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE= google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go index b764a3052..a757bc867 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go @@ -3,4 +3,4 @@ package aws // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.39.3" +const goModuleVersion = "1.39.4" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/CHANGELOG.md index 60f64b44b..0b37f73f0 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.18.11 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.18.10 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/go_module_metadata.go index 2f6b3855f..25c8942b4 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/go_module_metadata.go @@ -3,4 +3,4 @@ package imds // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.18.10" +const goModuleVersion = "1.18.11" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/CHANGELOG.md index 41e5784dc..8224d5f83 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/CHANGELOG.md @@ -1,3 +1,11 @@ +# v1.19.15 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + +# v1.19.14 (2025-10-22) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.19.13 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/go_module_metadata.go index 1d30963f3..b507a2cca 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/go_module_metadata.go @@ -3,4 +3,4 @@ package manager // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.19.13" +const goModuleVersion = "1.19.15" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/CHANGELOG.md index bd0f4ff6d..475f2d049 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.4.11 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.4.10 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go index 68ad88d93..76e922fc6 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go @@ -3,4 +3,4 @@ package configsources // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.4.10" +const goModuleVersion = "1.4.11" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.go b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.go index 6ad5df646..6ab4d9669 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.go @@ -386,6 +386,13 @@ var partitions = []Partition{ SupportsFIPS: nil, SupportsDualStack: nil, }, + "us-isob-west-1": { + Name: nil, + DnsSuffix: nil, + DualStackDnsSuffix: nil, + SupportsFIPS: nil, + SupportsDualStack: nil, + }, }, }, { diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.json b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.json index b346b0be9..c789264d2 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.json +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/partitions.json @@ -194,6 +194,9 @@ }, "us-isob-east-1" : { "description" : "US ISOB East (Ohio)" + }, + "us-isob-west-1" : { + "description" : "US ISOB West" } } }, { diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/CHANGELOG.md index 0a6cca152..fd5337d71 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/CHANGELOG.md @@ -1,3 +1,7 @@ +# v2.7.11 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v2.7.10 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go index 055496cea..bc0f5b1da 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go @@ -3,4 +3,4 @@ package endpoints // goModuleVersion is the tagged release for this module -const goModuleVersion = "2.7.10" +const goModuleVersion = "2.7.11" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/CHANGELOG.md index 5cc526e18..4c32458f6 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.4.11 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.4.10 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/go_module_metadata.go index 3dd83cb45..365c5ab26 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/go_module_metadata.go @@ -3,4 +3,4 @@ package v4a // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.4.10" +const goModuleVersion = "1.4.11" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/CHANGELOG.md index b0d3c6676..9d150c8b0 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.9.2 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.9.1 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/go_module_metadata.go index 0fc2585b9..f3e8ea016 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/go_module_metadata.go @@ -3,4 +3,4 @@ package checksum // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.9.1" +const goModuleVersion = "1.9.2" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md index 9f70bffbb..c36d9738c 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.13.11 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.13.10 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go index 021167d0e..3f922cca1 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go @@ -3,4 +3,4 @@ package presignedurl // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.13.10" +const goModuleVersion = "1.13.11" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md index 3df295509..54c81c58e 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.19.11 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + # v1.19.10 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go index 863498224..5259d7676 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go @@ -3,4 +3,4 @@ package s3shared // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.19.10" +const goModuleVersion = "1.19.11" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md index 066d08ff7..577d4954e 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md @@ -1,3 +1,11 @@ +# v1.88.7 (2025-10-23) + +* **Dependency Update**: Updated to the latest SDK module versions + +# v1.88.6 (2025-10-22) + +* No change notes available for this release. + # v1.88.5 (2025-10-16) * **Dependency Update**: Bump minimum Go version to 1.23. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go index 304f0731b..391ea3968 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go @@ -3,4 +3,4 @@ package s3 // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.88.5" +const goModuleVersion = "1.88.7" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints/endpoints.go b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints/endpoints.go index 2541f39d6..c4e240203 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints/endpoints.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints/endpoints.go @@ -820,6 +820,9 @@ var defaultPartitions = endpoints.Partitions{ }: { Hostname: "s3-fips.us-isob-east-1.sc2s.sgov.gov", }, + endpoints.EndpointKey{ + Region: "us-isob-west-1", + }: endpoints.Endpoint{}, }, }, { diff --git a/vendor/github.com/go-jose/go-jose/v4/CHANGELOG.md b/vendor/github.com/go-jose/go-jose/v4/CHANGELOG.md deleted file mode 100644 index 66a8a0f89..000000000 --- a/vendor/github.com/go-jose/go-jose/v4/CHANGELOG.md +++ /dev/null @@ -1,101 +0,0 @@ -## Changed - - - Defined a custom error, ErrUnexpectedSignatureAlgorithm, returned when a JWS - header contains an unsupported signature algorithm. - -# v4.0.4 - -## Fixed - - - Reverted "Allow unmarshalling JSONWebKeySets with unsupported key types" as a - breaking change. See #136 / #137. - -# v4.0.3 - -## Changed - - - Allow unmarshalling JSONWebKeySets with unsupported key types (#130) - - Document that OpaqueKeyEncrypter can't be implemented (for now) (#129) - - Dependency updates - -# v4.0.2 - -## Changed - - - Improved documentation of Verify() to note that JSONWebKeySet is a supported - argument type (#104) - - Defined exported error values for missing x5c header and unsupported elliptic - curves error cases (#117) - -# v4.0.1 - -## Fixed - - - An attacker could send a JWE containing compressed data that used large - amounts of memory and CPU when decompressed by `Decrypt` or `DecryptMulti`. - Those functions now return an error if the decompressed data would exceed - 250kB or 10x the compressed size (whichever is larger). Thanks to - Enze Wang@Alioth and Jianjun Chen@Zhongguancun Lab (@zer0yu and @chenjj) - for reporting. - -# v4.0.0 - -This release makes some breaking changes in order to more thoroughly -address the vulnerabilities discussed in [Three New Attacks Against JSON Web -Tokens][1], "Sign/encrypt confusion", "Billion hash attack", and "Polyglot -token". - -## Changed - - - Limit JWT encryption types (exclude password or public key types) (#78) - - Enforce minimum length for HMAC keys (#85) - - jwt: match any audience in a list, rather than requiring all audiences (#81) - - jwt: accept only Compact Serialization (#75) - - jws: Add expected algorithms for signatures (#74) - - Require specifying expected algorithms for ParseEncrypted, - ParseSigned, ParseDetached, jwt.ParseEncrypted, jwt.ParseSigned, - jwt.ParseSignedAndEncrypted (#69, #74) - - Usually there is a small, known set of appropriate algorithms for a program - to use and it's a mistake to allow unexpected algorithms. For instance the - "billion hash attack" relies in part on programs accepting the PBES2 - encryption algorithm and doing the necessary work even if they weren't - specifically configured to allow PBES2. - - Revert "Strip padding off base64 strings" (#82) - - The specs require base64url encoding without padding. - - Minimum supported Go version is now 1.21 - -## Added - - - ParseSignedCompact, ParseSignedJSON, ParseEncryptedCompact, ParseEncryptedJSON. - - These allow parsing a specific serialization, as opposed to ParseSigned and - ParseEncrypted, which try to automatically detect which serialization was - provided. It's common to require a specific serialization for a specific - protocol - for instance JWT requires Compact serialization. - -[1]: https://i.blackhat.com/BH-US-23/Presentations/US-23-Tervoort-Three-New-Attacks-Against-JSON-Web-Tokens.pdf - -# v3.0.2 - -## Fixed - - - DecryptMulti: handle decompression error (#19) - -## Changed - - - jwe/CompactSerialize: improve performance (#67) - - Increase the default number of PBKDF2 iterations to 600k (#48) - - Return the proper algorithm for ECDSA keys (#45) - -## Added - - - Add Thumbprint support for opaque signers (#38) - -# v3.0.1 - -## Fixed - - - Security issue: an attacker specifying a large "p2c" value can cause - JSONWebEncryption.Decrypt and JSONWebEncryption.DecryptMulti to consume large - amounts of CPU, causing a DoS. Thanks to Matt Schwager (@mschwager) for the - disclosure and to Tom Tervoort for originally publishing the category of attack. - https://i.blackhat.com/BH-US-23/Presentations/US-23-Tervoort-Three-New-Attacks-Against-JSON-Web-Tokens.pdf diff --git a/vendor/github.com/go-jose/go-jose/v4/README.md b/vendor/github.com/go-jose/go-jose/v4/README.md index 02b574954..ca5f1d790 100644 --- a/vendor/github.com/go-jose/go-jose/v4/README.md +++ b/vendor/github.com/go-jose/go-jose/v4/README.md @@ -3,7 +3,6 @@ [![godoc](https://pkg.go.dev/badge/github.com/go-jose/go-jose/v4.svg)](https://pkg.go.dev/github.com/go-jose/go-jose/v4) [![godoc](https://pkg.go.dev/badge/github.com/go-jose/go-jose/v4/jwt.svg)](https://pkg.go.dev/github.com/go-jose/go-jose/v4/jwt) [![license](https://img.shields.io/badge/license-apache_2.0-blue.svg?style=flat)](https://raw.githubusercontent.com/go-jose/go-jose/master/LICENSE) -[![test](https://img.shields.io/github/checks-status/go-jose/go-jose/v4)](https://github.com/go-jose/go-jose/actions) Package jose aims to provide an implementation of the Javascript Object Signing and Encryption set of standards. This includes support for JSON Web Encryption, @@ -29,17 +28,20 @@ libraries in other languages. ### Versions -[Version 4](https://github.com/go-jose/go-jose) -([branch](https://github.com/go-jose/go-jose/tree/main), -[doc](https://pkg.go.dev/github.com/go-jose/go-jose/v4), [releases](https://github.com/go-jose/go-jose/releases)) is the current stable version: +The forthcoming Version 5 will be released with several breaking API changes, +and will require Golang's `encoding/json/v2`, which is currently requires +Go 1.25 built with GOEXPERIMENT=jsonv2. + +Version 4 is the current stable version: import "github.com/go-jose/go-jose/v4" -The old [square/go-jose](https://github.com/square/go-jose) repo contains the prior v1 and v2 versions, which -are still useable but not actively developed anymore. +It supports at least the current and previous Golang release. Currently it +requires Golang 1.23. + +Version 3 is only receiving critical security updates. Migration to Version 4 is recommended. -Version 3, in this repo, is still receiving security fixes but not functionality -updates. +Versions 1 and 2 are obsolete, but can be found in the old repository, [square/go-jose](https://github.com/square/go-jose). ### Supported algorithms @@ -47,36 +49,36 @@ See below for a table of supported algorithms. Algorithm identifiers match the names in the [JSON Web Algorithms](https://dx.doi.org/10.17487/RFC7518) standard where possible. The Godoc reference has a list of constants. - Key encryption | Algorithm identifier(s) - :------------------------- | :------------------------------ - RSA-PKCS#1v1.5 | RSA1_5 - RSA-OAEP | RSA-OAEP, RSA-OAEP-256 - AES key wrap | A128KW, A192KW, A256KW - AES-GCM key wrap | A128GCMKW, A192GCMKW, A256GCMKW - ECDH-ES + AES key wrap | ECDH-ES+A128KW, ECDH-ES+A192KW, ECDH-ES+A256KW - ECDH-ES (direct) | ECDH-ES1 - Direct encryption | dir1 +| Key encryption | Algorithm identifier(s) | +|:-----------------------|:-----------------------------------------------| +| RSA-PKCS#1v1.5 | RSA1_5 | +| RSA-OAEP | RSA-OAEP, RSA-OAEP-256 | +| AES key wrap | A128KW, A192KW, A256KW | +| AES-GCM key wrap | A128GCMKW, A192GCMKW, A256GCMKW | +| ECDH-ES + AES key wrap | ECDH-ES+A128KW, ECDH-ES+A192KW, ECDH-ES+A256KW | +| ECDH-ES (direct) | ECDH-ES1 | +| Direct encryption | dir1 | 1. Not supported in multi-recipient mode - Signing / MAC | Algorithm identifier(s) - :------------------------- | :------------------------------ - RSASSA-PKCS#1v1.5 | RS256, RS384, RS512 - RSASSA-PSS | PS256, PS384, PS512 - HMAC | HS256, HS384, HS512 - ECDSA | ES256, ES384, ES512 - Ed25519 | EdDSA2 +| Signing / MAC | Algorithm identifier(s) | +|:------------------|:------------------------| +| RSASSA-PKCS#1v1.5 | RS256, RS384, RS512 | +| RSASSA-PSS | PS256, PS384, PS512 | +| HMAC | HS256, HS384, HS512 | +| ECDSA | ES256, ES384, ES512 | +| Ed25519 | EdDSA2 | 2. Only available in version 2 of the package - Content encryption | Algorithm identifier(s) - :------------------------- | :------------------------------ - AES-CBC+HMAC | A128CBC-HS256, A192CBC-HS384, A256CBC-HS512 - AES-GCM | A128GCM, A192GCM, A256GCM +| Content encryption | Algorithm identifier(s) | +|:-------------------|:--------------------------------------------| +| AES-CBC+HMAC | A128CBC-HS256, A192CBC-HS384, A256CBC-HS512 | +| AES-GCM | A128GCM, A192GCM, A256GCM | - Compression | Algorithm identifiers(s) - :------------------------- | ------------------------------- - DEFLATE (RFC 1951) | DEF +| Compression | Algorithm identifiers(s) | +|:-------------------|--------------------------| +| DEFLATE (RFC 1951) | DEF | ### Supported key types @@ -85,12 +87,12 @@ library, and can be passed to corresponding functions such as `NewEncrypter` or `NewSigner`. Each of these keys can also be wrapped in a JWK if desired, which allows attaching a key id. - Algorithm(s) | Corresponding types - :------------------------- | ------------------------------- - RSA | *[rsa.PublicKey](https://pkg.go.dev/crypto/rsa/#PublicKey), *[rsa.PrivateKey](https://pkg.go.dev/crypto/rsa/#PrivateKey) - ECDH, ECDSA | *[ecdsa.PublicKey](https://pkg.go.dev/crypto/ecdsa/#PublicKey), *[ecdsa.PrivateKey](https://pkg.go.dev/crypto/ecdsa/#PrivateKey) - EdDSA1 | [ed25519.PublicKey](https://pkg.go.dev/crypto/ed25519#PublicKey), [ed25519.PrivateKey](https://pkg.go.dev/crypto/ed25519#PrivateKey) - AES, HMAC | []byte +| Algorithm(s) | Corresponding types | +|:------------------|--------------------------------------------------------------------------------------------------------------------------------------| +| RSA | *[rsa.PublicKey](https://pkg.go.dev/crypto/rsa/#PublicKey), *[rsa.PrivateKey](https://pkg.go.dev/crypto/rsa/#PrivateKey) | +| ECDH, ECDSA | *[ecdsa.PublicKey](https://pkg.go.dev/crypto/ecdsa/#PublicKey), *[ecdsa.PrivateKey](https://pkg.go.dev/crypto/ecdsa/#PrivateKey) | +| EdDSA1 | [ed25519.PublicKey](https://pkg.go.dev/crypto/ed25519#PublicKey), [ed25519.PrivateKey](https://pkg.go.dev/crypto/ed25519#PrivateKey) | +| AES, HMAC | []byte | 1. Only available in version 2 or later of the package diff --git a/vendor/github.com/go-jose/go-jose/v4/crypter.go b/vendor/github.com/go-jose/go-jose/v4/crypter.go index d81b03b44..ab02a28e2 100644 --- a/vendor/github.com/go-jose/go-jose/v4/crypter.go +++ b/vendor/github.com/go-jose/go-jose/v4/crypter.go @@ -286,6 +286,10 @@ func makeJWERecipient(alg KeyAlgorithm, encryptionKey interface{}) (recipientKey return newSymmetricRecipient(alg, encryptionKey) case string: return newSymmetricRecipient(alg, []byte(encryptionKey)) + case JSONWebKey: + recipient, err := makeJWERecipient(alg, encryptionKey.Key) + recipient.keyID = encryptionKey.KeyID + return recipient, err case *JSONWebKey: recipient, err := makeJWERecipient(alg, encryptionKey.Key) recipient.keyID = encryptionKey.KeyID diff --git a/vendor/github.com/go-jose/go-jose/v4/jwk.go b/vendor/github.com/go-jose/go-jose/v4/jwk.go index 9700f8906..164d6a161 100644 --- a/vendor/github.com/go-jose/go-jose/v4/jwk.go +++ b/vendor/github.com/go-jose/go-jose/v4/jwk.go @@ -175,6 +175,8 @@ func (k JSONWebKey) MarshalJSON() ([]byte, error) { } // UnmarshalJSON reads a key from its JSON representation. +// +// Returns ErrUnsupportedKeyType for unrecognized or unsupported "kty" header values. func (k *JSONWebKey) UnmarshalJSON(data []byte) (err error) { var raw rawJSONWebKey err = json.Unmarshal(data, &raw) @@ -228,7 +230,7 @@ func (k *JSONWebKey) UnmarshalJSON(data []byte) (err error) { } key, err = raw.symmetricKey() case "OKP": - if raw.Crv == "Ed25519" && raw.X != nil { + if raw.Crv == "Ed25519" { if raw.D != nil { key, err = raw.edPrivateKey() if err == nil { @@ -238,17 +240,27 @@ func (k *JSONWebKey) UnmarshalJSON(data []byte) (err error) { key, err = raw.edPublicKey() keyPub = key } - } else { - return fmt.Errorf("go-jose/go-jose: unknown curve '%s'", raw.Crv) } - default: - return fmt.Errorf("go-jose/go-jose: unknown json web key type '%s'", raw.Kty) + case "": + // kty MUST be present + err = fmt.Errorf("go-jose/go-jose: missing json web key type") } if err != nil { return } + if key == nil { + // RFC 7517: + // 5. JWK Set Format + // ... + // Implementations SHOULD ignore JWKs within a JWK Set that use "kty" + // (key type) values that are not understood by them, that are missing + // required members, or for which values are out of the supported + // ranges. + return ErrUnsupportedKeyType + } + if certPub != nil && keyPub != nil { if !reflect.DeepEqual(certPub, keyPub) { return errors.New("go-jose/go-jose: invalid JWK, public keys in key and x5c fields do not match") @@ -581,10 +593,10 @@ func fromEcPublicKey(pub *ecdsa.PublicKey) (*rawJSONWebKey, error) { func (key rawJSONWebKey) edPrivateKey() (ed25519.PrivateKey, error) { var missing []string - switch { - case key.D == nil: + if key.D == nil { missing = append(missing, "D") - case key.X == nil: + } + if key.X == nil { missing = append(missing, "X") } @@ -611,19 +623,21 @@ func (key rawJSONWebKey) edPublicKey() (ed25519.PublicKey, error) { func (key rawJSONWebKey) rsaPrivateKey() (*rsa.PrivateKey, error) { var missing []string - switch { - case key.N == nil: + if key.N == nil { missing = append(missing, "N") - case key.E == nil: + } + if key.E == nil { missing = append(missing, "E") - case key.D == nil: + } + if key.D == nil { missing = append(missing, "D") - case key.P == nil: + } + if key.P == nil { missing = append(missing, "P") - case key.Q == nil: + } + if key.Q == nil { missing = append(missing, "Q") } - if len(missing) > 0 { return nil, fmt.Errorf("go-jose/go-jose: invalid RSA private key, missing %s value(s)", strings.Join(missing, ", ")) } @@ -698,8 +712,19 @@ func (key rawJSONWebKey) ecPrivateKey() (*ecdsa.PrivateKey, error) { return nil, fmt.Errorf("go-jose/go-jose: unsupported elliptic curve '%s'", key.Crv) } - if key.X == nil || key.Y == nil || key.D == nil { - return nil, fmt.Errorf("go-jose/go-jose: invalid EC private key, missing x/y/d values") + var missing []string + if key.X == nil { + missing = append(missing, "X") + } + if key.Y == nil { + missing = append(missing, "Y") + } + if key.D == nil { + missing = append(missing, "D") + } + + if len(missing) > 0 { + return nil, fmt.Errorf("go-jose/go-jose: invalid EC private key, missing %s value(s)", strings.Join(missing, ", ")) } // The length of this octet string MUST be the full size of a coordinate for diff --git a/vendor/github.com/go-jose/go-jose/v4/shared.go b/vendor/github.com/go-jose/go-jose/v4/shared.go index 1ec339612..56a81b258 100644 --- a/vendor/github.com/go-jose/go-jose/v4/shared.go +++ b/vendor/github.com/go-jose/go-jose/v4/shared.go @@ -22,7 +22,6 @@ import ( "encoding/base64" "errors" "fmt" - "github.com/go-jose/go-jose/v4/json" ) diff --git a/vendor/golang.org/x/time/rate/rate.go b/vendor/golang.org/x/time/rate/rate.go index 794b2e32b..563270c15 100644 --- a/vendor/golang.org/x/time/rate/rate.go +++ b/vendor/golang.org/x/time/rate/rate.go @@ -195,7 +195,7 @@ func (r *Reservation) CancelAt(t time.Time) { // update state r.lim.last = t r.lim.tokens = tokens - if r.timeToAct == r.lim.lastEvent { + if r.timeToAct.Equal(r.lim.lastEvent) { prevEvent := r.timeToAct.Add(r.limit.durationFromTokens(float64(-r.tokens))) if !prevEvent.Before(t) { r.lim.lastEvent = prevEvent diff --git a/vendor/google.golang.org/api/internal/version.go b/vendor/google.golang.org/api/internal/version.go index 6646bbcbf..7c9c3bda1 100644 --- a/vendor/google.golang.org/api/internal/version.go +++ b/vendor/google.golang.org/api/internal/version.go @@ -5,4 +5,4 @@ package internal // Version is the current tagged release of the library. -const Version = "0.252.0" +const Version = "0.253.0" diff --git a/vendor/google.golang.org/grpc/CONTRIBUTING.md b/vendor/google.golang.org/grpc/CONTRIBUTING.md index 1de0ce666..2079de7b0 100644 --- a/vendor/google.golang.org/grpc/CONTRIBUTING.md +++ b/vendor/google.golang.org/grpc/CONTRIBUTING.md @@ -33,17 +33,21 @@ guidelines, there may be valid reasons to do so, but it should be rare. ## Guidelines for Pull Requests -How to get your contributions merged smoothly and quickly: +Please read the following carefully to ensure your contributions can be merged +smoothly and quickly. + +### PR Contents - Create **small PRs** that are narrowly focused on **addressing a single concern**. We often receive PRs that attempt to fix several things at the same time, and if one part of the PR has a problem, that will hold up the entire PR. -- For **speculative changes**, consider opening an issue and discussing it - first. If you are suggesting a behavioral or API change, consider starting - with a [gRFC proposal](https://github.com/grpc/proposal). Many new features - that are not bug fixes will require cross-language agreement. +- If your change does not address an **open issue** with an **agreed + resolution**, consider opening an issue and discussing it first. If you are + suggesting a behavioral or API change, consider starting with a [gRFC + proposal](https://github.com/grpc/proposal). Many new features that are not + bug fixes will require cross-language agreement. - If you want to fix **formatting or style**, consider whether your changes are an obvious improvement or might be considered a personal preference. If a @@ -56,16 +60,6 @@ How to get your contributions merged smoothly and quickly: often written as "iff". Please do not make spelling correction changes unless you are certain they are misspellings. -- Provide a good **PR description** as a record of **what** change is being made - and **why** it was made. Link to a GitHub issue if it exists. - -- Maintain a **clean commit history** and use **meaningful commit messages**. - PRs with messy commit histories are difficult to review and won't be merged. - Before sending your PR, ensure your changes are based on top of the latest - `upstream/master` commits, and avoid rebasing in the middle of a code review. - You should **never use `git push -f`** unless absolutely necessary during a - review, as it can interfere with GitHub's tracking of comments. - - **All tests need to be passing** before your change can be merged. We recommend you run tests locally before creating your PR to catch breakages early on: @@ -81,15 +75,80 @@ How to get your contributions merged smoothly and quickly: GitHub, which will trigger a GitHub Actions run that you can use to verify everything is passing. -- If you are adding a new file, make sure it has the **copyright message** +- Note that there are two GitHub actions checks that need not be green: + + 1. We test the freshness of the generated proto code we maintain via the + `vet-proto` check. If the source proto files are updated, but our repo is + not updated, an optional checker will fail. This will be fixed by our team + in a separate PR and will not prevent the merge of your PR. + + 2. We run a checker that will fail if there is any change in dependencies of + an exported package via the `dependencies` check. If new dependencies are + added that are not appropriate, we may not accept your PR (see below). + +- If you are adding a **new file**, make sure it has the **copyright message** template at the top as a comment. You can copy the message from an existing file and update the year. - The grpc package should only depend on standard Go packages and a small number of exceptions. **If your contribution introduces new dependencies**, you will - need a discussion with gRPC-Go maintainers. A GitHub action check will run on - every PR, and will flag any transitive dependency changes from any public - package. + need a discussion with gRPC-Go maintainers. + +### PR Descriptions + +- **PR titles** should start with the name of the component being addressed, or + the type of change. Examples: transport, client, server, round_robin, xds, + cleanup, deps. + +- Read and follow the **guidelines for PR titles and descriptions** here: + https://google.github.io/eng-practices/review/developer/cl-descriptions.html + + *particularly* the sections "First Line" and "Body is Informative". + + Note: your PR description will be used as the git commit message in a + squash-and-merge if your PR is approved. We may make changes to this as + necessary. + +- **Does this PR relate to an open issue?** On the first line, please use the + tag `Fixes #` to ensure the issue is closed when the PR is merged. Or + use `Updates #` if the PR is related to an open issue, but does not fix + it. Consider filing an issue if one does not already exist. + +- PR descriptions *must* conclude with **release notes** as follows: + + ``` + RELEASE NOTES: + * : + ``` + + This need not match the PR title. + + The summary must: + + * be something that gRPC users will understand. + + * clearly explain the feature being added, the issue being fixed, or the + behavior being changed, etc. If fixing a bug, be clear about how the bug + can be triggered by an end-user. + + * begin with a capital letter and use complete sentences. + + * be as short as possible to describe the change being made. + + If a PR is *not* end-user visible -- e.g. a cleanup, testing change, or + GitHub-related, use `RELEASE NOTES: n/a`. + +### PR Process + +- Please **self-review** your code changes before sending your PR. This will + prevent simple, obvious errors from causing delays. + +- Maintain a **clean commit history** and use **meaningful commit messages**. + PRs with messy commit histories are difficult to review and won't be merged. + Before sending your PR, ensure your changes are based on top of the latest + `upstream/master` commits, and avoid rebasing in the middle of a code review. + You should **never use `git push -f`** unless absolutely necessary during a + review, as it can interfere with GitHub's tracking of comments. - Unless your PR is trivial, you should **expect reviewer comments** that you will need to address before merging. We'll label the PR as `Status: Requires @@ -98,5 +157,3 @@ How to get your contributions merged smoothly and quickly: `stale`, and we will automatically close it after 7 days if we don't hear back from you. Please feel free to ping issues or bugs if you do not get a response within a week. - -- Exceptions to the rules can be made if there's a compelling reason to do so. diff --git a/vendor/google.golang.org/grpc/balancer/grpclb/grpclb_remote_balancer.go b/vendor/google.golang.org/grpc/balancer/grpclb/grpclb_remote_balancer.go index f2df56120..002052120 100644 --- a/vendor/google.golang.org/grpc/balancer/grpclb/grpclb_remote_balancer.go +++ b/vendor/google.golang.org/grpc/balancer/grpclb/grpclb_remote_balancer.go @@ -82,14 +82,8 @@ func (lb *lbBalancer) processServerList(l *lbpb.ServerList) { } md := metadata.Pairs(lbTokenKey, s.LoadBalanceToken) - ip := net.IP(s.IpAddress) - ipStr := ip.String() - if ip.To4() == nil { - // Add square brackets to ipv6 addresses, otherwise net.Dial() and - // net.SplitHostPort() will return too many colons error. - ipStr = fmt.Sprintf("[%s]", ipStr) - } - addr := imetadata.Set(resolver.Address{Addr: fmt.Sprintf("%s:%d", ipStr, s.Port)}, md) + ipStr := net.IP(s.IpAddress).String() + addr := imetadata.Set(resolver.Address{Addr: net.JoinHostPort(ipStr, fmt.Sprintf("%d", s.Port))}, md) if lb.logger.V(2) { lb.logger.Infof("Server list entry:|%d|, ipStr:|%s|, port:|%d|, load balancer token:|%v|", i, ipStr, s.Port, s.LoadBalanceToken) } diff --git a/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirst.go b/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirst.go index ea8899818..b15c10e46 100644 --- a/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirst.go +++ b/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirst.go @@ -169,7 +169,7 @@ func (b *pickfirstBalancer) UpdateClientConnState(state balancer.ClientConnState addrs = state.ResolverState.Addresses if cfg.ShuffleAddressList { addrs = append([]resolver.Address{}, addrs...) - rand.Shuffle(len(addrs), func(i, j int) { addrs[i], addrs[j] = addrs[j], addrs[i] }) + internal.RandShuffle(len(addrs), func(i, j int) { addrs[i], addrs[j] = addrs[j], addrs[i] }) } } diff --git a/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf/pickfirstleaf.go b/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf/pickfirstleaf.go index 67f315a0d..9ffdd28a0 100644 --- a/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf/pickfirstleaf.go +++ b/vendor/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf/pickfirstleaf.go @@ -283,7 +283,7 @@ func (b *pickfirstBalancer) UpdateClientConnState(state balancer.ClientConnState newAddrs = state.ResolverState.Addresses if cfg.ShuffleAddressList { newAddrs = append([]resolver.Address{}, newAddrs...) - internal.RandShuffle(len(endpoints), func(i, j int) { endpoints[i], endpoints[j] = endpoints[j], endpoints[i] }) + internal.RandShuffle(len(newAddrs), func(i, j int) { newAddrs[i], newAddrs[j] = newAddrs[j], newAddrs[i] }) } } @@ -351,6 +351,13 @@ func (b *pickfirstBalancer) ExitIdle() { b.mu.Lock() defer b.mu.Unlock() if b.state == connectivity.Idle { + // Move the balancer into CONNECTING state immediately. This is done to + // avoid staying in IDLE if a resolver update arrives before the first + // SubConn reports CONNECTING. + b.updateBalancerState(balancer.State{ + ConnectivityState: connectivity.Connecting, + Picker: &picker{err: balancer.ErrNoSubConnAvailable}, + }) b.startFirstPassLocked() } } @@ -604,7 +611,7 @@ func (b *pickfirstBalancer) updateSubConnState(sd *scData, newState balancer.Sub if !b.addressList.seekTo(sd.addr) { // This should not fail as we should have only one SubConn after // entering READY. The SubConn should be present in the addressList. - b.logger.Errorf("Address %q not found address list in %v", sd.addr, b.addressList.addresses) + b.logger.Errorf("Address %q not found address list in %v", sd.addr, b.addressList.addresses) return } if !b.healthCheckingEnabled { diff --git a/vendor/google.golang.org/grpc/clientconn.go b/vendor/google.golang.org/grpc/clientconn.go index 3f762285d..a3c315f2d 100644 --- a/vendor/google.golang.org/grpc/clientconn.go +++ b/vendor/google.golang.org/grpc/clientconn.go @@ -456,7 +456,7 @@ func (cc *ClientConn) validateTransportCredentials() error { func (cc *ClientConn) channelzRegistration(target string) { parentChannel, _ := cc.dopts.channelzParent.(*channelz.Channel) cc.channelz = channelz.RegisterChannel(parentChannel, target) - cc.addTraceEvent("created") + cc.addTraceEvent(fmt.Sprintf("created for target %q", target)) } // chainUnaryClientInterceptors chains all unary client interceptors into one. diff --git a/vendor/google.golang.org/grpc/encoding/proto/proto.go b/vendor/google.golang.org/grpc/encoding/proto/proto.go index ceec319dd..1ab874c7a 100644 --- a/vendor/google.golang.org/grpc/encoding/proto/proto.go +++ b/vendor/google.golang.org/grpc/encoding/proto/proto.go @@ -46,9 +46,25 @@ func (c *codecV2) Marshal(v any) (data mem.BufferSlice, err error) { return nil, fmt.Errorf("proto: failed to marshal, message is %T, want proto.Message", v) } + // Important: if we remove this Size call then we cannot use + // UseCachedSize in MarshalOptions below. size := proto.Size(vv) + + // MarshalOptions with UseCachedSize allows reusing the result from the + // previous Size call. This is safe here because: + // + // 1. We just computed the size. + // 2. We assume the message is not being mutated concurrently. + // + // Important: If the proto.Size call above is removed, using UseCachedSize + // becomes unsafe and may lead to incorrect marshaling. + // + // For more details, see the doc of UseCachedSize: + // https://pkg.go.dev/google.golang.org/protobuf/proto#MarshalOptions + marshalOptions := proto.MarshalOptions{UseCachedSize: true} + if mem.IsBelowBufferPoolingThreshold(size) { - buf, err := proto.Marshal(vv) + buf, err := marshalOptions.Marshal(vv) if err != nil { return nil, err } @@ -56,7 +72,7 @@ func (c *codecV2) Marshal(v any) (data mem.BufferSlice, err error) { } else { pool := mem.DefaultBufferPool() buf := pool.Get(size) - if _, err := (proto.MarshalOptions{}).MarshalAppend((*buf)[:0], vv); err != nil { + if _, err := marshalOptions.MarshalAppend((*buf)[:0], vv); err != nil { pool.Put(buf) return nil, err } diff --git a/vendor/google.golang.org/grpc/internal/buffer/unbounded.go b/vendor/google.golang.org/grpc/internal/buffer/unbounded.go index 11f91668a..467392b8d 100644 --- a/vendor/google.golang.org/grpc/internal/buffer/unbounded.go +++ b/vendor/google.golang.org/grpc/internal/buffer/unbounded.go @@ -83,6 +83,7 @@ func (b *Unbounded) Load() { default: } } else if b.closing && !b.closed { + b.closed = true close(b.c) } } diff --git a/vendor/google.golang.org/grpc/internal/channelz/trace.go b/vendor/google.golang.org/grpc/internal/channelz/trace.go index 2bffe4777..3b7ba5966 100644 --- a/vendor/google.golang.org/grpc/internal/channelz/trace.go +++ b/vendor/google.golang.org/grpc/internal/channelz/trace.go @@ -194,7 +194,7 @@ func (r RefChannelType) String() string { // If channelz is not turned ON, this will simply log the event descriptions. func AddTraceEvent(l grpclog.DepthLoggerV2, e Entity, depth int, desc *TraceEvent) { // Log only the trace description associated with the bottom most entity. - d := fmt.Sprintf("[%s]%s", e, desc.Desc) + d := fmt.Sprintf("[%s] %s", e, desc.Desc) switch desc.Severity { case CtUnknown, CtInfo: l.InfoDepth(depth+1, d) diff --git a/vendor/google.golang.org/grpc/internal/envconfig/xds.go b/vendor/google.golang.org/grpc/internal/envconfig/xds.go index e87551552..b1f883bca 100644 --- a/vendor/google.golang.org/grpc/internal/envconfig/xds.go +++ b/vendor/google.golang.org/grpc/internal/envconfig/xds.go @@ -68,4 +68,10 @@ var ( // trust. For more details, see: // https://github.com/grpc/proposal/blob/master/A87-mtls-spiffe-support.md XDSSPIFFEEnabled = boolFromEnv("GRPC_EXPERIMENTAL_XDS_MTLS_SPIFFE", false) + + // XDSHTTPConnectEnabled is true if gRPC should parse custom Metadata + // configuring use of an HTTP CONNECT proxy via xDS from cluster resources. + // For more details, see: + // https://github.com/grpc/proposal/blob/master/A86-xds-http-connect.md + XDSHTTPConnectEnabled = boolFromEnv("GRPC_EXPERIMENTAL_XDS_HTTP_CONNECT", false) ) diff --git a/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go b/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go index 8e8e86128..9b6d8a1fa 100644 --- a/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go +++ b/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go @@ -80,25 +80,11 @@ func (cs *CallbackSerializer) ScheduleOr(f func(ctx context.Context), onFailure func (cs *CallbackSerializer) run(ctx context.Context) { defer close(cs.done) - // TODO: when Go 1.21 is the oldest supported version, this loop and Close - // can be replaced with: - // - // context.AfterFunc(ctx, cs.callbacks.Close) - for ctx.Err() == nil { - select { - case <-ctx.Done(): - // Do nothing here. Next iteration of the for loop will not happen, - // since ctx.Err() would be non-nil. - case cb := <-cs.callbacks.Get(): - cs.callbacks.Load() - cb.(func(context.Context))(ctx) - } - } - - // Close the buffer to prevent new callbacks from being added. - cs.callbacks.Close() + // Close the buffer when the context is canceled + // to prevent new callbacks from being added. + context.AfterFunc(ctx, cs.callbacks.Close) - // Run all pending callbacks. + // Run all callbacks. for cb := range cs.callbacks.Get() { cs.callbacks.Load() cb.(func(context.Context))(ctx) diff --git a/vendor/google.golang.org/grpc/internal/transport/http2_client.go b/vendor/google.golang.org/grpc/internal/transport/http2_client.go index 5467fe971..7cb238794 100644 --- a/vendor/google.golang.org/grpc/internal/transport/http2_client.go +++ b/vendor/google.golang.org/grpc/internal/transport/http2_client.go @@ -556,6 +556,19 @@ func (t *http2Client) createHeaderFields(ctx context.Context, callHdr *CallHdr) // Make the slice of certain predictable size to reduce allocations made by append. hfLen := 7 // :method, :scheme, :path, :authority, content-type, user-agent, te hfLen += len(authData) + len(callAuthData) + registeredCompressors := t.registeredCompressors + if callHdr.PreviousAttempts > 0 { + hfLen++ + } + if callHdr.SendCompress != "" { + hfLen++ + } + if registeredCompressors != "" { + hfLen++ + } + if _, ok := ctx.Deadline(); ok { + hfLen++ + } headerFields := make([]hpack.HeaderField, 0, hfLen) headerFields = append(headerFields, hpack.HeaderField{Name: ":method", Value: "POST"}) headerFields = append(headerFields, hpack.HeaderField{Name: ":scheme", Value: t.scheme}) @@ -568,7 +581,6 @@ func (t *http2Client) createHeaderFields(ctx context.Context, callHdr *CallHdr) headerFields = append(headerFields, hpack.HeaderField{Name: "grpc-previous-rpc-attempts", Value: strconv.Itoa(callHdr.PreviousAttempts)}) } - registeredCompressors := t.registeredCompressors if callHdr.SendCompress != "" { headerFields = append(headerFields, hpack.HeaderField{Name: "grpc-encoding", Value: callHdr.SendCompress}) // Include the outgoing compressor name when compressor is not registered @@ -1499,13 +1511,6 @@ func (t *http2Client) operateHeaders(frame *http2.MetaHeadersFrame) { case "grpc-message": grpcMessage = decodeGrpcMessage(hf.Value) case ":status": - if hf.Value == "200" { - httpStatusErr = "" - statusCode := 200 - httpStatusCode = &statusCode - break - } - c, err := strconv.ParseInt(hf.Value, 10, 32) if err != nil { se := status.New(codes.Internal, fmt.Sprintf("transport: malformed http-status: %v", err)) @@ -1513,7 +1518,19 @@ func (t *http2Client) operateHeaders(frame *http2.MetaHeadersFrame) { return } statusCode := int(c) + if statusCode >= 100 && statusCode < 200 { + if endStream { + se := status.New(codes.Internal, fmt.Sprintf( + "protocol error: informational header with status code %d must not have END_STREAM set", statusCode)) + t.closeStream(s, se.Err(), true, http2.ErrCodeProtocol, se, nil, endStream) + } + return + } httpStatusCode = &statusCode + if statusCode == 200 { + httpStatusErr = "" + break + } httpStatusErr = fmt.Sprintf( "unexpected HTTP status code received from server: %d (%s)", diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/balancer.go b/vendor/google.golang.org/grpc/internal/xds/balancer/balancer.go similarity index 75% rename from vendor/google.golang.org/grpc/xds/internal/balancer/balancer.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/balancer.go index ff27af026..af3f999a1 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/balancer.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/balancer.go @@ -22,10 +22,10 @@ package balancer import ( _ "google.golang.org/grpc/balancer/leastrequest" // Register the least_request_experimental balancer _ "google.golang.org/grpc/balancer/weightedtarget" // Register the weighted_target balancer - _ "google.golang.org/grpc/xds/internal/balancer/cdsbalancer" // Register the CDS balancer - _ "google.golang.org/grpc/xds/internal/balancer/clusterimpl" // Register the xds_cluster_impl balancer - _ "google.golang.org/grpc/xds/internal/balancer/clustermanager" // Register the xds_cluster_manager balancer - _ "google.golang.org/grpc/xds/internal/balancer/clusterresolver" // Register the xds_cluster_resolver balancer - _ "google.golang.org/grpc/xds/internal/balancer/outlierdetection" // Register the outlier_detection balancer - _ "google.golang.org/grpc/xds/internal/balancer/priority" // Register the priority balancer + _ "google.golang.org/grpc/internal/xds/balancer/cdsbalancer" // Register the CDS balancer + _ "google.golang.org/grpc/internal/xds/balancer/clusterimpl" // Register the xds_cluster_impl balancer + _ "google.golang.org/grpc/internal/xds/balancer/clustermanager" // Register the xds_cluster_manager balancer + _ "google.golang.org/grpc/internal/xds/balancer/clusterresolver" // Register the xds_cluster_resolver balancer + _ "google.golang.org/grpc/internal/xds/balancer/outlierdetection" // Register the outlier_detection balancer + _ "google.golang.org/grpc/internal/xds/balancer/priority" // Register the priority balancer ) diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/cdsbalancer.go b/vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/cdsbalancer.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/cdsbalancer.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/cdsbalancer.go index b413b8acd..0ad77b85e 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/cdsbalancer.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/cdsbalancer.go @@ -35,11 +35,11 @@ import ( "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/grpcsync" "google.golang.org/grpc/internal/pretty" + "google.golang.org/grpc/internal/xds/balancer/clusterresolver" + "google.golang.org/grpc/internal/xds/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/resolver" "google.golang.org/grpc/serviceconfig" - "google.golang.org/grpc/xds/internal/balancer/clusterresolver" - "google.golang.org/grpc/xds/internal/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) const ( diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/cluster_watcher.go b/vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/cluster_watcher.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/cluster_watcher.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/cluster_watcher.go index a9adea0c8..dd702b125 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/cluster_watcher.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/cluster_watcher.go @@ -19,7 +19,7 @@ package cdsbalancer import ( "context" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) // clusterWatcher implements the xdsresource.ClusterWatcher interface, and is diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/logging.go b/vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/cdsbalancer/logging.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/cdsbalancer/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/clusterimpl.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/clusterimpl.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/clusterimpl.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/clusterimpl.go index 006be4c4e..ffe0a3db5 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/clusterimpl.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/clusterimpl.go @@ -38,15 +38,14 @@ import ( "google.golang.org/grpc/internal/balancer/gracefulswitch" "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/pretty" - "google.golang.org/grpc/internal/xds" + xdsinternal "google.golang.org/grpc/internal/xds" + "google.golang.org/grpc/internal/xds/balancer/loadstore" "google.golang.org/grpc/internal/xds/bootstrap" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/lrsclient" + "google.golang.org/grpc/internal/xds/xdsclient" "google.golang.org/grpc/resolver" "google.golang.org/grpc/serviceconfig" - xdsinternal "google.golang.org/grpc/xds/internal" - "google.golang.org/grpc/xds/internal/balancer/loadstore" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/lrsclient" - "google.golang.org/grpc/xds/internal/xdsclient" ) const ( @@ -436,7 +435,7 @@ func (b *clusterImplBalancer) NewSubConn(addrs []resolver.Address, opts balancer clusterName := b.getClusterName() newAddrs := make([]resolver.Address, len(addrs)) for i, addr := range addrs { - newAddrs[i] = xds.SetXDSHandshakeClusterName(addr, clusterName) + newAddrs[i] = xdsinternal.SetXDSHandshakeClusterName(addr, clusterName) } var sc balancer.SubConn scw := &scWrapper{} @@ -475,7 +474,7 @@ func (b *clusterImplBalancer) UpdateAddresses(sc balancer.SubConn, addrs []resol newAddrs := make([]resolver.Address, len(addrs)) var lID clients.Locality for i, addr := range addrs { - newAddrs[i] = xds.SetXDSHandshakeClusterName(addr, clusterName) + newAddrs[i] = xdsinternal.SetXDSHandshakeClusterName(addr, clusterName) lID = xdsinternal.GetLocalityID(newAddrs[i]) } if scw, ok := sc.(*scWrapper); ok { diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/config.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/config.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/config.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/config.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/logging.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/logging.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/picker.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/picker.go similarity index 95% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/picker.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/picker.go index 9ed16ffbe..fab09fa09 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterimpl/picker.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterimpl/picker.go @@ -27,10 +27,10 @@ import ( "google.golang.org/grpc/connectivity" "google.golang.org/grpc/internal/stats" "google.golang.org/grpc/internal/wrr" + xdsinternal "google.golang.org/grpc/internal/xds" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/xdsclient" "google.golang.org/grpc/status" - "google.golang.org/grpc/xds/internal" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/xdsclient" ) // NewRandomWRR is used when calculating drops. It's exported so that tests can @@ -155,7 +155,7 @@ func (d *picker) Pick(info balancer.PickInfo) (balancer.PickResult, error) { } if labels := telemetryLabels(info.Ctx); labels != nil { - labels["grpc.lb.locality"] = internal.LocalityString(lID) + labels["grpc.lb.locality"] = xdsinternal.LocalityString(lID) } if d.loadStore != nil { diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/balancerstateaggregator.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/balancerstateaggregator.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/balancerstateaggregator.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/balancerstateaggregator.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/clustermanager.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/clustermanager.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/clustermanager.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/clustermanager.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/config.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/config.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/config.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/config.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/picker.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/picker.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clustermanager/picker.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clustermanager/picker.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/clusterresolver.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/clusterresolver.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/clusterresolver.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/clusterresolver.go index f9ce57293..f5a30e1ac 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/clusterresolver.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/clusterresolver.go @@ -35,12 +35,12 @@ import ( "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/grpcsync" "google.golang.org/grpc/internal/pretty" + "google.golang.org/grpc/internal/xds/balancer/outlierdetection" + "google.golang.org/grpc/internal/xds/balancer/priority" + "google.golang.org/grpc/internal/xds/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/resolver" "google.golang.org/grpc/serviceconfig" - "google.golang.org/grpc/xds/internal/balancer/outlierdetection" - "google.golang.org/grpc/xds/internal/balancer/priority" - "google.golang.org/grpc/xds/internal/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) // Name is the name of the cluster_resolver balancer. diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/config.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/config.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/config.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/config.go index 7614b0fc5..f3b4c6bf6 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/config.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/config.go @@ -23,9 +23,9 @@ import ( "fmt" internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" + "google.golang.org/grpc/internal/xds/balancer/outlierdetection" "google.golang.org/grpc/internal/xds/bootstrap" "google.golang.org/grpc/serviceconfig" - "google.golang.org/grpc/xds/internal/balancer/outlierdetection" ) // DiscoveryMechanismType is the type of discovery mechanism. diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/configbuilder.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/configbuilder.go similarity index 96% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/configbuilder.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/configbuilder.go index 9c7fed862..3d8e08972 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/configbuilder.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/configbuilder.go @@ -26,14 +26,14 @@ import ( "google.golang.org/grpc/internal/balancer/weight" "google.golang.org/grpc/internal/hierarchy" internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" + xdsinternal "google.golang.org/grpc/internal/xds" + "google.golang.org/grpc/internal/xds/balancer/clusterimpl" + "google.golang.org/grpc/internal/xds/balancer/outlierdetection" + "google.golang.org/grpc/internal/xds/balancer/priority" + "google.golang.org/grpc/internal/xds/balancer/wrrlocality" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/resolver" "google.golang.org/grpc/resolver/ringhash" - "google.golang.org/grpc/xds/internal" - "google.golang.org/grpc/xds/internal/balancer/clusterimpl" - "google.golang.org/grpc/xds/internal/balancer/outlierdetection" - "google.golang.org/grpc/xds/internal/balancer/priority" - "google.golang.org/grpc/xds/internal/balancer/wrrlocality" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) const million = 1000000 @@ -257,7 +257,7 @@ func priorityLocalitiesToClusterImpl(localities []xdsresource.Locality, priority if locality.Weight != 0 { lw = locality.Weight } - localityStr := internal.LocalityString(locality.ID) + localityStr := xdsinternal.LocalityString(locality.ID) for _, endpoint := range locality.Endpoints { // Filter out all "unhealthy" endpoints (unknown and healthy are // both considered to be healthy: @@ -270,7 +270,7 @@ func priorityLocalitiesToClusterImpl(localities []xdsresource.Locality, priority resolverEndpoint.Addresses = append(resolverEndpoint.Addresses, resolver.Address{Addr: as}) } resolverEndpoint = hierarchy.SetInEndpoint(resolverEndpoint, []string{priorityName, localityStr}) - resolverEndpoint = internal.SetLocalityIDInEndpoint(resolverEndpoint, locality.ID) + resolverEndpoint = xdsinternal.SetLocalityIDInEndpoint(resolverEndpoint, locality.ID) // "To provide the xds_wrr_locality load balancer information about // locality weights received from EDS, the cluster resolver will // populate a new locality weight attribute for each address The diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/configbuilder_childname.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/configbuilder_childname.go similarity index 96% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/configbuilder_childname.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/configbuilder_childname.go index bf4e33496..296ed740e 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/configbuilder_childname.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/configbuilder_childname.go @@ -20,8 +20,8 @@ package clusterresolver import ( "fmt" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) // nameGenerator generates a child name for a list of priorities (each priority diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/logging.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/logging.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver.go index c1a656c59..90e950c73 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver.go @@ -24,8 +24,8 @@ import ( "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/grpcsync" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/resolver" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) // resourceUpdate is a combined update from all the resources, in the order of diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver_dns.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver_dns.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver_dns.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver_dns.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver_eds.go b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver_eds.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver_eds.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver_eds.go index 043def950..18b517f11 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/clusterresolver/resource_resolver_eds.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/clusterresolver/resource_resolver_eds.go @@ -23,7 +23,7 @@ import ( "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/grpcsync" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) type edsDiscoveryMechanism struct { diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/loadstore/load_store_wrapper.go b/vendor/google.golang.org/grpc/internal/xds/balancer/loadstore/load_store_wrapper.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/balancer/loadstore/load_store_wrapper.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/loadstore/load_store_wrapper.go index 48a2b7d1e..89d5ad875 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/loadstore/load_store_wrapper.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/loadstore/load_store_wrapper.go @@ -22,8 +22,8 @@ package loadstore import ( "sync" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/lrsclient" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/lrsclient" ) // NewWrapper creates a Wrapper. diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/balancer.go b/vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/balancer.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/balancer.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/balancer.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/callcounter.go b/vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/callcounter.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/callcounter.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/callcounter.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/config.go b/vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/config.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/config.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/config.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/logging.go b/vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/logging.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/subconn_wrapper.go b/vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/subconn_wrapper.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/outlierdetection/subconn_wrapper.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/outlierdetection/subconn_wrapper.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/balancer.go b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/balancer.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/priority/balancer.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/priority/balancer.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/balancer_child.go b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/balancer_child.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/priority/balancer_child.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/priority/balancer_child.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/balancer_priority.go b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/balancer_priority.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/priority/balancer_priority.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/priority/balancer_priority.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/config.go b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/config.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/priority/config.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/priority/config.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/ignore_resolve_now.go b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/ignore_resolve_now.go similarity index 77% rename from vendor/google.golang.org/grpc/xds/internal/balancer/priority/ignore_resolve_now.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/priority/ignore_resolve_now.go index 792ee4b3f..df9ec46c5 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/ignore_resolve_now.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/ignore_resolve_now.go @@ -29,29 +29,21 @@ import ( // ResolveNow() method to ignore those calls if the ignoreResolveNow bit is set. type ignoreResolveNowClientConn struct { balancer.ClientConn - ignoreResolveNow *uint32 + ignoreResolveNow atomic.Bool } func newIgnoreResolveNowClientConn(cc balancer.ClientConn, ignore bool) *ignoreResolveNowClientConn { - ret := &ignoreResolveNowClientConn{ - ClientConn: cc, - ignoreResolveNow: new(uint32), - } + ret := &ignoreResolveNowClientConn{ClientConn: cc} ret.updateIgnoreResolveNow(ignore) return ret } func (i *ignoreResolveNowClientConn) updateIgnoreResolveNow(b bool) { - if b { - atomic.StoreUint32(i.ignoreResolveNow, 1) - return - } - atomic.StoreUint32(i.ignoreResolveNow, 0) - + i.ignoreResolveNow.Store(b) } -func (i ignoreResolveNowClientConn) ResolveNow(o resolver.ResolveNowOptions) { - if atomic.LoadUint32(i.ignoreResolveNow) != 0 { +func (i *ignoreResolveNowClientConn) ResolveNow(o resolver.ResolveNowOptions) { + if i.ignoreResolveNow.Load() { return } i.ClientConn.ResolveNow(o) diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/priority/logging.go b/vendor/google.golang.org/grpc/internal/xds/balancer/priority/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/priority/logging.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/priority/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/wrrlocality/balancer.go b/vendor/google.golang.org/grpc/internal/xds/balancer/wrrlocality/balancer.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/balancer/wrrlocality/balancer.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/wrrlocality/balancer.go index 0c99c108f..b11aaa17e 100644 --- a/vendor/google.golang.org/grpc/xds/internal/balancer/wrrlocality/balancer.go +++ b/vendor/google.golang.org/grpc/internal/xds/balancer/wrrlocality/balancer.go @@ -31,9 +31,9 @@ import ( "google.golang.org/grpc/balancer/weightedtarget" "google.golang.org/grpc/internal/grpclog" internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" + xdsinternal "google.golang.org/grpc/internal/xds" "google.golang.org/grpc/resolver" "google.golang.org/grpc/serviceconfig" - "google.golang.org/grpc/xds/internal" ) // Name is the name of wrr_locality balancer. @@ -171,7 +171,7 @@ func (b *wrrLocalityBalancer) UpdateClientConnState(s balancer.ClientConnState) // shouldn't happen though (this attribute that is set actually gets // used to build localities in the first place), and thus don't error // out, and just build a weighted target with undefined behavior. - locality := internal.LocalityString(internal.GetLocalityID(addr)) + locality := xdsinternal.LocalityString(xdsinternal.GetLocalityID(addr)) ai, ok := getAddrInfo(addr) if !ok { return fmt.Errorf("xds_wrr_locality: missing locality weight information in address %q", addr) diff --git a/vendor/google.golang.org/grpc/xds/internal/balancer/wrrlocality/logging.go b/vendor/google.golang.org/grpc/internal/xds/balancer/wrrlocality/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/balancer/wrrlocality/logging.go rename to vendor/google.golang.org/grpc/internal/xds/balancer/wrrlocality/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/config.go b/vendor/google.golang.org/grpc/internal/xds/clients/config.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/config.go rename to vendor/google.golang.org/grpc/internal/xds/clients/config.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/grpctransport/grpc_transport.go b/vendor/google.golang.org/grpc/internal/xds/clients/grpctransport/grpc_transport.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/clients/grpctransport/grpc_transport.go rename to vendor/google.golang.org/grpc/internal/xds/clients/grpctransport/grpc_transport.go index 2659c301e..841029dc2 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/grpctransport/grpc_transport.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/grpctransport/grpc_transport.go @@ -29,8 +29,8 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/credentials" "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/internal/xds/clients" "google.golang.org/grpc/keepalive" - "google.golang.org/grpc/xds/internal/clients" ) var ( diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/internal/backoff/backoff.go b/vendor/google.golang.org/grpc/internal/xds/clients/internal/backoff/backoff.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/internal/backoff/backoff.go rename to vendor/google.golang.org/grpc/internal/xds/clients/internal/backoff/backoff.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/internal/buffer/unbounded.go b/vendor/google.golang.org/grpc/internal/xds/clients/internal/buffer/unbounded.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/internal/buffer/unbounded.go rename to vendor/google.golang.org/grpc/internal/xds/clients/internal/buffer/unbounded.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/internal/internal.go b/vendor/google.golang.org/grpc/internal/xds/clients/internal/internal.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/clients/internal/internal.go rename to vendor/google.golang.org/grpc/internal/xds/clients/internal/internal.go index 371b4d19d..60cf82b2e 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/internal/internal.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/internal/internal.go @@ -20,7 +20,7 @@ package internal import ( - "google.golang.org/grpc/xds/internal/clients" + "google.golang.org/grpc/internal/xds/clients" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/structpb" diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/internal/pretty/pretty.go b/vendor/google.golang.org/grpc/internal/xds/clients/internal/pretty/pretty.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/internal/pretty/pretty.go rename to vendor/google.golang.org/grpc/internal/xds/clients/internal/pretty/pretty.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/internal/syncutil/callback_serializer.go b/vendor/google.golang.org/grpc/internal/xds/clients/internal/syncutil/callback_serializer.go similarity index 84% rename from vendor/google.golang.org/grpc/xds/internal/clients/internal/syncutil/callback_serializer.go rename to vendor/google.golang.org/grpc/internal/xds/clients/internal/syncutil/callback_serializer.go index 9ad1be517..baab133f2 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/internal/syncutil/callback_serializer.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/internal/syncutil/callback_serializer.go @@ -21,7 +21,7 @@ package syncutil import ( "context" - "google.golang.org/grpc/xds/internal/clients/internal/buffer" + "google.golang.org/grpc/internal/xds/clients/internal/buffer" ) // CallbackSerializer provides a mechanism to schedule callbacks in a @@ -80,25 +80,11 @@ func (cs *CallbackSerializer) ScheduleOr(f func(ctx context.Context), onFailure func (cs *CallbackSerializer) run(ctx context.Context) { defer close(cs.done) - // TODO: when Go 1.21 is the oldest supported version, this loop and Close - // can be replaced with: - // - // context.AfterFunc(ctx, cs.callbacks.Close) - for ctx.Err() == nil { - select { - case <-ctx.Done(): - // Do nothing here. Next iteration of the for loop will not happen, - // since ctx.Err() would be non-nil. - case cb := <-cs.callbacks.Get(): - cs.callbacks.Load() - cb.(func(context.Context))(ctx) - } - } - - // Close the buffer to prevent new callbacks from being added. - cs.callbacks.Close() + // Close the buffer when the context is canceled + // to prevent new callbacks from being added. + context.AfterFunc(ctx, cs.callbacks.Close) - // Run all pending callbacks. + // Run all callbacks. for cb := range cs.callbacks.Get() { cs.callbacks.Load() cb.(func(context.Context))(ctx) diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/internal/syncutil/event.go b/vendor/google.golang.org/grpc/internal/xds/clients/internal/syncutil/event.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/internal/syncutil/event.go rename to vendor/google.golang.org/grpc/internal/xds/clients/internal/syncutil/event.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/internal/internal.go b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/internal/internal.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/internal/internal.go rename to vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/internal/internal.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/load_store.go b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/load_store.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/load_store.go rename to vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/load_store.go index 6b35fd979..fcc6247ed 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/load_store.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/load_store.go @@ -24,8 +24,8 @@ import ( "sync/atomic" "time" - "google.golang.org/grpc/xds/internal/clients" - lrsclientinternal "google.golang.org/grpc/xds/internal/clients/lrsclient/internal" + "google.golang.org/grpc/internal/xds/clients" + lrsclientinternal "google.golang.org/grpc/internal/xds/clients/lrsclient/internal" ) // A LoadStore aggregates loads for multiple clusters and services that are diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/logging.go b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/logging.go rename to vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrs_stream.go b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrs_stream.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrs_stream.go rename to vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrs_stream.go index bb275bdb4..9a95983b0 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrs_stream.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrs_stream.go @@ -27,7 +27,7 @@ import ( "google.golang.org/grpc/internal/backoff" igrpclog "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/pretty" - "google.golang.org/grpc/xds/internal/clients" + "google.golang.org/grpc/internal/xds/clients" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/durationpb" diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrsclient.go b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrsclient.go similarity index 96% rename from vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrsclient.go rename to vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrsclient.go index 21636fd8a..3e4594957 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrsclient.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrsclient.go @@ -30,9 +30,9 @@ import ( "google.golang.org/grpc/grpclog" igrpclog "google.golang.org/grpc/internal/grpclog" - "google.golang.org/grpc/xds/internal/clients" - clientsinternal "google.golang.org/grpc/xds/internal/clients/internal" - "google.golang.org/grpc/xds/internal/clients/internal/backoff" + "google.golang.org/grpc/internal/xds/clients" + clientsinternal "google.golang.org/grpc/internal/xds/clients/internal" + "google.golang.org/grpc/internal/xds/clients/internal/backoff" ) const ( diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrsconfig.go b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrsconfig.go similarity index 95% rename from vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrsconfig.go rename to vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrsconfig.go index c4862ff76..6dde1b46b 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/lrsclient/lrsconfig.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/lrsclient/lrsconfig.go @@ -19,7 +19,7 @@ package lrsclient import ( - "google.golang.org/grpc/xds/internal/clients" + "google.golang.org/grpc/internal/xds/clients" ) // Config is used to configure an LRS client. After one has been passed to the diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/transport_builder.go b/vendor/google.golang.org/grpc/internal/xds/clients/transport_builder.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/transport_builder.go rename to vendor/google.golang.org/grpc/internal/xds/clients/transport_builder.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/ads_stream.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/ads_stream.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/ads_stream.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/ads_stream.go index 9f5e99ac2..83f8a5df0 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/ads_stream.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/ads_stream.go @@ -27,11 +27,11 @@ import ( "google.golang.org/grpc/grpclog" igrpclog "google.golang.org/grpc/internal/grpclog" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/internal/backoff" - "google.golang.org/grpc/xds/internal/clients/internal/buffer" - "google.golang.org/grpc/xds/internal/clients/internal/pretty" - "google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/internal/backoff" + "google.golang.org/grpc/internal/xds/clients/internal/buffer" + "google.golang.org/grpc/internal/xds/clients/internal/pretty" + "google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" @@ -71,7 +71,6 @@ type adsStreamEventHandler interface { onStreamError(error) // Called when the ADS stream breaks. onWatchExpiry(ResourceType, string) // Called when the watch timer expires for a resource. onResponse(response, func()) ([]string, error) // Called when a response is received on the ADS stream. - onRequest(typeURL string) // Called when a request is about to be sent on the ADS stream. } // state corresponding to a resource type. @@ -445,11 +444,6 @@ func (s *adsStreamImpl) sendMessageLocked(stream clients.Stream, names []string, } } - // Call the event handler to remove unsubscribed cache entries. It is to - // ensure the cache entries are deleted even if discovery request fails. In - // case of failure when the stream restarts, nonce is reset anyways. - s.eventHandler.onRequest(url) - msg, err := proto.Marshal(req) if err != nil { s.logger.Warningf("Failed to marshal DiscoveryRequest: %v", err) diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/authority.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/authority.go similarity index 93% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/authority.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/authority.go index f50e0ba5f..49a4480cf 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/authority.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/authority.go @@ -20,16 +20,17 @@ package xdsclient import ( "context" + "errors" "fmt" "sync" "sync/atomic" "google.golang.org/grpc/grpclog" igrpclog "google.golang.org/grpc/internal/grpclog" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/internal/syncutil" - "google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource" - "google.golang.org/grpc/xds/internal/clients/xdsclient/metrics" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/internal/syncutil" + "google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource" + "google.golang.org/grpc/internal/xds/clients/xdsclient/metrics" "google.golang.org/protobuf/types/known/anypb" "google.golang.org/protobuf/types/known/timestamppb" @@ -293,9 +294,6 @@ func (a *authority) fallbackToServer(xc *xdsChannelWithConfig) bool { // Subscribe to all existing resources from the new management server. for typ, resources := range a.resources { for name, state := range resources { - if len(state.watchers) == 0 { - continue - } if a.logger.V(2) { a.logger.Infof("Resubscribing to resource of type %q and name %q", typ.TypeName, name) } @@ -685,17 +683,6 @@ func (a *authority) watchResource(rType ResourceType, resourceName string, watch } resources[resourceName] = state xdsChannel.channel.subscribe(rType, resourceName) - } else if len(state.watchers) == 0 { - if a.logger.V(2) { - a.logger.Infof("Re-watch for type %q, resource name %q before unsubscription", rType.TypeName, resourceName) - } - // Add the active channel to the resource's channel configs if not - // already present. - state.xdsChannelConfigs[xdsChannel] = true - // Ensure the resource is subscribed on the active channel. We do this - // even if resource is present in cache as re-watches might occur - // after unsubscribes or channel changes. - xdsChannel.channel.subscribe(rType, resourceName) } // Always add the new watcher to the set of watchers. state.watchers[watcher] = true @@ -773,16 +760,32 @@ func (a *authority) unwatchResource(rType ResourceType, resourceName string, wat } // There are no more watchers for this resource. Unsubscribe this - // resource from all channels where it was subscribed to but do not - // delete the state associated with it in case the resource is - // re-requested later before un-subscription request is completed by - // the management server. + // resource from all channels where it was subscribed to and delete + // the state associated with it. if a.logger.V(2) { a.logger.Infof("Removing last watch for resource name %q", resourceName) } for xcc := range state.xdsChannelConfigs { xcc.channel.unsubscribe(rType, resourceName) } + delete(resources, resourceName) + + // If there are no more watchers for this resource type, delete the + // resource type from the top-level map. + if len(resources) == 0 { + if a.logger.V(2) { + a.logger.Infof("Removing last watch for resource type %q", rType.TypeName) + } + delete(a.resources, rType) + } + // If there are no more watchers for any resource type, release the + // reference to the xdsChannels. + if len(a.resources) == 0 { + if a.logger.V(2) { + a.logger.Infof("Removing last watch for for any resource type, releasing reference to the xdsChannel") + } + a.closeXDSChannels() + } }, func() { close(done) }) <-done }) @@ -834,7 +837,7 @@ func (a *authority) closeXDSChannels() { func (a *authority) watcherExistsForUncachedResource() bool { for _, resourceStates := range a.resources { for _, state := range resourceStates { - if len(state.watchers) > 0 && state.md.Status == xdsresource.ServiceStatusRequested { + if state.md.Status == xdsresource.ServiceStatusRequested { return true } } @@ -866,9 +869,6 @@ func (a *authority) resourceConfig() []*v3statuspb.ClientConfig_GenericXdsConfig for rType, resourceStates := range a.resources { typeURL := rType.TypeURL for name, state := range resourceStates { - if len(state.watchers) == 0 { - continue - } var raw *anypb.Any if state.cache != nil { raw = &anypb.Any{TypeUrl: typeURL, Value: state.cache.Bytes()} @@ -902,43 +902,6 @@ func (a *authority) close() { } } -// removeUnsubscribedCacheEntries iterates through all resources of the given type and -// removes the state for resources that have no active watchers. This is called -// after sending a discovery request to ensure that resources that were -// unsubscribed (and thus have no watchers) are eventually removed from the -// authority's cache. -// -// This method is only executed in the context of a serializer callback. -func (a *authority) removeUnsubscribedCacheEntries(rType ResourceType) { - resources := a.resources[rType] - if resources == nil { - return - } - - for name, state := range resources { - if len(state.watchers) == 0 { - if a.logger.V(2) { - a.logger.Infof("Removing resource state for %q of type %q as it has no watchers", name, rType.TypeName) - } - delete(resources, name) - } - } - - if len(resources) == 0 { - if a.logger.V(2) { - a.logger.Infof("Removing resource type %q from cache as it has no more resources", rType.TypeName) - } - delete(a.resources, rType) - } - - if len(a.resources) == 0 { - if a.logger.V(2) { - a.logger.Infof("Removing last watch for any resource type, releasing reference to the xdsChannels") - } - a.closeXDSChannels() - } -} - func serviceStatusToProto(serviceStatus xdsresource.ServiceStatus) v3adminpb.ClientResourceStatus { switch serviceStatus { case xdsresource.ServiceStatusUnknown: @@ -955,3 +918,17 @@ func serviceStatusToProto(serviceStatus xdsresource.ServiceStatus) v3adminpb.Cli return v3adminpb.ClientResourceStatus_UNKNOWN } } + +func (a *authority) resourceWatchStateForTesting(rType ResourceType, resourceName string) (state xdsresource.ResourceWatchState, err error) { + done := make(chan struct{}) + a.xdsClientSerializer.ScheduleOr(func(context.Context) { + state, err = a.activeXDSChannel.channel.ads.adsResourceWatchStateForTesting(rType, resourceName) + close(done) + }, func() { + err = errors.New("failed to retrieve resource watch state because the xDS client is closed") + close(done) + }) + <-done + + return state, err +} diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/channel.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/channel.go similarity index 86% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/channel.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/channel.go index 3d65ce6b4..e36e36220 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/channel.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/channel.go @@ -26,11 +26,11 @@ import ( "google.golang.org/grpc/grpclog" igrpclog "google.golang.org/grpc/internal/grpclog" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/internal" - "google.golang.org/grpc/xds/internal/clients/internal/backoff" - "google.golang.org/grpc/xds/internal/clients/internal/syncutil" - "google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/internal" + "google.golang.org/grpc/internal/xds/clients/internal/backoff" + "google.golang.org/grpc/internal/xds/clients/internal/syncutil" + "google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource" ) const ( @@ -59,10 +59,6 @@ type xdsChannelEventHandler interface { // adsResourceDoesNotExist is called when the xdsChannel determines that a // requested ADS resource does not exist. adsResourceDoesNotExist(ResourceType, string) - - // adsResourceRemoveUnsubscribedCacheEntries is called when the xdsChannel - // needs to remove unsubscribed cache entries. - adsResourceRemoveUnsubscribedCacheEntries(ResourceType) } // xdsChannelOpts holds the options for creating a new xdsChannel. @@ -140,32 +136,8 @@ type xdsChannel struct { } func (xc *xdsChannel) close() { - if xc.closed.HasFired() { - return - } xc.closed.Fire() - - // Get the resource types that this specific ADS stream was handling - // before stopping it. - // - // TODO: Revisit if we can avoid acquiring the lock of ads (another type). - xc.ads.mu.Lock() - typesHandledByStream := make([]ResourceType, 0, len(xc.ads.resourceTypeState)) - for typ := range xc.ads.resourceTypeState { - typesHandledByStream = append(typesHandledByStream, typ) - } - xc.ads.mu.Unlock() - xc.ads.Stop() - - // Schedule removeUnsubscribedCacheEntries for the types this stream was handling, - // on all authorities that were interested in this channel. - if _, ok := xc.eventHandler.(*channelState); ok { - for _, typ := range typesHandledByStream { - xc.eventHandler.adsResourceRemoveUnsubscribedCacheEntries(typ) - } - } - xc.transport.Close() xc.logger.Infof("Shutdown") } @@ -256,26 +228,6 @@ func (xc *xdsChannel) onResponse(resp response, onDone func()) ([]string, error) return names, err } -// onRequest invoked when a request is about to be sent on the ADS stream. It -// removes the cache entries for the resource type that are no longer subscribed to. -func (xc *xdsChannel) onRequest(typeURL string) { - if xc.closed.HasFired() { - if xc.logger.V(2) { - xc.logger.Infof("Received an update from the ADS stream on closed ADS stream") - } - return - } - - // Lookup the resource parser based on the resource type. - rType, ok := xc.clientConfig.ResourceTypes[typeURL] - if !ok { - logger.Warningf("Resource type URL %q unknown in response from server", typeURL) - return - } - - xc.eventHandler.adsResourceRemoveUnsubscribedCacheEntries(rType) -} - // decodeResponse decodes the resources in the given ADS response. // // The opts parameter provides configuration options for decoding the resources. diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/clientimpl_watchers.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/clientimpl_watchers.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/clientimpl_watchers.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/clientimpl_watchers.go index 913e313e1..68b29295c 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/clientimpl_watchers.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/clientimpl_watchers.go @@ -21,7 +21,7 @@ package xdsclient import ( "fmt" - "google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource" + "google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource" ) // wrappingWatcher is a wrapper around an xdsresource.ResourceWatcher that adds diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/internal.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/internal.go similarity index 86% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/internal.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/internal.go index 7adb67190..38d2473e5 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/internal.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/internal.go @@ -21,10 +21,6 @@ package internal import "time" var ( - // WatchExpiryTimeout is the watch expiry timeout for xDS client. It can be - // overridden by tests to change the default watch expiry timeout. - WatchExpiryTimeout time.Duration - // StreamBackoff is the stream backoff for xDS client. It can be overridden // by tests to change the default backoff strategy. StreamBackoff func(int) time.Duration diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/ads_stream.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/ads_stream.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/ads_stream.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/ads_stream.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/errors.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/errors.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/errors.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/errors.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/name.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/name.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/name.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/name.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/type.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/type.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/type.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/type.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/version.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/version.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource/version.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource/version.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/logging.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/logging.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/metrics/metrics.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/metrics/metrics.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/metrics/metrics.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/metrics/metrics.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/resource_type.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/resource_type.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/resource_type.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/resource_type.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/resource_watcher.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/resource_watcher.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/resource_watcher.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/resource_watcher.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/xdsclient.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/xdsclient.go similarity index 90% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/xdsclient.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/xdsclient.go index 93d262174..cc7d5c4e2 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/xdsclient.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/xdsclient.go @@ -39,13 +39,13 @@ import ( "time" "google.golang.org/grpc/internal/grpclog" - "google.golang.org/grpc/xds/internal/clients" - clientsinternal "google.golang.org/grpc/xds/internal/clients/internal" - "google.golang.org/grpc/xds/internal/clients/internal/backoff" - "google.golang.org/grpc/xds/internal/clients/internal/syncutil" - xdsclientinternal "google.golang.org/grpc/xds/internal/clients/xdsclient/internal" - "google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource" - "google.golang.org/grpc/xds/internal/clients/xdsclient/metrics" + "google.golang.org/grpc/internal/xds/clients" + clientsinternal "google.golang.org/grpc/internal/xds/clients/internal" + "google.golang.org/grpc/internal/xds/clients/internal/backoff" + "google.golang.org/grpc/internal/xds/clients/internal/syncutil" + xdsclientinternal "google.golang.org/grpc/internal/xds/clients/xdsclient/internal" + "google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource" + "google.golang.org/grpc/internal/xds/clients/xdsclient/metrics" "google.golang.org/protobuf/proto" v3statuspb "github.com/envoyproxy/go-control-plane/envoy/service/status/v3" @@ -61,7 +61,6 @@ var ( ) func init() { - xdsclientinternal.WatchExpiryTimeout = defaultWatchExpiryTimeout xdsclientinternal.StreamBackoff = defaultExponentialBackoff xdsclientinternal.ResourceWatchStateForTesting = resourceWatchStateForTesting } @@ -108,7 +107,9 @@ func New(config Config) (*XDSClient, error) { case config.Authorities == nil && config.Servers == nil: return nil, errors.New("xdsclient: no servers or authorities specified") } - + if config.WatchExpiryTimeout == 0 { + config.WatchExpiryTimeout = defaultWatchExpiryTimeout + } client, err := newClient(&config, name) if err != nil { return nil, err @@ -116,12 +117,6 @@ func New(config Config) (*XDSClient, error) { return client, nil } -// SetWatchExpiryTimeoutForTesting override the default watch expiry timeout -// with provided timeout value. -func (c *XDSClient) SetWatchExpiryTimeoutForTesting(watchExpiryTimeout time.Duration) { - c.watchExpiryTimeout = watchExpiryTimeout -} - // newClient returns a new XDSClient with the given config. func newClient(config *Config, target string) (*XDSClient, error) { ctx, cancel := context.WithCancel(context.Background()) @@ -130,7 +125,7 @@ func newClient(config *Config, target string) (*XDSClient, error) { done: syncutil.NewEvent(), authorities: make(map[string]*authority), config: config, - watchExpiryTimeout: xdsclientinternal.WatchExpiryTimeout, + watchExpiryTimeout: config.WatchExpiryTimeout, backoff: xdsclientinternal.StreamBackoff, serializer: syncutil.NewCallbackSerializer(ctx), serializerClose: cancel, @@ -437,29 +432,12 @@ func (cs *channelState) adsResourceDoesNotExist(typ ResourceType, resourceName s } } -func (cs *channelState) adsResourceRemoveUnsubscribedCacheEntries(rType ResourceType) { - if cs.parent.done.HasFired() { - return - } - - cs.parent.channelsMu.Lock() - defer cs.parent.channelsMu.Unlock() - - for authority := range cs.interestedAuthorities { - authority.xdsClientSerializer.TrySchedule(func(context.Context) { - authority.removeUnsubscribedCacheEntries(rType) - }) - } -} - func resourceWatchStateForTesting(c *XDSClient, rType ResourceType, resourceName string) (xdsresource.ResourceWatchState, error) { - c.channelsMu.Lock() - defer c.channelsMu.Unlock() - - for _, state := range c.xdsActiveChannels { - if st, err := state.channel.ads.adsResourceWatchStateForTesting(rType, resourceName); err == nil { - return st, nil - } + n := xdsresource.ParseName(resourceName) + a := c.getAuthorityForResource(n) + if a == nil { + return xdsresource.ResourceWatchState{}, fmt.Errorf("unable to find authority for resource name %q", resourceName) } - return xdsresource.ResourceWatchState{}, fmt.Errorf("unable to find watch state for resource type %q and name %q", rType.TypeName, resourceName) + return a.resourceWatchStateForTesting(rType, resourceName) + } diff --git a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/xdsconfig.go b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/xdsconfig.go similarity index 88% rename from vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/xdsconfig.go rename to vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/xdsconfig.go index a276309df..9d376e508 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clients/xdsclient/xdsconfig.go +++ b/vendor/google.golang.org/grpc/internal/xds/clients/xdsclient/xdsconfig.go @@ -19,7 +19,9 @@ package xdsclient import ( - "google.golang.org/grpc/xds/internal/clients" + "time" + + "google.golang.org/grpc/internal/xds/clients" ) // Config is used to configure an xDS client. After one has been passed to the @@ -60,6 +62,13 @@ type Config struct { // MetricsReporter is used to report registered metrics. If unset, no // metrics will be reported. MetricsReporter clients.MetricsReporter + + // WatchExpiryTimeout is the duration after which a resource watch expires + // if the requested resource is not received from the management server. + // Most users will not need to set this. If zero, a default value of 15 + // seconds is used as specified here: + // envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol#knowing-when-a-requested-resource-does-not-exist + WatchExpiryTimeout time.Duration } // ServerConfig contains configuration for an xDS management server. diff --git a/vendor/google.golang.org/grpc/xds/internal/clusterspecifier/cluster_specifier.go b/vendor/google.golang.org/grpc/internal/xds/clusterspecifier/cluster_specifier.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/clusterspecifier/cluster_specifier.go rename to vendor/google.golang.org/grpc/internal/xds/clusterspecifier/cluster_specifier.go diff --git a/vendor/google.golang.org/grpc/xds/internal/clusterspecifier/rls/rls.go b/vendor/google.golang.org/grpc/internal/xds/clusterspecifier/rls/rls.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/clusterspecifier/rls/rls.go rename to vendor/google.golang.org/grpc/internal/xds/clusterspecifier/rls/rls.go index 50f58cd43..ce2c22537 100644 --- a/vendor/google.golang.org/grpc/xds/internal/clusterspecifier/rls/rls.go +++ b/vendor/google.golang.org/grpc/internal/xds/clusterspecifier/rls/rls.go @@ -26,7 +26,7 @@ import ( "google.golang.org/grpc/balancer" "google.golang.org/grpc/internal" rlspb "google.golang.org/grpc/internal/proto/grpc_lookup_v1" - "google.golang.org/grpc/xds/internal/clusterspecifier" + "google.golang.org/grpc/internal/xds/clusterspecifier" "google.golang.org/protobuf/encoding/protojson" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" diff --git a/vendor/google.golang.org/grpc/xds/internal/httpfilter/fault/fault.go b/vendor/google.golang.org/grpc/internal/xds/httpfilter/fault/fault.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/httpfilter/fault/fault.go rename to vendor/google.golang.org/grpc/internal/xds/httpfilter/fault/fault.go index 0ffa9c827..3acd4aec6 100644 --- a/vendor/google.golang.org/grpc/xds/internal/httpfilter/fault/fault.go +++ b/vendor/google.golang.org/grpc/internal/xds/httpfilter/fault/fault.go @@ -31,9 +31,9 @@ import ( "google.golang.org/grpc/codes" iresolver "google.golang.org/grpc/internal/resolver" + "google.golang.org/grpc/internal/xds/httpfilter" "google.golang.org/grpc/metadata" "google.golang.org/grpc/status" - "google.golang.org/grpc/xds/internal/httpfilter" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" diff --git a/vendor/google.golang.org/grpc/xds/internal/httpfilter/httpfilter.go b/vendor/google.golang.org/grpc/internal/xds/httpfilter/httpfilter.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/httpfilter/httpfilter.go rename to vendor/google.golang.org/grpc/internal/xds/httpfilter/httpfilter.go diff --git a/vendor/google.golang.org/grpc/xds/internal/httpfilter/rbac/rbac.go b/vendor/google.golang.org/grpc/internal/xds/httpfilter/rbac/rbac.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/httpfilter/rbac/rbac.go rename to vendor/google.golang.org/grpc/internal/xds/httpfilter/rbac/rbac.go index 260dad756..015500903 100644 --- a/vendor/google.golang.org/grpc/xds/internal/httpfilter/rbac/rbac.go +++ b/vendor/google.golang.org/grpc/internal/xds/httpfilter/rbac/rbac.go @@ -26,8 +26,8 @@ import ( "strings" "google.golang.org/grpc/internal/resolver" + "google.golang.org/grpc/internal/xds/httpfilter" "google.golang.org/grpc/internal/xds/rbac" - "google.golang.org/grpc/xds/internal/httpfilter" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" diff --git a/vendor/google.golang.org/grpc/xds/internal/httpfilter/router/router.go b/vendor/google.golang.org/grpc/internal/xds/httpfilter/router/router.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/httpfilter/router/router.go rename to vendor/google.golang.org/grpc/internal/xds/httpfilter/router/router.go index a781523d3..d3a498d67 100644 --- a/vendor/google.golang.org/grpc/xds/internal/httpfilter/router/router.go +++ b/vendor/google.golang.org/grpc/internal/xds/httpfilter/router/router.go @@ -23,7 +23,7 @@ import ( "fmt" iresolver "google.golang.org/grpc/internal/resolver" - "google.golang.org/grpc/xds/internal/httpfilter" + "google.golang.org/grpc/internal/xds/httpfilter" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" diff --git a/vendor/google.golang.org/grpc/xds/internal/resolver/internal/internal.go b/vendor/google.golang.org/grpc/internal/xds/resolver/internal/internal.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/resolver/internal/internal.go rename to vendor/google.golang.org/grpc/internal/xds/resolver/internal/internal.go diff --git a/vendor/google.golang.org/grpc/xds/internal/resolver/logging.go b/vendor/google.golang.org/grpc/internal/xds/resolver/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/resolver/logging.go rename to vendor/google.golang.org/grpc/internal/xds/resolver/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/resolver/serviceconfig.go b/vendor/google.golang.org/grpc/internal/xds/resolver/serviceconfig.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/resolver/serviceconfig.go rename to vendor/google.golang.org/grpc/internal/xds/resolver/serviceconfig.go index 40f038b8a..2b4e5a05d 100644 --- a/vendor/google.golang.org/grpc/xds/internal/resolver/serviceconfig.go +++ b/vendor/google.golang.org/grpc/internal/xds/resolver/serviceconfig.go @@ -35,11 +35,11 @@ import ( iringhash "google.golang.org/grpc/internal/ringhash" "google.golang.org/grpc/internal/serviceconfig" "google.golang.org/grpc/internal/wrr" + "google.golang.org/grpc/internal/xds/balancer/clustermanager" + "google.golang.org/grpc/internal/xds/httpfilter" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/metadata" "google.golang.org/grpc/status" - "google.golang.org/grpc/xds/internal/balancer/clustermanager" - "google.golang.org/grpc/xds/internal/httpfilter" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) const ( diff --git a/vendor/google.golang.org/grpc/xds/internal/resolver/watch_service.go b/vendor/google.golang.org/grpc/internal/xds/resolver/watch_service.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/resolver/watch_service.go rename to vendor/google.golang.org/grpc/internal/xds/resolver/watch_service.go index e8d52d0e0..44b885c44 100644 --- a/vendor/google.golang.org/grpc/xds/internal/resolver/watch_service.go +++ b/vendor/google.golang.org/grpc/internal/xds/resolver/watch_service.go @@ -21,7 +21,7 @@ package resolver import ( "context" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) type listenerWatcher struct { diff --git a/vendor/google.golang.org/grpc/xds/internal/resolver/xds_resolver.go b/vendor/google.golang.org/grpc/internal/xds/resolver/xds_resolver.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/resolver/xds_resolver.go rename to vendor/google.golang.org/grpc/internal/xds/resolver/xds_resolver.go index a66719d06..70291f8ce 100644 --- a/vendor/google.golang.org/grpc/xds/internal/resolver/xds_resolver.go +++ b/vendor/google.golang.org/grpc/internal/xds/resolver/xds_resolver.go @@ -33,10 +33,10 @@ import ( iresolver "google.golang.org/grpc/internal/resolver" "google.golang.org/grpc/internal/wrr" "google.golang.org/grpc/internal/xds/bootstrap" + rinternal "google.golang.org/grpc/internal/xds/resolver/internal" + "google.golang.org/grpc/internal/xds/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/resolver" - rinternal "google.golang.org/grpc/xds/internal/resolver/internal" - "google.golang.org/grpc/xds/internal/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) // Scheme is the xDS resolver's scheme. diff --git a/vendor/google.golang.org/grpc/xds/internal/server/conn_wrapper.go b/vendor/google.golang.org/grpc/internal/xds/server/conn_wrapper.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/server/conn_wrapper.go rename to vendor/google.golang.org/grpc/internal/xds/server/conn_wrapper.go index 92d07e7fb..840da7ca6 100644 --- a/vendor/google.golang.org/grpc/xds/internal/server/conn_wrapper.go +++ b/vendor/google.golang.org/grpc/internal/xds/server/conn_wrapper.go @@ -28,7 +28,7 @@ import ( "google.golang.org/grpc/credentials/tls/certprovider" xdsinternal "google.golang.org/grpc/internal/credentials/xds" "google.golang.org/grpc/internal/transport" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) // connWrapper is a thin wrapper around a net.Conn returned by Accept(). It diff --git a/vendor/google.golang.org/grpc/xds/internal/server/listener_wrapper.go b/vendor/google.golang.org/grpc/internal/xds/server/listener_wrapper.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/server/listener_wrapper.go rename to vendor/google.golang.org/grpc/internal/xds/server/listener_wrapper.go index 2c32ace8a..1f7da6117 100644 --- a/vendor/google.golang.org/grpc/xds/internal/server/listener_wrapper.go +++ b/vendor/google.golang.org/grpc/internal/xds/server/listener_wrapper.go @@ -33,7 +33,7 @@ import ( internalgrpclog "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/grpcsync" "google.golang.org/grpc/internal/xds/bootstrap" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) var ( diff --git a/vendor/google.golang.org/grpc/xds/internal/server/rds_handler.go b/vendor/google.golang.org/grpc/internal/xds/server/rds_handler.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/server/rds_handler.go rename to vendor/google.golang.org/grpc/internal/xds/server/rds_handler.go index 4b8eb22de..bf78c37c8 100644 --- a/vendor/google.golang.org/grpc/xds/internal/server/rds_handler.go +++ b/vendor/google.golang.org/grpc/internal/xds/server/rds_handler.go @@ -22,7 +22,7 @@ import ( "sync" igrpclog "google.golang.org/grpc/internal/grpclog" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) // rdsHandler handles any RDS queries that need to be started for a given server diff --git a/vendor/google.golang.org/grpc/internal/xds/xds.go b/vendor/google.golang.org/grpc/internal/xds/xds.go index 024c388b7..b9a4ec90a 100644 --- a/vendor/google.golang.org/grpc/internal/xds/xds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xds.go @@ -14,12 +14,17 @@ * limitations under the License. */ -// Package xds contains methods to Get/Set handshake cluster names. It is separated -// out from the top level /internal package to avoid circular dependencies. +// Package xds contains functions, structs, and utilities for working with +// handshake cluster names, as well as shared components used by xds balancers +// and resolvers. It is separated from the top-level /internal package to +// avoid circular dependencies. package xds import ( + "fmt" + "google.golang.org/grpc/attributes" + "google.golang.org/grpc/internal/xds/clients" "google.golang.org/grpc/resolver" ) @@ -40,3 +45,60 @@ func GetXDSHandshakeClusterName(attr *attributes.Attributes) (string, bool) { name, ok := v.(string) return name, ok } + +// LocalityString generates a string representation of clients.Locality in the +// format specified in gRFC A76. +func LocalityString(l clients.Locality) string { + return fmt.Sprintf("{region=%q, zone=%q, sub_zone=%q}", l.Region, l.Zone, l.SubZone) +} + +// IsLocalityEqual allows the values to be compared by Attributes.Equal. +func IsLocalityEqual(l clients.Locality, o any) bool { + ol, ok := o.(clients.Locality) + if !ok { + return false + } + return l.Region == ol.Region && l.Zone == ol.Zone && l.SubZone == ol.SubZone +} + +// LocalityFromString converts a string representation of clients.locality as +// specified in gRFC A76, into a LocalityID struct. +func LocalityFromString(s string) (ret clients.Locality, _ error) { + _, err := fmt.Sscanf(s, "{region=%q, zone=%q, sub_zone=%q}", &ret.Region, &ret.Zone, &ret.SubZone) + if err != nil { + return clients.Locality{}, fmt.Errorf("%s is not a well formatted locality ID, error: %v", s, err) + } + return ret, nil +} + +type localityKeyType string + +const localityKey = localityKeyType("grpc.xds.internal.address.locality") + +// GetLocalityID returns the locality ID of addr. +func GetLocalityID(addr resolver.Address) clients.Locality { + path, _ := addr.BalancerAttributes.Value(localityKey).(clients.Locality) + return path +} + +// SetLocalityID sets locality ID in addr to l. +func SetLocalityID(addr resolver.Address, l clients.Locality) resolver.Address { + addr.BalancerAttributes = addr.BalancerAttributes.WithValue(localityKey, l) + return addr +} + +// SetLocalityIDInEndpoint sets locality ID in endpoint to l. +func SetLocalityIDInEndpoint(endpoint resolver.Endpoint, l clients.Locality) resolver.Endpoint { + endpoint.Attributes = endpoint.Attributes.WithValue(localityKey, l) + return endpoint +} + +// ResourceTypeMapForTesting maps TypeUrl to corresponding ResourceType. +var ResourceTypeMapForTesting map[string]any + +// UnknownCSMLabels are TelemetryLabels emitted from CDS if CSM Telemetry Label +// data is not present in the CDS Resource. +var UnknownCSMLabels = map[string]string{ + "csm.service_name": "unknown", + "csm.service_namespace_name": "unknown", +} diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/attributes.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/attributes.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/attributes.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/attributes.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/client.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/client.go similarity index 95% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/client.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/client.go index 42f1a28f0..514273164 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/client.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/client.go @@ -25,8 +25,8 @@ import ( v3statuspb "github.com/envoyproxy/go-control-plane/envoy/service/status/v3" "google.golang.org/grpc/internal/xds/bootstrap" - "google.golang.org/grpc/xds/internal/clients/lrsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/clients/lrsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) // XDSClient is a full fledged gRPC client which queries a set of discovery APIs diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl.go similarity index 90% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl.go index 6362ccae7..b1f797993 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl.go @@ -29,12 +29,12 @@ import ( "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/xds/bootstrap" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/grpctransport" + "google.golang.org/grpc/internal/xds/clients/lrsclient" + "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/clients/xdsclient/metrics" xdsbootstrap "google.golang.org/grpc/xds/bootstrap" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/grpctransport" - "google.golang.org/grpc/xds/internal/clients/lrsclient" - "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/clients/xdsclient/metrics" ) const ( @@ -120,8 +120,8 @@ func (mr *metricsReporter) ReportMetric(metric any) { } } -func newClientImpl(config *bootstrap.Config, metricsRecorder estats.MetricsRecorder, target string) (*clientImpl, error) { - gConfig, err := buildXDSClientConfig(config, metricsRecorder, target) +func newClientImpl(config *bootstrap.Config, metricsRecorder estats.MetricsRecorder, target string, watchExpiryTimeout time.Duration) (*clientImpl, error) { + gConfig, err := buildXDSClientConfig(config, metricsRecorder, target, watchExpiryTimeout) if err != nil { return nil, err } @@ -163,7 +163,7 @@ func (c *clientImpl) decrRef() int32 { } // buildXDSClientConfig builds the xdsclient.Config from the bootstrap.Config. -func buildXDSClientConfig(config *bootstrap.Config, metricsRecorder estats.MetricsRecorder, target string) (xdsclient.Config, error) { +func buildXDSClientConfig(config *bootstrap.Config, metricsRecorder estats.MetricsRecorder, target string, watchExpiryTimeout time.Duration) (xdsclient.Config, error) { grpcTransportConfigs := make(map[string]grpctransport.Config) gServerCfgMap := make(map[xdsclient.ServerConfig]*bootstrap.ServerConfig) @@ -218,12 +218,13 @@ func buildXDSClientConfig(config *bootstrap.Config, metricsRecorder estats.Metri } return xdsclient.Config{ - Authorities: gAuthorities, - Servers: gServerCfgs, - Node: gNode, - TransportBuilder: grpctransport.NewBuilder(grpcTransportConfigs), - ResourceTypes: supportedResourceTypes(config, gServerCfgMap), - MetricsReporter: &metricsReporter{recorder: metricsRecorder, target: target}, + Authorities: gAuthorities, + Servers: gServerCfgs, + Node: gNode, + TransportBuilder: grpctransport.NewBuilder(grpcTransportConfigs), + ResourceTypes: supportedResourceTypes(config, gServerCfgMap), + MetricsReporter: &metricsReporter{recorder: metricsRecorder, target: target}, + WatchExpiryTimeout: watchExpiryTimeout, }, nil } diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl_loadreport.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl_loadreport.go similarity index 90% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl_loadreport.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl_loadreport.go index d1202876d..ffd0c90b8 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl_loadreport.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl_loadreport.go @@ -22,9 +22,9 @@ import ( "sync" "google.golang.org/grpc/internal/xds/bootstrap" - "google.golang.org/grpc/xds/internal/clients" - "google.golang.org/grpc/xds/internal/clients/grpctransport" - "google.golang.org/grpc/xds/internal/clients/lrsclient" + "google.golang.org/grpc/internal/xds/clients" + "google.golang.org/grpc/internal/xds/clients/grpctransport" + "google.golang.org/grpc/internal/xds/clients/lrsclient" ) // ReportLoad starts a load reporting stream to the given server. All load diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl_watchers.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl_watchers.go similarity index 95% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl_watchers.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl_watchers.go index 29435993f..398de1ed7 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/clientimpl_watchers.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/clientimpl_watchers.go @@ -18,7 +18,7 @@ package xdsclient import ( - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" ) // WatchResource uses xDS to discover the resource associated with the provided diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/logging.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/logging.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/pool.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/pool.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/pool.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/pool.go index d1cc84762..eb0197e09 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/pool.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/pool.go @@ -99,7 +99,7 @@ func NewPool(config *bootstrap.Config) *Pool { // expected to invoke once they are done using the client. It is safe for the // caller to invoke this close function multiple times. func (p *Pool) NewClient(name string, metricsRecorder estats.MetricsRecorder) (XDSClient, func(), error) { - return p.newRefCounted(name, metricsRecorder) + return p.newRefCounted(name, metricsRecorder, defaultWatchExpiryTimeout) } // NewClientForTesting returns an xDS client configured with the provided @@ -126,11 +126,10 @@ func (p *Pool) NewClientForTesting(opts OptionsForTesting) (XDSClient, func(), e if opts.MetricsRecorder == nil { opts.MetricsRecorder = istats.NewMetricsRecorderList(nil) } - c, cancel, err := p.newRefCounted(opts.Name, opts.MetricsRecorder) + c, cancel, err := p.newRefCounted(opts.Name, opts.MetricsRecorder, opts.WatchExpiryTimeout) if err != nil { return nil, nil, err } - c.SetWatchExpiryTimeoutForTesting(opts.WatchExpiryTimeout) return c, cancel, nil } @@ -252,7 +251,7 @@ func (p *Pool) clientRefCountedClose(name string) { // newRefCounted creates a new reference counted xDS client implementation for // name, if one does not exist already. If an xDS client for the given name // exists, it gets a reference to it and returns it. -func (p *Pool) newRefCounted(name string, metricsRecorder estats.MetricsRecorder) (*clientImpl, func(), error) { +func (p *Pool) newRefCounted(name string, metricsRecorder estats.MetricsRecorder, watchExpiryTimeout time.Duration) (*clientImpl, func(), error) { p.mu.Lock() defer p.mu.Unlock() @@ -276,7 +275,7 @@ func (p *Pool) newRefCounted(name string, metricsRecorder estats.MetricsRecorder return c, sync.OnceFunc(func() { p.clientRefCountedClose(name) }), nil } - c, err := newClientImpl(config, metricsRecorder, name) + c, err := newClientImpl(config, metricsRecorder, name, watchExpiryTimeout) if err != nil { return nil, nil, err } diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/requests_counter.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/requests_counter.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/requests_counter.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/requests_counter.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/resource_types.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/resource_types.go similarity index 91% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/resource_types.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/resource_types.go index 2f76c83c8..88451ab82 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/resource_types.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/resource_types.go @@ -19,9 +19,9 @@ package xdsclient import ( "google.golang.org/grpc/internal/xds/bootstrap" - "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" ) func supportedResourceTypes(config *bootstrap.Config, gServerCfgMap map[xdsclient.ServerConfig]*bootstrap.ServerConfig) map[string]xdsclient.ResourceType { diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/converter/converter.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/converter/converter.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/converter/converter.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/converter/converter.go index 959c6588b..d38b9db82 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/converter/converter.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/converter/converter.go @@ -35,8 +35,8 @@ import ( "google.golang.org/grpc/balancer/weightedroundrobin" iringhash "google.golang.org/grpc/internal/ringhash" internalserviceconfig "google.golang.org/grpc/internal/serviceconfig" - "google.golang.org/grpc/xds/internal/balancer/wrrlocality" - "google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry" + "google.golang.org/grpc/internal/xds/balancer/wrrlocality" + "google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/structpb" diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/xdslbregistry.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/xdslbregistry.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/xdslbregistry.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/xdslbregistry.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/cluster_resource_type.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/cluster_resource_type.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/cluster_resource_type.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/cluster_resource_type.go index de6335081..2a6a08f90 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/cluster_resource_type.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/cluster_resource_type.go @@ -20,8 +20,8 @@ package xdsresource import ( "google.golang.org/grpc/internal/pretty" "google.golang.org/grpc/internal/xds/bootstrap" - xdsclient "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + xdsclient "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/endpoints_resource_type.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/endpoints_resource_type.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/endpoints_resource_type.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/endpoints_resource_type.go index dd8a3b38c..7ca45ec6a 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/endpoints_resource_type.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/endpoints_resource_type.go @@ -19,8 +19,8 @@ package xdsresource import ( "google.golang.org/grpc/internal/pretty" - xdsclient "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + xdsclient "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/errors.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/errors.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/errors.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/errors.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/filter_chain.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/filter_chain.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/filter_chain.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/filter_chain.go index 46bbcaf4a..76ace1090 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/filter_chain.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/filter_chain.go @@ -25,9 +25,9 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/internal/resolver" + "google.golang.org/grpc/internal/xds/httpfilter" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/grpc/status" - "google.golang.org/grpc/xds/internal/httpfilter" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" v3listenerpb "github.com/envoyproxy/go-control-plane/envoy/config/listener/v3" diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/listener_resource_type.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/listener_resource_type.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/listener_resource_type.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/listener_resource_type.go index 29ff88704..100a06f97 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/listener_resource_type.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/listener_resource_type.go @@ -22,8 +22,8 @@ import ( "google.golang.org/grpc/internal/pretty" "google.golang.org/grpc/internal/xds/bootstrap" - xdsclient "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + xdsclient "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/logging.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/logging.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/logging.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/logging.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/matcher.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/matcher.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/matcher.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/matcher.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/matcher_path.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/matcher_path.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/matcher_path.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/matcher_path.go diff --git a/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/metadata.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/metadata.go new file mode 100644 index 000000000..b56c309d6 --- /dev/null +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/metadata.go @@ -0,0 +1,93 @@ +/* + * + * Copyright 2025 gRPC authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package xdsresource + +import ( + "fmt" + "net/netip" + + v3corepb "github.com/envoyproxy/go-control-plane/envoy/config/core/v3" + "google.golang.org/protobuf/types/known/anypb" +) + +func init() { + registerMetadataConverter("type.googleapis.com/envoy.config.core.v3.Address", proxyAddressConvertor{}) +} + +var ( + // metdataRegistry is a map from proto type to metadataConverter. + metdataRegistry = make(map[string]metadataConverter) +) + +// metadataConverter converts xds metadata entries in +// Metadata.typed_filter_metadata into an internal form with the fields relevant +// to gRPC. +type metadataConverter interface { + // convert parses the Any proto into a concrete struct. + convert(*anypb.Any) (any, error) +} + +// registerMetadataConverter registers the converter to the map keyed on a proto +// type_url. Must be called at init time. Not thread safe. +func registerMetadataConverter(protoType string, c metadataConverter) { + metdataRegistry[protoType] = c +} + +// metadataConverterForType retrieves a converter based on key given. +func metadataConverterForType(typeURL string) metadataConverter { + return metdataRegistry[typeURL] +} + +// StructMetadataValue stores the values in a google.protobuf.Struct from +// FilterMetadata. +type StructMetadataValue struct { + // Data stores the parsed JSON representation of a google.protobuf.Struct. + Data map[string]any +} + +// ProxyAddressMetadataValue holds the address parsed from the +// envoy.config.core.v3.Address proto message, as specified in gRFC A86. +type ProxyAddressMetadataValue struct { + // Address stores the proxy address configured (A86). It will be in the form + // of host:port. It has to be either IPv6 or IPv4. + Address string +} + +// proxyAddressConvertor implements the metadataConverter interface to handle +// the conversion of envoy.config.core.v3.Address protobuf messages into an +// internal representation. +type proxyAddressConvertor struct{} + +func (proxyAddressConvertor) convert(anyProto *anypb.Any) (any, error) { + addressProto := &v3corepb.Address{} + if err := anyProto.UnmarshalTo(addressProto); err != nil { + return nil, fmt.Errorf("failed to unmarshal resource from Any proto: %v", err) + } + socketaddress := addressProto.GetSocketAddress() + if socketaddress == nil { + return nil, fmt.Errorf("no socket_address field in metadata") + } + if _, err := netip.ParseAddr(socketaddress.GetAddress()); err != nil { + return nil, fmt.Errorf("address field is not a valid IPv4 or IPv6 address: %q", socketaddress.GetAddress()) + } + portvalue := socketaddress.GetPortValue() + if portvalue == 0 { + return nil, fmt.Errorf("port value not set in socket_address") + } + return ProxyAddressMetadataValue{Address: parseAddress(socketaddress)}, nil +} diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/name.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/name.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/name.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/name.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/resource_type.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/resource_type.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/resource_type.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/resource_type.go index 4ecf63a1c..2c591312f 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/resource_type.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/resource_type.go @@ -27,10 +27,10 @@ package xdsresource import ( "fmt" + xdsinternal "google.golang.org/grpc/internal/xds" "google.golang.org/grpc/internal/xds/bootstrap" - xdsinternal "google.golang.org/grpc/xds/internal" - "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/route_config_resource_type.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/route_config_resource_type.go similarity index 97% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/route_config_resource_type.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/route_config_resource_type.go index 344932e93..912dc1b76 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/route_config_resource_type.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/route_config_resource_type.go @@ -19,8 +19,8 @@ package xdsresource import ( "google.golang.org/grpc/internal/pretty" - xdsclient "google.golang.org/grpc/xds/internal/clients/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + xdsclient "google.golang.org/grpc/internal/xds/clients/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type.go index 994204101..7f85c1da2 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type.go @@ -21,7 +21,7 @@ import ( "time" v3discoverypb "github.com/envoyproxy/go-control-plane/envoy/service/discovery/v3" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_cds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_cds.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_cds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_cds.go diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_eds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_eds.go similarity index 95% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_eds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_eds.go index 12294626f..a8d568e18 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_eds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_eds.go @@ -18,7 +18,7 @@ package xdsresource import ( - "google.golang.org/grpc/xds/internal/clients" + "google.golang.org/grpc/internal/xds/clients" "google.golang.org/protobuf/types/known/anypb" ) @@ -53,6 +53,7 @@ type Endpoint struct { HealthStatus EndpointHealthStatus Weight uint32 HashKey string + Metadata map[string]any } // Locality contains information of a locality. @@ -61,6 +62,7 @@ type Locality struct { ID clients.Locality Priority uint32 Weight uint32 + Metadata map[string]any } // EndpointsUpdate contains an EDS update. diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_lds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_lds.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_lds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_lds.go index a71e38ea9..a2e057b0e 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_lds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_lds.go @@ -20,7 +20,7 @@ package xdsresource import ( "time" - "google.golang.org/grpc/xds/internal/httpfilter" + "google.golang.org/grpc/internal/xds/httpfilter" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_rds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_rds.go similarity index 98% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_rds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_rds.go index 42da39126..44bc27891 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/type_rds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/type_rds.go @@ -22,9 +22,9 @@ import ( "time" "google.golang.org/grpc/codes" + "google.golang.org/grpc/internal/xds/clusterspecifier" + "google.golang.org/grpc/internal/xds/httpfilter" "google.golang.org/grpc/internal/xds/matcher" - "google.golang.org/grpc/xds/internal/clusterspecifier" - "google.golang.org/grpc/xds/internal/httpfilter" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_cds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_cds.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_cds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_cds.go index 43247c5b8..d7133c996 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_cds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_cds.go @@ -36,8 +36,8 @@ import ( iserviceconfig "google.golang.org/grpc/internal/serviceconfig" "google.golang.org/grpc/internal/xds/bootstrap" "google.golang.org/grpc/internal/xds/matcher" - "google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version" + "google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" "google.golang.org/protobuf/types/known/structpb" diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_eds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_eds.go similarity index 72% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_eds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_eds.go index d56b42dd3..c5b9723a7 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_eds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_eds.go @@ -28,8 +28,8 @@ import ( v3typepb "github.com/envoyproxy/go-control-plane/envoy/type/v3" "google.golang.org/grpc/internal/envconfig" "google.golang.org/grpc/internal/pretty" - "google.golang.org/grpc/xds/internal" - "google.golang.org/grpc/xds/internal/clients" + xdsinternal "google.golang.org/grpc/internal/xds" + "google.golang.org/grpc/internal/xds/clients" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) @@ -108,30 +108,42 @@ func parseEndpoints(lbEndpoints []*v3endpointpb.LbEndpoint, uniqueEndpointAddrs } uniqueEndpointAddrs[a] = true } + + var endpointMetadata map[string]any + var hashKey string + if envconfig.XDSHTTPConnectEnabled || !envconfig.XDSEndpointHashKeyBackwardCompat { + var err error + endpointMetadata, err = validateAndConstructMetadata(lbEndpoint.GetMetadata()) + if err != nil { + return nil, err + } + + // "The xDS resolver, described in A74, will be changed to set the hash_key + // endpoint attribute to the value of LbEndpoint.Metadata envoy.lb hash_key + // field, as described in Envoy's documentation for the ring hash load + // balancer." - A76 + if !envconfig.XDSEndpointHashKeyBackwardCompat { + hashKey = hashKeyFromMetadata(endpointMetadata) + } + } endpoints = append(endpoints, Endpoint{ HealthStatus: EndpointHealthStatus(lbEndpoint.GetHealthStatus()), Addresses: addrs, Weight: weight, - HashKey: hashKey(lbEndpoint), + HashKey: hashKey, + Metadata: endpointMetadata, }) } return endpoints, nil } -// hashKey extracts and returns the hash key from the given LbEndpoint. If no -// hash key is found, it returns an empty string. -func hashKey(lbEndpoint *v3endpointpb.LbEndpoint) string { - // "The xDS resolver, described in A74, will be changed to set the hash_key - // endpoint attribute to the value of LbEndpoint.Metadata envoy.lb hash_key - // field, as described in Envoy's documentation for the ring hash load - // balancer." - A76 - if envconfig.XDSEndpointHashKeyBackwardCompat { - return "" - } - envoyLB := lbEndpoint.GetMetadata().GetFilterMetadata()["envoy.lb"] - if envoyLB != nil { - if h := envoyLB.GetFields()["hash_key"]; h != nil { - return h.GetStringValue() +// hashKey extracts and returns the hash key from the given endpoint metadata. +// If no hash key is found, it returns an empty string. +func hashKeyFromMetadata(metadata map[string]any) string { + envoyLB, ok := metadata["envoy.lb"].(StructMetadataValue) + if ok { + if h, ok := envoyLB.Data["hash_key"].(string); ok { + return h } } return "" @@ -170,7 +182,7 @@ func parseEDSRespProto(m *v3endpointpb.ClusterLoadAssignment) (EndpointsUpdate, Zone: l.Zone, SubZone: l.SubZone, } - lidStr := internal.LocalityString(lid) + lidStr := xdsinternal.LocalityString(lid) // "Since an xDS configuration can place a given locality under multiple // priorities, it is possible to see locality weight attributes with @@ -190,11 +202,21 @@ func parseEDSRespProto(m *v3endpointpb.ClusterLoadAssignment) (EndpointsUpdate, if err != nil { return EndpointsUpdate{}, err } + var localityMetadata map[string]any + if envconfig.XDSHTTPConnectEnabled { + var err error + localityMetadata, err = validateAndConstructMetadata(locality.GetMetadata()) + if err != nil { + return EndpointsUpdate{}, err + } + } + ret.Localities = append(ret.Localities, Locality{ ID: lid, Endpoints: endpoints, Weight: weight, Priority: priority, + Metadata: localityMetadata, }) } for i := 0; i < len(priorities); i++ { @@ -204,3 +226,34 @@ func parseEDSRespProto(m *v3endpointpb.ClusterLoadAssignment) (EndpointsUpdate, } return ret, nil } + +func validateAndConstructMetadata(metadataProto *v3corepb.Metadata) (map[string]any, error) { + if metadataProto == nil { + return nil, nil + } + metadata := make(map[string]any) + // First go through TypedFilterMetadata. + for key, anyProto := range metadataProto.GetTypedFilterMetadata() { + converter := metadataConverterForType(anyProto.GetTypeUrl()) + // Ignore types we don't have a converter for. + if converter == nil { + continue + } + val, err := converter.convert(anyProto) + if err != nil { + // If the converter fails, nack the whole resource. + return nil, fmt.Errorf("metadata conversion for key %q and type %q failed: %v", key, anyProto.GetTypeUrl(), err) + } + metadata[key] = val + } + + // Process FilterMetadata for any keys not already handled. + for key, structProto := range metadataProto.GetFilterMetadata() { + // Skip keys already added from TyperFilterMetadata. + if metadata[key] != nil { + continue + } + metadata[key] = StructMetadataValue{Data: structProto.AsMap()} + } + return metadata, nil +} diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_lds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_lds.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_lds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_lds.go index 475300cef..25c607b48 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_lds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_lds.go @@ -27,7 +27,7 @@ import ( v3listenerpb "github.com/envoyproxy/go-control-plane/envoy/config/listener/v3" v3routepb "github.com/envoyproxy/go-control-plane/envoy/config/route/v3" v3httppb "github.com/envoyproxy/go-control-plane/envoy/extensions/filters/network/http_connection_manager/v3" - "google.golang.org/grpc/xds/internal/httpfilter" + "google.golang.org/grpc/internal/xds/httpfilter" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" ) diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_rds.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_rds.go similarity index 99% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_rds.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_rds.go index db862514e..beab03ebb 100644 --- a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/unmarshal_rds.go +++ b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/unmarshal_rds.go @@ -25,8 +25,8 @@ import ( "time" "google.golang.org/grpc/codes" + "google.golang.org/grpc/internal/xds/clusterspecifier" "google.golang.org/grpc/internal/xds/matcher" - "google.golang.org/grpc/xds/internal/clusterspecifier" "google.golang.org/protobuf/proto" "google.golang.org/protobuf/types/known/anypb" diff --git a/vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version/version.go b/vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version/version.go similarity index 100% rename from vendor/google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version/version.go rename to vendor/google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version/version.go diff --git a/vendor/google.golang.org/grpc/stream.go b/vendor/google.golang.org/grpc/stream.go index d9bbd4c57..0a0af8961 100644 --- a/vendor/google.golang.org/grpc/stream.go +++ b/vendor/google.golang.org/grpc/stream.go @@ -549,6 +549,8 @@ type clientStream struct { sentLast bool // sent an end stream + receivedFirstMsg bool // set after the first message is received + methodConfig *MethodConfig ctx context.Context // the application's context, wrapped by stats/tracing @@ -1144,11 +1146,16 @@ func (a *csAttempt) recvMsg(m any, payInfo *payloadInfo) (err error) { if statusErr := a.transportStream.Status().Err(); statusErr != nil { return statusErr } + // Received no msg and status OK for non-server streaming rpcs. + if !cs.desc.ServerStreams && !cs.receivedFirstMsg { + return status.Error(codes.Internal, "cardinality violation: received no response message from non-server-streaming RPC") + } return io.EOF // indicates successful end of stream. } return toRPCErr(err) } + cs.receivedFirstMsg = true if a.trInfo != nil { a.mu.Lock() if a.trInfo.tr != nil { @@ -1177,7 +1184,7 @@ func (a *csAttempt) recvMsg(m any, payInfo *payloadInfo) (err error) { } else if err != nil { return toRPCErr(err) } - return status.Errorf(codes.Internal, "cardinality violation: expected for non server-streaming RPCs, but received another message") + return status.Error(codes.Internal, "cardinality violation: expected for non server-streaming RPCs, but received another message") } func (a *csAttempt) finish(err error) { @@ -1359,6 +1366,7 @@ type addrConnStream struct { transport transport.ClientTransport ctx context.Context sentLast bool + receivedFirstMsg bool desc *StreamDesc codec baseCodec sendCompressorV0 Compressor @@ -1484,10 +1492,15 @@ func (as *addrConnStream) RecvMsg(m any) (err error) { if statusErr := as.transportStream.Status().Err(); statusErr != nil { return statusErr } + // Received no msg and status OK for non-server streaming rpcs. + if !as.desc.ServerStreams && !as.receivedFirstMsg { + return status.Error(codes.Internal, "cardinality violation: received no response message from non-server-streaming RPC") + } return io.EOF // indicates successful end of stream. } return toRPCErr(err) } + as.receivedFirstMsg = true if as.desc.ServerStreams { // Subsequent messages should be received by subsequent RecvMsg calls. @@ -1501,7 +1514,7 @@ func (as *addrConnStream) RecvMsg(m any) (err error) { } else if err != nil { return toRPCErr(err) } - return status.Errorf(codes.Internal, "cardinality violation: expected for non server-streaming RPCs, but received another message") + return status.Error(codes.Internal, "cardinality violation: expected for non server-streaming RPCs, but received another message") } func (as *addrConnStream) finish(err error) { diff --git a/vendor/google.golang.org/grpc/version.go b/vendor/google.golang.org/grpc/version.go index 468f11065..76f2e0d06 100644 --- a/vendor/google.golang.org/grpc/version.go +++ b/vendor/google.golang.org/grpc/version.go @@ -19,4 +19,4 @@ package grpc // Version is the current grpc version. -const Version = "1.75.1" +const Version = "1.76.0" diff --git a/vendor/google.golang.org/grpc/xds/csds/csds.go b/vendor/google.golang.org/grpc/xds/csds/csds.go index 3d8398a72..603819d6c 100644 --- a/vendor/google.golang.org/grpc/xds/csds/csds.go +++ b/vendor/google.golang.org/grpc/xds/csds/csds.go @@ -31,8 +31,8 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/grpclog" internalgrpclog "google.golang.org/grpc/internal/grpclog" + "google.golang.org/grpc/internal/xds/xdsclient" "google.golang.org/grpc/status" - "google.golang.org/grpc/xds/internal/xdsclient" v3statusgrpc "github.com/envoyproxy/go-control-plane/envoy/service/status/v3" v3statuspb "github.com/envoyproxy/go-control-plane/envoy/service/status/v3" diff --git a/vendor/google.golang.org/grpc/xds/googledirectpath/googlec2p.go b/vendor/google.golang.org/grpc/xds/googledirectpath/googlec2p.go index f75c022d9..9ef59f1a9 100644 --- a/vendor/google.golang.org/grpc/xds/googledirectpath/googlec2p.go +++ b/vendor/google.golang.org/grpc/xds/googledirectpath/googlec2p.go @@ -38,8 +38,8 @@ import ( "google.golang.org/grpc/internal/googlecloud" internalgrpclog "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/xds/bootstrap" + "google.golang.org/grpc/internal/xds/xdsclient" "google.golang.org/grpc/resolver" - "google.golang.org/grpc/xds/internal/xdsclient" _ "google.golang.org/grpc/xds" // To register xds resolvers and balancers. ) @@ -182,6 +182,13 @@ func newNodeConfig(zone string, ipv6Capable bool) map[string]any { "id": fmt.Sprintf("C2P-%d", randInt()), "locality": map[string]any{"zone": zone}, } + if envconfig.NewPickFirstEnabled { + // Enable dualstack endpoints in TD. + // TODO(https://github.com/grpc/grpc-go/issues/8561): remove IPv6 metadata server queries entirely after old pick first is removed. + ipv6Capable = true + } else { + logger.Infof("GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST is disabled, setting ipv6Capable node metadata based on metadata server query") + } if ipv6Capable { node["metadata"] = map[string]any{ipv6CapableMetadataName: true} } diff --git a/vendor/google.golang.org/grpc/xds/internal/internal.go b/vendor/google.golang.org/grpc/xds/internal/internal.go deleted file mode 100644 index 9e0b7931b..000000000 --- a/vendor/google.golang.org/grpc/xds/internal/internal.go +++ /dev/null @@ -1,84 +0,0 @@ -/* - * - * Copyright 2019 gRPC authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// Package internal contains functions/structs shared by xds -// balancers/resolvers. -package internal - -import ( - "fmt" - - "google.golang.org/grpc/resolver" - "google.golang.org/grpc/xds/internal/clients" -) - -// LocalityString generates a string representation of clients.Locality in the -// format specified in gRFC A76. -func LocalityString(l clients.Locality) string { - return fmt.Sprintf("{region=%q, zone=%q, sub_zone=%q}", l.Region, l.Zone, l.SubZone) -} - -// IsLocalityEqual allows the values to be compared by Attributes.Equal. -func IsLocalityEqual(l clients.Locality, o any) bool { - ol, ok := o.(clients.Locality) - if !ok { - return false - } - return l.Region == ol.Region && l.Zone == ol.Zone && l.SubZone == ol.SubZone -} - -// LocalityFromString converts a string representation of clients.locality as -// specified in gRFC A76, into a LocalityID struct. -func LocalityFromString(s string) (ret clients.Locality, _ error) { - _, err := fmt.Sscanf(s, "{region=%q, zone=%q, sub_zone=%q}", &ret.Region, &ret.Zone, &ret.SubZone) - if err != nil { - return clients.Locality{}, fmt.Errorf("%s is not a well formatted locality ID, error: %v", s, err) - } - return ret, nil -} - -type localityKeyType string - -const localityKey = localityKeyType("grpc.xds.internal.address.locality") - -// GetLocalityID returns the locality ID of addr. -func GetLocalityID(addr resolver.Address) clients.Locality { - path, _ := addr.BalancerAttributes.Value(localityKey).(clients.Locality) - return path -} - -// SetLocalityID sets locality ID in addr to l. -func SetLocalityID(addr resolver.Address, l clients.Locality) resolver.Address { - addr.BalancerAttributes = addr.BalancerAttributes.WithValue(localityKey, l) - return addr -} - -// SetLocalityIDInEndpoint sets locality ID in endpoint to l. -func SetLocalityIDInEndpoint(endpoint resolver.Endpoint, l clients.Locality) resolver.Endpoint { - endpoint.Attributes = endpoint.Attributes.WithValue(localityKey, l) - return endpoint -} - -// ResourceTypeMapForTesting maps TypeUrl to corresponding ResourceType. -var ResourceTypeMapForTesting map[string]any - -// UnknownCSMLabels are TelemetryLabels emitted from CDS if CSM Telemetry Label -// data is not present in the CDS Resource. -var UnknownCSMLabels = map[string]string{ - "csm.service_name": "unknown", - "csm.service_namespace_name": "unknown", -} diff --git a/vendor/google.golang.org/grpc/xds/server.go b/vendor/google.golang.org/grpc/xds/server.go index 5baf91def..d49396cec 100644 --- a/vendor/google.golang.org/grpc/xds/server.go +++ b/vendor/google.golang.org/grpc/xds/server.go @@ -35,11 +35,11 @@ import ( istats "google.golang.org/grpc/internal/stats" "google.golang.org/grpc/internal/transport" "google.golang.org/grpc/internal/xds/bootstrap" + "google.golang.org/grpc/internal/xds/server" + "google.golang.org/grpc/internal/xds/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient/xdsresource" "google.golang.org/grpc/metadata" "google.golang.org/grpc/status" - "google.golang.org/grpc/xds/internal/server" - "google.golang.org/grpc/xds/internal/xdsclient" - "google.golang.org/grpc/xds/internal/xdsclient/xdsresource" ) const serverPrefix = "[xds-server %p] " diff --git a/vendor/google.golang.org/grpc/xds/server_options.go b/vendor/google.golang.org/grpc/xds/server_options.go index 4e3e3e9e2..c72d93ec3 100644 --- a/vendor/google.golang.org/grpc/xds/server_options.go +++ b/vendor/google.golang.org/grpc/xds/server_options.go @@ -24,7 +24,7 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/connectivity" "google.golang.org/grpc/internal/xds/bootstrap" - "google.golang.org/grpc/xds/internal/xdsclient" + "google.golang.org/grpc/internal/xds/xdsclient" ) type serverOptions struct { diff --git a/vendor/google.golang.org/grpc/xds/xds.go b/vendor/google.golang.org/grpc/xds/xds.go index 943d09f17..c6a1f25f7 100644 --- a/vendor/google.golang.org/grpc/xds/xds.go +++ b/vendor/google.golang.org/grpc/xds/xds.go @@ -38,13 +38,13 @@ import ( "google.golang.org/grpc/xds/csds" _ "google.golang.org/grpc/credentials/tls/certprovider/pemfile" // Register the file watcher certificate provider plugin. - _ "google.golang.org/grpc/xds/internal/balancer" // Register the balancers. - _ "google.golang.org/grpc/xds/internal/clusterspecifier/rls" // Register the RLS cluster specifier plugin. Note that this does not register the RLS LB policy. - _ "google.golang.org/grpc/xds/internal/httpfilter/fault" // Register the fault injection filter. - _ "google.golang.org/grpc/xds/internal/httpfilter/rbac" // Register the RBAC filter. - _ "google.golang.org/grpc/xds/internal/httpfilter/router" // Register the router filter. - _ "google.golang.org/grpc/xds/internal/resolver" // Register the xds_resolver. - _ "google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/converter" // Register the xDS LB Registry Converters. + _ "google.golang.org/grpc/internal/xds/balancer" // Register the balancers. + _ "google.golang.org/grpc/internal/xds/clusterspecifier/rls" // Register the RLS cluster specifier plugin. Note that this does not register the RLS LB policy. + _ "google.golang.org/grpc/internal/xds/httpfilter/fault" // Register the fault injection filter. + _ "google.golang.org/grpc/internal/xds/httpfilter/rbac" // Register the RBAC filter. + _ "google.golang.org/grpc/internal/xds/httpfilter/router" // Register the router filter. + _ "google.golang.org/grpc/internal/xds/resolver" // Register the xds_resolver. + _ "google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/converter" // Register the xDS LB Registry Converters. v3statusgrpc "github.com/envoyproxy/go-control-plane/envoy/service/status/v3" ) diff --git a/vendor/modules.txt b/vendor/modules.txt index 8c5df90d2..11933075b 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -132,7 +132,7 @@ github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric # github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0 ## explicit; go 1.23.0 github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping -# github.com/aws/aws-sdk-go-v2 v1.39.3 +# github.com/aws/aws-sdk-go-v2 v1.39.4 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/aws github.com/aws/aws-sdk-go-v2/aws/arn @@ -161,23 +161,23 @@ github.com/aws/aws-sdk-go-v2/internal/timeconv ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi -# github.com/aws/aws-sdk-go-v2/credentials v1.18.17 +# github.com/aws/aws-sdk-go-v2/credentials v1.18.19 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/credentials/ec2rolecreds -# github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.10 +# github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.11 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/feature/ec2/imds github.com/aws/aws-sdk-go-v2/feature/ec2/imds/internal/config -# github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.13 +# github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.19.15 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/feature/s3/manager -# github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.10 +# github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.11 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/internal/configsources -# github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.10 +# github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.11 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 -# github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.10 +# github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.11 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/internal/v4a github.com/aws/aws-sdk-go-v2/internal/v4a/internal/crypto @@ -185,18 +185,18 @@ github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4 # github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.2 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding -# github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.1 +# github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.2 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/service/internal/checksum -# github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.10 +# github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.11 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/service/internal/presigned-url -# github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.10 +# github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.11 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/service/internal/s3shared github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config -# github.com/aws/aws-sdk-go-v2/service/s3 v1.88.5 +# github.com/aws/aws-sdk-go-v2/service/s3 v1.88.7 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/service/s3 github.com/aws/aws-sdk-go-v2/service/s3/internal/arn @@ -316,7 +316,7 @@ github.com/envoyproxy/protoc-gen-validate/validate # github.com/felixge/httpsnoop v1.0.4 ## explicit; go 1.13 github.com/felixge/httpsnoop -# github.com/go-jose/go-jose/v4 v4.1.1 +# github.com/go-jose/go-jose/v4 v4.1.2 ## explicit; go 1.23.0 github.com/go-jose/go-jose/v4 github.com/go-jose/go-jose/v4/cipher @@ -551,10 +551,10 @@ golang.org/x/text/secure/bidirule golang.org/x/text/transform golang.org/x/text/unicode/bidi golang.org/x/text/unicode/norm -# golang.org/x/time v0.13.0 +# golang.org/x/time v0.14.0 ## explicit; go 1.24.0 golang.org/x/time/rate -# google.golang.org/api v0.252.0 +# google.golang.org/api v0.253.0 ## explicit; go 1.24.0 google.golang.org/api/googleapi google.golang.org/api/googleapi/transport @@ -586,13 +586,13 @@ google.golang.org/genproto/googleapis/api/expr/v1alpha1 google.golang.org/genproto/googleapis/api/label google.golang.org/genproto/googleapis/api/metric google.golang.org/genproto/googleapis/api/monitoredres -# google.golang.org/genproto/googleapis/rpc v0.0.0-20251002232023-7c0ddcbb5797 +# google.golang.org/genproto/googleapis/rpc v0.0.0-20251014184007-4626949a642f ## explicit; go 1.24.0 google.golang.org/genproto/googleapis/rpc/code google.golang.org/genproto/googleapis/rpc/errdetails google.golang.org/genproto/googleapis/rpc/status -# google.golang.org/grpc v1.75.1 -## explicit; go 1.23.0 +# google.golang.org/grpc v1.76.0 +## explicit; go 1.24.0 google.golang.org/grpc google.golang.org/grpc/attributes google.golang.org/grpc/authz/audit @@ -683,10 +683,46 @@ google.golang.org/grpc/internal/transport google.golang.org/grpc/internal/transport/networktype google.golang.org/grpc/internal/wrr google.golang.org/grpc/internal/xds +google.golang.org/grpc/internal/xds/balancer +google.golang.org/grpc/internal/xds/balancer/cdsbalancer +google.golang.org/grpc/internal/xds/balancer/clusterimpl +google.golang.org/grpc/internal/xds/balancer/clustermanager +google.golang.org/grpc/internal/xds/balancer/clusterresolver +google.golang.org/grpc/internal/xds/balancer/loadstore +google.golang.org/grpc/internal/xds/balancer/outlierdetection +google.golang.org/grpc/internal/xds/balancer/priority +google.golang.org/grpc/internal/xds/balancer/wrrlocality google.golang.org/grpc/internal/xds/bootstrap google.golang.org/grpc/internal/xds/bootstrap/tlscreds +google.golang.org/grpc/internal/xds/clients +google.golang.org/grpc/internal/xds/clients/grpctransport +google.golang.org/grpc/internal/xds/clients/internal +google.golang.org/grpc/internal/xds/clients/internal/backoff +google.golang.org/grpc/internal/xds/clients/internal/buffer +google.golang.org/grpc/internal/xds/clients/internal/pretty +google.golang.org/grpc/internal/xds/clients/internal/syncutil +google.golang.org/grpc/internal/xds/clients/lrsclient +google.golang.org/grpc/internal/xds/clients/lrsclient/internal +google.golang.org/grpc/internal/xds/clients/xdsclient +google.golang.org/grpc/internal/xds/clients/xdsclient/internal +google.golang.org/grpc/internal/xds/clients/xdsclient/internal/xdsresource +google.golang.org/grpc/internal/xds/clients/xdsclient/metrics +google.golang.org/grpc/internal/xds/clusterspecifier +google.golang.org/grpc/internal/xds/clusterspecifier/rls +google.golang.org/grpc/internal/xds/httpfilter +google.golang.org/grpc/internal/xds/httpfilter/fault +google.golang.org/grpc/internal/xds/httpfilter/rbac +google.golang.org/grpc/internal/xds/httpfilter/router google.golang.org/grpc/internal/xds/matcher google.golang.org/grpc/internal/xds/rbac +google.golang.org/grpc/internal/xds/resolver +google.golang.org/grpc/internal/xds/resolver/internal +google.golang.org/grpc/internal/xds/server +google.golang.org/grpc/internal/xds/xdsclient +google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry +google.golang.org/grpc/internal/xds/xdsclient/xdslbregistry/converter +google.golang.org/grpc/internal/xds/xdsclient/xdsresource +google.golang.org/grpc/internal/xds/xdsclient/xdsresource/version google.golang.org/grpc/keepalive google.golang.org/grpc/mem google.golang.org/grpc/metadata @@ -708,43 +744,6 @@ google.golang.org/grpc/xds google.golang.org/grpc/xds/bootstrap google.golang.org/grpc/xds/csds google.golang.org/grpc/xds/googledirectpath -google.golang.org/grpc/xds/internal -google.golang.org/grpc/xds/internal/balancer -google.golang.org/grpc/xds/internal/balancer/cdsbalancer -google.golang.org/grpc/xds/internal/balancer/clusterimpl -google.golang.org/grpc/xds/internal/balancer/clustermanager -google.golang.org/grpc/xds/internal/balancer/clusterresolver -google.golang.org/grpc/xds/internal/balancer/loadstore -google.golang.org/grpc/xds/internal/balancer/outlierdetection -google.golang.org/grpc/xds/internal/balancer/priority -google.golang.org/grpc/xds/internal/balancer/wrrlocality -google.golang.org/grpc/xds/internal/clients -google.golang.org/grpc/xds/internal/clients/grpctransport -google.golang.org/grpc/xds/internal/clients/internal -google.golang.org/grpc/xds/internal/clients/internal/backoff -google.golang.org/grpc/xds/internal/clients/internal/buffer -google.golang.org/grpc/xds/internal/clients/internal/pretty -google.golang.org/grpc/xds/internal/clients/internal/syncutil -google.golang.org/grpc/xds/internal/clients/lrsclient -google.golang.org/grpc/xds/internal/clients/lrsclient/internal -google.golang.org/grpc/xds/internal/clients/xdsclient -google.golang.org/grpc/xds/internal/clients/xdsclient/internal -google.golang.org/grpc/xds/internal/clients/xdsclient/internal/xdsresource -google.golang.org/grpc/xds/internal/clients/xdsclient/metrics -google.golang.org/grpc/xds/internal/clusterspecifier -google.golang.org/grpc/xds/internal/clusterspecifier/rls -google.golang.org/grpc/xds/internal/httpfilter -google.golang.org/grpc/xds/internal/httpfilter/fault -google.golang.org/grpc/xds/internal/httpfilter/rbac -google.golang.org/grpc/xds/internal/httpfilter/router -google.golang.org/grpc/xds/internal/resolver -google.golang.org/grpc/xds/internal/resolver/internal -google.golang.org/grpc/xds/internal/server -google.golang.org/grpc/xds/internal/xdsclient -google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry -google.golang.org/grpc/xds/internal/xdsclient/xdslbregistry/converter -google.golang.org/grpc/xds/internal/xdsclient/xdsresource -google.golang.org/grpc/xds/internal/xdsclient/xdsresource/version # google.golang.org/protobuf v1.36.10 ## explicit; go 1.23 google.golang.org/protobuf/encoding/protojson