From e9454da639dc68ac76dc301f3f8f0d7aa4177c4f Mon Sep 17 00:00:00 2001 From: Ed Schouten Date: Mon, 26 Jan 2026 22:37:23 +0100 Subject: [PATCH 1/3] Upgrade all Go dependencies --- MODULE.bazel | 5 +- MODULE.bazel.lock | 875 +++++++++++++++++- go.mod | 164 ++-- go.sum | 363 ++++---- pkg/proto/auth/auth.pb.go | 2 +- pkg/proto/blobstore/local/local.pb.go | 2 +- pkg/proto/configuration/auth/auth.pb.go | 2 +- pkg/proto/configuration/bb_copy/bb_copy.pb.go | 2 +- .../bb_replicator/bb_replicator.pb.go | 2 +- .../configuration/bb_storage/bb_storage.pb.go | 2 +- .../configuration/blobstore/blobstore.pb.go | 2 +- .../blockdevice/blockdevice.pb.go | 2 +- pkg/proto/configuration/builder/builder.pb.go | 2 +- pkg/proto/configuration/cloud/aws/aws.pb.go | 2 +- pkg/proto/configuration/cloud/gcp/gcp.pb.go | 2 +- pkg/proto/configuration/digest/digest.pb.go | 2 +- .../configuration/eviction/eviction.pb.go | 2 +- pkg/proto/configuration/global/global.pb.go | 2 +- pkg/proto/configuration/grpc/grpc.pb.go | 2 +- .../configuration/http/client/client.pb.go | 2 +- .../configuration/http/server/server.pb.go | 2 +- .../configuration/jmespath/jmespath.pb.go | 2 +- pkg/proto/configuration/jwt/jwt.pb.go | 2 +- .../sync_jwks_to_configmap.pb.go | 2 +- pkg/proto/configuration/tls/tls.pb.go | 2 +- pkg/proto/configuration/x509/x509.pb.go | 2 +- pkg/proto/fsac/fsac.pb.go | 2 +- pkg/proto/http/oidc/oidc.pb.go | 2 +- pkg/proto/icas/icas.pb.go | 2 +- pkg/proto/iscc/iscc.pb.go | 2 +- pkg/proto/replicator/replicator.pb.go | 2 +- tools/deps.go | 2 +- 32 files changed, 1169 insertions(+), 294 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 26e01ffde..1150ccaee 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -11,8 +11,9 @@ bazel_dep(name = "opentelemetry-proto", version = "1.8.0") bazel_dep(name = "toolchains_protoc", version = "0.6.0") # must come BEFORE protobuf so the toolchain registration wins bazel_dep(name = "platforms", version = "1.0.0") bazel_dep(name = "protobuf", version = "33.0") +bazel_dep(name = "protoc-gen-validate", version = "1.3.0") bazel_dep(name = "rules_foreign_cc", version = "0.15.1") -bazel_dep(name = "rules_go", version = "0.58.3") +bazel_dep(name = "rules_go", version = "0.59.0") bazel_dep(name = "rules_img", version = "0.2.9") bazel_dep(name = "rules_jsonnet", version = "0.7.2") bazel_dep(name = "rules_nodejs", version = "6.6.0") @@ -22,7 +23,7 @@ bazel_dep(name = "toolchains_llvm", version = "1.5.0") git_override( module_name = "bazel_remote_apis", - commit = "3860ca2d3e559d487b7d4ad07aa2a4a08d7624da", + commit = "b02e15a6d354e2fb553216132ccec79f3f5b39cb", remote = "https://github.com/bazelbuild/remote-apis.git", ) diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock index 9ef366985..fc9c8a887 100644 --- a/MODULE.bazel.lock +++ b/MODULE.bazel.lock @@ -239,8 +239,9 @@ "https://bcr.bazel.build/modules/protoc-gen-validate/1.0.4/MODULE.bazel": "b8913c154b16177990f6126d2d2477d187f9ddc568e95ee3e2d50fc65d2c494a", "https://bcr.bazel.build/modules/protoc-gen-validate/1.2.1.bcr.1/MODULE.bazel": "4bf09676b62fa587ae07e073420a76ec8766dcce7545e5f8c68cfa8e484b5120", "https://bcr.bazel.build/modules/protoc-gen-validate/1.2.1.bcr.2/MODULE.bazel": "3bd4b14a8e7c78dbef973280deabaa139db1fe350aa92da03730a31f59082068", - "https://bcr.bazel.build/modules/protoc-gen-validate/1.2.1.bcr.2/source.json": "14c28a5527fcd699f5efbf83a046666efabed3384364bd48428de89dfdc8110e", "https://bcr.bazel.build/modules/protoc-gen-validate/1.2.1/MODULE.bazel": "52b51f50533ec4fbd5d613cd093773f979ac2e035d954e02ca11de383f502505", + "https://bcr.bazel.build/modules/protoc-gen-validate/1.3.0/MODULE.bazel": "855f39728e842d039c90c47ef67e7c6b125e70b8ffba189737aa3296d6952a9d", + "https://bcr.bazel.build/modules/protoc-gen-validate/1.3.0/source.json": "99450ea68384ecc8068189edb8f7940d1056abb7e50aae8a7fa80999a05ad733", "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/MODULE.bazel": "88af1c246226d87e65be78ed49ecd1e6f5e98648558c14ce99176da041dc378e", "https://bcr.bazel.build/modules/pybind11_bazel/2.12.0/MODULE.bazel": "e6f4c20442eaa7c90d7190d8dc539d0ab422f95c65a57cc59562170c58ae3d34", "https://bcr.bazel.build/modules/pybind11_bazel/2.12.0/source.json": "6900fdc8a9e95866b8c0d4ad4aba4d4236317b5c1cd04c502df3f0d33afed680", @@ -297,7 +298,8 @@ "https://bcr.bazel.build/modules/rules_go/0.50.1/MODULE.bazel": "b91a308dc5782bb0a8021ad4330c81fea5bda77f96b9e4c117b9b9c8f6665ee0", "https://bcr.bazel.build/modules/rules_go/0.53.0/MODULE.bazel": "a4ed760d3ac0dbc0d7b967631a9a3fd9100d28f7d9fcf214b4df87d4bfff5f9a", "https://bcr.bazel.build/modules/rules_go/0.58.3/MODULE.bazel": "5582119a4a39558d8d1b1634bcae46043d4f43a31415e861c3551b2860040b5e", - "https://bcr.bazel.build/modules/rules_go/0.58.3/source.json": "0bacbf5ee9eefb089b03fbd4691dd8f63b4e630515b160731e417ffeb3bd0fdb", + "https://bcr.bazel.build/modules/rules_go/0.59.0/MODULE.bazel": "b7e43e7414a3139a7547d1b4909b29085fbe5182b6c58cbe1ed4c6272815aeae", + "https://bcr.bazel.build/modules/rules_go/0.59.0/source.json": "1df17bb7865cfc029492c30163cee891d0dd8658ea0d5bfdf252c4b6db5c1ef6", "https://bcr.bazel.build/modules/rules_img/0.2.9/MODULE.bazel": "cb7862e4d17b632a6ce96b15444025e093e4d3d28d4c20195221bba42abe3e19", "https://bcr.bazel.build/modules/rules_img/0.2.9/source.json": "b99c432a97a02b0920f39fde2b09ebfae996649ba260c469d703332aaf75dddd", "https://bcr.bazel.build/modules/rules_java/4.0.0/MODULE.bazel": "5a78a7ae82cd1a33cef56dc578c7d2a46ed0dca12643ee45edbb8417899e6f74", @@ -857,5 +859,872 @@ } } }, - "facts": {} + "facts": { + "@@rules_go+//go:extensions.bzl%go_sdk": { + "1.20.2": { + "darwin_amd64": [ + "go1.20.2.darwin-amd64.tar.gz", + "c93b8ced9517d07e1cd4c362c6e2d5242cb139e29b417a328fbf19aded08764c" + ], + "darwin_arm64": [ + "go1.20.2.darwin-arm64.tar.gz", + "7343c87f19e79c0063532e82e1c4d6f42175a32d99f7a4d15e658e88bf97f885" + ], + "freebsd_386": [ + "go1.20.2.freebsd-386.tar.gz", + "14f9be2004e042b3a64d0facb0c020756a9084a5c7333e33b0752b393b6016ea" + ], + "freebsd_amd64": [ + "go1.20.2.freebsd-amd64.tar.gz", + "b41b67b4f1b56797a7cecf6ee7f47fcf4f93960b2788a3683c07dd009d30b2a4" + ], + "linux_386": [ + "go1.20.2.linux-386.tar.gz", + "ee240ed33ae57504c41f04c12236aeaa17fbeb6ea9fcd096cd9dc7a89d10d4db" + ], + "linux_amd64": [ + "go1.20.2.linux-amd64.tar.gz", + "4eaea32f59cde4dc635fbc42161031d13e1c780b87097f4b4234cfce671f1768" + ], + "linux_arm64": [ + "go1.20.2.linux-arm64.tar.gz", + "78d632915bb75e9a6356a47a42625fd1a785c83a64a643fedd8f61e31b1b3bef" + ], + "linux_armv6l": [ + "go1.20.2.linux-armv6l.tar.gz", + "d79d56bafd6b52b8d8cbe3f8e967caaac5383a23d7a4fa9ac0e89778cd16a076" + ], + "linux_ppc64le": [ + "go1.20.2.linux-ppc64le.tar.gz", + "850564ddb760cb703db63bf20182dc4407abd2ff090a95fa66d6634d172fd095" + ], + "linux_s390x": [ + "go1.20.2.linux-s390x.tar.gz", + "8da24c5c4205fe8115f594237e5db7bcb1d23df67bc1fa9a999954b1976896e8" + ], + "windows_386": [ + "go1.20.2.windows-386.zip", + "31838b291117495bbb93683603e98d5118bfabd2eb318b4d07540bfd524bab86" + ], + "windows_amd64": [ + "go1.20.2.windows-amd64.zip", + "fe439f0e438f7555a7f5f7194ddb6f4a07b0de1fa414385d19f2aeb26d9f43db" + ], + "windows_arm64": [ + "go1.20.2.windows-arm64.zip", + "ac5010c8b8b22849228a8dea698d58b9c7be2195d30c6d778cce0f709858fa64" + ] + }, + "1.22.0": { + "aix_ppc64": [ + "go1.22.0.aix-ppc64.tar.gz", + "190e105fc4133a8b5bb1492f368fa89aa4b729270441120714be7ee82e871ebc" + ], + "darwin_amd64": [ + "go1.22.0.darwin-amd64.tar.gz", + "ebca81df938d2d1047cc992be6c6c759543cf309d401b86af38a6aed3d4090f4" + ], + "darwin_arm64": [ + "go1.22.0.darwin-arm64.tar.gz", + "bf8e388b09134164717cd52d3285a4ab3b68691b80515212da0e9f56f518fb1e" + ], + "dragonfly_amd64": [ + "go1.22.0.dragonfly-amd64.tar.gz", + "357ab446200effa26c73ccaf3e8551426428950bf2490859fb296a09e53228b1" + ], + "freebsd_386": [ + "go1.22.0.freebsd-386.tar.gz", + "b8065da37783e8b9e7086365a54d74537e832c92311b61101a66989ab2458d8e" + ], + "freebsd_amd64": [ + "go1.22.0.freebsd-amd64.tar.gz", + "50f421c7f217083ac94aab1e09400cb9c2fea7d337679ec11f1638a11460da30" + ], + "freebsd_arm64": [ + "go1.22.0.freebsd-arm64.tar.gz", + "e23385e5c640787fa02cd58f2301ea09e162c4d99f8ca9fa6d52766f428a933d" + ], + "freebsd_armv6l": [ + "go1.22.0.freebsd-arm.tar.gz", + "c9c8b305f90903536f4981bad9f029828c2483b3216ca1783777344fbe603f2d" + ], + "freebsd_riscv64": [ + "go1.22.0.freebsd-riscv64.tar.gz", + "c8f94d1de6024546194d58e7b9370dc7ea06176aad94a675b0062c25c40cb645" + ], + "illumos_amd64": [ + "go1.22.0.illumos-amd64.tar.gz", + "d6792f11ad6ee5fc42d2fe51e1f1683471aa2ee4f20e3ad1be22a4afdbd38e7f" + ], + "linux_386": [ + "go1.22.0.linux-386.tar.gz", + "1e209c4abde069067ac9afb341c8003db6a210f8173c77777f02d3a524313da3" + ], + "linux_amd64": [ + "go1.22.0.linux-amd64.tar.gz", + "f6c8a87aa03b92c4b0bf3d558e28ea03006eb29db78917daec5cfb6ec1046265" + ], + "linux_arm64": [ + "go1.22.0.linux-arm64.tar.gz", + "6a63fef0e050146f275bf02a0896badfe77c11b6f05499bb647e7bd613a45a10" + ], + "linux_armv6l": [ + "go1.22.0.linux-armv6l.tar.gz", + "0525f92f79df7ed5877147bce7b955f159f3962711b69faac66bc7121d36dcc4" + ], + "linux_loong64": [ + "go1.22.0.linux-loong64.tar.gz", + "b4b1d425cc113608452a32768469b6e34e538fd072bde9f508a75c8dbbdb843f" + ], + "linux_mips": [ + "go1.22.0.linux-mips.tar.gz", + "ec0f9194df750c78492c02e4c70ffe6f3864f2511e47c894415320db752719f8" + ], + "linux_mips64": [ + "go1.22.0.linux-mips64.tar.gz", + "47e938d215e4968ab42afb7307792e5e64184a717e8f176d0de7c411af96d63d" + ], + "linux_mips64le": [ + "go1.22.0.linux-mips64le.tar.gz", + "c162a1a516b8bc8839fc0c0283ad90f6b511e5aca3da4939ed4800f124b9e72c" + ], + "linux_mipsle": [ + "go1.22.0.linux-mipsle.tar.gz", + "6ce3e9a06e3a8ca0312dc1f85046b6914c19852eba5393c5cbf26acf698f8977" + ], + "linux_ppc64": [ + "go1.22.0.linux-ppc64.tar.gz", + "5ae23bf460731eb078f5700b01a50a303308b9f7174a2994892e28bf061f7c85" + ], + "linux_ppc64le": [ + "go1.22.0.linux-ppc64le.tar.gz", + "0e57f421df9449066f00155ce98a5be93744b3d81b00ee4c2c9b511be2a31d93" + ], + "linux_riscv64": [ + "go1.22.0.linux-riscv64.tar.gz", + "afe9cedcdbd6fdff27c57efd30aa5ce0f666f471fed5fa96cd4fb38d6b577086" + ], + "linux_s390x": [ + "go1.22.0.linux-s390x.tar.gz", + "2e546a3583ba7bd3988f8f476245698f6a93dfa9fe206a8ca8f85c1ceecb2446" + ], + "netbsd_386": [ + "go1.22.0.netbsd-386.tar.gz", + "9b7e2dbd43a169bff18bf533a6c2f462eebe04126ab01c138d0d669c046e1658" + ], + "netbsd_amd64": [ + "go1.22.0.netbsd-amd64.tar.gz", + "b11995c271d2256dfe85cf54882ca3655e18c49c4d7db0502bff9977767894e7" + ], + "netbsd_arm64": [ + "go1.22.0.netbsd-arm64.tar.gz", + "499918ccfedde78264d194244d251bf41d95cf606cc0adad13b36b8103cb974f" + ], + "netbsd_armv6l": [ + "go1.22.0.netbsd-arm.tar.gz", + "b57a3aa9c862300ec0ee8609ce5e0f430f132044f351677fd34711a504081872" + ], + "openbsd_386": [ + "go1.22.0.openbsd-386.tar.gz", + "379e0829104c18a139d78b33378e6bd3ab2e0792f6c43b4c38e7f20d8d77b99d" + ], + "openbsd_amd64": [ + "go1.22.0.openbsd-amd64.tar.gz", + "ceb0c97ffc3bfaf74e1df843cb8571d7fc3173a08432f0f42112495df6a31520" + ], + "openbsd_arm64": [ + "go1.22.0.openbsd-arm64.tar.gz", + "358801cab7122ab50d7d92727644f26d818e9e973403f09e85c2e935a625db75" + ], + "openbsd_armv6l": [ + "go1.22.0.openbsd-arm.tar.gz", + "8af5aea3df539bc95ed412c0a176fe84baced70ea1dd29f4aa82d0e9ce27fd9f" + ], + "plan9_386": [ + "go1.22.0.plan9-386.tar.gz", + "fa42c545c9025c45ca9af176dc13a0f4af0cc26bacff6fcb35bb4a170ac538e8" + ], + "plan9_amd64": [ + "go1.22.0.plan9-amd64.tar.gz", + "d8cf64f37a1dfd8e190c5a303c43ab2d49324868f098d88a3106072d137a5a0b" + ], + "plan9_armv6l": [ + "go1.22.0.plan9-arm.tar.gz", + "86fd6165f0cbb47ad551094f74b3e5a6c5e09de858d8b99de72d978d41be6e2a" + ], + "solaris_amd64": [ + "go1.22.0.solaris-amd64.tar.gz", + "a6c12651768d3a74f16104502b4b7bef513ea6b646d99990a28d934c261d1689" + ], + "windows_386": [ + "go1.22.0.windows-386.zip", + "553d44928509965cbda02a45b35ab01cf8b925534bc526a34e2d9dc7794b57e8" + ], + "windows_amd64": [ + "go1.22.0.windows-amd64.zip", + "78b3158fe3aa358e0b6c9f26ecd338f9a11441e88bc434ae2e9f0ca2b0cc4dd3" + ], + "windows_arm64": [ + "go1.22.0.windows-arm64.zip", + "31a61e41d06a3bb2189a303f5f3e777ca4b454eff439f0a67bc2b166330021f4" + ], + "windows_armv6l": [ + "go1.22.0.windows-arm.zip", + "495c7dfaea4e2bf48643662bb622e4ce6378d6d9840015238ad4b8792b99ddbf" + ] + }, + "1.23.7": { + "aix_ppc64": [ + "go1.23.7.aix-ppc64.tar.gz", + "5934ade0f845e19e6ac50dd4a7cbc3f39f06cfa2d7137a4021e5113de9d66df8" + ], + "darwin_amd64": [ + "go1.23.7.darwin-amd64.tar.gz", + "3a3d6745286297cd011d2ab071998a85fe82714bf178dc3cd6ecd3d043a59270" + ], + "darwin_arm64": [ + "go1.23.7.darwin-arm64.tar.gz", + "a08a77374a4a8ab25568cddd9dad5ba7bb6d21e04c650dc2af3def6c9115ebba" + ], + "dragonfly_amd64": [ + "go1.23.7.dragonfly-amd64.tar.gz", + "30c626981363513cb925706978a3a8cb3516cdeae619ed9a67d4a3fbed0b21e8" + ], + "freebsd_386": [ + "go1.23.7.freebsd-386.tar.gz", + "4bc9c3583236b13a9f1ec22c133fe4436714d56ebc0ee96733d4f6f0eb3c7ae1" + ], + "freebsd_amd64": [ + "go1.23.7.freebsd-amd64.tar.gz", + "c0e7a5ff1875eb79d7c2acfa1616718ad892c0b2637d56594fdc3332e313efd4" + ], + "freebsd_arm": [ + "go1.23.7.freebsd-arm.tar.gz", + "311e69d052bb732bca74cb64cba2d7d648e9af7a5c5d0c5e84a11efb77d287d0" + ], + "freebsd_arm64": [ + "go1.23.7.freebsd-arm64.tar.gz", + "2b51c940898fad6708609495b9a27b5869cf5195381fc4a31a013006aa4eb156" + ], + "freebsd_riscv64": [ + "go1.23.7.freebsd-riscv64.tar.gz", + "ab00bd1b61491be2d60ff41a88b3e59d812236484eaf6232513985a1287693ba" + ], + "illumos_amd64": [ + "go1.23.7.illumos-amd64.tar.gz", + "5ca64c74aa26b7e6bb6fd8609c5526511ddba21a0ec337b63a4f0352d04952b7" + ], + "linux_386": [ + "go1.23.7.linux-386.tar.gz", + "9115f7d751efe5b17b63a7630d24cd0a2479976465eecb277b5deec8aa0f4143" + ], + "linux_amd64": [ + "go1.23.7.linux-amd64.tar.gz", + "4741525e69841f2e22f9992af25df0c1112b07501f61f741c12c6389fcb119f3" + ], + "linux_arm64": [ + "go1.23.7.linux-arm64.tar.gz", + "597acbd0505250d4d98c4c83adf201562a8c812cbcd7b341689a07087a87a541" + ], + "linux_armv6l": [ + "go1.23.7.linux-armv6l.tar.gz", + "c9e9ecd6a8cf1429f1c65d81115c450258258ac65833d95a82d5f4e5ad7d2d7a" + ], + "linux_loong64": [ + "go1.23.7.linux-loong64.tar.gz", + "b9fb0ae7116cee77e88e1e2f54cca44343a71168b944768c48188cd1957fb3f8" + ], + "linux_mips": [ + "go1.23.7.linux-mips.tar.gz", + "27404833dc64673cacdd1470d77bf4235252ca5ca7a1fb47b465ff3b98cc31df" + ], + "linux_mips64": [ + "go1.23.7.linux-mips64.tar.gz", + "fd1b628f2491b8be86791ad63e2b61b17909b6e1b3ae37ddcd27b9a5faddcd87" + ], + "linux_mips64le": [ + "go1.23.7.linux-mips64le.tar.gz", + "f1d91a01bfe537bef687e2ab11f0c67ae8948d1ab1662110edcbfd7fd1803d9c" + ], + "linux_mipsle": [ + "go1.23.7.linux-mipsle.tar.gz", + "bdcaa3fddb09b53c42a8963fcbfb52a29feeaf34bdcec7d59e54eab0d16bfb12" + ], + "linux_ppc64": [ + "go1.23.7.linux-ppc64.tar.gz", + "ce2226b5e0940116cf9c791aa912ce62b3baac8bf2aaf09a1cd1e1de33456fd3" + ], + "linux_ppc64le": [ + "go1.23.7.linux-ppc64le.tar.gz", + "3ffc310bfd11fd0bcc713a764a0f7252c4d52d03f12abebfaebaaae77e027028" + ], + "linux_riscv64": [ + "go1.23.7.linux-riscv64.tar.gz", + "6474c707a09633ebd3117eb9127de467fbc482932164f1d1b1084e3be40c36f7" + ], + "linux_s390x": [ + "go1.23.7.linux-s390x.tar.gz", + "af1d4c5d01e32c2cf6e3cc00e44cb240e1a6cef539b28a64389b2b9ca284ac6c" + ], + "netbsd_386": [ + "go1.23.7.netbsd-386.tar.gz", + "a8d2db89fc99fc2e2c01419dbc95ab9d2da139c750fee8d3f47df2bae2745fc5" + ], + "netbsd_amd64": [ + "go1.23.7.netbsd-amd64.tar.gz", + "8769b0d546f1b102827f3f129aed8650cd2aedc79c886f819cdbe3a70d09ef62" + ], + "netbsd_arm": [ + "go1.23.7.netbsd-arm.tar.gz", + "9bad2e989c71a0cf8c1940519ead4b6792595e0286f7ec0ce0474098b5df9c71" + ], + "netbsd_arm64": [ + "go1.23.7.netbsd-arm64.tar.gz", + "b9ceb39db2765b86b3dc11edcd16feebba08706a1fa9d0f16223bd0299e59a78" + ], + "openbsd_386": [ + "go1.23.7.openbsd-386.tar.gz", + "1929e4eadaad4be8139bdf8ad0f28b38dc24ee57539d7bc3a0a5fd629cf6cddc" + ], + "openbsd_amd64": [ + "go1.23.7.openbsd-amd64.tar.gz", + "d1c9e78bba09c215c83daf9040dfb0ac545d634bde1130cc11b3fe5bbec52a65" + ], + "openbsd_arm": [ + "go1.23.7.openbsd-arm.tar.gz", + "40c1b1b9b42329a0265e0b8023c1fd3515675741ed0a4ca15ee952751e24ba5b" + ], + "openbsd_arm64": [ + "go1.23.7.openbsd-arm64.tar.gz", + "61cc713416cbe81b470626915ccccd32c78da71d1fe38b8d12c46cb61794dc6c" + ], + "openbsd_ppc64": [ + "go1.23.7.openbsd-ppc64.tar.gz", + "c2b5d038c0f21fd1e6513f7877c67d7ef4532193620bc54dc4d8233d0a1ecf25" + ], + "openbsd_riscv64": [ + "go1.23.7.openbsd-riscv64.tar.gz", + "db1b1b5b6b52e753b383688c4758e1dc90f9bf4e4a9809a995783a50b9eeccb2" + ], + "plan9_386": [ + "go1.23.7.plan9-386.tar.gz", + "5b78458002528ae9f0ae4c7ffa148e6023e2cb23804c11a68e8116028d995f0c" + ], + "plan9_amd64": [ + "go1.23.7.plan9-amd64.tar.gz", + "2dba02734fc1a45c145f5d0c186d86c1f0da107b99b283be318706832b5cf46a" + ], + "plan9_arm": [ + "go1.23.7.plan9-arm.tar.gz", + "c2f22c9313c82059526b9ed24001c02ef307f8881bfd898fc3de0ef1774130eb" + ], + "solaris_amd64": [ + "go1.23.7.solaris-amd64.tar.gz", + "d9cee150073a50f2e0f813d4873413fac3c50723762ffc0f35bed6828ead9f8a" + ], + "windows_386": [ + "go1.23.7.windows-386.zip", + "c8587eaf0257d475bae5dd1d51530466a5e507dfa932d4f551acc3003e8bc1a8" + ], + "windows_amd64": [ + "go1.23.7.windows-amd64.zip", + "eba0477381037868738b47b0198d120a535eb9a8a17b2babb9ab0d5e912a2171" + ], + "windows_arm": [ + "go1.23.7.windows-arm.zip", + "a8ae7675af1bf82602b10627bc0b4063d7cacf067b28e34274c61a0cbfe38fa5" + ], + "windows_arm64": [ + "go1.23.7.windows-arm64.zip", + "e828b5c526c40f3fa6f8aea2d402c0fcbf064009f2d0d12a15bb01241255af9a" + ] + }, + "1.24.0": { + "aix_ppc64": [ + "go1.24.0.aix-ppc64.tar.gz", + "5d04588154d5923bd8e26b76111806340ec55c41af1b05623ea744fcb3d6bc22" + ], + "darwin_amd64": [ + "go1.24.0.darwin-amd64.tar.gz", + "7af054e5088b68c24b3d6e135e5ca8d91bbd5a05cb7f7f0187367b3e6e9e05ee" + ], + "darwin_arm64": [ + "go1.24.0.darwin-arm64.tar.gz", + "fd9cfb5dd6c75a347cfc641a253f0db1cebaca16b0dd37965351c6184ba595e4" + ], + "dragonfly_amd64": [ + "go1.24.0.dragonfly-amd64.tar.gz", + "d0dc34ad86aea746abe245994c68a9e1ad8f46ba8c4af901cd5861a4dd4c21df" + ], + "freebsd_386": [ + "go1.24.0.freebsd-386.tar.gz", + "4ee02b1f3812aff4da79c79464ee4038ca61ad74b3a9619850f30435f81c2536" + ], + "freebsd_amd64": [ + "go1.24.0.freebsd-amd64.tar.gz", + "838191001f9324da904dece35a586a3156d548687db87ac9461aa3d38fc88b09" + ], + "freebsd_arm": [ + "go1.24.0.freebsd-arm.tar.gz", + "ce6ad4e84a40a8a1d848b7e31b0cddfd1cee8f7959e7dc358a8fa8b5566ea718" + ], + "freebsd_arm64": [ + "go1.24.0.freebsd-arm64.tar.gz", + "511f7b0cac4c4ed1066d324072ce223b906ad6b2a85f2e1c5d260eb7d08b5901" + ], + "freebsd_riscv64": [ + "go1.24.0.freebsd-riscv64.tar.gz", + "a1e4072630dc589a2975ef51317b52c7d8599bf6f389fc59033c01e0a0fa705a" + ], + "illumos_amd64": [ + "go1.24.0.illumos-amd64.tar.gz", + "7593e9dcee9f07c3df6d099f7d259f5734a6c0dccc5f28962f18e7f501c9bb21" + ], + "linux_386": [ + "go1.24.0.linux-386.tar.gz", + "90521453a59c6ce20364d2dc7c38532949b033b602ba12d782caeb90af1b0624" + ], + "linux_amd64": [ + "go1.24.0.linux-amd64.tar.gz", + "dea9ca38a0b852a74e81c26134671af7c0fbe65d81b0dc1c5bfe22cf7d4c8858" + ], + "linux_arm64": [ + "go1.24.0.linux-arm64.tar.gz", + "c3fa6d16ffa261091a5617145553c71d21435ce547e44cc6dfb7470865527cc7" + ], + "linux_armv6l": [ + "go1.24.0.linux-armv6l.tar.gz", + "695dc54fa14cd3124fa6900d7b5ae39eeac23f7a4ecea81656070160fac2c54a" + ], + "linux_loong64": [ + "go1.24.0.linux-loong64.tar.gz", + "a201e4c9b7e6d29ed64c43296ed88e81a66f82f2093ce45b766d2c526941396f" + ], + "linux_mips": [ + "go1.24.0.linux-mips.tar.gz", + "f3ac039aae78ad0bfb08106406c2e62eaf763dd82ebaf0ecd539adadd1d729a6" + ], + "linux_mips64": [ + "go1.24.0.linux-mips64.tar.gz", + "f2e6456d45e024831b1da8d88b1bb6392cca9500c1b00841f525d76c9e9553e0" + ], + "linux_mips64le": [ + "go1.24.0.linux-mips64le.tar.gz", + "b847893ff119389c939adc2b8516b6500204b7cb49d5e19b25e1c2091d2c74c6" + ], + "linux_mipsle": [ + "go1.24.0.linux-mipsle.tar.gz", + "bd4aed27d02746c237c3921e97029ac6b6fe687a67436b8f52ff1f698d330bd9" + ], + "linux_ppc64": [ + "go1.24.0.linux-ppc64.tar.gz", + "007123c9b06c41729a4bb3f166f4df7196adf4e33c2d2ab0e7e990175f0ce1d4" + ], + "linux_ppc64le": [ + "go1.24.0.linux-ppc64le.tar.gz", + "a871a43de7d26c91dd90cb6e0adacb214c9e35ee2188c617c91c08c017efe81a" + ], + "linux_riscv64": [ + "go1.24.0.linux-riscv64.tar.gz", + "620dcf48c6297519aad6c81f8e344926dc0ab09a2a79f1e306964aece95a553d" + ], + "linux_s390x": [ + "go1.24.0.linux-s390x.tar.gz", + "544d78b077c6b54bf78958c4a8285abec2d21f668fb007261c77418cd2edbb46" + ], + "netbsd_386": [ + "go1.24.0.netbsd-386.tar.gz", + "8b143a7edefbaa2a0b0246c9df2df1bac9fbed909d8615a375c08da7744e697d" + ], + "netbsd_amd64": [ + "go1.24.0.netbsd-amd64.tar.gz", + "67150a6dd7bdb9c4e88d77f46ee8c4dc99d5e71deca4912d8c2c85f7a16d0262" + ], + "netbsd_arm": [ + "go1.24.0.netbsd-arm.tar.gz", + "446b2539f11218fd6f6f6e3dd90b20ae55a06afe129885eeb3df51eb344eb0f6" + ], + "netbsd_arm64": [ + "go1.24.0.netbsd-arm64.tar.gz", + "370115b6ff7d30b29431223de348eb11ab65e3c92627532d97fd55f63f94e7a8" + ], + "openbsd_386": [ + "go1.24.0.openbsd-386.tar.gz", + "cbda5f15f06ed9630f122a53542d9de13d149643633c74f1dcb45e79649b788a" + ], + "openbsd_amd64": [ + "go1.24.0.openbsd-amd64.tar.gz", + "926f601d0e655ab1e8d7f357fd82542e5cf206c38c4e2f9fccf0706987d38836" + ], + "openbsd_arm": [ + "go1.24.0.openbsd-arm.tar.gz", + "8a54892f8c933c541fff144a825d0fdc41bae14b0832aab703cb75eb4cb64f2c" + ], + "openbsd_arm64": [ + "go1.24.0.openbsd-arm64.tar.gz", + "ef7fddcef0a22c7900c178b7687cf5aa25c2a9d46a3cc330b77a6de6e6c2396b" + ], + "openbsd_ppc64": [ + "go1.24.0.openbsd-ppc64.tar.gz", + "b3b5e2e2b53489ded2c2c21900ddcbbdb7991632bb5b42f05f125d71675e0b76" + ], + "openbsd_riscv64": [ + "go1.24.0.openbsd-riscv64.tar.gz", + "fbcb1dbf1269b4079dc4fd0b15f3274b9d635f1a7e319c3fc1a907b03280348e" + ], + "plan9_386": [ + "go1.24.0.plan9-386.tar.gz", + "33b4221e1c174a16e3f661deab6c60838ac4ae6cb869a4da1d1115773ceed88b" + ], + "plan9_amd64": [ + "go1.24.0.plan9-amd64.tar.gz", + "111a89014019cdbd69c2978de9b3e201f77e35183c8ab3606fba339d38f28549" + ], + "plan9_arm": [ + "go1.24.0.plan9-arm.tar.gz", + "8da3d3997049f40ebe0cd336a9bb9e4bfa4832df3c90a32f07383371d6d74849" + ], + "solaris_amd64": [ + "go1.24.0.solaris-amd64.tar.gz", + "b6069da21dc95ccdbd047675b584e5480ffc3eba35f9e7c8b0e7b317aaf01e2c" + ], + "windows_386": [ + "go1.24.0.windows-386.zip", + "b53c28a4c2863ec50ab4a1dbebe818ef6177f86773b6f43475d40a5d9aa4ec9e" + ], + "windows_amd64": [ + "go1.24.0.windows-amd64.zip", + "96b7280979205813759ee6947be7e3bb497da85c482711116c00522e3bb41ff1" + ], + "windows_arm64": [ + "go1.24.0.windows-arm64.zip", + "53f73450fb66075d16be9f206e9177bd972b528168271918c4747903b5596c3d" + ] + }, + "1.25.0": { + "aix_ppc64": [ + "go1.25.0.aix-ppc64.tar.gz", + "e5234a7dac67bc86c528fe9752fc9d63557918627707a733ab4cac1a6faed2d4" + ], + "darwin_amd64": [ + "go1.25.0.darwin-amd64.tar.gz", + "5bd60e823037062c2307c71e8111809865116714d6f6b410597cf5075dfd80ef" + ], + "darwin_arm64": [ + "go1.25.0.darwin-arm64.tar.gz", + "544932844156d8172f7a28f77f2ac9c15a23046698b6243f633b0a0b00c0749c" + ], + "dragonfly_amd64": [ + "go1.25.0.dragonfly-amd64.tar.gz", + "5ed3cf9a810a1483822538674f1336c06b51aa1b94d6d545a1a0319a48177120" + ], + "freebsd_386": [ + "go1.25.0.freebsd-386.tar.gz", + "abea5d5c6697e6b5c224731f2158fe87c602996a2a233ac0c4730cd57bf8374e" + ], + "freebsd_amd64": [ + "go1.25.0.freebsd-amd64.tar.gz", + "86e6fe0a29698d7601c4442052dac48bd58d532c51cccb8f1917df648138730b" + ], + "freebsd_arm": [ + "go1.25.0.freebsd-arm.tar.gz", + "d90b78e41921f72f30e8bbc81d9dec2cff7ff384a33d8d8debb24053e4336bfe" + ], + "freebsd_arm64": [ + "go1.25.0.freebsd-arm64.tar.gz", + "451d0da1affd886bfb291b7c63a6018527b269505db21ce6e14724f22ab0662e" + ], + "freebsd_riscv64": [ + "go1.25.0.freebsd-riscv64.tar.gz", + "7b565f76bd8bda46549eeaaefe0e53b251e644c230577290c0f66b1ecdb3cdbe" + ], + "illumos_amd64": [ + "go1.25.0.illumos-amd64.tar.gz", + "b1e1fdaab1ad25aa1c08d7a36c97d45d74b98b89c3f78c6d2145f77face54a2c" + ], + "linux_386": [ + "go1.25.0.linux-386.tar.gz", + "8c602dd9d99bc9453b3995d20ce4baf382cc50855900a0ece5de9929df4a993a" + ], + "linux_amd64": [ + "go1.25.0.linux-amd64.tar.gz", + "2852af0cb20a13139b3448992e69b868e50ed0f8a1e5940ee1de9e19a123b613" + ], + "linux_arm64": [ + "go1.25.0.linux-arm64.tar.gz", + "05de75d6994a2783699815ee553bd5a9327d8b79991de36e38b66862782f54ae" + ], + "linux_armv6l": [ + "go1.25.0.linux-armv6l.tar.gz", + "a5a8f8198fcf00e1e485b8ecef9ee020778bf32a408a4e8873371bfce458cd09" + ], + "linux_loong64": [ + "go1.25.0.linux-loong64.tar.gz", + "cab86b1cf761b1cb3bac86a8877cfc92e7b036fc0d3084123d77013d61432afc" + ], + "linux_mips": [ + "go1.25.0.linux-mips.tar.gz", + "d66b6fb74c3d91b9829dc95ec10ca1f047ef5e89332152f92e136cf0e2da5be1" + ], + "linux_mips64": [ + "go1.25.0.linux-mips64.tar.gz", + "4082e4381a8661bc2a839ff94ba3daf4f6cde20f8fb771b5b3d4762dc84198a2" + ], + "linux_mips64le": [ + "go1.25.0.linux-mips64le.tar.gz", + "70002c299ec7f7175ac2ef673b1b347eecfa54ae11f34416a6053c17f855afcc" + ], + "linux_mipsle": [ + "go1.25.0.linux-mipsle.tar.gz", + "b00a3a39eff099f6df9f1c7355bf28e4589d0586f42d7d4a394efb763d145a73" + ], + "linux_ppc64": [ + "go1.25.0.linux-ppc64.tar.gz", + "df166f33bd98160662560a72ff0b4ba731f969a80f088922bddcf566a88c1ec1" + ], + "linux_ppc64le": [ + "go1.25.0.linux-ppc64le.tar.gz", + "0f18a89e7576cf2c5fa0b487a1635d9bcbf843df5f110e9982c64df52a983ad0" + ], + "linux_riscv64": [ + "go1.25.0.linux-riscv64.tar.gz", + "c018ff74a2c48d55c8ca9b07c8e24163558ffec8bea08b326d6336905d956b67" + ], + "linux_s390x": [ + "go1.25.0.linux-s390x.tar.gz", + "34e5a2e19f2292fbaf8783e3a241e6e49689276aef6510a8060ea5ef54eee408" + ], + "netbsd_386": [ + "go1.25.0.netbsd-386.tar.gz", + "f8586cdb7aa855657609a5c5f6dbf523efa00c2bbd7c76d3936bec80aa6c0aba" + ], + "netbsd_amd64": [ + "go1.25.0.netbsd-amd64.tar.gz", + "ae8dc1469385b86a157a423bb56304ba45730de8a897615874f57dd096db2c2a" + ], + "netbsd_arm": [ + "go1.25.0.netbsd-arm.tar.gz", + "1ff7e4cc764425fc9dd6825eaee79d02b3c7cafffbb3691687c8d672ade76cb7" + ], + "netbsd_arm64": [ + "go1.25.0.netbsd-arm64.tar.gz", + "e1b310739f26724216aa6d7d7208c4031f9ff54c9b5b9a796ddc8bebcb4a5f16" + ], + "openbsd_386": [ + "go1.25.0.openbsd-386.tar.gz", + "4802a9b20e533da91adb84aab42e94aa56cfe3e5475d0550bed3385b182e69d8" + ], + "openbsd_amd64": [ + "go1.25.0.openbsd-amd64.tar.gz", + "c016cd984bebe317b19a4f297c4f50def120dc9788490540c89f28e42f1dabe1" + ], + "openbsd_arm": [ + "go1.25.0.openbsd-arm.tar.gz", + "a1e31d0bf22172ddde42edf5ec811ef81be43433df0948ece52fecb247ccfd8d" + ], + "openbsd_arm64": [ + "go1.25.0.openbsd-arm64.tar.gz", + "343ea8edd8c218196e15a859c6072d0dd3246fbbb168481ab665eb4c4140458d" + ], + "openbsd_ppc64": [ + "go1.25.0.openbsd-ppc64.tar.gz", + "694c14da1bcaeb5e3332d49bdc2b6d155067648f8fe1540c5de8f3cf8e157154" + ], + "openbsd_riscv64": [ + "go1.25.0.openbsd-riscv64.tar.gz", + "aa510ad25cf54c06cd9c70b6d80ded69cb20188ac6e1735655eef29ff7e7885f" + ], + "plan9_386": [ + "go1.25.0.plan9-386.tar.gz", + "46f8cef02086cf04bf186c5912776b56535178d4cb319cd19c9fdbdd29231986" + ], + "plan9_amd64": [ + "go1.25.0.plan9-amd64.tar.gz", + "29b34391d84095e44608a228f63f2f88113a37b74a79781353ec043dfbcb427b" + ], + "plan9_arm": [ + "go1.25.0.plan9-arm.tar.gz", + "0a047107d13ebe7943aaa6d54b1d7bbd2e45e68ce449b52915a818da715799c2" + ], + "solaris_amd64": [ + "go1.25.0.solaris-amd64.tar.gz", + "9977f9e4351984364a3b2b78f8b88bfd1d339812356d5237678514594b7d3611" + ], + "windows_386": [ + "go1.25.0.windows-386.zip", + "df9f39db82a803af0db639e3613a36681ab7a42866b1384b3f3a1045663961a7" + ], + "windows_amd64": [ + "go1.25.0.windows-amd64.zip", + "89efb4f9b30812eee083cc1770fdd2913c14d301064f6454851428f9707d190b" + ], + "windows_arm64": [ + "go1.25.0.windows-arm64.zip", + "27bab004c72b3d7bd05a69b6ec0fc54a309b4b78cc569dd963d8b3ec28bfdb8c" + ] + }, + "1.25.4": { + "aix_ppc64": [ + "go1.25.4.aix-ppc64.tar.gz", + "013b5da7d3bb174ded9fd6f57e098170d778d900b26b7b4a6acaefafc3df55d8" + ], + "darwin_amd64": [ + "go1.25.4.darwin-amd64.tar.gz", + "33ba03ff9973f5bd26d516eea35328832a9525ecc4d169b15937ffe2ce66a7d8" + ], + "darwin_arm64": [ + "go1.25.4.darwin-arm64.tar.gz", + "c1b04e74251fe1dfbc5382e73d0c6d96f49642d8aebb7ee10a7ecd4cae36ebd2" + ], + "dragonfly_amd64": [ + "go1.25.4.dragonfly-amd64.tar.gz", + "046556da7cfa021a09d1c9e3f948a21da225863f58a19aac5b32bd18a6fa2f77" + ], + "freebsd_386": [ + "go1.25.4.freebsd-386.tar.gz", + "2e2073fd74c2421bda91bd3900a6ffc1db4c97380ac8deb193731204f5b97b23" + ], + "freebsd_amd64": [ + "go1.25.4.freebsd-amd64.tar.gz", + "6256dad7368f8b4d7ddbeb80ed98b3368a553df7b17dad18894f0637840f6d50" + ], + "freebsd_arm": [ + "go1.25.4.freebsd-arm.tar.gz", + "48c0aa810585b50e8d1e475b9466fb403eec3b5bdf06a8be6d634b7dde686bfa" + ], + "freebsd_arm64": [ + "go1.25.4.freebsd-arm64.tar.gz", + "d74cfa54a4a97737d238f35866d257638607417dfc60b647429e898ea7c9a7a4" + ], + "freebsd_riscv64": [ + "go1.25.4.freebsd-riscv64.tar.gz", + "c1bb0d2ae78415e6e78d71b0aede0e3bee3f220a220e6d0390c3219ba5604ca1" + ], + "illumos_amd64": [ + "go1.25.4.illumos-amd64.tar.gz", + "3dcb72f967e924543c49bf20ac6d4057ff8c5b8f4120d7e021ba37a7e62aef77" + ], + "linux_386": [ + "go1.25.4.linux-386.tar.gz", + "0cf5f721ab7c5e7a170dedb2b51d9b1fedfe6ef1b2c626bf7a47fb9a613c5d96" + ], + "linux_amd64": [ + "go1.25.4.linux-amd64.tar.gz", + "9fa5ffeda4170de60f67f3aa0f824e426421ba724c21e133c1e35d6159ca1bec" + ], + "linux_arm64": [ + "go1.25.4.linux-arm64.tar.gz", + "a68e86d4b72c2c2fecf7dfed667680b6c2a071221bbdb6913cf83ce3f80d9ff0" + ], + "linux_armv6l": [ + "go1.25.4.linux-armv6l.tar.gz", + "ff86a6406310d840edb170f539a51a7efac0ac2b2f84527b1b2bf5935fc4ab6d" + ], + "linux_loong64": [ + "go1.25.4.linux-loong64.tar.gz", + "54b967c86b756609b3ee18ec8136ce9ee901270892b0fce01d0c78bec6a0c9b5" + ], + "linux_mips": [ + "go1.25.4.linux-mips.tar.gz", + "a59d20ae357e70a08e10359779b2927608f885f1b2593a76da0e3a9b60f8ae47" + ], + "linux_mips64": [ + "go1.25.4.linux-mips64.tar.gz", + "8deca53dc406a556949c82c6aed4293330f9f36773732654a1439cbd744f3beb" + ], + "linux_mips64le": [ + "go1.25.4.linux-mips64le.tar.gz", + "7e6e914678e537de5e12158231e0dbf4e9fa8a427b4ba295128f76a88b4cfed9" + ], + "linux_mipsle": [ + "go1.25.4.linux-mipsle.tar.gz", + "e1858f934609ef1c8ee54d2788b46e867204b75c6fddd77274bf8424af2cb45a" + ], + "linux_ppc64": [ + "go1.25.4.linux-ppc64.tar.gz", + "3c5c07ffa4bb0ee415178346f55a0fd33559880801ced56fb1da5ef0eca86ab8" + ], + "linux_ppc64le": [ + "go1.25.4.linux-ppc64le.tar.gz", + "38c8ac8463537c99fbc1ef368f243b626144446c09db71b1d20634a4237c966d" + ], + "linux_riscv64": [ + "go1.25.4.linux-riscv64.tar.gz", + "0a00a0eba831b5fe511e852909b99b83992ea09e81fdfbd9f805e5a4b646f803" + ], + "linux_s390x": [ + "go1.25.4.linux-s390x.tar.gz", + "2482e7b3b924348b120b6d7d7c13035905c009c2a3ecc0c8dc56bf0fd3184a58" + ], + "netbsd_386": [ + "go1.25.4.netbsd-386.tar.gz", + "7e2327a093b4a648180db8094316df90d21b1b42123fda66b01fa274d1d047db" + ], + "netbsd_amd64": [ + "go1.25.4.netbsd-amd64.tar.gz", + "22d7f0a46aed0d1cd00f7e1789e5bb0b831b5bf20c094fc2e2cb635e93ba427f" + ], + "netbsd_arm": [ + "go1.25.4.netbsd-arm.tar.gz", + "6aea4c3ebbc4d662c8b08edc716c0fc31c93174979dd70f26b5eb8e42c687462" + ], + "netbsd_arm64": [ + "go1.25.4.netbsd-arm64.tar.gz", + "25a07e88368be0b392e2c0e38a1b332f9322482d1cac802d7470888c0cb1bae2" + ], + "openbsd_386": [ + "go1.25.4.openbsd-386.tar.gz", + "fed31e86ba4fda76391427d48a33fcf5f020bf24d6537b0fc3a06640146f6a18" + ], + "openbsd_amd64": [ + "go1.25.4.openbsd-amd64.tar.gz", + "7a63182f1e5fbeaca5de73f71f3f8e7fbe6bf3c20260ab24543a543cd1b026f3" + ], + "openbsd_arm": [ + "go1.25.4.openbsd-arm.tar.gz", + "a4845622453997f761bcabad337afe0febc421b8c04b58414bf8b352d2acbdae" + ], + "openbsd_arm64": [ + "go1.25.4.openbsd-arm64.tar.gz", + "4665a3c19c3f8120ed4fbaebad690969683b6a8e646017f341786016faabc0b9" + ], + "openbsd_ppc64": [ + "go1.25.4.openbsd-ppc64.tar.gz", + "e8c022a4cbf8ad29b06498cca9ee278878f9beb2353f7fc1a2622cb07ef76dd5" + ], + "openbsd_riscv64": [ + "go1.25.4.openbsd-riscv64.tar.gz", + "544831b3306861f824a608ffa539c39a066cd93d9628b8a53dc9f06966395684" + ], + "plan9_386": [ + "go1.25.4.plan9-386.tar.gz", + "617e2ca6061178363abecef20e859337c91a8409201e6845e4f4ec3c1a094079" + ], + "plan9_amd64": [ + "go1.25.4.plan9-amd64.tar.gz", + "8721a367802a170e62d991643f46645909a3b7a9567ae94b51d406a8b10cac6a" + ], + "plan9_arm": [ + "go1.25.4.plan9-arm.tar.gz", + "a290aefedc0868717ecfeda1cfa6e4e2a075a2dee039efc0ec6b8d1f63f26b82" + ], + "solaris_amd64": [ + "go1.25.4.solaris-amd64.tar.gz", + "a5640bdf4cd807b90d9b2695f60fd36db6978ea965f892c905ee1f579bf68ce1" + ], + "windows_386": [ + "go1.25.4.windows-386.zip", + "f21fe4990449799a571971fd5efdc38b911667c628c949cbdfb77326cf877606" + ], + "windows_amd64": [ + "go1.25.4.windows-amd64.zip", + "6dad204d42719795f22067553b2b042c0e710b32c5a00f6c67892865167fdfd0" + ], + "windows_arm64": [ + "go1.25.4.windows-arm64.zip", + "138aa10a6808b4cff8657478be14772a05335bc8d7e51955e7a6d9ac335af3e4" + ] + } + } + } } diff --git a/go.mod b/go.mod index 2a06734dd..d0e4950d1 100644 --- a/go.mod +++ b/go.mod @@ -9,17 +9,17 @@ replace go.uber.org/mock => go.uber.org/mock v0.4.0 replace cel.dev/expr => cel.dev/expr v0.24.0 require ( - cloud.google.com/go/longrunning v0.7.0 - cloud.google.com/go/storage v1.57.1 + cloud.google.com/go/longrunning v0.8.0 + cloud.google.com/go/storage v1.59.1 github.com/aohorodnyk/mimeheader v0.0.6 - github.com/aws/aws-sdk-go-v2 v1.39.6 - github.com/aws/aws-sdk-go-v2/config v1.31.18 - github.com/aws/aws-sdk-go-v2/credentials v1.18.22 - github.com/aws/aws-sdk-go-v2/service/s3 v1.90.0 - github.com/aws/aws-sdk-go-v2/service/sts v1.40.0 - github.com/bazelbuild/buildtools v0.0.0-20251110131859-9a9819efe30f - github.com/bazelbuild/remote-apis v0.0.0-20251110153243-3860ca2d3e55 - github.com/bazelbuild/rules_go v0.58.3 + github.com/aws/aws-sdk-go-v2 v1.41.1 + github.com/aws/aws-sdk-go-v2/config v1.32.7 + github.com/aws/aws-sdk-go-v2/credentials v1.19.7 + github.com/aws/aws-sdk-go-v2/service/s3 v1.95.1 + github.com/aws/aws-sdk-go-v2/service/sts v1.41.6 + github.com/bazelbuild/buildtools v0.0.0-20260121081817-bbf01ec6cb49 + github.com/bazelbuild/remote-apis v0.0.0-20260120202631-b02e15a6d354 + github.com/bazelbuild/rules_go v0.59.0 github.com/buildbarn/go-sha256tree v0.0.0-20250310211320-0f70f20e855b github.com/fxtlabs/primes v0.0.0-20150821004651-dad82d10a449 github.com/go-jose/go-jose/v3 v3.0.4 @@ -30,98 +30,98 @@ require ( github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 github.com/jhump/protoreflect/v2 v2.0.0-beta.2 github.com/jmespath/go-jmespath v0.4.0 - github.com/klauspost/compress v1.18.1 + github.com/klauspost/compress v1.18.3 github.com/prometheus/client_golang v1.23.2 github.com/prometheus/client_model v0.6.2 - github.com/prometheus/common v0.67.2 + github.com/prometheus/common v0.67.5 github.com/sercand/kuberesolver/v5 v5.1.1 github.com/stretchr/testify v1.11.1 github.com/zeebo/blake3 v0.2.4 - go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.63.0 - go.opentelemetry.io/contrib/propagators/b3 v1.38.0 - go.opentelemetry.io/otel v1.38.0 + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.64.0 + go.opentelemetry.io/contrib/propagators/b3 v1.39.0 + go.opentelemetry.io/otel v1.39.0 go.opentelemetry.io/otel/exporters/jaeger v1.17.0 - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.38.0 - go.opentelemetry.io/otel/sdk v1.38.0 - go.opentelemetry.io/otel/trace v1.38.0 + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.39.0 + go.opentelemetry.io/otel/sdk v1.39.0 + go.opentelemetry.io/otel/trace v1.39.0 go.opentelemetry.io/proto/otlp v1.9.0 go.uber.org/mock v0.0.0-00010101000000-000000000000 golang.org/x/lint v0.0.0-20241112194109-818c5a804067 - golang.org/x/oauth2 v0.33.0 - golang.org/x/sync v0.18.0 - golang.org/x/sys v0.38.0 - google.golang.org/api v0.255.0 - google.golang.org/genproto/googleapis/bytestream v0.0.0-20251110190251-83f479183930 - google.golang.org/genproto/googleapis/rpc v0.0.0-20251110190251-83f479183930 - google.golang.org/grpc v1.76.0 + golang.org/x/oauth2 v0.34.0 + golang.org/x/sync v0.19.0 + golang.org/x/sys v0.40.0 + google.golang.org/api v0.262.0 + google.golang.org/genproto/googleapis/bytestream v0.0.0-20260122232226-8e98ce8d340d + google.golang.org/genproto/googleapis/rpc v0.0.0-20260122232226-8e98ce8d340d + google.golang.org/grpc v1.78.0 google.golang.org/grpc/security/advancedtls v1.0.0 - google.golang.org/protobuf v1.36.10 - k8s.io/apimachinery v0.34.1 - k8s.io/client-go v0.34.1 + google.golang.org/protobuf v1.36.11 + k8s.io/apimachinery v0.35.0 + k8s.io/client-go v0.35.0 mvdan.cc/gofumpt v0.9.2 ) require ( cel.dev/expr v0.25.0 // indirect cloud.google.com/go v0.123.0 // indirect - cloud.google.com/go/auth v0.17.0 // indirect + cloud.google.com/go/auth v0.18.1 // indirect cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect cloud.google.com/go/compute/metadata v0.9.0 // indirect cloud.google.com/go/iam v1.5.3 // indirect cloud.google.com/go/monitoring v1.24.3 // indirect - github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.30.0 // indirect - github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.54.0 // indirect - github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.54.0 // indirect - github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.3 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.13 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.13 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.13 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.31.0 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.55.0 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.55.0 // indirect + github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.4 // indirect + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.17 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.17 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.17 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.13 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.3 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.4 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.13 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.13 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.30.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.5 // indirect - github.com/aws/smithy-go v1.23.2 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.17 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.4 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.8 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.17 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.17 // indirect + github.com/aws/aws-sdk-go-v2/service/signin v1.0.5 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.30.9 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.13 // indirect + github.com/aws/smithy-go v1.24.0 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect - github.com/cncf/xds/go v0.0.0-20251110193048-8bfbf64dc13e // indirect + github.com/cncf/xds/go v0.0.0-20260121142036-a486691bba94 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/emicklei/go-restful/v3 v3.13.0 // indirect github.com/envoyproxy/go-control-plane/envoy v1.36.0 // indirect - github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect + github.com/envoyproxy/protoc-gen-validate v1.3.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/fsnotify/fsnotify v1.9.0 // indirect github.com/fxamacker/cbor/v2 v2.9.0 // indirect github.com/go-jose/go-jose/v4 v4.1.3 // indirect github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect - github.com/go-openapi/jsonpointer v0.22.1 // indirect - github.com/go-openapi/jsonreference v0.21.3 // indirect - github.com/go-openapi/swag v0.25.1 // indirect - github.com/go-openapi/swag/cmdutils v0.25.1 // indirect - github.com/go-openapi/swag/conv v0.25.1 // indirect - github.com/go-openapi/swag/fileutils v0.25.1 // indirect - github.com/go-openapi/swag/jsonname v0.25.1 // indirect - github.com/go-openapi/swag/jsonutils v0.25.1 // indirect - github.com/go-openapi/swag/loading v0.25.1 // indirect - github.com/go-openapi/swag/mangling v0.25.1 // indirect - github.com/go-openapi/swag/netutils v0.25.1 // indirect - github.com/go-openapi/swag/stringutils v0.25.1 // indirect - github.com/go-openapi/swag/typeutils v0.25.1 // indirect - github.com/go-openapi/swag/yamlutils v0.25.1 // indirect - github.com/gogo/protobuf v1.3.2 // indirect + github.com/go-openapi/jsonpointer v0.22.4 // indirect + github.com/go-openapi/jsonreference v0.21.4 // indirect + github.com/go-openapi/swag v0.25.4 // indirect + github.com/go-openapi/swag/cmdutils v0.25.4 // indirect + github.com/go-openapi/swag/conv v0.25.4 // indirect + github.com/go-openapi/swag/fileutils v0.25.4 // indirect + github.com/go-openapi/swag/jsonname v0.25.4 // indirect + github.com/go-openapi/swag/jsonutils v0.25.4 // indirect + github.com/go-openapi/swag/loading v0.25.4 // indirect + github.com/go-openapi/swag/mangling v0.25.4 // indirect + github.com/go-openapi/swag/netutils v0.25.4 // indirect + github.com/go-openapi/swag/stringutils v0.25.4 // indirect + github.com/go-openapi/swag/typeutils v0.25.4 // indirect + github.com/go-openapi/swag/yamlutils v0.25.4 // indirect github.com/golang/protobuf v1.5.4 // indirect - github.com/google/gnostic-models v0.7.0 // indirect + github.com/google/gnostic-models v0.7.1 // indirect github.com/google/go-cmp v0.7.0 // indirect github.com/google/s2a-go v0.1.9 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.3.7 // indirect - github.com/googleapis/gax-go/v2 v2.15.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.3 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.11 // indirect + github.com/googleapis/gax-go/v2 v2.16.0 // indirect + github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.5 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/cpuid/v2 v2.0.12 // indirect + github.com/klauspost/cpuid/v2 v2.3.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect @@ -131,30 +131,30 @@ require ( github.com/spiffe/go-spiffe/v2 v2.6.0 // indirect github.com/x448/float16 v0.8.4 // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect - go.opentelemetry.io/contrib/detectors/gcp v1.38.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 // indirect - go.opentelemetry.io/otel/metric v1.38.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.38.0 // indirect + go.opentelemetry.io/contrib/detectors/gcp v1.39.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.64.0 // indirect + go.opentelemetry.io/otel/metric v1.39.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.39.0 // indirect go.yaml.in/yaml/v2 v2.4.3 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect - golang.org/x/crypto v0.43.0 // indirect - golang.org/x/mod v0.29.0 // indirect - golang.org/x/net v0.46.0 // indirect - golang.org/x/term v0.36.0 // indirect - golang.org/x/text v0.30.0 // indirect + golang.org/x/crypto v0.47.0 // indirect + golang.org/x/mod v0.32.0 // indirect + golang.org/x/net v0.49.0 // indirect + golang.org/x/term v0.39.0 // indirect + golang.org/x/text v0.33.0 // indirect golang.org/x/time v0.14.0 // indirect - golang.org/x/tools v0.38.0 // indirect - google.golang.org/genproto v0.0.0-20251110190251-83f479183930 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20251110190251-83f479183930 // indirect + golang.org/x/tools v0.41.0 // indirect + google.golang.org/genproto v0.0.0-20260122232226-8e98ce8d340d // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20260122232226-8e98ce8d340d // indirect gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/api v0.34.1 // indirect + k8s.io/api v0.35.0 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect - k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 // indirect + k8s.io/kube-openapi v0.0.0-20251125145642-4e65d59e963e // indirect + k8s.io/utils v0.0.0-20260108192941-914a6e750570 // indirect sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect sigs.k8s.io/randfill v1.0.0 // indirect - sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect + sigs.k8s.io/structured-merge-diff/v6 v6.3.1 // indirect sigs.k8s.io/yaml v1.6.0 // indirect ) diff --git a/go.sum b/go.sum index a32b2f06e..a5de1a68e 100644 --- a/go.sum +++ b/go.sum @@ -3,8 +3,8 @@ cel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.123.0 h1:2NAUJwPR47q+E35uaJeYoNhuNEM9kM8SjgRgdeOJUSE= cloud.google.com/go v0.123.0/go.mod h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTAZU= -cloud.google.com/go/auth v0.17.0 h1:74yCm7hCj2rUyyAocqnFzsAYXgJhrG26XCFimrc/Kz4= -cloud.google.com/go/auth v0.17.0/go.mod h1:6wv/t5/6rOPAX4fJiRjKkJCvswLwdet7G8+UGXt7nCQ= +cloud.google.com/go/auth v0.18.1 h1:IwTEx92GFUo2pJ6Qea0EU3zYvKnTAeRCODxfA/G5UWs= +cloud.google.com/go/auth v0.18.1/go.mod h1:GfTYoS9G3CWpRA3Va9doKN9mjPGRS+v41jmZAhBzbrA= cloud.google.com/go/auth/oauth2adapt v0.2.8 h1:keo8NaayQZ6wimpNSmW5OPc283g65QNIiLpZnkHRbnc= cloud.google.com/go/auth/oauth2adapt v0.2.8/go.mod h1:XQ9y31RkqZCcwJWNSx2Xvric3RrU88hAYYbjDWYDL+c= cloud.google.com/go/compute/metadata v0.9.0 h1:pDUj4QMoPejqq20dK0Pg2N4yG9zIkYGdBtwLoEkH9Zs= @@ -13,67 +13,71 @@ cloud.google.com/go/iam v1.5.3 h1:+vMINPiDF2ognBJ97ABAYYwRgsaqxPbQDlMnbHMjolc= cloud.google.com/go/iam v1.5.3/go.mod h1:MR3v9oLkZCTlaqljW6Eb2d3HGDGK5/bDv93jhfISFvU= cloud.google.com/go/logging v1.13.1 h1:O7LvmO0kGLaHY/gq8cV7T0dyp6zJhYAOtZPX4TF3QtY= cloud.google.com/go/logging v1.13.1/go.mod h1:XAQkfkMBxQRjQek96WLPNze7vsOmay9H5PqfsNYDqvw= -cloud.google.com/go/longrunning v0.7.0 h1:FV0+SYF1RIj59gyoWDRi45GiYUMM3K1qO51qoboQT1E= -cloud.google.com/go/longrunning v0.7.0/go.mod h1:ySn2yXmjbK9Ba0zsQqunhDkYi0+9rlXIwnoAf+h+TPY= +cloud.google.com/go/longrunning v0.8.0 h1:LiKK77J3bx5gDLi4SMViHixjD2ohlkwBi+mKA7EhfW8= +cloud.google.com/go/longrunning v0.8.0/go.mod h1:UmErU2Onzi+fKDg2gR7dusz11Pe26aknR4kHmJJqIfk= cloud.google.com/go/monitoring v1.24.3 h1:dde+gMNc0UhPZD1Azu6at2e79bfdztVDS5lvhOdsgaE= cloud.google.com/go/monitoring v1.24.3/go.mod h1:nYP6W0tm3N9H/bOw8am7t62YTzZY+zUeQ+Bi6+2eonI= -cloud.google.com/go/storage v1.57.1 h1:gzao6odNJ7dR3XXYvAgPK+Iw4fVPPznEPPyNjbaVkq8= -cloud.google.com/go/storage v1.57.1/go.mod h1:329cwlpzALLgJuu8beyJ/uvQznDHpa2U5lGjWednkzg= +cloud.google.com/go/storage v1.59.1 h1:DXAZLcTimtiXdGqDSnebROVPd9QvRsFVVlptz02Wk58= +cloud.google.com/go/storage v1.59.1/go.mod h1:cMWbtM+anpC74gn6qjLh+exqYcfmB9Hqe5z6adx+CLI= cloud.google.com/go/trace v1.11.7 h1:kDNDX8JkaAG3R2nq1lIdkb7FCSi1rCmsEtKVsty7p+U= cloud.google.com/go/trace v1.11.7/go.mod h1:TNn9d5V3fQVf6s4SCveVMIBS2LJUqo73GACmq/Tky0s= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.30.0 h1:sBEjpZlNHzK1voKq9695PJSX2o5NEXl7/OL3coiIY0c= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.30.0/go.mod h1:P4WPRUkOhJC13W//jWpyfJNDAIpvRbAUIYLX/4jtlE0= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.54.0 h1:lhhYARPUu3LmHysQ/igznQphfzynnqI3D75oUyw1HXk= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.54.0/go.mod h1:l9rva3ApbBpEJxSNYnwT9N4CDLrWgtq3u8736C5hyJw= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.54.0 h1:xfK3bbi6F2RDtaZFtUdKO3osOBIhNb+xTs8lFW6yx9o= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.54.0/go.mod h1:vB2GH9GAYYJTO3mEn8oYwzEdhlayZIdQz6zdzgUIRvA= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.54.0 h1:s0WlVbf9qpvkh1c/uDAPElam0WrL7fHRIidgZJ7UqZI= -github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.54.0/go.mod h1:Mf6O40IAyB9zR/1J8nGDDPirZQQPbYJni8Yisy7NTMc= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.31.0 h1:DHa2U07rk8syqvCge0QIGMCE1WxGj9njT44GH7zNJLQ= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.31.0/go.mod h1:P4WPRUkOhJC13W//jWpyfJNDAIpvRbAUIYLX/4jtlE0= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.55.0 h1:UnDZ/zFfG1JhH/DqxIZYU/1CUAlTUScoXD/LcM2Ykk8= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.55.0/go.mod h1:IA1C1U7jO/ENqm/vhi7V9YYpBsp+IMyqNrEN94N7tVc= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.55.0 h1:7t/qx5Ost0s0wbA/VDrByOooURhp+ikYwv20i9Y07TQ= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.55.0/go.mod h1:vB2GH9GAYYJTO3mEn8oYwzEdhlayZIdQz6zdzgUIRvA= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.55.0 h1:0s6TxfCu2KHkkZPnBfsQ2y5qia0jl3MMrmBhu3nCOYk= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.55.0/go.mod h1:Mf6O40IAyB9zR/1J8nGDDPirZQQPbYJni8Yisy7NTMc= +github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0= +github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= github.com/aohorodnyk/mimeheader v0.0.6 h1:WCV4NQjtbqnd2N3FT5MEPesan/lfvaLYmt5v4xSaX/M= github.com/aohorodnyk/mimeheader v0.0.6/go.mod h1:/Gd3t3vszyZYwjNJo2qDxoftZjjVzMdkQZxkiINp3vM= -github.com/aws/aws-sdk-go-v2 v1.39.6 h1:2JrPCVgWJm7bm83BDwY5z8ietmeJUbh3O2ACnn+Xsqk= -github.com/aws/aws-sdk-go-v2 v1.39.6/go.mod h1:c9pm7VwuW0UPxAEYGyTmyurVcNrbF6Rt/wixFqDhcjE= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.3 h1:DHctwEM8P8iTXFxC/QK0MRjwEpWQeM9yzidCRjldUz0= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.3/go.mod h1:xdCzcZEtnSTKVDOmUZs4l/j3pSV6rpo1WXl5ugNsL8Y= -github.com/aws/aws-sdk-go-v2/config v1.31.18 h1:RouG3AcF2fLFhw+Z0qbnuIl9HZ0Kh4E/U9sKwTMRpMI= -github.com/aws/aws-sdk-go-v2/config v1.31.18/go.mod h1:aXZ13mSQC8S2VEHwGfL1COMuJ1Zty6pX5xU7hyqjvCg= -github.com/aws/aws-sdk-go-v2/credentials v1.18.22 h1:hyIVGBHhQPaNP9D4BaVRwpjLMCwMMdAkHqB3gGMiykU= -github.com/aws/aws-sdk-go-v2/credentials v1.18.22/go.mod h1:B9E2qHs3/YGfeQZ4jrIE/nPvqxtyafZrJ5EQiZBG6pk= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.13 h1:T1brd5dR3/fzNFAQch/iBKeX07/ffu/cLu+q+RuzEWk= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.13/go.mod h1:Peg/GBAQ6JDt+RoBf4meB1wylmAipb7Kg2ZFakZTlwk= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.13 h1:a+8/MLcWlIxo1lF9xaGt3J/u3yOZx+CdSveSNwjhD40= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.13/go.mod h1:oGnKwIYZ4XttyU2JWxFrwvhF6YKiK/9/wmE3v3Iu9K8= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.13 h1:HBSI2kDkMdWz4ZM7FjwE7e/pWDEZ+nR95x8Ztet1ooY= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.13/go.mod h1:YE94ZoDArI7awZqJzBAZ3PDD2zSfuP7w6P2knOzIn8M= +github.com/aws/aws-sdk-go-v2 v1.41.1 h1:ABlyEARCDLN034NhxlRUSZr4l71mh+T5KAeGh6cerhU= +github.com/aws/aws-sdk-go-v2 v1.41.1/go.mod h1:MayyLB8y+buD9hZqkCW3kX1AKq07Y5pXxtgB+rRFhz0= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.4 h1:489krEF9xIGkOaaX3CE/Be2uWjiXrkCH6gUX+bZA/BU= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.4/go.mod h1:IOAPF6oT9KCsceNTvvYMNHy0+kMF8akOjeDvPENWxp4= +github.com/aws/aws-sdk-go-v2/config v1.32.7 h1:vxUyWGUwmkQ2g19n7JY/9YL8MfAIl7bTesIUykECXmY= +github.com/aws/aws-sdk-go-v2/config v1.32.7/go.mod h1:2/Qm5vKUU/r7Y+zUk/Ptt2MDAEKAfUtKc1+3U1Mo3oY= +github.com/aws/aws-sdk-go-v2/credentials v1.19.7 h1:tHK47VqqtJxOymRrNtUXN5SP/zUTvZKeLx4tH6PGQc8= +github.com/aws/aws-sdk-go-v2/credentials v1.19.7/go.mod h1:qOZk8sPDrxhf+4Wf4oT2urYJrYt3RejHSzgAquYeppw= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.17 h1:I0GyV8wiYrP8XpA70g1HBcQO1JlQxCMTW9npl5UbDHY= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.17/go.mod h1:tyw7BOl5bBe/oqvoIeECFJjMdzXoa/dfVz3QQ5lgHGA= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.17 h1:xOLELNKGp2vsiteLsvLPwxC+mYmO6OZ8PYgiuPJzF8U= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.17/go.mod h1:5M5CI3D12dNOtH3/mk6minaRwI2/37ifCURZISxA/IQ= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.17 h1:WWLqlh79iO48yLkj1v3ISRNiv+3KdQoZ6JWyfcsyQik= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.17/go.mod h1:EhG22vHRrvF8oXSTYStZhJc1aUgKtnJe+aOiFEV90cM= 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.13 h1:eg/WYAa12vqTphzIdWMzqYRVKKnCboVPRlvaybNCqPA= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.13/go.mod h1:/FDdxWhz1486obGrKKC1HONd7krpk38LBt+dutLcN9k= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.3 h1:x2Ibm/Af8Fi+BH+Hsn9TXGdT+hKbDd5XOTZxTMxDk7o= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.3/go.mod h1:IW1jwyrQgMdhisceG8fQLmQIydcT/jWY21rFhzgaKwo= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.4 h1:NvMjwvv8hpGUILarKw7Z4Q0w1H9anXKsesMxtw++MA4= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.4/go.mod h1:455WPHSwaGj2waRSpQp7TsnpOnBfw8iDfPfbwl7KPJE= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.13 h1:kDqdFvMY4AtKoACfzIGD8A0+hbT41KTKF//gq7jITfM= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.13/go.mod h1:lmKuogqSU3HzQCwZ9ZtcqOc5XGMqtDK7OIc2+DxiUEg= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.13 h1:zhBJXdhWIFZ1acfDYIhu4+LCzdUS2Vbcum7D01dXlHQ= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.13/go.mod h1:JaaOeCE368qn2Hzi3sEzY6FgAZVCIYcC2nwbro2QCh8= -github.com/aws/aws-sdk-go-v2/service/s3 v1.90.0 h1:ef6gIJR+xv/JQWwpa5FYirzoQctfSJm7tuDe3SZsUf8= -github.com/aws/aws-sdk-go-v2/service/s3 v1.90.0/go.mod h1:+wArOOrcHUevqdto9k1tKOF5++YTe9JEcPSc9Tx2ZSw= -github.com/aws/aws-sdk-go-v2/service/sso v1.30.1 h1:0JPwLz1J+5lEOfy/g0SURC9cxhbQ1lIMHMa+AHZSzz0= -github.com/aws/aws-sdk-go-v2/service/sso v1.30.1/go.mod h1:fKvyjJcz63iL/ftA6RaM8sRCtN4r4zl4tjL3qw5ec7k= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.5 h1:OWs0/j2UYR5LOGi88sD5/lhN6TDLG6SfA7CqsQO9zF0= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.5/go.mod h1:klO+ejMvYsB4QATfEOIXk8WAEwN4N0aBfJpvC+5SZBo= -github.com/aws/aws-sdk-go-v2/service/sts v1.40.0 h1:ZGDJVmlpPFiNFCb/I42nYVKUanJAdFUiSmUo/32AqPQ= -github.com/aws/aws-sdk-go-v2/service/sts v1.40.0/go.mod h1:E19xDjpzPZC7LS2knI9E6BaRFDK43Eul7vd6rSq2HWk= -github.com/aws/smithy-go v1.23.2 h1:Crv0eatJUQhaManss33hS5r40CG3ZFH+21XSkqMrIUM= -github.com/aws/smithy-go v1.23.2/go.mod h1:LEj2LM3rBRQJxPZTB4KuzZkaZYnZPnvgIhb4pu07mx0= -github.com/bazelbuild/buildtools v0.0.0-20251110131859-9a9819efe30f h1:adHo4b1ka7iRbksLyaAEvC9xigAZ7pP3iU9GeBW0CuE= -github.com/bazelbuild/buildtools v0.0.0-20251110131859-9a9819efe30f/go.mod h1:PLNUetjLa77TCCziPsz0EI8a6CUxgC+1jgmWv0H25tg= -github.com/bazelbuild/remote-apis v0.0.0-20251110153243-3860ca2d3e55 h1:nD+YlIEH8YSXHW6reGLoi7DG0X1KaKRKO83VZ1nPjvE= -github.com/bazelbuild/remote-apis v0.0.0-20251110153243-3860ca2d3e55/go.mod h1:/xo1pn3QkEL2JXrLeK30jvjVR/zXM9H8EqcWb/l5/A0= -github.com/bazelbuild/rules_go v0.58.3 h1:2Mdry2oCIzc+h9M2qRmK7S560vh8wOHh+al2MO+kbb8= -github.com/bazelbuild/rules_go v0.58.3/go.mod h1:Pn30cb4M513fe2rQ6GiJ3q8QyrRsgC7zhuDvi50Lw4Y= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.17 h1:JqcdRG//czea7Ppjb+g/n4o8i/R50aTBHkA7vu0lK+k= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.17/go.mod h1:CO+WeGmIdj/MlPel2KwID9Gt7CNq4M65HUfBW97liM0= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.4 h1:0ryTNEdJbzUCEWkVXEXoqlXV72J5keC1GvILMOuD00E= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.4/go.mod h1:HQ4qwNZh32C3CBeO6iJLQlgtMzqeG17ziAA/3KDJFow= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.8 h1:Z5EiPIzXKewUQK0QTMkutjiaPVeVYXX7KIqhXu/0fXs= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.8/go.mod h1:FsTpJtvC4U1fyDXk7c71XoDv3HlRm8V3NiYLeYLh5YE= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.17 h1:RuNSMoozM8oXlgLG/n6WLaFGoea7/CddrCfIiSA+xdY= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.17/go.mod h1:F2xxQ9TZz5gDWsclCtPQscGpP0VUOc8RqgFM3vDENmU= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.17 h1:bGeHBsGZx0Dvu/eJC0Lh9adJa3M1xREcndxLNZlve2U= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.17/go.mod h1:dcW24lbU0CzHusTE8LLHhRLI42ejmINN8Lcr22bwh/g= +github.com/aws/aws-sdk-go-v2/service/s3 v1.95.1 h1:C2dUPSnEpy4voWFIq3JNd8gN0Y5vYGDo44eUE58a/p8= +github.com/aws/aws-sdk-go-v2/service/s3 v1.95.1/go.mod h1:5jggDlZ2CLQhwJBiZJb4vfk4f0GxWdEDruWKEJ1xOdo= +github.com/aws/aws-sdk-go-v2/service/signin v1.0.5 h1:VrhDvQib/i0lxvr3zqlUwLwJP4fpmpyD9wYG1vfSu+Y= +github.com/aws/aws-sdk-go-v2/service/signin v1.0.5/go.mod h1:k029+U8SY30/3/ras4G/Fnv/b88N4mAfliNn08Dem4M= +github.com/aws/aws-sdk-go-v2/service/sso v1.30.9 h1:v6EiMvhEYBoHABfbGB4alOYmCIrcgyPPiBE1wZAEbqk= +github.com/aws/aws-sdk-go-v2/service/sso v1.30.9/go.mod h1:yifAsgBxgJWn3ggx70A3urX2AN49Y5sJTD1UQFlfqBw= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.13 h1:gd84Omyu9JLriJVCbGApcLzVR3XtmC4ZDPcAI6Ftvds= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.13/go.mod h1:sTGThjphYE4Ohw8vJiRStAcu3rbjtXRsdNB0TvZ5wwo= +github.com/aws/aws-sdk-go-v2/service/sts v1.41.6 h1:5fFjR/ToSOzB2OQ/XqWpZBmNvmP/pJ1jOWYlFDJTjRQ= +github.com/aws/aws-sdk-go-v2/service/sts v1.41.6/go.mod h1:qgFDZQSD/Kys7nJnVqYlWKnh0SSdMjAi0uSwON4wgYQ= +github.com/aws/smithy-go v1.24.0 h1:LpilSUItNPFr1eY85RYgTIg5eIEPtvFbskaFcmmIUnk= +github.com/aws/smithy-go v1.24.0/go.mod h1:LEj2LM3rBRQJxPZTB4KuzZkaZYnZPnvgIhb4pu07mx0= +github.com/bazelbuild/buildtools v0.0.0-20260121081817-bbf01ec6cb49 h1:dW8MipfRf3+GADvSw4YCbamPWXapvI6nR5aXdPqnIvA= +github.com/bazelbuild/buildtools v0.0.0-20260121081817-bbf01ec6cb49/go.mod h1:PLNUetjLa77TCCziPsz0EI8a6CUxgC+1jgmWv0H25tg= +github.com/bazelbuild/remote-apis v0.0.0-20260120202631-b02e15a6d354 h1:nnhaOJQURnrAqI1uZzofxmqlWmM2+T4WOqkfrCkT25Q= +github.com/bazelbuild/remote-apis v0.0.0-20260120202631-b02e15a6d354/go.mod h1:/xo1pn3QkEL2JXrLeK30jvjVR/zXM9H8EqcWb/l5/A0= +github.com/bazelbuild/rules_go v0.59.0 h1:RLhOwYIqeMgBpKelHEWTfIPjA37so3oa/rX+/qqq/P4= +github.com/bazelbuild/rules_go v0.59.0/go.mod h1:Pn30cb4M513fe2rQ6GiJ3q8QyrRsgC7zhuDvi50Lw4Y= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= @@ -84,8 +88,8 @@ github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UF github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= -github.com/cncf/xds/go v0.0.0-20251110193048-8bfbf64dc13e h1:gt7U1Igw0xbJdyaCM5H2CnlAlPSkzrhsebQB6WQWjLA= -github.com/cncf/xds/go v0.0.0-20251110193048-8bfbf64dc13e/go.mod h1:KdCmV+x/BuvyMxRnYBlmVaq4OLiKW6iRQfvC62cvdkI= +github.com/cncf/xds/go v0.0.0-20260121142036-a486691bba94 h1:kkHPnzHm5Ln7WA0XYjrr2ITA0l9Vs6H++Ni//P+SZso= +github.com/cncf/xds/go v0.0.0-20260121142036-a486691bba94/go.mod h1:KdCmV+x/BuvyMxRnYBlmVaq4OLiKW6iRQfvC62cvdkI= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= @@ -95,15 +99,15 @@ github.com/emicklei/go-restful/v3 v3.13.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRr github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= -github.com/envoyproxy/go-control-plane v0.13.4 h1:zEqyPVyku6IvWCFwux4x9RxkLOMUL+1vC9xUFv5l2/M= -github.com/envoyproxy/go-control-plane v0.13.4/go.mod h1:kDfuBlDVsSj2MjrLEtRWtHlsWIFcGyB2RMO44Dc5GZA= +github.com/envoyproxy/go-control-plane v0.13.5-0.20251024222203-75eaa193e329 h1:K+fnvUM0VZ7ZFJf0n4L/BRlnsb9pL/GuDG6FqaH+PwM= +github.com/envoyproxy/go-control-plane v0.13.5-0.20251024222203-75eaa193e329/go.mod h1:Alz8LEClvR7xKsrq3qzoc4N0guvVNSS8KmSChGYr9hs= github.com/envoyproxy/go-control-plane/envoy v1.36.0 h1:yg/JjO5E7ubRyKX3m07GF3reDNEnfOboJ0QySbH736g= github.com/envoyproxy/go-control-plane/envoy v1.36.0/go.mod h1:ty89S1YCCVruQAm9OtKeEkQLTb+Lkz0k8v9W0Oxsv98= github.com/envoyproxy/go-control-plane/ratelimit v0.1.0 h1:/G9QYbddjL25KvtKTv3an9lx6VBE2cnb8wp1vEGNYGI= github.com/envoyproxy/go-control-plane/ratelimit v0.1.0/go.mod h1:Wk+tMFAFbCXaJPzVVHnPgRKdUdwW/KdbRt94AzgRee4= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfUKS7KJ7spH3d86P8= -github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU= +github.com/envoyproxy/protoc-gen-validate v1.3.0 h1:TvGH1wof4H33rezVKWSpqKz5NXWg5VPuZ0uONDT6eb4= +github.com/envoyproxy/protoc-gen-validate v1.3.0/go.mod h1:HvYl7zwPa5mffgyeTUHA9zHIH36nmrm7oCbo4YKoSWA= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= @@ -123,36 +127,38 @@ github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI= github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-openapi/jsonpointer v0.22.1 h1:sHYI1He3b9NqJ4wXLoJDKmUmHkWy/L7rtEo92JUxBNk= -github.com/go-openapi/jsonpointer v0.22.1/go.mod h1:pQT9OsLkfz1yWoMgYFy4x3U5GY5nUlsOn1qSBH5MkCM= -github.com/go-openapi/jsonreference v0.21.3 h1:96Dn+MRPa0nYAR8DR1E03SblB5FJvh7W6krPI0Z7qMc= -github.com/go-openapi/jsonreference v0.21.3/go.mod h1:RqkUP0MrLf37HqxZxrIAtTWW4ZJIK1VzduhXYBEeGc4= -github.com/go-openapi/swag v0.25.1 h1:6uwVsx+/OuvFVPqfQmOOPsqTcm5/GkBhNwLqIR916n8= -github.com/go-openapi/swag v0.25.1/go.mod h1:bzONdGlT0fkStgGPd3bhZf1MnuPkf2YAys6h+jZipOo= -github.com/go-openapi/swag/cmdutils v0.25.1 h1:nDke3nAFDArAa631aitksFGj2omusks88GF1VwdYqPY= -github.com/go-openapi/swag/cmdutils v0.25.1/go.mod h1:pdae/AFo6WxLl5L0rq87eRzVPm/XRHM3MoYgRMvG4A0= -github.com/go-openapi/swag/conv v0.25.1 h1:+9o8YUg6QuqqBM5X6rYL/p1dpWeZRhoIt9x7CCP+he0= -github.com/go-openapi/swag/conv v0.25.1/go.mod h1:Z1mFEGPfyIKPu0806khI3zF+/EUXde+fdeksUl2NiDs= -github.com/go-openapi/swag/fileutils v0.25.1 h1:rSRXapjQequt7kqalKXdcpIegIShhTPXx7yw0kek2uU= -github.com/go-openapi/swag/fileutils v0.25.1/go.mod h1:+NXtt5xNZZqmpIpjqcujqojGFek9/w55b3ecmOdtg8M= -github.com/go-openapi/swag/jsonname v0.25.1 h1:Sgx+qbwa4ej6AomWC6pEfXrA6uP2RkaNjA9BR8a1RJU= -github.com/go-openapi/swag/jsonname v0.25.1/go.mod h1:71Tekow6UOLBD3wS7XhdT98g5J5GR13NOTQ9/6Q11Zo= -github.com/go-openapi/swag/jsonutils v0.25.1 h1:AihLHaD0brrkJoMqEZOBNzTLnk81Kg9cWr+SPtxtgl8= -github.com/go-openapi/swag/jsonutils v0.25.1/go.mod h1:JpEkAjxQXpiaHmRO04N1zE4qbUEg3b7Udll7AMGTNOo= -github.com/go-openapi/swag/jsonutils/fixtures_test v0.25.1 h1:DSQGcdB6G0N9c/KhtpYc71PzzGEIc/fZ1no35x4/XBY= -github.com/go-openapi/swag/jsonutils/fixtures_test v0.25.1/go.mod h1:kjmweouyPwRUEYMSrbAidoLMGeJ5p6zdHi9BgZiqmsg= -github.com/go-openapi/swag/loading v0.25.1 h1:6OruqzjWoJyanZOim58iG2vj934TysYVptyaoXS24kw= -github.com/go-openapi/swag/loading v0.25.1/go.mod h1:xoIe2EG32NOYYbqxvXgPzne989bWvSNoWoyQVWEZicc= -github.com/go-openapi/swag/mangling v0.25.1 h1:XzILnLzhZPZNtmxKaz/2xIGPQsBsvmCjrJOWGNz/ync= -github.com/go-openapi/swag/mangling v0.25.1/go.mod h1:CdiMQ6pnfAgyQGSOIYnZkXvqhnnwOn997uXZMAd/7mQ= -github.com/go-openapi/swag/netutils v0.25.1 h1:2wFLYahe40tDUHfKT1GRC4rfa5T1B4GWZ+msEFA4Fl4= -github.com/go-openapi/swag/netutils v0.25.1/go.mod h1:CAkkvqnUJX8NV96tNhEQvKz8SQo2KF0f7LleiJwIeRE= -github.com/go-openapi/swag/stringutils v0.25.1 h1:Xasqgjvk30eUe8VKdmyzKtjkVjeiXx1Iz0zDfMNpPbw= -github.com/go-openapi/swag/stringutils v0.25.1/go.mod h1:JLdSAq5169HaiDUbTvArA2yQxmgn4D6h4A+4HqVvAYg= -github.com/go-openapi/swag/typeutils v0.25.1 h1:rD/9HsEQieewNt6/k+JBwkxuAHktFtH3I3ysiFZqukA= -github.com/go-openapi/swag/typeutils v0.25.1/go.mod h1:9McMC/oCdS4BKwk2shEB7x17P6HmMmA6dQRtAkSnNb8= -github.com/go-openapi/swag/yamlutils v0.25.1 h1:mry5ez8joJwzvMbaTGLhw8pXUnhDK91oSJLDPF1bmGk= -github.com/go-openapi/swag/yamlutils v0.25.1/go.mod h1:cm9ywbzncy3y6uPm/97ysW8+wZ09qsks+9RS8fLWKqg= +github.com/go-openapi/jsonpointer v0.22.4 h1:dZtK82WlNpVLDW2jlA1YCiVJFVqkED1MegOUy9kR5T4= +github.com/go-openapi/jsonpointer v0.22.4/go.mod h1:elX9+UgznpFhgBuaMQ7iu4lvvX1nvNsesQ3oxmYTw80= +github.com/go-openapi/jsonreference v0.21.4 h1:24qaE2y9bx/q3uRK/qN+TDwbok1NhbSmGjjySRCHtC8= +github.com/go-openapi/jsonreference v0.21.4/go.mod h1:rIENPTjDbLpzQmQWCj5kKj3ZlmEh+EFVbz3RTUh30/4= +github.com/go-openapi/swag v0.25.4 h1:OyUPUFYDPDBMkqyxOTkqDYFnrhuhi9NR6QVUvIochMU= +github.com/go-openapi/swag v0.25.4/go.mod h1:zNfJ9WZABGHCFg2RnY0S4IOkAcVTzJ6z2Bi+Q4i6qFQ= +github.com/go-openapi/swag/cmdutils v0.25.4 h1:8rYhB5n6WawR192/BfUu2iVlxqVR9aRgGJP6WaBoW+4= +github.com/go-openapi/swag/cmdutils v0.25.4/go.mod h1:pdae/AFo6WxLl5L0rq87eRzVPm/XRHM3MoYgRMvG4A0= +github.com/go-openapi/swag/conv v0.25.4 h1:/Dd7p0LZXczgUcC/Ikm1+YqVzkEeCc9LnOWjfkpkfe4= +github.com/go-openapi/swag/conv v0.25.4/go.mod h1:3LXfie/lwoAv0NHoEuY1hjoFAYkvlqI/Bn5EQDD3PPU= +github.com/go-openapi/swag/fileutils v0.25.4 h1:2oI0XNW5y6UWZTC7vAxC8hmsK/tOkWXHJQH4lKjqw+Y= +github.com/go-openapi/swag/fileutils v0.25.4/go.mod h1:cdOT/PKbwcysVQ9Tpr0q20lQKH7MGhOEb6EwmHOirUk= +github.com/go-openapi/swag/jsonname v0.25.4 h1:bZH0+MsS03MbnwBXYhuTttMOqk+5KcQ9869Vye1bNHI= +github.com/go-openapi/swag/jsonname v0.25.4/go.mod h1:GPVEk9CWVhNvWhZgrnvRA6utbAltopbKwDu8mXNUMag= +github.com/go-openapi/swag/jsonutils v0.25.4 h1:VSchfbGhD4UTf4vCdR2F4TLBdLwHyUDTd1/q4i+jGZA= +github.com/go-openapi/swag/jsonutils v0.25.4/go.mod h1:7OYGXpvVFPn4PpaSdPHJBtF0iGnbEaTk8AvBkoWnaAY= +github.com/go-openapi/swag/jsonutils/fixtures_test v0.25.4 h1:IACsSvBhiNJwlDix7wq39SS2Fh7lUOCJRmx/4SN4sVo= +github.com/go-openapi/swag/jsonutils/fixtures_test v0.25.4/go.mod h1:Mt0Ost9l3cUzVv4OEZG+WSeoHwjWLnarzMePNDAOBiM= +github.com/go-openapi/swag/loading v0.25.4 h1:jN4MvLj0X6yhCDduRsxDDw1aHe+ZWoLjW+9ZQWIKn2s= +github.com/go-openapi/swag/loading v0.25.4/go.mod h1:rpUM1ZiyEP9+mNLIQUdMiD7dCETXvkkC30z53i+ftTE= +github.com/go-openapi/swag/mangling v0.25.4 h1:2b9kBJk9JvPgxr36V23FxJLdwBrpijI26Bx5JH4Hp48= +github.com/go-openapi/swag/mangling v0.25.4/go.mod h1:6dxwu6QyORHpIIApsdZgb6wBk/DPU15MdyYj/ikn0Hg= +github.com/go-openapi/swag/netutils v0.25.4 h1:Gqe6K71bGRb3ZQLusdI8p/y1KLgV4M/k+/HzVSqT8H0= +github.com/go-openapi/swag/netutils v0.25.4/go.mod h1:m2W8dtdaoX7oj9rEttLyTeEFFEBvnAx9qHd5nJEBzYg= +github.com/go-openapi/swag/stringutils v0.25.4 h1:O6dU1Rd8bej4HPA3/CLPciNBBDwZj9HiEpdVsb8B5A8= +github.com/go-openapi/swag/stringutils v0.25.4/go.mod h1:GTsRvhJW5xM5gkgiFe0fV3PUlFm0dr8vki6/VSRaZK0= +github.com/go-openapi/swag/typeutils v0.25.4 h1:1/fbZOUN472NTc39zpa+YGHn3jzHWhv42wAJSN91wRw= +github.com/go-openapi/swag/typeutils v0.25.4/go.mod h1:Ou7g//Wx8tTLS9vG0UmzfCsjZjKhpjxayRKTHXf2pTE= +github.com/go-openapi/swag/yamlutils v0.25.4 h1:6jdaeSItEUb7ioS9lFoCZ65Cne1/RZtPBZ9A56h92Sw= +github.com/go-openapi/swag/yamlutils v0.25.4/go.mod h1:MNzq1ulQu+yd8Kl7wPOut/YHAAU/H6hL91fF+E2RFwc= +github.com/go-openapi/testify/enable/yaml/v2 v2.0.2 h1:0+Y41Pz1NkbTHz8NngxTuAXxEodtNSI1WG1c/m5Akw4= +github.com/go-openapi/testify/enable/yaml/v2 v2.0.2/go.mod h1:kme83333GCtJQHXQ8UKX3IBZu6z8T5Dvy5+CW3NLUUg= github.com/go-openapi/testify/v2 v2.0.2 h1:X999g3jeLcoY8qctY/c/Z8iBHTbwLz7R2WXd6Ub6wls= github.com/go-openapi/testify/v2 v2.0.2/go.mod h1:HCPmvFFnheKK2BuwSA0TbbdxJ3I16pjwMkYkP4Ywn54= github.com/go-quicktest/qt v1.101.0 h1:O1K29Txy5P2OK0dGo59b7b0LR6wKfIhttaAhHUyn7eI= @@ -160,7 +166,6 @@ github.com/go-quicktest/qt v1.101.0/go.mod h1:14Bz/f7NwaXPtdYEgzsx46kqSxVwTbzVZs github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= -github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= @@ -169,8 +174,8 @@ github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/google/gnostic-models v0.7.0 h1:qwTtogB15McXDaNqTZdzPJRHvaVJlAl+HVQnLmJEJxo= -github.com/google/gnostic-models v0.7.0/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ= +github.com/google/gnostic-models v0.7.1 h1:SisTfuFKJSKM5CPZkffwi6coztzzeYUhc3v4yxLWH8c= +github.com/google/gnostic-models v0.7.1/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= @@ -180,24 +185,24 @@ github.com/google/go-jsonnet v0.21.0/go.mod h1:tCGAu8cpUpEZcdGMmdOu37nh8bGgqubhI github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= -github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= -github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= +github.com/google/pprof v0.0.0-20250403155104-27863c87afa6 h1:BHT72Gu3keYf3ZEu2J0b1vyeLSOYI8bm5wbJM/8yDe8= +github.com/google/pprof v0.0.0-20250403155104-27863c87afa6/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0= github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/googleapis/enterprise-certificate-proxy v0.3.7 h1:zrn2Ee/nWmHulBx5sAVrGgAa0f2/R35S4DJwfFaUPFQ= -github.com/googleapis/enterprise-certificate-proxy v0.3.7/go.mod h1:MkHOF77EYAE7qfSuSS9PU6g4Nt4e11cnsDUowfwewLA= -github.com/googleapis/gax-go/v2 v2.15.0 h1:SyjDc1mGgZU5LncH8gimWo9lW1DtIfPibOG81vgd/bo= -github.com/googleapis/gax-go/v2 v2.15.0/go.mod h1:zVVkkxAQHa1RQpg9z2AUCMnKhi0Qld9rcmyfL1OZhoc= +github.com/googleapis/enterprise-certificate-proxy v0.3.11 h1:vAe81Msw+8tKUxi2Dqh/NZMz7475yUvmRIkXr4oN2ao= +github.com/googleapis/enterprise-certificate-proxy v0.3.11/go.mod h1:RFV7MUdlb7AgEq2v7FmMCfeSMCllAzWxFgRdusoGks8= +github.com/googleapis/gax-go/v2 v2.16.0 h1:iHbQmKLLZrexmb0OSsNGTeSTS0HO4YvFOG8g5E4Zd0Y= +github.com/googleapis/gax-go/v2 v2.16.0/go.mod h1:o1vfQjjNZn4+dPnRdl/4ZD7S9414Y4xA+a/6Icj6l14= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 h1:UH//fgunKIs4JdUbpDl1VZCDaL56wXCB/5+wF6uHfaI= github.com/grpc-ecosystem/go-grpc-middleware v1.4.0/go.mod h1:g5qyo/la0ALbONm6Vbp88Yd8NsDy6rZz+RcrMPxvld8= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.3 h1:NmZ1PKzSTQbuGHw9DGPFomqkkLWMC+vZCkfs+FHv1Vg= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.3/go.mod h1:zQrxl1YP88HQlA6i9c63DSVPFklWpGX4OWAc9bFuaH4= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.5 h1:jP1RStw811EvUDzsUQ9oESqw2e4RqCjSAD9qIL8eMns= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.5/go.mod h1:WXNBZ64q3+ZUemCMXD9kYnr56H7CgZxDBHCVwstfl3s= github.com/jhump/protoreflect/v2 v2.0.0-beta.2 h1:qZU+rEZUOYTz1Bnhi3xbwn+VxdXkLVeEpAeZzVXLY88= github.com/jhump/protoreflect/v2 v2.0.0-beta.2/go.mod h1:4tnOYkB/mq7QTyS3YKtVtNrJv4Psqout8HA1U+hZtgM= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= @@ -208,10 +213,10 @@ github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnr github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/klauspost/compress v1.18.1 h1:bcSGx7UbpBqMChDtsF28Lw6v/G94LPrrbMbdC3JH2co= -github.com/klauspost/compress v1.18.1/go.mod h1:ZQFFVG+MdnR0P+l6wpXgIL4NTtwiKIdBnrBd8Nrxr+0= -github.com/klauspost/cpuid/v2 v2.0.12 h1:p9dKCg8i4gmOxtv35DvrYoWqYzQrvEVdjQ762Y0OqZE= -github.com/klauspost/cpuid/v2 v2.0.12/go.mod h1:g2LTdtYhdyuGPqyWyv7qRAmj1WBqxuObKfj5c0PQa7c= +github.com/klauspost/compress v1.18.3 h1:9PJRvfbmTabkOX8moIpXPbMMbYN60bWImDDU7L+/6zw= +github.com/klauspost/compress v1.18.3/go.mod h1:R0h/fSBs8DE4ENlcrlib3PsXS61voFxhIs2DeRhCvJ4= +github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y= +github.com/klauspost/cpuid/v2 v2.3.0/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= @@ -230,10 +235,10 @@ github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee h1:W5t00kpgFd github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/onsi/ginkgo/v2 v2.21.0 h1:7rg/4f3rB88pb5obDgNZrNHrQ4e6WpjonchcpuBRnZM= -github.com/onsi/ginkgo/v2 v2.21.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= -github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4= -github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= +github.com/onsi/ginkgo/v2 v2.27.2 h1:LzwLj0b89qtIy6SSASkzlNvX6WktqurSHwkk2ipF/Ns= +github.com/onsi/ginkgo/v2 v2.27.2/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo= +github.com/onsi/gomega v1.38.2 h1:eZCjf2xjZAqe+LeWvKb5weQ+NcPwX84kqJ0cZNxok2A= +github.com/onsi/gomega v1.38.2/go.mod h1:W2MJcYxRGV63b418Ai34Ud0hEdTVXq9NW9+Sx6uXf3k= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo= @@ -246,8 +251,8 @@ github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UH github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk= github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE= -github.com/prometheus/common v0.67.2 h1:PcBAckGFTIHt2+L3I33uNRTlKTplNzFctXcWhPyAEN8= -github.com/prometheus/common v0.67.2/go.mod h1:63W3KZb1JOKgcjlIr64WW/LvFGAqKPj0atm+knVGEko= +github.com/prometheus/common v0.67.5 h1:pIgK94WWlQt1WLwAC5j2ynLaBRDiinoAb86HZHTUGI4= +github.com/prometheus/common v0.67.5/go.mod h1:SjE/0MzDEEAyrdr5Gqc6G+sXI67maCxzaT3A2+HqjUw= github.com/prometheus/procfs v0.19.2 h1:zUMhqEW66Ex7OXIiDkll3tl9a1ZdilUOd/F6ZXw4Vws= github.com/prometheus/procfs v0.19.2/go.mod h1:M0aotyiemPhBCM0z5w87kL22CxfcH05ZpYlu+b4J7mw= github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= @@ -257,8 +262,8 @@ github.com/sercand/kuberesolver/v5 v5.1.1/go.mod h1:Fs1KbKhVRnB2aDWN12NjKCB+RgYM github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= -github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/pflag v1.0.9 h1:9exaQaMOCwffKiiiYk6/BndUBv+iRViNW+4lEMi0PvY= +github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spiffe/go-spiffe/v2 v2.6.0 h1:l+DolpxNWYgruGQVV0xsfeya3CsC7m8iBzDnMpsbLuo= github.com/spiffe/go-spiffe/v2 v2.6.0/go.mod h1:gm2SeUoMZEtpnzPNs2Csc0D/gX33k1xIx7lEzqblHEs= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= @@ -284,30 +289,30 @@ github.com/zeebo/pcg v1.0.1 h1:lyqfGeWiv4ahac6ttHs+I5hwtH/+1mrhlCtVNQM2kHo= github.com/zeebo/pcg v1.0.1/go.mod h1:09F0S9iiKrwn9rlI5yjLkmrug154/YRW6KnnXVDM/l4= go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64= go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y= -go.opentelemetry.io/contrib/detectors/gcp v1.38.0 h1:ZoYbqX7OaA/TAikspPl3ozPI6iY6LiIY9I8cUfm+pJs= -go.opentelemetry.io/contrib/detectors/gcp v1.38.0/go.mod h1:SU+iU7nu5ud4oCb3LQOhIZ3nRLj6FNVrKgtflbaf2ts= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.63.0 h1:YH4g8lQroajqUwWbq/tr2QX1JFmEXaDLgG+ew9bLMWo= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.63.0/go.mod h1:fvPi2qXDqFs8M4B4fmJhE92TyQs9Ydjlg3RvfUp+NbQ= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 h1:RbKq8BG0FI8OiXhBfcRtqqHcZcka+gU3cskNuf05R18= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0/go.mod h1:h06DGIukJOevXaj/xrNjhi/2098RZzcLTbc0jDAUbsg= -go.opentelemetry.io/contrib/propagators/b3 v1.38.0 h1:uHsCCOSKl0kLrV2dLkFK+8Ywk9iKa/fptkytc6aFFEo= -go.opentelemetry.io/contrib/propagators/b3 v1.38.0/go.mod h1:wMRSZJZcY8ya9mApLLhwIMjqmApy2o/Ml+62lhvxyHU= -go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8= -go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM= +go.opentelemetry.io/contrib/detectors/gcp v1.39.0 h1:kWRNZMsfBHZ+uHjiH4y7Etn2FK26LAGkNFw7RHv1DhE= +go.opentelemetry.io/contrib/detectors/gcp v1.39.0/go.mod h1:t/OGqzHBa5v6RHZwrDBJ2OirWc+4q/w2fTbLZwAKjTk= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.64.0 h1:RN3ifU8y4prNWeEnQp2kRRHz8UwonAEYZl8tUzHEXAk= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.64.0/go.mod h1:habDz3tEWiFANTo6oUE99EmaFUrCNYAAg3wiVmusm70= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.64.0 h1:ssfIgGNANqpVFCndZvcuyKbl0g+UAVcbBcqGkG28H0Y= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.64.0/go.mod h1:GQ/474YrbE4Jx8gZ4q5I4hrhUzM6UPzyrqJYV2AqPoQ= +go.opentelemetry.io/contrib/propagators/b3 v1.39.0 h1:PI7pt9pkSnimWcp5sQhUA9OzLbc3Ba4sL+VEUTNsxrk= +go.opentelemetry.io/contrib/propagators/b3 v1.39.0/go.mod h1:5gV/EzPnfYIwjzj+6y8tbGW2PKWhcsz5e/7twptRVQY= +go.opentelemetry.io/otel v1.39.0 h1:8yPrr/S0ND9QEfTfdP9V+SiwT4E0G7Y5MO7p85nis48= +go.opentelemetry.io/otel v1.39.0/go.mod h1:kLlFTywNWrFyEdH0oj2xK0bFYZtHRYUdv1NklR/tgc8= go.opentelemetry.io/otel/exporters/jaeger v1.17.0 h1:D7UpUy2Xc2wsi1Ras6V40q806WM07rqoCWzXu7Sqy+4= go.opentelemetry.io/otel/exporters/jaeger v1.17.0/go.mod h1:nPCqOnEH9rNLKqH/+rrUjiMzHJdV1BlpKcTwRTyKkKI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.38.0 h1:GqRJVj7UmLjCVyVJ3ZFLdPRmhDUp2zFmQe3RHIOsw24= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.38.0/go.mod h1:ri3aaHSmCTVYu2AWv44YMauwAQc0aqI9gHKIcSbI1pU= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.36.0 h1:rixTyDGXFxRy1xzhKrotaHy3/KXdPhlWARrCgK+eqUY= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.36.0/go.mod h1:dowW6UsM9MKbJq5JTz2AMVp3/5iW5I/TStsk8S+CfHw= -go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA= -go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI= -go.opentelemetry.io/otel/sdk v1.38.0 h1:l48sr5YbNf2hpCUj/FoGhW9yDkl+Ma+LrVl8qaM5b+E= -go.opentelemetry.io/otel/sdk v1.38.0/go.mod h1:ghmNdGlVemJI3+ZB5iDEuk4bWA3GkTpW+DOoZMYBVVg= -go.opentelemetry.io/otel/sdk/metric v1.38.0 h1:aSH66iL0aZqo//xXzQLYozmWrXxyFkBJ6qT5wthqPoM= -go.opentelemetry.io/otel/sdk/metric v1.38.0/go.mod h1:dg9PBnW9XdQ1Hd6ZnRz689CbtrUp0wMMs9iPcgT9EZA= -go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE= -go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.39.0 h1:f0cb2XPmrqn4XMy9PNliTgRKJgS5WcL/u0/WRYGz4t0= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.39.0/go.mod h1:vnakAaFckOMiMtOIhFI2MNH4FYrZzXCYxmb1LlhoGz8= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.38.0 h1:wm/Q0GAAykXv83wzcKzGGqAnnfLFyFe7RslekZuv+VI= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.38.0/go.mod h1:ra3Pa40+oKjvYh+ZD3EdxFZZB0xdMfuileHAm4nNN7w= +go.opentelemetry.io/otel/metric v1.39.0 h1:d1UzonvEZriVfpNKEVmHXbdf909uGTOQjA0HF0Ls5Q0= +go.opentelemetry.io/otel/metric v1.39.0/go.mod h1:jrZSWL33sD7bBxg1xjrqyDjnuzTUB0x1nBERXd7Ftcs= +go.opentelemetry.io/otel/sdk v1.39.0 h1:nMLYcjVsvdui1B/4FRkwjzoRVsMK8uL/cj0OyhKzt18= +go.opentelemetry.io/otel/sdk v1.39.0/go.mod h1:vDojkC4/jsTJsE+kh+LXYQlbL8CgrEcwmt1ENZszdJE= +go.opentelemetry.io/otel/sdk/metric v1.39.0 h1:cXMVVFVgsIf2YL6QkRF4Urbr/aMInf+2WKg+sEJTtB8= +go.opentelemetry.io/otel/sdk/metric v1.39.0/go.mod h1:xq9HEVH7qeX69/JnwEfp6fVq5wosJsY1mt4lLfYdVew= +go.opentelemetry.io/otel/trace v1.39.0 h1:2d2vfpEDmCJ5zVYz7ijaJdOF59xLomrvj7bjt6/qCJI= +go.opentelemetry.io/otel/trace v1.39.0/go.mod h1:88w4/PnZSazkGzz/w84VHpQafiU4EtqqlVdxWy+rNOA= go.opentelemetry.io/proto/otlp v1.9.0 h1:l706jCMITVouPOqEnii2fIAuO3IVGBRPV5ICjceRb/A= go.opentelemetry.io/proto/otlp v1.9.0/go.mod h1:xE+Cx5E/eEHw+ISFkwPLwCZefwVjY+pqKg1qcK03+/4= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= @@ -327,8 +332,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.43.0 h1:dduJYIi3A3KOfdGOHX8AVZ/jGiyPa3IbBozJ5kNuE04= -golang.org/x/crypto v0.43.0/go.mod h1:BFbav4mRNlXJL4wNeejLpWxB7wMbc79PdRGhWKncxR0= +golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8= +golang.org/x/crypto v0.47.0/go.mod h1:ff3Y9VzzKbwSSEzWqJsJVBnWmRwRSHt/6Op5n9bQc4A= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= @@ -341,8 +346,8 @@ golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA= -golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w= +golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= +golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -355,11 +360,11 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.46.0 h1:giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4= -golang.org/x/net v0.46.0/go.mod h1:Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210= +golang.org/x/net v0.49.0 h1:eeHFmOGUTtaaPSGNmjBKpbng9MulQsJURQUAfUwY++o= +golang.org/x/net v0.49.0/go.mod h1:/ysNB2EvaqvesRkuLAyjI1ycPZlQHM3q01F02UY/MV8= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.33.0 h1:4Q+qn+E5z8gPRJfmRy7C2gGG3T4jIprK6aSYgTXGRpo= -golang.org/x/oauth2 v0.33.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= +golang.org/x/oauth2 v0.34.0 h1:hqK/t4AKgbqWkdkcAeI8XLmbK+4m4G5YeQRrmiotGlw= +golang.org/x/oauth2 v0.34.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -367,8 +372,8 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I= -golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= +golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= +golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -382,23 +387,23 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc= -golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ= +golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q= -golang.org/x/term v0.36.0/go.mod h1:Qu394IJq6V6dCBRgwqshf3mPF85AqzYEzofzRdZkWss= +golang.org/x/term v0.39.0 h1:RclSuaJf32jOqZz74CkPA9qFuVTX7vhLlpfj/IGWlqY= +golang.org/x/term v0.39.0/go.mod h1:yxzUCTP/U+FzoxfdKmLaA0RV1WgE0VY7hXBwKtY/4ww= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -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/text v0.33.0 h1:B3njUFyqtHDUI5jMn1YIr5B0IE2U0qck04r6d4KPAxE= +golang.org/x/text v0.33.0/go.mod h1:LuMebE6+rBincTi9+xWTY8TztLzKHc/9C1uBCG27+q8= golang.org/x/time v0.14.0 h1:MRx4UaLrDotUKUdCIqzPC48t1Y9hANFKIRpNx+Te8PI= golang.org/x/time v0.14.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -413,42 +418,42 @@ golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roY golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ= -golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs= +golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= +golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 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.255.0 h1:OaF+IbRwOottVCYV2wZan7KUq7UeNUQn1BcPc4K7lE4= -google.golang.org/api v0.255.0/go.mod h1:d1/EtvCLdtiWEV4rAEHDHGh2bCnqsWhw+M8y2ECN4a8= +google.golang.org/api v0.262.0 h1:4B+3u8He2GwyN8St3Jhnd3XRHlIvc//sBmgHSp78oNY= +google.golang.org/api v0.262.0/go.mod h1:jNwmH8BgUBJ/VrUG6/lIl9YiildyLd09r9ZLHiQ6cGI= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20251110190251-83f479183930 h1:l+wyeXlZn04liP15luDukzVrrasNSq0Pq69qsvXMteg= -google.golang.org/genproto v0.0.0-20251110190251-83f479183930/go.mod h1:4FLPzLA8eGAktPOTemJGDgDYRpLYwrNu4u2JtWINhnI= -google.golang.org/genproto/googleapis/api v0.0.0-20251110190251-83f479183930 h1:8BWFtrvJRbplrKV5VHlIm4YM726eeBPPAL2QDNWhRrU= -google.golang.org/genproto/googleapis/api v0.0.0-20251110190251-83f479183930/go.mod h1:G5IanEx8/PgI9w6CFcYQf7jMtHQhZruvfM1i3qOqk5U= -google.golang.org/genproto/googleapis/bytestream v0.0.0-20251110190251-83f479183930 h1:IVllmRGz00yDQkOHBqxBTPy+7TrtYUxW+wtIBuvhYOo= -google.golang.org/genproto/googleapis/bytestream v0.0.0-20251110190251-83f479183930/go.mod h1:ejCb7yLmK6GCVHp5qpeKbm4KZew/ldg+9b8kq5MONgk= -google.golang.org/genproto/googleapis/rpc v0.0.0-20251110190251-83f479183930 h1:tK4fkUnnRhig9TsTp4otV1FxwBFYgbKUq1RY0V6KZ4U= -google.golang.org/genproto/googleapis/rpc v0.0.0-20251110190251-83f479183930/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk= +google.golang.org/genproto v0.0.0-20260122232226-8e98ce8d340d h1:hUplc9kLwH374NIY3PreRUK3Unc0xLm/W7MDsm0gCNo= +google.golang.org/genproto v0.0.0-20260122232226-8e98ce8d340d/go.mod h1:SpjiK7gGN2j/djoQMxLl3QOe/J/XxNzC5M+YLecVVWU= +google.golang.org/genproto/googleapis/api v0.0.0-20260122232226-8e98ce8d340d h1:tUKoKfdZnSjTf5LW7xpG4c6SZ3Ozisn5eumcoTuMEN4= +google.golang.org/genproto/googleapis/api v0.0.0-20260122232226-8e98ce8d340d/go.mod h1:p3MLuOwURrGBRoEyFHBT3GjUwaCQVKeNqqWxlcISGdw= +google.golang.org/genproto/googleapis/bytestream v0.0.0-20260122232226-8e98ce8d340d h1:Q9v92SXbvCsk89QPHVik5fAtq93/x/R8/KNWeS3numk= +google.golang.org/genproto/googleapis/bytestream v0.0.0-20260122232226-8e98ce8d340d/go.mod h1:Tej9lWiwVvQJP+b43pjJIsr/3mZycXWCIyoiXmbFf40= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260122232226-8e98ce8d340d h1:xXzuihhT3gL/ntduUZwHECzAn57E8dA6l8SOtYWdD8Q= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260122232226-8e98ce8d340d/go.mod h1:j9x/tPzZkyxcgEFkiKEEGxfvyumM01BEtsW8xzOahRQ= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= -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/grpc v1.78.0 h1:K1XZG/yGDJnzMdd/uZHAkVqJE+xIDOcmdSFZkBUicNc= +google.golang.org/grpc v1.78.0/go.mod h1:I47qjTo4OKbMkjA/aOOwxDIiPSBofUtQUI5EfpWvW7U= google.golang.org/grpc/examples v0.0.0-20250407062114-b368379ef8f6 h1:ExN12ndbJ608cboPYflpTny6mXSzPrDLh0iTaVrRrds= google.golang.org/grpc/examples v0.0.0-20250407062114-b368379ef8f6/go.mod h1:6ytKWczdvnpnO+m+JiG9NjEDzR1FJfsnmJdG7B8QVZ8= google.golang.org/grpc/security/advancedtls v1.0.0 h1:/KQ7VP/1bs53/aopk9QhuPyFAp9Dm9Ejix3lzYkCrDA= google.golang.org/grpc/security/advancedtls v1.0.0/go.mod h1:o+s4go+e1PJ2AjuQMY5hU82W7lDlefjJA6FqEHRVHWk= -google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE= -google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= +google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= @@ -466,25 +471,25 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -k8s.io/api v0.34.1 h1:jC+153630BMdlFukegoEL8E/yT7aLyQkIVuwhmwDgJM= -k8s.io/api v0.34.1/go.mod h1:SB80FxFtXn5/gwzCoN6QCtPD7Vbu5w2n1S0J5gFfTYk= -k8s.io/apimachinery v0.34.1 h1:dTlxFls/eikpJxmAC7MVE8oOeP1zryV7iRyIjB0gky4= -k8s.io/apimachinery v0.34.1/go.mod h1:/GwIlEcWuTX9zKIg2mbw0LRFIsXwrfoVxn+ef0X13lw= -k8s.io/client-go v0.34.1 h1:ZUPJKgXsnKwVwmKKdPfw4tB58+7/Ik3CrjOEhsiZ7mY= -k8s.io/client-go v0.34.1/go.mod h1:kA8v0FP+tk6sZA0yKLRG67LWjqufAoSHA2xVGKw9Of8= +k8s.io/api v0.35.0 h1:iBAU5LTyBI9vw3L5glmat1njFK34srdLmktWwLTprlY= +k8s.io/api v0.35.0/go.mod h1:AQ0SNTzm4ZAczM03QH42c7l3bih1TbAXYo0DkF8ktnA= +k8s.io/apimachinery v0.35.0 h1:Z2L3IHvPVv/MJ7xRxHEtk6GoJElaAqDCCU0S6ncYok8= +k8s.io/apimachinery v0.35.0/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= +k8s.io/client-go v0.35.0 h1:IAW0ifFbfQQwQmga0UdoH0yvdqrbwMdq9vIFEhRpxBE= +k8s.io/client-go v0.35.0/go.mod h1:q2E5AAyqcbeLGPdoRB+Nxe3KYTfPce1Dnu1myQdqz9o= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 h1:Y3gxNAuB0OBLImH611+UDZcmKS3g6CthxToOb37KgwE= -k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912/go.mod h1:kdmbQkyfwUagLfXIad1y2TdrjPFWp2Q89B3qkRwf/pQ= -k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 h1:SjGebBtkBqHFOli+05xYbK8YF1Dzkbzn+gDM4X9T4Ck= -k8s.io/utils v0.0.0-20251002143259-bc988d571ff4/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/kube-openapi v0.0.0-20251125145642-4e65d59e963e h1:iW9ChlU0cU16w8MpVYjXk12dqQ4BPFBEgif+ap7/hqQ= +k8s.io/kube-openapi v0.0.0-20251125145642-4e65d59e963e/go.mod h1:kdmbQkyfwUagLfXIad1y2TdrjPFWp2Q89B3qkRwf/pQ= +k8s.io/utils v0.0.0-20260108192941-914a6e750570 h1:JT4W8lsdrGENg9W+YwwdLJxklIuKWdRm+BC+xt33FOY= +k8s.io/utils v0.0.0-20260108192941-914a6e750570/go.mod h1:xDxuJ0whA3d0I4mf/C4ppKHxXynQ+fxnkmQH0vTHnuk= mvdan.cc/gofumpt v0.9.2 h1:zsEMWL8SVKGHNztrx6uZrXdp7AX8r421Vvp23sz7ik4= mvdan.cc/gofumpt v0.9.2/go.mod h1:iB7Hn+ai8lPvofHd9ZFGVg2GOr8sBUw1QUWjNbmIL/s= sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 h1:IpInykpT6ceI+QxKBbEflcR5EXP7sU1kvOlxwZh5txg= sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg= sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= -sigs.k8s.io/structured-merge-diff/v6 v6.3.0 h1:jTijUJbW353oVOd9oTlifJqOGEkUw2jB/fXCbTiQEco= -sigs.k8s.io/structured-merge-diff/v6 v6.3.0/go.mod h1:M3W8sfWvn2HhQDIbGWj3S099YozAsymCo/wrT5ohRUE= +sigs.k8s.io/structured-merge-diff/v6 v6.3.1 h1:JrhdFMqOd/+3ByqlP2I45kTOZmTRLBUm5pvRjeheg7E= +sigs.k8s.io/structured-merge-diff/v6 v6.3.1/go.mod h1:M3W8sfWvn2HhQDIbGWj3S099YozAsymCo/wrT5ohRUE= sigs.k8s.io/yaml v1.6.0 h1:G8fkbMSAFqgEFgh4b1wmtzDnioxFCUgTZhlbj5P9QYs= sigs.k8s.io/yaml v1.6.0/go.mod h1:796bPqUfzR/0jLAl6XjHl3Ck7MiyVv8dbTdyT3/pMf4= diff --git a/pkg/proto/auth/auth.pb.go b/pkg/proto/auth/auth.pb.go index ebe364338..943268e9d 100644 --- a/pkg/proto/auth/auth.pb.go +++ b/pkg/proto/auth/auth.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/auth/auth.proto diff --git a/pkg/proto/blobstore/local/local.pb.go b/pkg/proto/blobstore/local/local.pb.go index e471f47c3..17de07537 100644 --- a/pkg/proto/blobstore/local/local.pb.go +++ b/pkg/proto/blobstore/local/local.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/blobstore/local/local.proto diff --git a/pkg/proto/configuration/auth/auth.pb.go b/pkg/proto/configuration/auth/auth.pb.go index ca96aa31b..ed9709d8f 100644 --- a/pkg/proto/configuration/auth/auth.pb.go +++ b/pkg/proto/configuration/auth/auth.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/auth/auth.proto diff --git a/pkg/proto/configuration/bb_copy/bb_copy.pb.go b/pkg/proto/configuration/bb_copy/bb_copy.pb.go index 47803ddd1..ef54ebaa0 100644 --- a/pkg/proto/configuration/bb_copy/bb_copy.pb.go +++ b/pkg/proto/configuration/bb_copy/bb_copy.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/bb_copy/bb_copy.proto diff --git a/pkg/proto/configuration/bb_replicator/bb_replicator.pb.go b/pkg/proto/configuration/bb_replicator/bb_replicator.pb.go index 281473849..0cd73e1c7 100644 --- a/pkg/proto/configuration/bb_replicator/bb_replicator.pb.go +++ b/pkg/proto/configuration/bb_replicator/bb_replicator.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/bb_replicator/bb_replicator.proto diff --git a/pkg/proto/configuration/bb_storage/bb_storage.pb.go b/pkg/proto/configuration/bb_storage/bb_storage.pb.go index ad2827785..376bb387e 100644 --- a/pkg/proto/configuration/bb_storage/bb_storage.pb.go +++ b/pkg/proto/configuration/bb_storage/bb_storage.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/bb_storage/bb_storage.proto diff --git a/pkg/proto/configuration/blobstore/blobstore.pb.go b/pkg/proto/configuration/blobstore/blobstore.pb.go index 622d25a33..2105e71de 100644 --- a/pkg/proto/configuration/blobstore/blobstore.pb.go +++ b/pkg/proto/configuration/blobstore/blobstore.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/blobstore/blobstore.proto diff --git a/pkg/proto/configuration/blockdevice/blockdevice.pb.go b/pkg/proto/configuration/blockdevice/blockdevice.pb.go index 63f234cea..9bb623431 100644 --- a/pkg/proto/configuration/blockdevice/blockdevice.pb.go +++ b/pkg/proto/configuration/blockdevice/blockdevice.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/blockdevice/blockdevice.proto diff --git a/pkg/proto/configuration/builder/builder.pb.go b/pkg/proto/configuration/builder/builder.pb.go index 4fc0958c5..072ee15af 100644 --- a/pkg/proto/configuration/builder/builder.pb.go +++ b/pkg/proto/configuration/builder/builder.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/builder/builder.proto diff --git a/pkg/proto/configuration/cloud/aws/aws.pb.go b/pkg/proto/configuration/cloud/aws/aws.pb.go index e479b143b..2edc43889 100644 --- a/pkg/proto/configuration/cloud/aws/aws.pb.go +++ b/pkg/proto/configuration/cloud/aws/aws.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/cloud/aws/aws.proto diff --git a/pkg/proto/configuration/cloud/gcp/gcp.pb.go b/pkg/proto/configuration/cloud/gcp/gcp.pb.go index fe0e839e3..6d49cfd71 100644 --- a/pkg/proto/configuration/cloud/gcp/gcp.pb.go +++ b/pkg/proto/configuration/cloud/gcp/gcp.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/cloud/gcp/gcp.proto diff --git a/pkg/proto/configuration/digest/digest.pb.go b/pkg/proto/configuration/digest/digest.pb.go index c4f9688ab..6182bffb4 100644 --- a/pkg/proto/configuration/digest/digest.pb.go +++ b/pkg/proto/configuration/digest/digest.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/digest/digest.proto diff --git a/pkg/proto/configuration/eviction/eviction.pb.go b/pkg/proto/configuration/eviction/eviction.pb.go index 4328ae3d6..0acd2addf 100644 --- a/pkg/proto/configuration/eviction/eviction.pb.go +++ b/pkg/proto/configuration/eviction/eviction.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/eviction/eviction.proto diff --git a/pkg/proto/configuration/global/global.pb.go b/pkg/proto/configuration/global/global.pb.go index 9d0938439..f0467004c 100644 --- a/pkg/proto/configuration/global/global.pb.go +++ b/pkg/proto/configuration/global/global.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/global/global.proto diff --git a/pkg/proto/configuration/grpc/grpc.pb.go b/pkg/proto/configuration/grpc/grpc.pb.go index b79d1a79f..310e56b5c 100644 --- a/pkg/proto/configuration/grpc/grpc.pb.go +++ b/pkg/proto/configuration/grpc/grpc.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/grpc/grpc.proto diff --git a/pkg/proto/configuration/http/client/client.pb.go b/pkg/proto/configuration/http/client/client.pb.go index fe00c85a8..810d90453 100644 --- a/pkg/proto/configuration/http/client/client.pb.go +++ b/pkg/proto/configuration/http/client/client.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/http/client/client.proto diff --git a/pkg/proto/configuration/http/server/server.pb.go b/pkg/proto/configuration/http/server/server.pb.go index 3c51de091..491a79616 100644 --- a/pkg/proto/configuration/http/server/server.pb.go +++ b/pkg/proto/configuration/http/server/server.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/http/server/server.proto diff --git a/pkg/proto/configuration/jmespath/jmespath.pb.go b/pkg/proto/configuration/jmespath/jmespath.pb.go index 5d998981e..545fb6964 100644 --- a/pkg/proto/configuration/jmespath/jmespath.pb.go +++ b/pkg/proto/configuration/jmespath/jmespath.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/jmespath/jmespath.proto diff --git a/pkg/proto/configuration/jwt/jwt.pb.go b/pkg/proto/configuration/jwt/jwt.pb.go index 84c7b4325..eff0bbf62 100644 --- a/pkg/proto/configuration/jwt/jwt.pb.go +++ b/pkg/proto/configuration/jwt/jwt.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/jwt/jwt.proto diff --git a/pkg/proto/configuration/sync_jwks_to_configmap/sync_jwks_to_configmap.pb.go b/pkg/proto/configuration/sync_jwks_to_configmap/sync_jwks_to_configmap.pb.go index 41c5d237d..92cf45026 100644 --- a/pkg/proto/configuration/sync_jwks_to_configmap/sync_jwks_to_configmap.pb.go +++ b/pkg/proto/configuration/sync_jwks_to_configmap/sync_jwks_to_configmap.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/sync_jwks_to_configmap/sync_jwks_to_configmap.proto diff --git a/pkg/proto/configuration/tls/tls.pb.go b/pkg/proto/configuration/tls/tls.pb.go index 3aea47d6d..e373614d7 100644 --- a/pkg/proto/configuration/tls/tls.pb.go +++ b/pkg/proto/configuration/tls/tls.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/tls/tls.proto diff --git a/pkg/proto/configuration/x509/x509.pb.go b/pkg/proto/configuration/x509/x509.pb.go index 9eee3aa3e..800bbbcc0 100644 --- a/pkg/proto/configuration/x509/x509.pb.go +++ b/pkg/proto/configuration/x509/x509.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/configuration/x509/x509.proto diff --git a/pkg/proto/fsac/fsac.pb.go b/pkg/proto/fsac/fsac.pb.go index 931b6fefb..7353bec02 100644 --- a/pkg/proto/fsac/fsac.pb.go +++ b/pkg/proto/fsac/fsac.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/fsac/fsac.proto diff --git a/pkg/proto/http/oidc/oidc.pb.go b/pkg/proto/http/oidc/oidc.pb.go index fc6a8a34a..0e5a0fc76 100644 --- a/pkg/proto/http/oidc/oidc.pb.go +++ b/pkg/proto/http/oidc/oidc.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/http/oidc/oidc.proto diff --git a/pkg/proto/icas/icas.pb.go b/pkg/proto/icas/icas.pb.go index 4a198d4ca..0d6bd6f8d 100644 --- a/pkg/proto/icas/icas.pb.go +++ b/pkg/proto/icas/icas.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/icas/icas.proto diff --git a/pkg/proto/iscc/iscc.pb.go b/pkg/proto/iscc/iscc.pb.go index 22adc6b3a..138cf3cad 100644 --- a/pkg/proto/iscc/iscc.pb.go +++ b/pkg/proto/iscc/iscc.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/iscc/iscc.proto diff --git a/pkg/proto/replicator/replicator.pb.go b/pkg/proto/replicator/replicator.pb.go index 0d88a14f4..5b613c8ef 100644 --- a/pkg/proto/replicator/replicator.pb.go +++ b/pkg/proto/replicator/replicator.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.10 +// protoc-gen-go v1.36.11 // protoc v6.33.0 // source: github.com/buildbarn/bb-storage/pkg/proto/replicator/replicator.proto diff --git a/tools/deps.go b/tools/deps.go index 8a90a4de8..7da3a743c 100644 --- a/tools/deps.go +++ b/tools/deps.go @@ -2,7 +2,7 @@ package tools import ( // Used by //:buildifier. - _ "github.com/bazelbuild/buildtools/buildifier/cmd" + _ "github.com/bazelbuild/buildtools/buildifier" // Used by CI. _ "golang.org/x/lint" // Used by CI. From 864cdbda38572145b5295de1cfe66a190befb137 Mon Sep 17 00:00:00 2001 From: Ed Schouten Date: Mon, 26 Jan 2026 22:39:04 +0100 Subject: [PATCH 2/3] Add support for digest function GITSHA1 As this digest function has enum value 10, we need to tidy up some code in digest.go that assumed that all digest functions can be represented as a single digit. --- pkg/digest/bare_function.go | 15 +++++++ pkg/digest/digest.go | 49 ++++++++++++---------- pkg/digest/digest_test.go | 65 +++++++++++++++++++++++++++++ pkg/digest/function.go | 5 ++- pkg/digest/instance_name_patcher.go | 2 +- pkg/digest/instance_name_test.go | 28 +++++++++++++ 6 files changed, 139 insertions(+), 25 deletions(-) diff --git a/pkg/digest/bare_function.go b/pkg/digest/bare_function.go index 3acc9969e..24d51418e 100644 --- a/pkg/digest/bare_function.go +++ b/pkg/digest/bare_function.go @@ -6,6 +6,7 @@ import ( "crypto/sha256" "crypto/sha512" "hash" + "strconv" remoteexecution "github.com/bazelbuild/remote-apis/build/bazel/remote/execution/v2" "github.com/buildbarn/go-sha256tree" @@ -17,6 +18,7 @@ import ( // Remote Execution protocol. var SupportedDigestFunctions = []remoteexecution.DigestFunction_Value{ remoteexecution.DigestFunction_BLAKE3, + remoteexecution.DigestFunction_GITSHA1, remoteexecution.DigestFunction_MD5, remoteexecution.DigestFunction_SHA1, remoteexecution.DigestFunction_SHA256, @@ -47,6 +49,17 @@ var ( }, hashBytesSize: 32, } + gitsha1BareFunction = bareFunction{ + enumValue: remoteexecution.DigestFunction_GITSHA1, + hasherFactory: func(expectedSizeBytes int64) hash.Hash { + h := sha1.New() + h.Write([]byte("blob ")) + h.Write([]byte(strconv.FormatInt(expectedSizeBytes, 10))) + h.Write([]byte{0}) + return h + }, + hashBytesSize: sha1.Size, + } md5BareFunction = bareFunction{ enumValue: remoteexecution.DigestFunction_MD5, hasherFactory: func(expectedSizeBytes int64) hash.Hash { @@ -111,6 +124,8 @@ func getBareFunction(digestFunction remoteexecution.DigestFunction_Value, hashSt } case remoteexecution.DigestFunction_BLAKE3: return &blake3BareFunction + case remoteexecution.DigestFunction_GITSHA1: + return &gitsha1BareFunction case remoteexecution.DigestFunction_MD5: return &md5BareFunction case remoteexecution.DigestFunction_SHA1: diff --git a/pkg/digest/digest.go b/pkg/digest/digest.go index 913924cf9..fd36e729c 100644 --- a/pkg/digest/digest.go +++ b/pkg/digest/digest.go @@ -16,11 +16,6 @@ import ( "google.golang.org/grpc/status" ) -// The offset within the digest string at which the hash starts. We -// currently assume that all supported digest functions have an -// enumeration value below 10, meaning all digests starts with "[0-9]-". -const hashStart = 2 - // Automatically register all compression algorithms that are part of // the protocol. var ( @@ -106,7 +101,16 @@ func RemoveUnsupportedDigestFunctions(reported []remoteexecution.DigestFunction_ // Unpack the individual hash, size and instance name fields from the // string representation stored inside the Digest object. -func (d Digest) unpack() (remoteexecution.DigestFunction_Value, int, int64, int) { +func (d Digest) unpack() (remoteexecution.DigestFunction_Value, int, int, int64, int) { + // Extract the digest function. We only support digest functions + // that are up to two digits long. + digestFunction := remoteexecution.DigestFunction_Value(d.value[0] - '0') + hashStart := 2 + if v := d.value[1]; v != '-' { + digestFunction = digestFunction*10 + remoteexecution.DigestFunction_Value(v-'0') + hashStart++ + } + // Extract the leading hash. hashEnd := shortestSupportedHashStringSize for d.value[hashEnd] != '-' { @@ -121,7 +125,7 @@ func (d Digest) unpack() (remoteexecution.DigestFunction_Value, int, int64, int) sizeBytesEnd++ } - return remoteexecution.DigestFunction_Value(d.value[0] - '0'), hashEnd, sizeBytes, sizeBytesEnd + return digestFunction, hashStart, hashEnd, sizeBytes, sizeBytesEnd } // MustNewDigest constructs a Digest similar to NewDigest, but never @@ -241,7 +245,7 @@ func newDigestFromByteStreamPathCommon(header, trailer []string) (Digest, remote // // This notation is used to read files through the ByteStream service. func (d Digest) GetByteStreamReadPath(compressor remoteexecution.Compressor_Value) string { - digestFunction, hashEnd, sizeBytes, sizeBytesEnd := d.unpack() + digestFunction, hashStart, hashEnd, sizeBytes, sizeBytesEnd := d.unpack() return path.Join( d.value[sizeBytesEnd+1:], compressorEnumToMidfix[compressor], @@ -258,7 +262,7 @@ func (d Digest) GetByteStreamReadPath(compressor remoteexecution.Compressor_Valu // // This notation is used to write files through the ByteStream service. func (d Digest) GetByteStreamWritePath(uuid uuid.UUID, compressor remoteexecution.Compressor_Value) string { - digestFunction, hashEnd, sizeBytes, sizeBytesEnd := d.unpack() + digestFunction, hashStart, hashEnd, sizeBytes, sizeBytesEnd := d.unpack() return path.Join( d.value[sizeBytesEnd+1:], "uploads", @@ -273,7 +277,7 @@ func (d Digest) GetByteStreamWritePath(uuid uuid.UUID, compressor remoteexecutio // execution protocol, so that it may be stored in messages returned to // the client. func (d Digest) GetProto() *remoteexecution.Digest { - _, hashEnd, sizeBytes, _ := d.unpack() + _, hashStart, hashEnd, sizeBytes, _ := d.unpack() return &remoteexecution.Digest{ Hash: d.value[hashStart:hashEnd], SizeBytes: sizeBytes, @@ -282,7 +286,7 @@ func (d Digest) GetProto() *remoteexecution.Digest { // GetInstanceName returns the instance name of the object. func (d Digest) GetInstanceName() InstanceName { - _, _, _, sizeBytesEnd := d.unpack() + _, _, _, _, sizeBytesEnd := d.unpack() return InstanceName{ value: d.value[sizeBytesEnd+1:], } @@ -290,7 +294,7 @@ func (d Digest) GetInstanceName() InstanceName { // GetHashBytes returns the hash of the object as a slice of bytes. func (d Digest) GetHashBytes() []byte { - _, hashEnd, _, _ := d.unpack() + _, hashStart, hashEnd, _, _ := d.unpack() hash, err := hex.DecodeString(d.value[hashStart:hashEnd]) if err != nil { panic("Failed to decode digest hash, even though its contents have already been validated") @@ -300,13 +304,13 @@ func (d Digest) GetHashBytes() []byte { // GetHashString returns the hash of the object as a string. func (d Digest) GetHashString() string { - _, hashEnd, _, _ := d.unpack() + _, hashStart, hashEnd, _, _ := d.unpack() return d.value[hashStart:hashEnd] } // GetSizeBytes returns the size of the object, in bytes. func (d Digest) GetSizeBytes() int64 { - _, _, sizeBytes, _ := d.unpack() + _, _, _, sizeBytes, _ := d.unpack() return sizeBytes } @@ -342,7 +346,7 @@ const ( func (d Digest) GetKey(format KeyFormat) string { switch format { case KeyWithoutInstance: - _, _, _, sizeBytesEnd := d.unpack() + _, _, _, _, sizeBytesEnd := d.unpack() return d.value[:sizeBytesEnd] case KeyWithInstance: return d.value @@ -368,10 +372,11 @@ func (d Digest) ToSingletonSet() Set { // algorithm as the one that was used to create the digest, making it // possible to validate data against a digest. // -// The expected size can be used as a hint to create an appropriately -// sized hasher. If the expected size is unknown, provide math.MaxInt64. +// The expected size MUST correspond to the size of the object that is +// being hashed. Digest functions like GITSHA1 require that the size is +// known up front. func (d Digest) NewHasher(expectedSizeBytes int64) hash.Hash { - digestFunction, _, _, _ := d.unpack() + digestFunction, _, _, _, _ := d.unpack() return getBareFunction(digestFunction, 0).hasherFactory(expectedSizeBytes) } @@ -381,7 +386,7 @@ func (d Digest) NewHasher(expectedSizeBytes int64) hash.Hash { // to be derived based on an existing instance. For example, to generate // a digest of an output file of a build action, given an action digest. func (d Digest) GetDigestFunction() Function { - digestFunction, _, _, sizeBytesEnd := d.unpack() + digestFunction, _, _, _, sizeBytesEnd := d.unpack() return Function{ instanceName: InstanceName{ value: d.value[sizeBytesEnd+1:], @@ -394,7 +399,7 @@ func (d Digest) GetDigestFunction() Function { // name and uses the same hashing algorithm as a provided Function // object. func (d Digest) UsesDigestFunction(f Function) bool { - digestFunction, _, _, sizeBytesEnd := d.unpack() + digestFunction, _, _, _, sizeBytesEnd := d.unpack() return digestFunction == f.bareFunction.enumValue && d.value[sizeBytesEnd+1:] == f.instanceName.value } @@ -407,7 +412,7 @@ func (d Digest) UsesDigestFunction(f Function) bool { // list of six digests, having instance names "", "this", "this/is", // "this/is/an", "this/is/an/instance" and "this/is/an/instance/name". func (d Digest) GetDigestsWithParentInstanceNames() []Digest { - _, _, _, sizeBytesEnd := d.unpack() + _, _, _, _, sizeBytesEnd := d.unpack() instanceNameStart := sizeBytesEnd + 1 digestWithoutInstanceName := Digest{ value: d.value[:instanceNameStart], @@ -451,7 +456,7 @@ func (d Digest) GetDigestsWithParentInstanceNames() []Digest { // This representation is used by the NFSv4 server, as it needs to // encode digests in file handles. func (d Digest) GetCompactBinary() []byte { - digestFunction, hashEnd, sizeBytes, _ := d.unpack() + digestFunction, hashStart, hashEnd, sizeBytes, _ := d.unpack() hash, err := hex.DecodeString(d.value[hashStart:hashEnd]) if err != nil { diff --git a/pkg/digest/digest_test.go b/pkg/digest/digest_test.go index d1a464cd8..aad2531cd 100644 --- a/pkg/digest/digest_test.go +++ b/pkg/digest/digest_test.go @@ -48,6 +48,13 @@ func TestNewDigestFromByteStreamReadPath(t *testing.T) { require.Equal(t, remoteexecution.Compressor_IDENTITY, compressor) }) + t.Run("GITSHA1", func(t *testing.T) { + d, compressor, err := digest.NewDigestFromByteStreamReadPath("blobs/gitsha1/e22e8f5c4057251e65ab28c75ef3f7c2c2e7fe32/123") + require.NoError(t, err) + require.Equal(t, digest.MustNewDigest("", remoteexecution.DigestFunction_GITSHA1, "e22e8f5c4057251e65ab28c75ef3f7c2c2e7fe32", 123), d) + require.Equal(t, remoteexecution.Compressor_IDENTITY, compressor) + }) + t.Run("MD5", func(t *testing.T) { d, compressor, err := digest.NewDigestFromByteStreamReadPath("blobs/8b1a9953c4611296a827abf8c47804d7/123") require.NoError(t, err) @@ -133,6 +140,13 @@ func TestNewDigestFromByteStreamWritePath(t *testing.T) { require.Equal(t, remoteexecution.Compressor_IDENTITY, compressor) }) + t.Run("GITSHA1", func(t *testing.T) { + d, compressor, err := digest.NewDigestFromByteStreamWritePath("uploads/f50c65cd-9bbe-467d-8b9e-86c2b98c0d6a/blobs/gitsha1/f360a89d2669a6de05a290240553e64f100a4741/123") + require.NoError(t, err) + require.Equal(t, digest.MustNewDigest("", remoteexecution.DigestFunction_GITSHA1, "f360a89d2669a6de05a290240553e64f100a4741", 123), d) + require.Equal(t, remoteexecution.Compressor_IDENTITY, compressor) + }) + t.Run("MD5", func(t *testing.T) { d, compressor, err := digest.NewDigestFromByteStreamWritePath("uploads/da2f1135-326b-4956-b920-1646cdd6cb53/blobs/8b1a9953c4611296a827abf8c47804d7/123") require.NoError(t, err) @@ -207,6 +221,17 @@ func TestDigestGetByteStreamReadPath(t *testing.T) { 123).GetByteStreamReadPath(remoteexecution.Compressor_IDENTITY)) }) + t.Run("GITSHA1", func(t *testing.T) { + require.Equal( + t, + "blobs/gitsha1/56a69bf74dc325e10e19ab2c69c13d1360aea147/123", + digest.MustNewDigest( + "", + remoteexecution.DigestFunction_GITSHA1, + "56a69bf74dc325e10e19ab2c69c13d1360aea147", + 123).GetByteStreamReadPath(remoteexecution.Compressor_IDENTITY)) + }) + t.Run("MD5", func(t *testing.T) { require.Equal( t, @@ -278,6 +303,17 @@ func TestDigestGetByteStreamWritePath(t *testing.T) { 123).GetByteStreamWritePath(uuid, remoteexecution.Compressor_IDENTITY)) }) + t.Run("GITSHA1", func(t *testing.T) { + require.Equal( + t, + "uploads/36ebab65-3c4f-4faf-818b-2eabb4cd1b02/blobs/gitsha1/42e4b92e68ca9224a420f93ed0a73786515d75a8/123", + digest.MustNewDigest( + "", + remoteexecution.DigestFunction_GITSHA1, + "42e4b92e68ca9224a420f93ed0a73786515d75a8", + 123).GetByteStreamWritePath(uuid, remoteexecution.Compressor_IDENTITY)) + }) + t.Run("MD5", func(t *testing.T) { require.Equal( t, @@ -457,6 +493,18 @@ func TestDigestGetKey(t *testing.T) { d.GetKey(digest.KeyWithInstance)) }) + t.Run("GITSHA1", func(t *testing.T) { + d := digest.MustNewDigest("hello", remoteexecution.DigestFunction_GITSHA1, "5fa582666e141fbb1e625792c9790eb9f5942c02", 123) + require.Equal( + t, + "10-5fa582666e141fbb1e625792c9790eb9f5942c02-123", + d.GetKey(digest.KeyWithoutInstance)) + require.Equal( + t, + "10-5fa582666e141fbb1e625792c9790eb9f5942c02-123-hello", + d.GetKey(digest.KeyWithInstance)) + }) + t.Run("SHA256", func(t *testing.T) { d := digest.MustNewDigest("hello", remoteexecution.DigestFunction_SHA256, "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", 123) require.Equal( @@ -585,6 +633,23 @@ func TestDigestGetCompactBinary(t *testing.T) { d.GetCompactBinary()) }) + t.Run("GITSHA1", func(t *testing.T) { + d := digest.MustNewDigest("hello", remoteexecution.DigestFunction_GITSHA1, "bd10e7d4b328c8f16cbd18ffe339e1391193338f", 124982395) + require.Equal( + t, + []byte{ + // Digest function: remoteexecution.DigestFunction_GITSHA1. + 0x0a, + // Hash. + 0xbd, 0x10, 0xe7, 0xd4, 0xb3, 0x28, 0xc8, 0xf1, + 0x6c, 0xbd, 0x18, 0xff, 0xe3, 0x39, 0xe1, 0x39, + 0x11, 0x93, 0x33, 0x8f, + // Size. + 0xf6, 0xd1, 0x98, 0x77, + }, + d.GetCompactBinary()) + }) + t.Run("SHA256", func(t *testing.T) { d := digest.MustNewDigest("hello", remoteexecution.DigestFunction_SHA256, "18c17f53df2fcd1f8271bc1c0e55df71b1a796eaa74ff45a68900f04e3f4c7a2", 124982395) require.Equal( diff --git a/pkg/digest/function.go b/pkg/digest/function.go index f05aa4887..2b15b53e9 100644 --- a/pkg/digest/function.go +++ b/pkg/digest/function.go @@ -49,8 +49,9 @@ func (f Function) GetEnumValue() remoteexecution.DigestFunction_Value { // NewGenerator creates a writer that may be used to compute digests of // newly created files. // -// The expected size can be used as a hint to create an appropriately -// sized hasher. If the expected size is unknown, provide math.MaxInt64. +// The expected size MUST correspond to the size of the object that is +// being hashed. Digest functions like GITSHA1 require that the size is +// known up front. func (f Function) NewGenerator(expectedSizeBytes int64) *Generator { return &Generator{ digestFunction: f, diff --git a/pkg/digest/instance_name_patcher.go b/pkg/digest/instance_name_patcher.go index a7dc3f90c..0b679fd73 100644 --- a/pkg/digest/instance_name_patcher.go +++ b/pkg/digest/instance_name_patcher.go @@ -80,7 +80,7 @@ func (ip *actualInstanceNamePatcher) PatchInstanceName(i InstanceName) InstanceN } func patchDigest(d Digest, oldPrefixWithSlashLength int, newPrefixWithSlash, newPrefixWithoutSlash string) Digest { - _, _, _, sizeBytesEnd := d.unpack() + _, _, _, _, sizeBytesEnd := d.unpack() instanceNameStart := sizeBytesEnd + 1 return Digest{ value: d.value[:instanceNameStart] + patchInstanceName(d.value[instanceNameStart:], oldPrefixWithSlashLength, newPrefixWithSlash, newPrefixWithoutSlash), diff --git a/pkg/digest/instance_name_test.go b/pkg/digest/instance_name_test.go index 44b8f995f..48c0c2d09 100644 --- a/pkg/digest/instance_name_test.go +++ b/pkg/digest/instance_name_test.go @@ -62,6 +62,19 @@ func TestInstanceNameGetDigestFunction(t *testing.T) { require.False(t, digest.MustNewDigest("hello", remoteexecution.DigestFunction_SHA1, "5ad9e0fd2f11ec59c95c60020c2b00afbef10e5b", 789).UsesDigestFunction(digestFunction)) }) + t.Run("GITSHA1", func(t *testing.T) { + digestFunction, err := instanceName.GetDigestFunction(remoteexecution.DigestFunction_GITSHA1, 0) + require.NoError(t, err) + + g := digestFunction.NewGenerator(5) + g.Write([]byte("Hello")) + require.Equal(t, digest.MustNewDigest("hello", remoteexecution.DigestFunction_GITSHA1, "5ab2f8a4323abafb10abb68657d9d39f1a775057", 5), g.Sum()) + + require.True(t, digest.MustNewDigest("hello", remoteexecution.DigestFunction_GITSHA1, "fe6ea45d9d23b1eba62862afe7e630f68cc8add4", 123).UsesDigestFunction(digestFunction)) + require.False(t, digest.MustNewDigest("bye", remoteexecution.DigestFunction_GITSHA1, "fe6ea45d9d23b1eba62862afe7e630f68cc8add4", 456).UsesDigestFunction(digestFunction)) + require.False(t, digest.MustNewDigest("hello", remoteexecution.DigestFunction_SHA1, "fe6ea45d9d23b1eba62862afe7e630f68cc8add4", 789).UsesDigestFunction(digestFunction)) + }) + t.Run("MD5", func(t *testing.T) { digestFunction, err := instanceName.GetDigestFunction(remoteexecution.DigestFunction_MD5, 0) require.NoError(t, err) @@ -135,6 +148,21 @@ func TestInstanceNameNewDigestFromCompactBinary(t *testing.T) { require.Equal(t, digest.MustNewDigest("hello", remoteexecution.DigestFunction_BLAKE3, "af1349b9f5f9a1a6a0404dea36dcc9499bcb25c9adc112b7cc9a93cae41f3262", 124982395), blobDigest) }) + t.Run("GITSHA1", func(t *testing.T) { + blobDigest, err := instanceName.NewDigestFromCompactBinary(bytes.NewBuffer([]byte{ + // Digest function: remoteexecution.DigestFunction_GITSHA1. + 0x0a, + // Hash. + 0x02, 0x45, 0x12, 0x55, 0x2d, 0xa5, 0x58, 0xf8, + 0xb4, 0x3c, 0x0c, 0xca, 0x95, 0x73, 0x83, 0x28, + 0x22, 0xf9, 0x8c, 0xdc, + // Size. + 0xf6, 0xd1, 0x98, 0x77, + })) + require.NoError(t, err) + require.Equal(t, digest.MustNewDigest("hello", remoteexecution.DigestFunction_GITSHA1, "024512552da558f8b43c0cca9573832822f98cdc", 124982395), blobDigest) + }) + t.Run("SHA256", func(t *testing.T) { blobDigest, err := instanceName.NewDigestFromCompactBinary(bytes.NewBuffer([]byte{ // Digest function: remoteexecution.DigestFunction_SHA256. From 7dc1ca392f7844f69b13e62a3f2b1a4658b0adf0 Mon Sep 17 00:00:00 2001 From: Ed Schouten Date: Tue, 27 Jan 2026 05:25:17 +0100 Subject: [PATCH 3/3] Add the ability to query the size of a FileReader NewGenerator() and NewHasher() require providing the exact size of a file. However, our VFS API provides no way of obtaining it without reading its contents. I'm naming this method Len() to match bytes.Buffer and strings.Buffer. --- pkg/filesystem/file.go | 3 +++ pkg/filesystem/local_directory_test.go | 21 +++++++++++++++++++++ pkg/filesystem/local_directory_unix.go | 10 ++++++++++ pkg/filesystem/local_directory_windows.go | 10 ++++++++++ 4 files changed, 44 insertions(+) diff --git a/pkg/filesystem/file.go b/pkg/filesystem/file.go index fe53d0864..f8de2c02f 100644 --- a/pkg/filesystem/file.go +++ b/pkg/filesystem/file.go @@ -38,6 +38,9 @@ type FileReader interface { // with Data may also return io.EOF when no more data regions // exist past the provided offset. GetNextRegionOffset(offset int64, regionType RegionType) (int64, error) + + // Equivalent to fstat().st_size. + Len() (int64, error) } // FileReadWriter is returned by Directory.OpenReadWrite(). It is a diff --git a/pkg/filesystem/local_directory_test.go b/pkg/filesystem/local_directory_test.go index 31e42e976..6cab84ba6 100644 --- a/pkg/filesystem/local_directory_test.go +++ b/pkg/filesystem/local_directory_test.go @@ -487,6 +487,27 @@ func TestLocalDirectoryFileGetDataRegionOffset(t *testing.T) { require.NoError(t, d.Close()) } +func TestLocalDirectoryFileLen(t *testing.T) { + d := openTmpDir(t) + f, err := d.OpenReadWrite(path.MustNewComponent("file"), filesystem.CreateExcl(0o444)) + require.NoError(t, err) + + sizeBytes, err := f.Len() + require.NoError(t, err) + require.Equal(t, int64(0), sizeBytes) + + n, err := f.WriteAt([]byte("Hello"), 1024*1024) + require.Equal(t, 5, n) + require.NoError(t, err) + + sizeBytes, err = f.Len() + require.NoError(t, err) + require.Equal(t, int64(1024*1024+5), sizeBytes) + + require.NoError(t, f.Close()) + require.NoError(t, d.Close()) +} + func TestLocalDirectoryIsWritable(t *testing.T) { if runtime.GOOS == "windows" { return diff --git a/pkg/filesystem/local_directory_unix.go b/pkg/filesystem/local_directory_unix.go index a23c99138..738fe77ac 100644 --- a/pkg/filesystem/local_directory_unix.go +++ b/pkg/filesystem/local_directory_unix.go @@ -119,6 +119,16 @@ func (f localFileReadWriter) GetNextRegionOffset(offset int64, regionType Region return nextOffset, err } +func (f localFileReadWriter) Len() (int64, error) { + defer runtime.KeepAlive(f) + + fileInfo, err := f.Stat() + if err != nil { + return -1, err + } + return fileInfo.Size(), nil +} + func (d *localDirectory) OpenRead(name path.Component) (FileReader, error) { f, err := d.open(name, DontCreate, os.O_RDONLY) if err != nil { diff --git a/pkg/filesystem/local_directory_windows.go b/pkg/filesystem/local_directory_windows.go index 19f5dc999..316e94dbe 100644 --- a/pkg/filesystem/local_directory_windows.go +++ b/pkg/filesystem/local_directory_windows.go @@ -401,6 +401,16 @@ func (f localFileReadWriter) GetNextRegionOffset(offset int64, regionType Region return nextOffset, err } +func (f localFileReadWriter) Len() (int64, error) { + defer runtime.KeepAlive(f) + + fileInfo, err := f.Stat() + if err != nil { + return -1, err + } + return fileInfo.Size(), nil +} + func (d *localDirectory) OpenRead(name path.Component) (FileReader, error) { f, err := d.open(name, DontCreate, os.O_RDONLY) if err != nil {