From 2ae97474c1d41faca2bc1cac36ae62bff149ad7c Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Fri, 5 Dec 2025 10:06:57 -0800 Subject: [PATCH 01/20] Use gha oracle runners for build and test job (#2277) Summary: Use gha oracle runners for build and test job This PR supersedes #2261. Relevant Issues: N/A Type of change: /kind cleanup Test Plan: Adhoc build from latest commit passes ([build link](https://github.com/pixie-io/pixie/actions/runs/19958776211)) --------- Signed-off-by: Koray Oksay Signed-off-by: Dom Del Nano Co-authored-by: Koray Oksay --- .github/workflows/build_and_test.yaml | 12 ++++++++---- bazel/toolchain_transitions.bzl | 1 + ci/github/bazelrc | 3 --- src/utils/testingutils/docker/elastic.go | 3 +++ 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build_and_test.yaml b/.github/workflows/build_and_test.yaml index 4e29338249a..58d51489c78 100644 --- a/.github/workflows/build_and_test.yaml +++ b/.github/workflows/build_and_test.yaml @@ -36,7 +36,7 @@ jobs: image-base-name: "dev_image_with_extras" ref: ${{ needs.env-protect-setup.outputs.ref }} clang-tidy: - runs-on: oracle-16cpu-64gb-x86-64 + runs-on: oracle-vm-16cpu-64gb-x86-64 needs: [authorize, env-protect-setup, get-dev-image] container: image: ${{ needs.get-dev-image.outputs.image-with-tag }} @@ -64,7 +64,7 @@ jobs: code-coverage: if: github.event_name == 'push' needs: [authorize, env-protect-setup, get-dev-image] - runs-on: oracle-16cpu-64gb-x86-64 + runs-on: oracle-vm-16cpu-64gb-x86-64 container: image: ${{ needs.get-dev-image.outputs.image-with-tag }} steps: @@ -88,7 +88,7 @@ jobs: ./ci/collect_coverage.sh -u -b main -c "$(git rev-parse HEAD)" -r pixie-io/pixie generate-matrix: needs: [authorize, env-protect-setup, get-dev-image] - runs-on: oracle-16cpu-64gb-x86-64 + runs-on: oracle-vm-16cpu-64gb-x86-64 container: image: ${{ needs.get-dev-image.outputs.image-with-tag }} outputs: @@ -120,7 +120,7 @@ jobs: bazel_tests_* build-and-test: needs: [authorize, env-protect-setup, get-dev-image, generate-matrix] - runs-on: oracle-16cpu-64gb-x86-64 + runs-on: oracle-vm-16cpu-64gb-x86-64 permissions: contents: read actions: read @@ -160,6 +160,10 @@ jobs: run: | # Github actions container runner creates a docker network without IPv6 support. We enable it manually. sysctl -w net.ipv6.conf.lo.disable_ipv6=0 + + # Our qemu builds require unprivileged user namespaces to run. + sysctl -w kernel.unprivileged_userns_clone=1 + sysctl -w kernel.apparmor_restrict_unprivileged_userns=0 ./scripts/bazel_ignore_codes.sh test ${{ matrix.args }} --target_pattern_file=target_files/${{ matrix.tests }} \ 2> >(tee bazel_stderr) - name: Parse junit reports diff --git a/bazel/toolchain_transitions.bzl b/bazel/toolchain_transitions.bzl index 65caa6e6c7b..5578af5dada 100644 --- a/bazel/toolchain_transitions.bzl +++ b/bazel/toolchain_transitions.bzl @@ -29,6 +29,7 @@ cc_clang_binary = meta.wrap_with_transition( native.cc_binary, { "@//bazel/cc_toolchains:compiler": meta.replace_with("clang"), + "@//bazel/cc_toolchains:libc_version": meta.replace_with("glibc2_36"), }, executable = True, ) diff --git a/ci/github/bazelrc b/ci/github/bazelrc index f4b0cdb5ac0..8de37643b0c 100644 --- a/ci/github/bazelrc +++ b/ci/github/bazelrc @@ -5,9 +5,6 @@ common --color=yes # a given run. common --keep_going -# Always use remote exec -build --config=remote - build --build_metadata=HOST=github-actions build --build_metadata=USER=github-actions build --build_metadata=REPO_URL=https://github.com/pixie-io/pixie diff --git a/src/utils/testingutils/docker/elastic.go b/src/utils/testingutils/docker/elastic.go index a098add6a2d..a90dafef4c2 100644 --- a/src/utils/testingutils/docker/elastic.go +++ b/src/utils/testingutils/docker/elastic.go @@ -70,6 +70,7 @@ func SetupElastic() (*elastic.Client, func(), error) { Type: "tmpfs", TempfsOptions: &docker.TempfsOptions{ SizeBytes: 100 * 1024 * 1024, + Mode: 0o777, }, }, { @@ -77,6 +78,7 @@ func SetupElastic() (*elastic.Client, func(), error) { Type: "tmpfs", TempfsOptions: &docker.TempfsOptions{ SizeBytes: 100 * 1024 * 1024, + Mode: 0o777, }, }, { @@ -84,6 +86,7 @@ func SetupElastic() (*elastic.Client, func(), error) { Type: "tmpfs", TempfsOptions: &docker.TempfsOptions{ SizeBytes: 100 * 1024 * 1024, + Mode: 0o777, }, }, } From b77b322fc3941618344d34b23adac93264b139c7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Dec 2025 10:47:22 -0800 Subject: [PATCH 02/20] Bump golang.org/x/crypto from 0.35.0 to 0.45.0 (#2274) Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.35.0 to 0.45.0.
Commits
  • 4e0068c go.mod: update golang.org/x dependencies
  • e79546e ssh: curb GSSAPI DoS risk by limiting number of specified OIDs
  • f91f7a7 ssh/agent: prevent panic on malformed constraint
  • 2df4153 acme/autocert: let automatic renewal work with short lifetime certs
  • bcf6a84 acme: pass context to request
  • b4f2b62 ssh: fix error message on unsupported cipher
  • 79ec3a5 ssh: allow to bind to a hostname in remote forwarding
  • 122a78f go.mod: update golang.org/x dependencies
  • c0531f9 all: eliminate vet diagnostics
  • 0997000 all: fix some comments
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/crypto&package-manager=go_modules&previous-version=0.35.0&new-version=0.45.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/pixie-io/pixie/network/alerts).
--------- Signed-off-by: dependabot[bot] Signed-off-by: Dom Del Nano Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Dom Del Nano --- go.mod | 16 ++++++++-------- go.sum | 32 ++++++++++++++++---------------- go_deps.bzl | 36 ++++++++++++++++++------------------ 3 files changed, 42 insertions(+), 42 deletions(-) diff --git a/go.mod b/go.mod index e88456ffa57..4224503b9c1 100644 --- a/go.mod +++ b/go.mod @@ -78,12 +78,12 @@ require ( go.etcd.io/etcd/server/v3 v3.5.8 go.uber.org/zap v1.24.0 golang.org/x/exp v0.0.0-20230307190834-24139beb5833 - golang.org/x/mod v0.20.0 - golang.org/x/net v0.36.0 + golang.org/x/mod v0.28.0 + golang.org/x/net v0.43.0 golang.org/x/oauth2 v0.6.0 - golang.org/x/sync v0.11.0 - golang.org/x/sys v0.30.0 - golang.org/x/term v0.29.0 + golang.org/x/sync v0.18.0 + golang.org/x/sys v0.38.0 + golang.org/x/term v0.37.0 golang.org/x/time v0.3.0 gonum.org/v1/gonum v0.11.0 google.golang.org/api v0.111.0 @@ -269,10 +269,10 @@ require ( go.starlark.net v0.0.0-20200306205701-8dd3e2ee1dd5 // indirect go.uber.org/atomic v1.10.0 // indirect go.uber.org/multierr v1.6.0 // indirect - golang.org/x/crypto v0.35.0 // indirect + golang.org/x/crypto v0.42.0 // indirect golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 // indirect - golang.org/x/text v0.22.0 // indirect - golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect + golang.org/x/text v0.29.0 // indirect + golang.org/x/tools v0.36.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect gomodules.xyz/jsonpatch/v2 v2.2.0 // indirect google.golang.org/appengine v1.6.7 // indirect diff --git a/go.sum b/go.sum index 734a4e36ba3..b8697cb4add 100644 --- a/go.sum +++ b/go.sum @@ -1059,8 +1059,8 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0= -golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs= -golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ= +golang.org/x/crypto v0.42.0 h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI= +golang.org/x/crypto v0.42.0/go.mod h1:4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= @@ -1087,8 +1087,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.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= -golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U= +golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1134,8 +1134,8 @@ golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qx 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.36.0 h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA= -golang.org/x/net v0.36.0/go.mod h1:bFmbeoIPfrw4sMHNhb4J9f6+tPziuGjq7Jk/38fxi1I= +golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE= +golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1157,8 +1157,8 @@ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/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.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w= -golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +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/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1238,14 +1238,14 @@ golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 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.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc= -golang.org/x/sys v0.30.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/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.29.0 h1:L6pJp37ocefwRRtYPKSWOWzOtWSxVajvz2ldH/xi3iU= -golang.org/x/term v0.29.0/go.mod h1:6bl4lRlvVuDgSf3179VpIxBF0o10JUpXWOnI7nErv7s= +golang.org/x/term v0.37.0 h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU= +golang.org/x/term v0.37.0/go.mod h1:5pB4lxRNYYVZuTLmy8oR2BH8dflOR+IbTYFD8fi3254= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -1254,8 +1254,8 @@ golang.org/x/text v0.3.6/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.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM= -golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY= +golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk= +golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= @@ -1302,8 +1302,8 @@ golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= 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.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg= -golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= +golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg= +golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s= 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= diff --git a/go_deps.bzl b/go_deps.bzl index 1a3ebade451..6590dff5052 100644 --- a/go_deps.bzl +++ b/go_deps.bzl @@ -4434,8 +4434,8 @@ def pl_go_dependencies(): name = "org_golang_x_crypto", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/crypto", - sum = "h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs=", - version = "v0.35.0", + sum = "h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI=", + version = "v0.42.0", ) go_repository( name = "org_golang_x_exp", @@ -4469,15 +4469,15 @@ def pl_go_dependencies(): name = "org_golang_x_mod", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/mod", - sum = "h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=", - version = "v0.20.0", + sum = "h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U=", + version = "v0.28.0", ) go_repository( name = "org_golang_x_net", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/net", - sum = "h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA=", - version = "v0.36.0", + sum = "h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE=", + version = "v0.43.0", ) go_repository( name = "org_golang_x_oauth2", @@ -4490,36 +4490,36 @@ def pl_go_dependencies(): name = "org_golang_x_sync", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/sync", - sum = "h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=", - version = "v0.11.0", + sum = "h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=", + version = "v0.18.0", ) go_repository( name = "org_golang_x_sys", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/sys", - sum = "h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=", - version = "v0.30.0", + sum = "h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=", + version = "v0.38.0", ) go_repository( name = "org_golang_x_telemetry", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/telemetry", - sum = "h1:IRJeR9r1pYWsHKTRe/IInb7lYvbBVIqOgsX/u0mbOWY=", - version = "v0.0.0-20240228155512-f48c80bd79b2", + sum = "h1:3doPGa+Gg4snce233aCWnbZVFsyFMo/dR40KK/6skyE=", + version = "v0.0.0-20250807160809-1a19826ec488", ) go_repository( name = "org_golang_x_term", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/term", - sum = "h1:L6pJp37ocefwRRtYPKSWOWzOtWSxVajvz2ldH/xi3iU=", - version = "v0.29.0", + sum = "h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU=", + version = "v0.37.0", ) go_repository( name = "org_golang_x_text", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/text", - sum = "h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=", - version = "v0.22.0", + sum = "h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=", + version = "v0.29.0", ) go_repository( name = "org_golang_x_time", @@ -4532,8 +4532,8 @@ def pl_go_dependencies(): name = "org_golang_x_tools", build_directives = ["gazelle:map_kind go_binary pl_go_binary @px//bazel:pl_build_system.bzl", "gazelle:map_kind go_test pl_go_test @px//bazel:pl_build_system.bzl"], importpath = "golang.org/x/tools", - sum = "h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg=", - version = "v0.21.1-0.20240508182429-e35e4ccd0d2d", + sum = "h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=", + version = "v0.36.0", ) go_repository( name = "org_golang_x_xerrors", From 770c5091752326582bfb179892b180970b265515 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Fri, 5 Dec 2025 14:18:12 -0800 Subject: [PATCH 03/20] Replace `GUARDED_BY` with `ABSL_GUARDED_BY` in preparation for abseil upgrade (#2283) Summary: Replace `GUARDED_BY` with `ABSL_GUARDED_BY` in preparation for abseil upgrade In order to upgrade to bazel 7, many of our dependencies (bazel repos) need to be upgraded. In a branch that builds the pixie repo with bazel 7, this was a supporting change I needed to get the build working. https://github.com/abseil/abseil-cpp/commit/ba7a9e2422cce2bc310c93dfb0b5997f69f7a291 is where abseil removed the versions of the macro pixie used previously. Relevant Issues: #2282 Type of change: /kind cleanup Test Plan: Build should succeed --------- Signed-off-by: Dom Del Nano --- src/carnot/exec/grpc_router.h | 25 ++++++++++--------- src/carnot/udf/borrow_pool.h | 2 +- src/experimental/standalone_pem/sink_server.h | 2 +- .../agent/shared/manager/chan_cache.h | 2 +- .../shared/manager/relation_info_manager.h | 3 ++- 5 files changed, 18 insertions(+), 16 deletions(-) diff --git a/src/carnot/exec/grpc_router.h b/src/carnot/exec/grpc_router.h index 37303a4676b..ba40c66dd97 100644 --- a/src/carnot/exec/grpc_router.h +++ b/src/carnot/exec/grpc_router.h @@ -110,14 +110,14 @@ class GRPCRouter final : public carnotpb::ResultSinkService::Service { */ struct SourceNodeTracker { SourceNodeTracker() = default; - GRPCSourceNode* source_node GUARDED_BY(node_lock) = nullptr; + GRPCSourceNode* source_node ABSL_GUARDED_BY(node_lock) = nullptr; // connection_initiated_by_sink and connection_closed_by_sink are true when the // grpc sink (aka the client) initiates the query result stream or closes a query result stream, // respectively. - bool connection_initiated_by_sink GUARDED_BY(node_lock) = false; - bool connection_closed_by_sink GUARDED_BY(node_lock) = false; + bool connection_initiated_by_sink ABSL_GUARDED_BY(node_lock) = false; + bool connection_closed_by_sink ABSL_GUARDED_BY(node_lock) = false; std::vector> response_backlog - GUARDED_BY(node_lock); + ABSL_GUARDED_BY(node_lock); absl::base_internal::SpinLock node_lock; }; @@ -126,17 +126,18 @@ class GRPCRouter final : public carnotpb::ResultSinkService::Service { */ struct QueryTracker { QueryTracker() : create_time(std::chrono::steady_clock::now()) {} - absl::node_hash_map source_node_trackers GUARDED_BY(query_lock); - const std::chrono::steady_clock::time_point create_time GUARDED_BY(query_lock); - std::function restart_execution_func_ GUARDED_BY(query_lock); + absl::node_hash_map source_node_trackers + ABSL_GUARDED_BY(query_lock); + const std::chrono::steady_clock::time_point create_time ABSL_GUARDED_BY(query_lock); + std::function restart_execution_func_ ABSL_GUARDED_BY(query_lock); // The set of agents we've seen for the query. - absl::flat_hash_set seen_agents GUARDED_BY(query_lock); - absl::flat_hash_set<::grpc::ServerContext*> active_agent_contexts GUARDED_BY(query_lock); + absl::flat_hash_set seen_agents ABSL_GUARDED_BY(query_lock); + absl::flat_hash_set<::grpc::ServerContext*> active_agent_contexts ABSL_GUARDED_BY(query_lock); // The execution stats for agents that are clients to this service. - std::vector agent_exec_stats GUARDED_BY(query_lock); + std::vector agent_exec_stats ABSL_GUARDED_BY(query_lock); // Errors that occur during execution from parent_agents. - std::vector upstream_exec_errors GUARDED_BY(query_lock); + std::vector upstream_exec_errors ABSL_GUARDED_BY(query_lock); absl::base_internal::SpinLock query_lock; void ResetRestartExecutionFunc() ABSL_EXCLUSIVE_LOCKS_REQUIRED(query_lock) { @@ -178,7 +179,7 @@ class GRPCRouter final : public carnotpb::ResultSinkService::Service { SourceNodeTracker* GetSourceNodeTracker(QueryTracker* query_tracker, int64_t source_id); absl::node_hash_map> id_to_query_tracker_map_ - GUARDED_BY(id_to_query_tracker_map_lock_); + ABSL_GUARDED_BY(id_to_query_tracker_map_lock_); mutable absl::base_internal::SpinLock id_to_query_tracker_map_lock_; }; diff --git a/src/carnot/udf/borrow_pool.h b/src/carnot/udf/borrow_pool.h index ef96a0b1a2d..92e3b8e82a0 100644 --- a/src/carnot/udf/borrow_pool.h +++ b/src/carnot/udf/borrow_pool.h @@ -66,7 +66,7 @@ class BorrowPool { } private: - std::vector pool_ GUARDED_BY(pool_lock_); + std::vector pool_ ABSL_GUARDED_BY(pool_lock_); absl::base_internal::SpinLock pool_lock_; }; diff --git a/src/experimental/standalone_pem/sink_server.h b/src/experimental/standalone_pem/sink_server.h index 4f38e69e9b7..eb822009fe8 100644 --- a/src/experimental/standalone_pem/sink_server.h +++ b/src/experimental/standalone_pem/sink_server.h @@ -180,7 +180,7 @@ class StandaloneResultSinkServer final : public carnotpb::ResultSinkService::Ser } absl::flat_hash_map*> - consumer_map_ GUARDED_BY(id_to_query_consumer_map_lock_); + consumer_map_ ABSL_GUARDED_BY(id_to_query_consumer_map_lock_); mutable absl::base_internal::SpinLock id_to_query_consumer_map_lock_; }; diff --git a/src/vizier/services/agent/shared/manager/chan_cache.h b/src/vizier/services/agent/shared/manager/chan_cache.h index 00106a2e2f4..6520a1c03a9 100644 --- a/src/vizier/services/agent/shared/manager/chan_cache.h +++ b/src/vizier/services/agent/shared/manager/chan_cache.h @@ -83,7 +83,7 @@ class ChanCache { }; // The cache of channels (grpc conns) made to other agents. - absl::flat_hash_map chan_cache_ GUARDED_BY(chan_cache_lock_); + absl::flat_hash_map chan_cache_ ABSL_GUARDED_BY(chan_cache_lock_); absl::base_internal::SpinLock chan_cache_lock_; // Connections that are alive for shorter than warm_up_period_ won't be cleared. std::chrono::nanoseconds warm_up_period_; diff --git a/src/vizier/services/agent/shared/manager/relation_info_manager.h b/src/vizier/services/agent/shared/manager/relation_info_manager.h index 10c05039328..f4cf1080e3d 100644 --- a/src/vizier/services/agent/shared/manager/relation_info_manager.h +++ b/src/vizier/services/agent/shared/manager/relation_info_manager.h @@ -65,7 +65,8 @@ class RelationInfoManager { private: mutable std::atomic has_updates_ = false; mutable absl::base_internal::SpinLock relation_info_map_lock_; - absl::btree_map relation_info_map_ GUARDED_BY(relation_info_map_lock_); + absl::btree_map relation_info_map_ + ABSL_GUARDED_BY(relation_info_map_lock_); }; } // namespace agent From 68b196b9c2c6f6beed4a6a4c09ace98683bbc936 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Mon, 8 Dec 2025 15:38:54 -0800 Subject: [PATCH 04/20] Remove use of protobuf debug APIs in test assertions to fix breaking change (#2287) Summary: Remove use of protobuf debug APIs in test assertions to fix breaking change Protobuf v30 and later intentionally malform the `DebugString` string output to prevent it from being parsed as a protobuf message ([announcement details](https://protobuf.dev/news/2024-12-04/)). This breaks our protobuf test assertions and is something we need to fix ahead of migrating to bazel 7. Relevant Issues: https://github.com/pixie-io/pixie/issues/2282 Type of change: /kind cleanup Test Plan: Build should pass Signed-off-by: Dom Del Nano --- .../compiler_error_context_test.cc | 2 +- .../distributed_plan/distributed_plan_test.cc | 4 +++- src/carnot/planner/docs/doc_extractor_main.cc | 12 +++++++++--- src/common/base/status_test.cc | 4 ++-- src/common/testing/protobuf.h | 12 ++++++++++++ .../services/agent/pem/tracepoint_manager_test.cc | 12 ++++++------ 6 files changed, 33 insertions(+), 13 deletions(-) diff --git a/src/carnot/planner/compiler_error_context/compiler_error_context_test.cc b/src/carnot/planner/compiler_error_context/compiler_error_context_test.cc index 76852c0832f..580f6962174 100644 --- a/src/carnot/planner/compiler_error_context/compiler_error_context_test.cc +++ b/src/carnot/planner/compiler_error_context/compiler_error_context_test.cc @@ -51,7 +51,7 @@ TEST(CompilerErrorContextStatus, Default) { ASSERT_TRUE(status_pb.context().Is()); status_pb.context().UnpackTo(&errorgroup_out); - EXPECT_EQ(errorgroup_in.DebugString(), errorgroup_out.DebugString()); + EXPECT_TRUE(google::protobuf::util::MessageDifferencer::Equals(errorgroup_in, errorgroup_out)); for (int64_t i = 0; i < errorgroup_in.errors_size(); i++) { auto error_parent_out = errorgroup_in.errors(i); auto error_out = error_parent_out.line_col_error(); diff --git a/src/carnot/planner/distributed/distributed_plan/distributed_plan_test.cc b/src/carnot/planner/distributed/distributed_plan/distributed_plan_test.cc index b8dece83c11..5146a4445cf 100644 --- a/src/carnot/planner/distributed/distributed_plan/distributed_plan_test.cc +++ b/src/carnot/planner/distributed/distributed_plan/distributed_plan_test.cc @@ -18,6 +18,7 @@ #include #include +#include #include #include @@ -208,7 +209,8 @@ TEST_F(DistributedPlanTest, construction_test) { for (const auto& [carnot_id, carnot_info] : carnot_id_to_carnot_info_map) { CarnotInstance* carnot_instance = physical_plan->Get(carnot_id); - EXPECT_THAT(carnot_instance->carnot_info(), EqualsProto(carnot_info.DebugString())); + EXPECT_TRUE(google::protobuf::util::MessageDifferencer::Equals(carnot_instance->carnot_info(), + carnot_info)); EXPECT_THAT(carnot_instance->QueryBrokerAddress(), carnot_info.query_broker_address()); auto new_graph = std::make_shared(); SwapGraphBeingBuilt(new_graph); diff --git a/src/carnot/planner/docs/doc_extractor_main.cc b/src/carnot/planner/docs/doc_extractor_main.cc index da5059b188a..e3b9472e07d 100644 --- a/src/carnot/planner/docs/doc_extractor_main.cc +++ b/src/carnot/planner/docs/doc_extractor_main.cc @@ -16,11 +16,14 @@ * SPDX-License-Identifier: Apache-2.0 */ +#include +#include + +#include + #include "src/carnot/planner/docs/doc_extractor.h" #include "src/carnot/udf_exporter/udf_exporter.h" -#include - namespace px { namespace carnot { namespace planner { @@ -79,8 +82,11 @@ int main(int argc, char** argv) { } auto docs = docs_or_s.ConsumeValueOrDie(); + std::string text_output; + google::protobuf::TextFormat::PrintToString(docs, &text_output); + std::ofstream output_file; output_file.open(FLAGS_output_file); - output_file << docs.DebugString(); + output_file << text_output; output_file.close(); } diff --git a/src/common/base/status_test.cc b/src/common/base/status_test.cc index 8d349be7da4..5772258aee8 100644 --- a/src/common/base/status_test.cc +++ b/src/common/base/status_test.cc @@ -111,7 +111,7 @@ TEST(Status, context_copy_tests) { Status s2 = s1; EXPECT_TRUE(s2.has_context()); EXPECT_EQ(s1, s2); - EXPECT_EQ(s1.context()->DebugString(), s2.context()->DebugString()); + EXPECT_TRUE(google::protobuf::util::MessageDifferencer::Equals(*s1.context(), *s2.context())); } TEST(Status, context_vs_no_context_status) { @@ -120,7 +120,7 @@ TEST(Status, context_vs_no_context_status) { EXPECT_NE(s1, s2); EXPECT_FALSE(s2.has_context()); EXPECT_EQ(s2.context(), nullptr); - EXPECT_NE(s1.ToProto().DebugString(), s2.ToProto().DebugString()); + EXPECT_FALSE(google::protobuf::util::MessageDifferencer::Equals(s1.ToProto(), s2.ToProto())); } TEST(StatusAdapter, proto_with_context_test) { diff --git a/src/common/testing/protobuf.h b/src/common/testing/protobuf.h index dfd6091a4e6..5a9fed3d16b 100644 --- a/src/common/testing/protobuf.h +++ b/src/common/testing/protobuf.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include "src/common/base/logging.h" @@ -109,6 +110,17 @@ inline ::testing::PolymorphicMatcher EqualsProto(std::string return ::testing::MakePolymorphicMatcher(EqualsProtoMatcher(std::move(text_pb))); } +// Overload that takes a protobuf message directly. +// This avoids the need to call DebugString() which in newer protobuf versions +// adds a "goo.gle/debugonly" prefix that breaks parsing. +template >> +inline ::testing::PolymorphicMatcher EqualsProto(const ProtoType& proto) { + std::string text_pb; + google::protobuf::TextFormat::PrintToString(proto, &text_pb); + return ::testing::MakePolymorphicMatcher(EqualsProtoMatcher(std::move(text_pb))); +} + inline ::testing::PolymorphicMatcher Partially( const ::testing::PolymorphicMatcher& matcher) { return ::testing::MakePolymorphicMatcher( diff --git a/src/vizier/services/agent/pem/tracepoint_manager_test.cc b/src/vizier/services/agent/pem/tracepoint_manager_test.cc index 9cd85aed2af..fd54f7badb2 100644 --- a/src/vizier/services/agent/pem/tracepoint_manager_test.cc +++ b/src/vizier/services/agent/pem/tracepoint_manager_test.cc @@ -115,8 +115,8 @@ TEST_F(TracepointManagerTest, CreateTracepoint) { tracepoint->set_name("test_tracepoint"); EXPECT_CALL(stirling_, - RegisterTracepoint(tracepoint_id, ::testing::Pointee(testing::proto::EqualsProto( - tracepoint->DebugString())))); + RegisterTracepoint(tracepoint_id, + ::testing::Pointee(testing::proto::EqualsProto(*tracepoint)))); EXPECT_OK(tracepoint_manager_->HandleMessage(std::move(msg))); EXPECT_CALL(stirling_, GetTracepointInfo(tracepoint_id)) @@ -152,8 +152,8 @@ TEST_F(TracepointManagerTest, CreateTracepointFailed) { tracepoint->set_name("test_tracepoint"); EXPECT_CALL(stirling_, - RegisterTracepoint(tracepoint_id, ::testing::Pointee(testing::proto::EqualsProto( - tracepoint->DebugString())))); + RegisterTracepoint(tracepoint_id, + ::testing::Pointee(testing::proto::EqualsProto(*tracepoint)))); EXPECT_OK(tracepoint_manager_->HandleMessage(std::move(msg))); EXPECT_CALL(stirling_, GetTracepointInfo(tracepoint_id)) @@ -185,8 +185,8 @@ TEST_F(TracepointManagerTest, CreateTracepointPreconditionFailed) { tracepoint->set_name("test_tracepoint"); EXPECT_CALL(stirling_, - RegisterTracepoint(tracepoint_id, ::testing::Pointee(testing::proto::EqualsProto( - tracepoint->DebugString())))); + RegisterTracepoint(tracepoint_id, + ::testing::Pointee(testing::proto::EqualsProto(*tracepoint)))); EXPECT_OK(tracepoint_manager_->HandleMessage(std::move(msg))); EXPECT_CALL(stirling_, GetTracepointInfo(tracepoint_id)) From 6f579976890c6ca866a74e4676108098bc361669 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Tue, 9 Dec 2025 11:59:59 -0800 Subject: [PATCH 05/20] Update python toolchain to 3.12 and upgrade pip deps (#2288) Summary: Update python toolchain to 3.12 and upgrade pip deps This upgrades our Python targets to a newer protobuf version in preparation for the Bazel 7 upgrade. The Bazel 7 migration requires a protobuf upgrade, and performing the Python/pip dependency updates first ensures compatibility when the protobuf upgrade lands in the next step. Relevant Issues: #2282 Type of change: /kind cleanup Test Plan: Successful build will validate mongo and `src/api/python` changes and verified the following - [x] Followed [amqp_code_generation steps](https://github.com/pixie-io/pixie/tree/68b196b9c2c6f6beed4a6a4c09ace98683bbc936/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator) and verified generated code is noop - [x] Followed [protocol_inference](https://github.com/pixie-io/pixie/tree/68b196b9c2c6f6beed4a6a4c09ace98683bbc936/src/stirling/protocol_inference) data generation and eval steps. --------- Signed-off-by: Dom Del Nano --- WORKSPACE | 6 +- src/api/python/BUILD.bazel | 12 +- src/api/python/doc/BUILD.bazel | 1 + src/api/python/requirements.bazel.txt | 515 ++++++++++-------- src/api/python/requirements.txt | 6 +- src/stirling/protocol_inference/BUILD.bazel | 1 + .../protocol_inference/requirements.bazel.txt | 240 ++++---- .../protocol_inference/requirements.txt | 8 +- .../requirements.bazel.txt | 399 +++++++++----- .../amqp/amqp_code_generator/requirements.txt | 9 +- .../containers/mongodb/requirements.bazel.txt | 156 +++--- .../containers/mongodb/requirements.txt | 2 +- 12 files changed, 782 insertions(+), 573 deletions(-) diff --git a/WORKSPACE b/WORKSPACE index ff0cd59c4e6..786ee4b130b 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -141,17 +141,17 @@ tf_workspace0() pl_model_files() python_register_toolchains( - name = "python3_10", + name = "python3_12", # Allow the root user to build the code base since this is a current requirement for # building in a containerized environment. See https://github.com/bazelbuild/rules_python/pull/713 # for more details. ignore_root_user_error = True, # Available versions are listed in @rules_python//python:versions.bzl. # We recommend using the same version your team is already standardized on. - python_version = "3.10", + python_version = "3.12", ) -load("@python3_10//:defs.bzl", "interpreter") +load("@python3_12//:defs.bzl", "interpreter") # Setup the environment for the open-source python API. pip_parse( diff --git a/src/api/python/BUILD.bazel b/src/api/python/BUILD.bazel index 32d2ae302e9..b231b42fa5d 100644 --- a/src/api/python/BUILD.bazel +++ b/src/api/python/BUILD.bazel @@ -23,11 +23,9 @@ py_wheel( author_email = "maintainers@px.dev", classifiers = [ "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Operating System :: OS Independent", "License :: OSI Approved :: Apache Software License", "Typing :: Typed", @@ -36,13 +34,13 @@ py_wheel( distribution = "pxapi", license = "Apache-2.0", platform = "any", - python_requires = ">=3.9, < 3.14", + python_requires = ">=3.12, < 3.14", python_tag = "py3", requires = [ "Authlib==1.5.1", - "grpcio==1.70.0", - "grpcio-tools==1.70.0", - "protobuf==5.29.3", + "grpcio==1.76.0", + "grpcio-tools==1.76.0", + "protobuf==6.33.1", ], strip_path_prefixes = ["src/api/python/"], version = "0.9.0", diff --git a/src/api/python/doc/BUILD.bazel b/src/api/python/doc/BUILD.bazel index af1b85788ff..c2e8cd72370 100644 --- a/src/api/python/doc/BUILD.bazel +++ b/src/api/python/doc/BUILD.bazel @@ -26,6 +26,7 @@ py_binary( imports = [ "../", ], + python_version = "PY3", srcs_version = "PY3", deps = [ "//src/api/python/pxapi:pxapi_library", diff --git a/src/api/python/requirements.bazel.txt b/src/api/python/requirements.bazel.txt index 58cab4f864a..8fd2684fe68 100644 --- a/src/api/python/requirements.bazel.txt +++ b/src/api/python/requirements.bazel.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile with Python 3.9 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # # pip-compile --allow-unsafe --generate-hashes --output-file=requirements.bazel.txt requirements.txt @@ -8,244 +8,301 @@ authlib==1.5.1 \ --hash=sha256:5cbc85ecb0667312c1cdc2f9095680bb735883b123fb509fde1e65b1c5df972e \ --hash=sha256:8408861cbd9b4ea2ff759b00b6f02fd7d81ac5a56d0b2b22c08606c6049aae11 # via -r requirements.txt -cffi==1.15.1 \ - --hash=sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5 \ - --hash=sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef \ - --hash=sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104 \ - --hash=sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426 \ - --hash=sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405 \ - --hash=sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375 \ - --hash=sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a \ - --hash=sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e \ - --hash=sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc \ - --hash=sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf \ - --hash=sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185 \ - --hash=sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497 \ - --hash=sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3 \ - --hash=sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35 \ - --hash=sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c \ - --hash=sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83 \ - --hash=sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21 \ - --hash=sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca \ - --hash=sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984 \ - --hash=sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac \ - --hash=sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd \ - --hash=sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee \ - --hash=sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a \ - --hash=sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2 \ - --hash=sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192 \ - --hash=sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7 \ - --hash=sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585 \ - --hash=sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f \ - --hash=sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e \ - --hash=sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27 \ - --hash=sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b \ - --hash=sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e \ - --hash=sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e \ - --hash=sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d \ - --hash=sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c \ - --hash=sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415 \ - --hash=sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82 \ - --hash=sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02 \ - --hash=sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314 \ - --hash=sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325 \ - --hash=sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c \ - --hash=sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3 \ - --hash=sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914 \ - --hash=sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045 \ - --hash=sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d \ - --hash=sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9 \ - --hash=sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5 \ - --hash=sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2 \ - --hash=sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c \ - --hash=sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3 \ - --hash=sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2 \ - --hash=sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8 \ - --hash=sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d \ - --hash=sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d \ - --hash=sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9 \ - --hash=sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162 \ - --hash=sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76 \ - --hash=sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4 \ - --hash=sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e \ - --hash=sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9 \ - --hash=sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6 \ - --hash=sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b \ - --hash=sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01 \ - --hash=sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0 +cffi==2.0.0 \ + --hash=sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb \ + --hash=sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b \ + --hash=sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f \ + --hash=sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9 \ + --hash=sha256:0cf2d91ecc3fcc0625c2c530fe004f82c110405f101548512cce44322fa8ac44 \ + --hash=sha256:0f6084a0ea23d05d20c3edcda20c3d006f9b6f3fefeac38f59262e10cef47ee2 \ + --hash=sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c \ + --hash=sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75 \ + --hash=sha256:1cd13c99ce269b3ed80b417dcd591415d3372bcac067009b6e0f59c7d4015e65 \ + --hash=sha256:1e3a615586f05fc4065a8b22b8152f0c1b00cdbc60596d187c2a74f9e3036e4e \ + --hash=sha256:1f72fb8906754ac8a2cc3f9f5aaa298070652a0ffae577e0ea9bd480dc3c931a \ + --hash=sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e \ + --hash=sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25 \ + --hash=sha256:2081580ebb843f759b9f617314a24ed5738c51d2aee65d31e02f6f7a2b97707a \ + --hash=sha256:21d1152871b019407d8ac3985f6775c079416c282e431a4da6afe7aefd2bccbe \ + --hash=sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b \ + --hash=sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91 \ + --hash=sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592 \ + --hash=sha256:2c8f814d84194c9ea681642fd164267891702542f028a15fc97d4674b6206187 \ + --hash=sha256:2de9a304e27f7596cd03d16f1b7c72219bd944e99cc52b84d0145aefb07cbd3c \ + --hash=sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1 \ + --hash=sha256:3925dd22fa2b7699ed2617149842d2e6adde22b262fcbfada50e3d195e4b3a94 \ + --hash=sha256:3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba \ + --hash=sha256:3e837e369566884707ddaf85fc1744b47575005c0a229de3327f8f9a20f4efeb \ + --hash=sha256:3f4d46d8b35698056ec29bca21546e1551a205058ae1a181d871e278b0b28165 \ + --hash=sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529 \ + --hash=sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca \ + --hash=sha256:4647afc2f90d1ddd33441e5b0e85b16b12ddec4fca55f0d9671fef036ecca27c \ + --hash=sha256:4671d9dd5ec934cb9a73e7ee9676f9362aba54f7f34910956b84d727b0d73fb6 \ + --hash=sha256:53f77cbe57044e88bbd5ed26ac1d0514d2acf0591dd6bb02a3ae37f76811b80c \ + --hash=sha256:5eda85d6d1879e692d546a078b44251cdd08dd1cfb98dfb77b670c97cee49ea0 \ + --hash=sha256:5fed36fccc0612a53f1d4d9a816b50a36702c28a2aa880cb8a122b3466638743 \ + --hash=sha256:61d028e90346df14fedc3d1e5441df818d095f3b87d286825dfcbd6459b7ef63 \ + --hash=sha256:66f011380d0e49ed280c789fbd08ff0d40968ee7b665575489afa95c98196ab5 \ + --hash=sha256:6824f87845e3396029f3820c206e459ccc91760e8fa24422f8b0c3d1731cbec5 \ + --hash=sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4 \ + --hash=sha256:6d02d6655b0e54f54c4ef0b94eb6be0607b70853c45ce98bd278dc7de718be5d \ + --hash=sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b \ + --hash=sha256:730cacb21e1bdff3ce90babf007d0a0917cc3e6492f336c2f0134101e0944f93 \ + --hash=sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205 \ + --hash=sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27 \ + --hash=sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512 \ + --hash=sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d \ + --hash=sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c \ + --hash=sha256:81afed14892743bbe14dacb9e36d9e0e504cd204e0b165062c488942b9718037 \ + --hash=sha256:8941aaadaf67246224cee8c3803777eed332a19d909b47e29c9842ef1e79ac26 \ + --hash=sha256:89472c9762729b5ae1ad974b777416bfda4ac5642423fa93bd57a09204712322 \ + --hash=sha256:8ea985900c5c95ce9db1745f7933eeef5d314f0565b27625d9a10ec9881e1bfb \ + --hash=sha256:8eca2a813c1cb7ad4fb74d368c2ffbbb4789d377ee5bb8df98373c2cc0dee76c \ + --hash=sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8 \ + --hash=sha256:9332088d75dc3241c702d852d4671613136d90fa6881da7d770a483fd05248b4 \ + --hash=sha256:94698a9c5f91f9d138526b48fe26a199609544591f859c870d477351dc7b2414 \ + --hash=sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9 \ + --hash=sha256:9de40a7b0323d889cf8d23d1ef214f565ab154443c42737dfe52ff82cf857664 \ + --hash=sha256:a05d0c237b3349096d3981b727493e22147f934b20f6f125a3eba8f994bec4a9 \ + --hash=sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775 \ + --hash=sha256:b18a3ed7d5b3bd8d9ef7a8cb226502c6bf8308df1525e1cc676c3680e7176739 \ + --hash=sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc \ + --hash=sha256:b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062 \ + --hash=sha256:b4c854ef3adc177950a8dfc81a86f5115d2abd545751a304c5bcf2c2c7283cfe \ + --hash=sha256:b882b3df248017dba09d6b16defe9b5c407fe32fc7c65a9c69798e6175601be9 \ + --hash=sha256:baf5215e0ab74c16e2dd324e8ec067ef59e41125d3eade2b863d294fd5035c92 \ + --hash=sha256:c649e3a33450ec82378822b3dad03cc228b8f5963c0c12fc3b1e0ab940f768a5 \ + --hash=sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13 \ + --hash=sha256:c6638687455baf640e37344fe26d37c404db8b80d037c3d29f58fe8d1c3b194d \ + --hash=sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26 \ + --hash=sha256:cb527a79772e5ef98fb1d700678fe031e353e765d1ca2d409c92263c6d43e09f \ + --hash=sha256:cf364028c016c03078a23b503f02058f1814320a56ad535686f90565636a9495 \ + --hash=sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b \ + --hash=sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6 \ + --hash=sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c \ + --hash=sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef \ + --hash=sha256:da68248800ad6320861f129cd9c1bf96ca849a2771a59e0344e88681905916f5 \ + --hash=sha256:da902562c3e9c550df360bfa53c035b2f241fed6d9aef119048073680ace4a18 \ + --hash=sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad \ + --hash=sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3 \ + --hash=sha256:de8dad4425a6ca6e4e5e297b27b5c824ecc7581910bf9aee86cb6835e6812aa7 \ + --hash=sha256:e11e82b744887154b182fd3e7e8512418446501191994dbf9c9fc1f32cc8efd5 \ + --hash=sha256:e6e73b9e02893c764e7e8d5bb5ce277f1a009cd5243f8228f75f842bf937c534 \ + --hash=sha256:f73b96c41e3b2adedc34a7356e64c8eb96e03a3782b535e043a986276ce12a49 \ + --hash=sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2 \ + --hash=sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5 \ + --hash=sha256:fc7de24befaeae77ba923797c7c87834c73648a05a4bde34b3b7e5588973a453 \ + --hash=sha256:fe562eb1a64e67dd297ccc4f5addea2501664954f2692b69a76449ec7913ecbf # via cryptography -cryptography==42.0.4 \ - --hash=sha256:01911714117642a3f1792c7f376db572aadadbafcd8d75bb527166009c9f1d1b \ - --hash=sha256:0e89f7b84f421c56e7ff69f11c441ebda73b8a8e6488d322ef71746224c20fce \ - --hash=sha256:12d341bd42cdb7d4937b0cabbdf2a94f949413ac4504904d0cdbdce4a22cbf88 \ - --hash=sha256:15a1fb843c48b4a604663fa30af60818cd28f895572386e5f9b8a665874c26e7 \ - --hash=sha256:1cdcdbd117681c88d717437ada72bdd5be9de117f96e3f4d50dab3f59fd9ab20 \ - --hash=sha256:1df6fcbf60560d2113b5ed90f072dc0b108d64750d4cbd46a21ec882c7aefce9 \ - --hash=sha256:3c6048f217533d89f2f8f4f0fe3044bf0b2090453b7b73d0b77db47b80af8dff \ - --hash=sha256:3e970a2119507d0b104f0a8e281521ad28fc26f2820687b3436b8c9a5fcf20d1 \ - --hash=sha256:44a64043f743485925d3bcac548d05df0f9bb445c5fcca6681889c7c3ab12764 \ - --hash=sha256:4e36685cb634af55e0677d435d425043967ac2f3790ec652b2b88ad03b85c27b \ - --hash=sha256:5f8907fcf57392cd917892ae83708761c6ff3c37a8e835d7246ff0ad251d9298 \ - --hash=sha256:69b22ab6506a3fe483d67d1ed878e1602bdd5912a134e6202c1ec672233241c1 \ - --hash=sha256:6bfadd884e7280df24d26f2186e4e07556a05d37393b0f220a840b083dc6a824 \ - --hash=sha256:6d0fbe73728c44ca3a241eff9aefe6496ab2656d6e7a4ea2459865f2e8613257 \ - --hash=sha256:6ffb03d419edcab93b4b19c22ee80c007fb2d708429cecebf1dd3258956a563a \ - --hash=sha256:810bcf151caefc03e51a3d61e53335cd5c7316c0a105cc695f0959f2c638b129 \ - --hash=sha256:831a4b37accef30cccd34fcb916a5d7b5be3cbbe27268a02832c3e450aea39cb \ - --hash=sha256:887623fe0d70f48ab3f5e4dbf234986b1329a64c066d719432d0698522749929 \ - --hash=sha256:a0298bdc6e98ca21382afe914c642620370ce0470a01e1bef6dd9b5354c36854 \ - --hash=sha256:a1327f280c824ff7885bdeef8578f74690e9079267c1c8bd7dc5cc5aa065ae52 \ - --hash=sha256:c1f25b252d2c87088abc8bbc4f1ecbf7c919e05508a7e8628e6875c40bc70923 \ - --hash=sha256:c3a5cbc620e1e17009f30dd34cb0d85c987afd21c41a74352d1719be33380885 \ - --hash=sha256:ce8613beaffc7c14f091497346ef117c1798c202b01153a8cc7b8e2ebaaf41c0 \ - --hash=sha256:d2a27aca5597c8a71abbe10209184e1a8e91c1fd470b5070a2ea60cafec35bcd \ - --hash=sha256:dad9c385ba8ee025bb0d856714f71d7840020fe176ae0229de618f14dae7a6e2 \ - --hash=sha256:db4b65b02f59035037fde0998974d84244a64c3265bdef32a827ab9b63d61b18 \ - --hash=sha256:e09469a2cec88fb7b078e16d4adec594414397e8879a4341c6ace96013463d5b \ - --hash=sha256:e53dc41cda40b248ebc40b83b31516487f7db95ab8ceac1f042626bc43a2f992 \ - --hash=sha256:f1e85a178384bf19e36779d91ff35c7617c885da487d689b05c1366f9933ad74 \ - --hash=sha256:f47be41843200f7faec0683ad751e5ef11b9a56a220d57f300376cd8aba81660 \ - --hash=sha256:fb0cef872d8193e487fc6bdb08559c3aa41b659a7d9be48b2e10747f47863925 \ - --hash=sha256:ffc73996c4fca3d2b6c1c8c12bfd3ad00def8621da24f547626bf06441400449 +cryptography==46.0.3 \ + --hash=sha256:00a5e7e87938e5ff9ff5447ab086a5706a957137e6e433841e9d24f38a065217 \ + --hash=sha256:01ca9ff2885f3acc98c29f1860552e37f6d7c7d013d7334ff2a9de43a449315d \ + --hash=sha256:09859af8466b69bc3c27bdf4f5d84a665e0f7ab5088412e9e2ec49758eca5cbc \ + --hash=sha256:0abf1ffd6e57c67e92af68330d05760b7b7efb243aab8377e583284dbab72c71 \ + --hash=sha256:1000713389b75c449a6e979ffc7dcc8ac90b437048766cef052d4d30b8220971 \ + --hash=sha256:109d4ddfadf17e8e7779c39f9b18111a09efb969a301a31e987416a0191ed93a \ + --hash=sha256:10b01676fc208c3e6feeb25a8b83d81767e8059e1fe86e1dc62d10a3018fa926 \ + --hash=sha256:10ca84c4668d066a9878890047f03546f3ae0a6b8b39b697457b7757aaf18dbc \ + --hash=sha256:15ab9b093e8f09daab0f2159bb7e47532596075139dd74365da52ecc9cb46c5d \ + --hash=sha256:191bb60a7be5e6f54e30ba16fdfae78ad3a342a0599eb4193ba88e3f3d6e185b \ + --hash=sha256:22d7e97932f511d6b0b04f2bfd818d73dcd5928db509460aaf48384778eb6d20 \ + --hash=sha256:23b1a8f26e43f47ceb6d6a43115f33a5a37d57df4ea0ca295b780ae8546e8044 \ + --hash=sha256:36e627112085bb3b81b19fed209c05ce2a52ee8b15d161b7c643a7d5a88491f3 \ + --hash=sha256:39b6755623145ad5eff1dab323f4eae2a32a77a7abef2c5089a04a3d04366715 \ + --hash=sha256:3b51b8ca4f1c6453d8829e1eb7299499ca7f313900dd4d89a24b8b87c0a780d4 \ + --hash=sha256:402b58fc32614f00980b66d6e56a5b4118e6cb362ae8f3fda141ba4689bd4506 \ + --hash=sha256:416260257577718c05135c55958b674000baef9a1c7d9e8f306ec60d71db850f \ + --hash=sha256:46acf53b40ea38f9c6c229599a4a13f0d46a6c3fa9ef19fc1a124d62e338dfa0 \ + --hash=sha256:4b7387121ac7d15e550f5cb4a43aef2559ed759c35df7336c402bb8275ac9683 \ + --hash=sha256:50fc3343ac490c6b08c0cf0d704e881d0d660be923fd3076db3e932007e726e3 \ + --hash=sha256:516ea134e703e9fe26bcd1277a4b59ad30586ea90c365a87781d7887a646fe21 \ + --hash=sha256:549e234ff32571b1f4076ac269fcce7a808d3bf98b76c8dd560e42dbc66d7d91 \ + --hash=sha256:5d7f93296ee28f68447397bf5198428c9aeeab45705a55d53a6343455dcb2c3c \ + --hash=sha256:5ecfccd2329e37e9b7112a888e76d9feca2347f12f37918facbb893d7bb88ee8 \ + --hash=sha256:6276eb85ef938dc035d59b87c8a7dc559a232f954962520137529d77b18ff1df \ + --hash=sha256:6b5063083824e5509fdba180721d55909ffacccc8adbec85268b48439423d78c \ + --hash=sha256:6eae65d4c3d33da080cff9c4ab1f711b15c1d9760809dad6ea763f3812d254cb \ + --hash=sha256:6f61efb26e76c45c4a227835ddeae96d83624fb0d29eb5df5b96e14ed1a0afb7 \ + --hash=sha256:71e842ec9bc7abf543b47cf86b9a743baa95f4677d22baa4c7d5c69e49e9bc04 \ + --hash=sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db \ + --hash=sha256:78a97cf6a8839a48c49271cdcbd5cf37ca2c1d6b7fdd86cc864f302b5e9bf459 \ + --hash=sha256:7ce938a99998ed3c8aa7e7272dca1a610401ede816d36d0693907d863b10d9ea \ + --hash=sha256:8a6e050cb6164d3f830453754094c086ff2d0b2f3a897a1d9820f6139a1f0914 \ + --hash=sha256:9394673a9f4de09e28b5356e7fff97d778f8abad85c9d5ac4a4b7e25a0de7717 \ + --hash=sha256:94cd0549accc38d1494e1f8de71eca837d0509d0d44bf11d158524b0e12cebf9 \ + --hash=sha256:a04bee9ab6a4da801eb9b51f1b708a1b5b5c9eb48c03f74198464c66f0d344ac \ + --hash=sha256:a23582810fedb8c0bc47524558fb6c56aac3fc252cb306072fd2815da2a47c32 \ + --hash=sha256:a2c0cd47381a3229c403062f764160d57d4d175e022c1df84e168c6251a22eec \ + --hash=sha256:a8b17438104fed022ce745b362294d9ce35b4c2e45c1d958ad4a4b019285f4a1 \ + --hash=sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb \ + --hash=sha256:b02cf04496f6576afffef5ddd04a0cb7d49cf6be16a9059d793a30b035f6b6ac \ + --hash=sha256:b419ae593c86b87014b9be7396b385491ad7f320bde96826d0dd174459e54665 \ + --hash=sha256:c0a7bb1a68a5d3471880e264621346c48665b3bf1c3759d682fc0864c540bd9e \ + --hash=sha256:c70cc23f12726be8f8bc72e41d5065d77e4515efae3690326764ea1b07845cfb \ + --hash=sha256:c8daeb2d2174beb4575b77482320303f3d39b8e81153da4f0fb08eb5fe86a6c5 \ + --hash=sha256:cb3d760a6117f621261d662bccc8ef5bc32ca673e037c83fbe565324f5c46936 \ + --hash=sha256:d55f3dffadd674514ad19451161118fd010988540cee43d8bc20675e775925de \ + --hash=sha256:d89c3468de4cdc4f08a57e214384d0471911a3830fcdaf7a8cc587e42a866372 \ + --hash=sha256:db391fa7c66df6762ee3f00c95a89e6d428f4d60e7abc8328f4fe155b5ac6e54 \ + --hash=sha256:dfb781ff7eaa91a6f7fd41776ec37c5853c795d3b358d4896fdbb5df168af422 \ + --hash=sha256:e5bf0ed4490068a2e72ac03d786693adeb909981cc596425d09032d372bcc849 \ + --hash=sha256:e7aec276d68421f9574040c26e2a7c3771060bc0cff408bae1dcb19d3ab1e63c \ + --hash=sha256:ef639cb3372f69ec44915fafcd6698b6cc78fbe0c2ea41be867f6ed612811963 \ + --hash=sha256:f260d0d41e9b4da1ed1e0f1ce571f97fe370b152ab18778e9e8f67d6af432018 # via authlib -grpcio==1.70.0 \ - --hash=sha256:0495c86a55a04a874c7627fd33e5beaee771917d92c0e6d9d797628ac40e7655 \ - --hash=sha256:07269ff4940f6fb6710951116a04cd70284da86d0a4368fd5a3b552744511f5a \ - --hash=sha256:0a5c78d5198a1f0aa60006cd6eb1c912b4a1520b6a3968e677dbcba215fabb40 \ - --hash=sha256:0ba0a173f4feacf90ee618fbc1a27956bfd21260cd31ced9bc707ef551ff7dc7 \ - --hash=sha256:0cd430b9215a15c10b0e7d78f51e8a39d6cf2ea819fd635a7214fae600b1da27 \ - --hash=sha256:0de706c0a5bb9d841e353f6343a9defc9fc35ec61d6eb6111802f3aa9fef29e1 \ - --hash=sha256:17325b0be0c068f35770f944124e8839ea3185d6d54862800fc28cc2ffad205a \ - --hash=sha256:2394e3381071045a706ee2eeb6e08962dd87e8999b90ac15c55f56fa5a8c9597 \ - --hash=sha256:27cc75e22c5dba1fbaf5a66c778e36ca9b8ce850bf58a9db887754593080d839 \ - --hash=sha256:2b0d02e4b25a5c1f9b6c7745d4fa06efc9fd6a611af0fb38d3ba956786b95199 \ - --hash=sha256:374d014f29f9dfdb40510b041792e0e2828a1389281eb590df066e1cc2b404e5 \ - --hash=sha256:3b0f01f6ed9994d7a0b27eeddea43ceac1b7e6f3f9d86aeec0f0064b8cf50fdb \ - --hash=sha256:4119fed8abb7ff6c32e3d2255301e59c316c22d31ab812b3fbcbaf3d0d87cc68 \ - --hash=sha256:412faabcc787bbc826f51be261ae5fa996b21263de5368a55dc2cf824dc5090e \ - --hash=sha256:4f1937f47c77392ccd555728f564a49128b6a197a05a5cd527b796d36f3387d0 \ - --hash=sha256:5413549fdf0b14046c545e19cfc4eb1e37e9e1ebba0ca390a8d4e9963cab44d2 \ - --hash=sha256:558c386ecb0148f4f99b1a65160f9d4b790ed3163e8610d11db47838d452512d \ - --hash=sha256:58ad9ba575b39edef71f4798fdb5c7b6d02ad36d47949cd381d4392a5c9cbcd3 \ - --hash=sha256:5ea67c72101d687d44d9c56068328da39c9ccba634cabb336075fae2eab0d04b \ - --hash=sha256:7385b1cb064734005204bc8994eed7dcb801ed6c2eda283f613ad8c6c75cf873 \ - --hash=sha256:7c73c42102e4a5ec76608d9b60227d917cea46dff4d11d372f64cbeb56d259d0 \ - --hash=sha256:8058667a755f97407fca257c844018b80004ae8035565ebc2812cc550110718d \ - --hash=sha256:879a61bf52ff8ccacbedf534665bb5478ec8e86ad483e76fe4f729aaef867cab \ - --hash=sha256:880bfb43b1bb8905701b926274eafce5c70a105bc6b99e25f62e98ad59cb278e \ - --hash=sha256:8d1584a68d5922330025881e63a6c1b54cc8117291d382e4fa69339b6d914c56 \ - --hash=sha256:95469d1977429f45fe7df441f586521361e235982a0b39e33841549143ae2851 \ - --hash=sha256:9e654c4b17d07eab259d392e12b149c3a134ec52b11ecdc6a515b39aceeec898 \ - --hash=sha256:a31d7e3b529c94e930a117b2175b2efd179d96eb3c7a21ccb0289a8ab05b645c \ - --hash=sha256:aa47688a65643afd8b166928a1da6247d3f46a2784d301e48ca1cc394d2ffb40 \ - --hash=sha256:aa573896aeb7d7ce10b1fa425ba263e8dddd83d71530d1322fd3a16f31257b4a \ - --hash=sha256:aba19419aef9b254e15011b230a180e26e0f6864c90406fdbc255f01d83bc83c \ - --hash=sha256:ac073fe1c4cd856ebcf49e9ed6240f4f84d7a4e6ee95baa5d66ea05d3dd0df7f \ - --hash=sha256:b3c76701428d2df01964bc6479422f20e62fcbc0a37d82ebd58050b86926ef8c \ - --hash=sha256:b745d2c41b27650095e81dea7091668c040457483c9bdb5d0d9de8f8eb25e59f \ - --hash=sha256:bb491125103c800ec209d84c9b51f1c60ea456038e4734688004f377cfacc113 \ - --hash=sha256:c1af8e15b0f0fe0eac75195992a63df17579553b0c4af9f8362cc7cc99ccddf4 \ - --hash=sha256:c78b339869f4dbf89881e0b6fbf376313e4f845a42840a7bdf42ee6caed4b11f \ - --hash=sha256:cb5277db254ab7586769e490b7b22f4ddab3876c490da0a1a9d7c695ccf0bf77 \ - --hash=sha256:cbce24409beaee911c574a3d75d12ffb8c3e3dd1b813321b1d7a96bbcac46bf4 \ - --hash=sha256:cd24d2d9d380fbbee7a5ac86afe9787813f285e684b0271599f95a51bce33528 \ - --hash=sha256:ce7df14b2dcd1102a2ec32f621cc9fab6695effef516efbc6b063ad749867295 \ - --hash=sha256:d24035d49e026353eb042bf7b058fb831db3e06d52bee75c5f2f3ab453e71aca \ - --hash=sha256:d405b005018fd516c9ac529f4b4122342f60ec1cee181788249372524e6db429 \ - --hash=sha256:d63764963412e22f0491d0d32833d71087288f4e24cbcddbae82476bfa1d81fd \ - --hash=sha256:dbe41ad140df911e796d4463168e33ef80a24f5d21ef4d1e310553fcd2c4a386 \ - --hash=sha256:dfa089a734f24ee5f6880c83d043e4f46bf812fcea5181dcb3a572db1e79e01c \ - --hash=sha256:e27585831aa6b57b9250abaf147003e126cd3a6c6ca0c531a01996f31709bed1 \ - --hash=sha256:e7831a0fc1beeeb7759f737f5acd9fdcda520e955049512d68fda03d91186eea \ - --hash=sha256:ed9718f17fbdb472e33b869c77a16d0b55e166b100ec57b016dc7de9c8d236bf \ - --hash=sha256:ef4c14508299b1406c32bdbb9fb7b47612ab979b04cf2b27686ea31882387cff \ - --hash=sha256:f19375f0300b96c0117aca118d400e76fede6db6e91f3c34b7b035822e06c35f \ - --hash=sha256:f2af68a6f5c8f78d56c145161544ad0febbd7479524a59c16b3e25053f39c87f \ - --hash=sha256:f32090238b720eb585248654db8e3afc87b48d26ac423c8dde8334a232ff53c9 \ - --hash=sha256:fe9dbd916df3b60e865258a8c72ac98f3ac9e2a9542dcb72b7a34d236242a5ce \ - --hash=sha256:ff4a8112a79464919bb21c18e956c54add43ec9a4850e3949da54f61c241a4a6 +grpcio==1.76.0 \ + --hash=sha256:035d90bc79eaa4bed83f524331d55e35820725c9fbb00ffa1904d5550ed7ede3 \ + --hash=sha256:04bbe1bfe3a68bbfd4e52402ab7d4eb59d72d02647ae2042204326cf4bbad280 \ + --hash=sha256:063065249d9e7e0782d03d2bca50787f53bd0fb89a67de9a7b521c4a01f1989b \ + --hash=sha256:06c3d6b076e7b593905d04fdba6a0525711b3466f43b3400266f04ff735de0cd \ + --hash=sha256:08caea849a9d3c71a542827d6df9d5a69067b0a1efbea8a855633ff5d9571465 \ + --hash=sha256:0aaa82d0813fd4c8e589fac9b65d7dd88702555f702fb10417f96e2a2a6d4c0f \ + --hash=sha256:0b7604868b38c1bfd5cf72d768aedd7db41d78cb6a4a18585e33fb0f9f2363fd \ + --hash=sha256:0c37db8606c258e2ee0c56b78c62fc9dee0e901b5dbdcf816c2dd4ad652b8b0c \ + --hash=sha256:1c9b93f79f48b03ada57ea24725d83a30284a012ec27eab2cf7e50a550cbbbcc \ + --hash=sha256:2107b0c024d1b35f4083f11245c0e23846ae64d02f40b2b226684840260ed054 \ + --hash=sha256:2229ae655ec4e8999599469559e97630185fdd53ae1e8997d147b7c9b2b72cba \ + --hash=sha256:25a18e9810fbc7e7f03ec2516addc116a957f8cbb8cbc95ccc80faa072743d03 \ + --hash=sha256:26ef06c73eb53267c2b319f43e6634c7556ea37672029241a056629af27c10e2 \ + --hash=sha256:2e1743fbd7f5fa713a1b0a8ac8ebabf0ec980b5d8809ec358d488e273b9cf02a \ + --hash=sha256:32483fe2aab2c3794101c2a159070584e5db11d0aa091b2c0ea9c4fc43d0d749 \ + --hash=sha256:3bf0f392c0b806905ed174dcd8bdd5e418a40d5567a05615a030a5aeddea692d \ + --hash=sha256:3e2a27c89eb9ac3d81ec8835e12414d73536c6e620355d65102503064a4ed6eb \ + --hash=sha256:40ad3afe81676fd9ec6d9d406eda00933f218038433980aa19d401490e46ecde \ + --hash=sha256:4215d3a102bd95e2e11b5395c78562967959824156af11fa93d18fdd18050990 \ + --hash=sha256:45d59a649a82df5718fd9527ce775fd66d1af35e6d31abdcdc906a49c6822958 \ + --hash=sha256:45e0111e73f43f735d70786557dc38141185072d7ff8dc1829d6a77ac1471468 \ + --hash=sha256:479496325ce554792dba6548fae3df31a72cef7bad71ca2e12b0e58f9b336bfc \ + --hash=sha256:490fa6d203992c47c7b9e4a9d39003a0c2bcc1c9aa3c058730884bbbb0ee9f09 \ + --hash=sha256:49ce47231818806067aea3324d4bf13825b658ad662d3b25fada0bdad9b8a6af \ + --hash=sha256:4baf3cbe2f0be3289eb68ac8ae771156971848bb8aaff60bad42005539431980 \ + --hash=sha256:522175aba7af9113c48ec10cc471b9b9bd4f6ceb36aeb4544a8e2c80ed9d252d \ + --hash=sha256:5e8571632780e08526f118f74170ad8d50fb0a48c23a746bef2a6ebade3abd6f \ + --hash=sha256:615ba64c208aaceb5ec83bfdce7728b80bfeb8be97562944836a7a0a9647d882 \ + --hash=sha256:61f69297cba3950a524f61c7c8ee12e55c486cb5f7db47ff9dcee33da6f0d3ae \ + --hash=sha256:65a20de41e85648e00305c1bb09a3598f840422e522277641145a32d42dcefcc \ + --hash=sha256:6a15c17af8839b6801d554263c546c69c4d7718ad4321e3166175b37eaacca77 \ + --hash=sha256:747fa73efa9b8b1488a95d0ba1039c8e2dca0f741612d80415b1e1c560febf4e \ + --hash=sha256:7be78388d6da1a25c0d5ec506523db58b18be22d9c37d8d3a32c08be4987bd73 \ + --hash=sha256:81fd9652b37b36f16138611c7e884eb82e0cec137c40d3ef7c3f9b3ed00f6ed8 \ + --hash=sha256:83d57312a58dcfe2a3a0f9d1389b299438909a02db60e2f2ea2ae2d8034909d3 \ + --hash=sha256:8843114c0cfce61b40ad48df65abcfc00d4dba82eae8718fab5352390848c5da \ + --hash=sha256:8cc3309d8e08fd79089e13ed4819d0af72aa935dd8f435a195fd152796752ff2 \ + --hash=sha256:8ebe63ee5f8fa4296b1b8cfc743f870d10e902ca18afc65c68cf46fd39bb0783 \ + --hash=sha256:8eddfb4d203a237da6f3cc8a540dad0517d274b5a1e9e636fd8d2c79b5c1d397 \ + --hash=sha256:922fa70ba549fce362d2e2871ab542082d66e2aaf0c19480ea453905b01f384e \ + --hash=sha256:931091142fd8cc14edccc0845a79248bc155425eee9a98b2db2ea4f00a235a42 \ + --hash=sha256:971fd5a1d6e62e00d945423a567e42eb1fa678ba89072832185ca836a94daaa6 \ + --hash=sha256:980a846182ce88c4f2f7e2c22c56aefd515daeb36149d1c897f83cf57999e0b6 \ + --hash=sha256:9d9adda641db7207e800a7f089068f6f645959f2df27e870ee81d44701dd9db3 \ + --hash=sha256:9f8f757bebaaea112c00dba718fc0d3260052ce714e25804a03f93f5d1c6cc11 \ + --hash=sha256:a6ae758eb08088d36812dd5d9af7a9859c05b1e0f714470ea243694b49278e7b \ + --hash=sha256:a8c2cf1209497cf659a667d7dea88985e834c24b7c3b605e6254cbb5076d985c \ + --hash=sha256:acab0277c40eff7143c2323190ea57b9ee5fd353d8190ee9652369fae735668a \ + --hash=sha256:b331680e46239e090f5b3cead313cc772f6caa7d0fc8de349337563125361a4a \ + --hash=sha256:c088e7a90b6017307f423efbb9d1ba97a22aa2170876223f9709e9d1de0b5347 \ + --hash=sha256:d099566accf23d21037f18a2a63d323075bebace807742e4b0ac210971d4dd70 \ + --hash=sha256:d388087771c837cdb6515539f43b9d4bf0b0f23593a24054ac16f7a960be16f4 \ + --hash=sha256:dcfe41187da8992c5f40aa8c5ec086fa3672834d2be57a32384c08d5a05b4c00 \ + --hash=sha256:e6d1db20594d9daba22f90da738b1a0441a7427552cc6e2e3d1297aeddc00378 \ + --hash=sha256:ebea5cc3aa8ea72e04df9913492f9a96d9348db876f9dda3ad729cfedf7ac416 \ + --hash=sha256:ebebf83299b0cb1721a8859ea98f3a77811e35dce7609c5c963b9ad90728f886 \ + --hash=sha256:f0e34c2079d47ae9f6188211db9e777c619a21d4faba6977774e8fa43b085e48 \ + --hash=sha256:f92f88e6c033db65a5ae3d97905c8fea9c725b63e28d5a75cb73b49bda5024d8 \ + --hash=sha256:f9f7bd5faab55f47231ad8dba7787866b69f5e93bc306e3915606779bbfb4ba8 \ + --hash=sha256:fd5ef5932f6475c436c4a55e4336ebbe47bd3272be04964a03d316bbf4afbcbc \ + --hash=sha256:ff8a59ea85a1f2191a0ffcc61298c571bc566332f82e5f5be1b83c9d8e668a62 # via # -r requirements.txt # grpcio-tools -grpcio-tools==1.70.0 \ - --hash=sha256:02e3bf55fb569fe21b54a32925979156e320f9249bb247094c4cbaa60c23a80d \ - --hash=sha256:04bf30c0eb2741defe3ab6e0a6102b022d69cfd39d68fab9b954993ceca8d346 \ - --hash=sha256:076f71c6d5adcf237ebca63f1ed51098293261dab9f301e3dfd180e896e5fa89 \ - --hash=sha256:0f7ed0372afd9f5eb938334e84681396257015ab92e03de009aa3170e64b24d0 \ - --hash=sha256:114a42e566e5b16a47e98f7910a6c0074b37e2d1faacaae13222e463d0d0d43c \ - --hash=sha256:1ab788afced2d2c59bef86479967ce0b28485789a9f2cc43793bb7aa67f9528b \ - --hash=sha256:1c0917dce12af04529606d437def83962d51c59dcde905746134222e94a2ab1b \ - --hash=sha256:1de6c71833d36fb8cc8ac10539681756dc2c5c67e5d4aa4d05adb91ecbdd8474 \ - --hash=sha256:1fa9a81621d7178498dedcf94eb8f276a7594327faf3dd5fd1935ce2819a2bdb \ - --hash=sha256:22024caee36ab65c2489594d718921dcbb5bd18d61c5417a9ede94fd8dc8a589 \ - --hash=sha256:24a5b0328ffcfe0c4a9024f302545abdb8d6f24921409a5839f2879555b96fea \ - --hash=sha256:3020c97f03b30eee3c26aa2a55fbe003f1729c6f879a378507c2c78524db7c12 \ - --hash=sha256:3875543d74ce1a698a11f498f83795216ce929cb29afa5fac15672c7ba1d6dd2 \ - --hash=sha256:4545264e06e1cd7fb21b9447bb5126330bececb4bc626c98f793fda2fd910bf8 \ - --hash=sha256:4cae365d7e3ba297256216a9a256458b286f75c64603f017972b3ad1ee374437 \ - --hash=sha256:4d456521290e25b1091975af71604facc5c7db162abdca67e12a0207b8bbacbe \ - --hash=sha256:4ebf09733545a69c166b02caa14c34451e38855544820dab7fdde5c28e2dbffe \ - --hash=sha256:52d7e7ef11867fe7de577076b1f2ac6bf106b2325130e3de66f8c364c96ff332 \ - --hash=sha256:54ceffef59a059d2c7304554a8bbb20eedb05a3f937159ab1c332c1b28e12c9f \ - --hash=sha256:5cb0baa52d4d44690fac6b1040197c694776a291a90e2d3c369064b4d5bc6642 \ - --hash=sha256:5f5aba12d98d25c7ab2dd983939e2c21556a7d15f903b286f24d88d2c6e30c0a \ - --hash=sha256:6034a0579fab2aed8685fa1a558de084668b1e9b01a82a4ca7458b9bedf4654c \ - --hash=sha256:63f367363a4a1489a0046b19f9d561216ea0d206c40a6f1bf07a58ccfb7be480 \ - --hash=sha256:6eeb86864e1432fc1ab61e03395a2a4c04e9dd9c89db07e6fe68c7c2ac8ec24f \ - --hash=sha256:701bbb1ff406a21a771f5b1df6be516c0a59236774b6836eaad7696b1d128ea8 \ - --hash=sha256:70234b592af17050ec30cf35894790cef52aeae87639efe6db854a7fa783cc8c \ - --hash=sha256:740b3741d124c5f390dd50ad1c42c11788882baf3c202cd3e69adee0e3dde559 \ - --hash=sha256:79b723ce30416e8e1d7ff271f97ade79aaf30309a595d80c377105c07f5b20fd \ - --hash=sha256:7a90a66a46821140a2a2b0be787dfabe42e22e9a5ba9cc70726b3e5c71a3b785 \ - --hash=sha256:7d45067e6efd20881e98a0e1d7edd7f207b1625ad7113321becbfe0a6ebee46c \ - --hash=sha256:836293dcbb1e59fa52aa8aa890bd7a32a8eea7651cd614e96d86de4f3032fe73 \ - --hash=sha256:840ec536ab933db2ef8d5acaa6b712d0e9e8f397f62907c852ec50a3f69cdb78 \ - --hash=sha256:88a3ec6fa2381f616d567f996503e12ca353777941b61030fd9733fd5772860e \ - --hash=sha256:8eae17c920d14e2e451dbb18f5d8148f884e10228061941b33faa8fceee86e73 \ - --hash=sha256:904f13d2d04f88178b09d8ef89549b90cbf8792b684a7c72540fc1a9887697e2 \ - --hash=sha256:9387b30f3b2f46942fb5718624d7421875a6ce458620d6e15817172d78db1e1a \ - --hash=sha256:99caa530242a0a832d8b6a6ab94b190c9b449d3e237f953911b4d56207569436 \ - --hash=sha256:9c021b040d0a9f5bb96a725c4d2b95008aad127d6bed124a7bbe854973014f5b \ - --hash=sha256:a130c24d617a3a57369da784080dfa8848444d41b7ae1250abc06e72e706a8d9 \ - --hash=sha256:ae139a8d3ddd8353f62af3af018e99ebcd2f4a237bd319cb4b6f58dd608aaa54 \ - --hash=sha256:b5a9beadd1e24772ffa2c70f07d72f73330d356b78b246e424f4f2ed6c6713f3 \ - --hash=sha256:b9e4a12b862ba5e42d8028da311e8d4a2c307362659b2f4141d0f940f8c12b49 \ - --hash=sha256:bb8135eef160a62505f074bf7a3d62f3b13911c3c14037c5392bf877114213b5 \ - --hash=sha256:c6da2585c0950cdb650df1ff6d85b3fe31e22f8370b9ee11f8fe641d5b4bf096 \ - --hash=sha256:d1fc2112e9c40167086e2e6a929b253e5281bffd070fab7cd1ae019317ffc11d \ - --hash=sha256:d47a6c6cfc526b290b7b53a37dd7e6932983f7a168b56aab760b4b597c47f30f \ - --hash=sha256:d50080bca84f53f3a05452e06e6251cbb4887f5a1d1321d1989e26d6e0dc398d \ - --hash=sha256:d53c8c45e843b5836781ad6b82a607c72c2f9a3f556e23d703a0e099222421fa \ - --hash=sha256:d7fd472fce3b33bdf7fbc24d40da7ab10d7a088bcaf59c37433c2c57330fbcb6 \ - --hash=sha256:e578fee7c1c213c8e471750d92631d00f178a15479fb2cb3b939a07fc125ccd3 \ - --hash=sha256:ec5d6932c3173d7618267b3b3fd77b9243949c5ec04302b7338386d4f8544e0b \ - --hash=sha256:f024688d04e7a9429489ed695b85628075c3c6d655198ba3c6ccbd1d8b7c333b \ - --hash=sha256:f22852da12f53b02a3bdb29d0c32fcabab9c7c8f901389acffec8461083f110d \ - --hash=sha256:f7ac9b3e13ace8467a586c53580ee22f9732c355583f3c344ef8c6c0666219cc \ - --hash=sha256:fd04c93af460b1456cd12f8f85502503e1db6c4adc1b7d4bd775b12c1fd94fee +grpcio-tools==1.76.0 \ + --hash=sha256:0071b1c0bd0f5f9d292dca4efab32c92725d418e57f9c60acdc33c0172af8b53 \ + --hash=sha256:0b018a4b7455a7e8c16d0fdb3655a6ba6c9536da6de6c5d4f11b6bb73378165b \ + --hash=sha256:0cd489016766b05f9ed8a6b6596004b62c57d323f49593eac84add032a6d43f7 \ + --hash=sha256:0d4e4afe9a0e3c24fad2f1af45f98cf8700b2bfc4d790795756ba035d2ea7bdc \ + --hash=sha256:105e53435b2eed3961da543db44a2a34479d98d18ea248219856f30a0ca4646b \ + --hash=sha256:12e1186b0256414a9153d414e4852e7282863a8173ebcee67b3ebe2e1c47a755 \ + --hash=sha256:14c17014d2349b9954385bee487f51979b4b7f9067017099ae45c4f93360d373 \ + --hash=sha256:243af7c8fc7ff22a40a42eb8e0f6f66963c1920b75aae2a2ec503a9c3c8b31c1 \ + --hash=sha256:2ccd2c8d041351cc29d0fc4a84529b11ee35494a700b535c1f820b642f2a72fc \ + --hash=sha256:2ce5e87ec71f2e4041dce4351f2a8e3b713e3bca6b54c69c3fbc6c7ad1f4c386 \ + --hash=sha256:2d7679680a456528b9a71a2589cb24d3dd82ec34327281f5695077a567dee433 \ + --hash=sha256:30f1d2dda6ece285b3d9084e94f66fa721ebdba14ae76b2bc4c581c8a166535c \ + --hash=sha256:3dafa34c2626a6691d103877e8a145f54c34cf6530975f695b396ed2fc5c98f8 \ + --hash=sha256:454a1232c7f99410d92fa9923c7851fd4cdaf657ee194eac73ea1fe21b406d6e \ + --hash=sha256:479ce02dff684046f909a487d452a83a96b4231f7c70a3b218a075d54e951f56 \ + --hash=sha256:4ad555b8647de1ebaffb25170249f89057721ffb74f7da96834a07b4855bb46a \ + --hash=sha256:4b77ce6b6c17869858cfe14681ad09ed3a8a80e960e96035de1fd87f78158740 \ + --hash=sha256:5c120c2cf4443121800e7f9bcfe2e94519fa25f3bb0b9882359dd3b252c78a7b \ + --hash=sha256:630cd7fd3e8a63e20703a7ad816979073c2253e591b5422583c27cae2570de73 \ + --hash=sha256:63551f371082173e259e7f6ec24b5f1fe7d66040fadd975c966647bca605a2d3 \ + --hash=sha256:6a9818ff884796b12dcf8db32126e40ec1098cacf5697f27af9cfccfca1c1fae \ + --hash=sha256:6ae1d11477b05baead0fce051dece86a0e79d9b592245e0026c998da11c278c4 \ + --hash=sha256:75a2c34584c99ff47e5bb267866e7dec68d30cd3b2158e1ee495bfd6db5ad4f0 \ + --hash=sha256:7fefd41fc4ca11fab36f42bdf0f3812252988f8798fca8bec8eae049418deacd \ + --hash=sha256:8207b890f423142cc0025d041fb058f7286318df6a049565c27869d73534228b \ + --hash=sha256:888346b8b3f4152953626e38629ade9d79940ae85c8fd539ce39b72602191fb2 \ + --hash=sha256:8b7df5591d699cd9076065f1f15049e9c3597e0771bea51c8c97790caf5e4197 \ + --hash=sha256:8d95b5c2394bbbe911cbfc88d15e24c9e174958cb44dad6aa8c46fe367f6cc2a \ + --hash=sha256:908758789b0a612102c88e8055b7191eb2c4290d5d6fc50fb9cac737f8011ef1 \ + --hash=sha256:9b99086080ca394f1da9894ee20dedf7292dd614e985dcba58209a86a42de602 \ + --hash=sha256:9ba4bb539936642a44418b38ee6c3e8823c037699e2cb282bd8a44d76a4be833 \ + --hash=sha256:a25048c5f984d33e3f5b6ad7618e98736542461213ade1bd6f2fcfe8ce804e3d \ + --hash=sha256:a83c87513b708228b4cad7619311daba65b40937745103cadca3db94a6472d9c \ + --hash=sha256:a889af059dc6dbb82d7b417aa581601316e364fe12eb54c1b8d95311ea50916d \ + --hash=sha256:aa2f030fd0ef17926026ee8e2b700e388d3439155d145c568fa6b32693277613 \ + --hash=sha256:b05efe5a59883ab8292d596657273a60e0c3e4f5a9723c32feb9fc3a06f2f3ef \ + --hash=sha256:b598fdcebffa931c7da5c9e90b5805fff7e9bc6cf238319358a1b85704c57d33 \ + --hash=sha256:b8da4d828883913f1852bdd67383713ae5c11842f6c70f93f31893eab530aead \ + --hash=sha256:bacbf3c54f88c38de8e28f8d9b97c90b76b105fb9ddef05d2c50df01b32b92af \ + --hash=sha256:be480142fae0d986d127d6cb5cbc0357e4124ba22e96bb8b9ece32c48bc2c8ea \ + --hash=sha256:be483b90e62b7892eb71fa1fc49750bee5b2ee35b5ec99dd2b32bed4bedb5d71 \ + --hash=sha256:c3f2c3c44c56eb5d479ab178f0174595d0a974c37dade442f05bb73dfec02f31 \ + --hash=sha256:c53c5719ef2a435997755abde3826ba4087174bd432aa721d8fac781fcea79e4 \ + --hash=sha256:c6480f6af6833850a85cca1c6b435ef4ffd2ac8e88ef683b4065233827950243 \ + --hash=sha256:c7c23fe1dc09818e16a48853477806ad77dd628b33996f78c05a293065f8210c \ + --hash=sha256:c83f39f64c2531336bd8d5c846a2159c9ea6635508b0f8ed3ad0d433e25b53c9 \ + --hash=sha256:ca9ccf667afc0268d45ab202af4556c72e57ea36ebddc93535e1a25cbd4f8aba \ + --hash=sha256:cb0cc0b3edf1f076b2475a98122a51f3f3358b9a740dedff1a9a4dec6477ef96 \ + --hash=sha256:cbc16156ba2533e5bad16ff1648213dc3b0a0b0e4de6d17b65e8d60578014002 \ + --hash=sha256:ce80169b5e6adf3e8302f3ebb6cb0c3a9f08089133abca4b76ad67f751f5ad88 \ + --hash=sha256:d54e9ce2ffc5d01341f0c8898c1471d887ae93d77451884797776e0a505bd503 \ + --hash=sha256:e3db1300d7282264639eeee7243f5de7e6a7c0283f8bf05d66c0315b7b0f0b36 \ + --hash=sha256:eb2567280f9f6da5444043f0e84d8408c7a10df9ba3201026b30e40ef3814736 \ + --hash=sha256:ec6e49e7c4b2a222eb26d1e1726a07a572b6e629b2cf37e6bb784c9687904a52 \ + --hash=sha256:ec6e4de3866e47cfde56607b1fae83ecc5aa546e06dec53de11f88063f4b5275 \ + --hash=sha256:f919e480983e610263846dbeab22ad808ad0fac6d4bd15c52e9f7f80d1f08479 \ + --hash=sha256:fbbd4e1fc5af98001ceef5e780e8c10921d94941c3809238081e73818ef707f1 \ + --hash=sha256:fcdce7f7770ff052cd4e60161764b0b3498c909bde69138f8bd2e7b24a3ecd8f \ + --hash=sha256:fdd8b382ed21d7d429a9879198743abead0b08ad2249b554fd2f2395450bcdf1 \ + --hash=sha256:fe0cc10dd31ac01cadc8af1ce7877cc770bc2a71aa96569bc3c1897c1eac0116 \ + --hash=sha256:ff48969f81858397ef33a36b326f2dbe2053a48b254593785707845db73c8f44 # via -r requirements.txt -protobuf==5.29.3 \ - --hash=sha256:0a18ed4a24198528f2333802eb075e59dea9d679ab7a6c5efb017a59004d849f \ - --hash=sha256:0eb32bfa5219fc8d4111803e9a690658aa2e6366384fd0851064b963b6d1f2a7 \ - --hash=sha256:3ea51771449e1035f26069c4c7fd51fba990d07bc55ba80701c78f886bf9c888 \ - --hash=sha256:5da0f41edaf117bde316404bad1a486cb4ededf8e4a54891296f648e8e076620 \ - --hash=sha256:6ce8cc3389a20693bfde6c6562e03474c40851b44975c9b2bf6df7d8c4f864da \ - --hash=sha256:84a57163a0ccef3f96e4b6a20516cedcf5bb3a95a657131c5c3ac62200d23252 \ - --hash=sha256:a4fa6f80816a9a0678429e84973f2f98cbc218cca434abe8db2ad0bffc98503a \ - --hash=sha256:a8434404bbf139aa9e1300dbf989667a83d42ddda9153d8ab76e0d5dcaca484e \ - --hash=sha256:b89c115d877892a512f79a8114564fb435943b59067615894c3b13cd3e1fa107 \ - --hash=sha256:c027e08a08be10b67c06bf2370b99c811c466398c357e615ca88c91c07f0910f \ - --hash=sha256:daaf63f70f25e8689c072cfad4334ca0ac1d1e05a92fc15c54eb9cf23c3efd84 +protobuf==6.33.1 \ + --hash=sha256:023af8449482fa884d88b4563d85e83accab54138ae098924a985bcbb734a213 \ + --hash=sha256:0f4cf01222c0d959c2b399142deb526de420be8236f22c71356e2a544e153c53 \ + --hash=sha256:8fd7d5e0eb08cd5b87fd3df49bc193f5cfd778701f47e11d127d0afc6c39f1d1 \ + --hash=sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed \ + --hash=sha256:97f65757e8d09870de6fd973aeddb92f85435607235d20b2dfed93405d00c85b \ + --hash=sha256:d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa \ + --hash=sha256:df051de4fd7e5e4371334e234c62ba43763f15ab605579e04c7008c05735cd82 \ + --hash=sha256:f8adba2e44cde2d7618996b3fc02341f03f5bc3f2748be72dc7b063319276178 \ + --hash=sha256:f8d3fdbc966aaab1d05046d0240dd94d40f2a8c62856d41eaa141ff64a79de6b \ + --hash=sha256:fe34575f2bdde76ac429ec7b570235bf0c788883e70aee90068e9981806f2490 # via # -r requirements.txt # grpcio-tools -pycparser==2.21 \ - --hash=sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9 \ - --hash=sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206 +pycparser==2.23 \ + --hash=sha256:78816d4f24add8f10a06d6f05b4d424ad9e96cfebf68a4ddc99c65c0720d00c2 \ + --hash=sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934 # via cffi +typing-extensions==4.15.0 \ + --hash=sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 + # via grpcio # The following packages are considered to be unsafe in a requirements file: -setuptools==65.6.3 \ - --hash=sha256:57f6f22bde4e042978bcd50176fdb381d7c21a9efa4041202288d3737a0c6a54 \ - --hash=sha256:a7620757bf984b58deaf32fc8a4577a9bbc0850cf92c20e1ce41c38c19e5fb75 +setuptools==80.9.0 \ + --hash=sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 \ + --hash=sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c # via grpcio-tools diff --git a/src/api/python/requirements.txt b/src/api/python/requirements.txt index 8bb46b49186..7bea60bb5cd 100644 --- a/src/api/python/requirements.txt +++ b/src/api/python/requirements.txt @@ -1,4 +1,4 @@ Authlib==1.5.1 -grpcio==1.70.0 -grpcio-tools==1.70.0 -protobuf==5.29.3 +grpcio==1.76.0 +grpcio-tools==1.76.0 +protobuf==6.33.1 diff --git a/src/stirling/protocol_inference/BUILD.bazel b/src/stirling/protocol_inference/BUILD.bazel index 2c9bd6e0ea8..5938ce31b04 100644 --- a/src/stirling/protocol_inference/BUILD.bazel +++ b/src/stirling/protocol_inference/BUILD.bazel @@ -28,6 +28,7 @@ lib_srcs.append("__init__.py") py_library( name = "protocol_inference_lib", srcs = lib_srcs, + imports = ["."], deps = [ requirement("pandas"), requirement("prettytable"), diff --git a/src/stirling/protocol_inference/requirements.bazel.txt b/src/stirling/protocol_inference/requirements.bazel.txt index 2b9e6f96ae1..29f04460f98 100644 --- a/src/stirling/protocol_inference/requirements.bazel.txt +++ b/src/stirling/protocol_inference/requirements.bazel.txt @@ -1,106 +1,156 @@ -# -# This file is autogenerated by pip-compile with Python 3.10 -# by the following command: -# -# pip-compile --allow-unsafe --generate-hashes --output-file=src/stirling/protocol_inference/requirements.bazel.txt src/stirling/protocol_inference/requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --generate-hashes -o src/stirling/protocol_inference/requirements.bazel.txt src/stirling/protocol_inference/requirements.txt --extra-index-url https://download.pytorch.org/whl/cpu - -numpy==1.24.2 \ - --hash=sha256:003a9f530e880cb2cd177cba1af7220b9aa42def9c4afc2a2fc3ee6be7eb2b22 \ - --hash=sha256:150947adbdfeceec4e5926d956a06865c1c690f2fd902efede4ca6fe2e657c3f \ - --hash=sha256:2620e8592136e073bd12ee4536149380695fbe9ebeae845b81237f986479ffc9 \ - --hash=sha256:2eabd64ddb96a1239791da78fa5f4e1693ae2dadc82a76bc76a14cbb2b966e96 \ - --hash=sha256:4173bde9fa2a005c2c6e2ea8ac1618e2ed2c1c6ec8a7657237854d42094123a0 \ - --hash=sha256:4199e7cfc307a778f72d293372736223e39ec9ac096ff0a2e64853b866a8e18a \ - --hash=sha256:4cecaed30dc14123020f77b03601559fff3e6cd0c048f8b5289f4eeabb0eb281 \ - --hash=sha256:557d42778a6869c2162deb40ad82612645e21d79e11c1dc62c6e82a2220ffb04 \ - --hash=sha256:63e45511ee4d9d976637d11e6c9864eae50e12dc9598f531c035265991910468 \ - --hash=sha256:6524630f71631be2dabe0c541e7675db82651eb998496bbe16bc4f77f0772253 \ - --hash=sha256:76807b4063f0002c8532cfeac47a3068a69561e9c8715efdad3c642eb27c0756 \ - --hash=sha256:7de8fdde0003f4294655aa5d5f0a89c26b9f22c0a58790c38fae1ed392d44a5a \ - --hash=sha256:889b2cc88b837d86eda1b17008ebeb679d82875022200c6e8e4ce6cf549b7acb \ - --hash=sha256:92011118955724465fb6853def593cf397b4a1367495e0b59a7e69d40c4eb71d \ - --hash=sha256:97cf27e51fa078078c649a51d7ade3c92d9e709ba2bfb97493007103c741f1d0 \ - --hash=sha256:9a23f8440561a633204a67fb44617ce2a299beecf3295f0d13c495518908e910 \ - --hash=sha256:a51725a815a6188c662fb66fb32077709a9ca38053f0274640293a14fdd22978 \ - --hash=sha256:a77d3e1163a7770164404607b7ba3967fb49b24782a6ef85d9b5f54126cc39e5 \ - --hash=sha256:adbdce121896fd3a17a77ab0b0b5eedf05a9834a18699db6829a64e1dfccca7f \ - --hash=sha256:c29e6bd0ec49a44d7690ecb623a8eac5ab8a923bce0bea6293953992edf3a76a \ - --hash=sha256:c72a6b2f4af1adfe193f7beb91ddf708ff867a3f977ef2ec53c0ffb8283ab9f5 \ - --hash=sha256:d0a2db9d20117bf523dde15858398e7c0858aadca7c0f088ac0d6edd360e9ad2 \ - --hash=sha256:e3ab5d32784e843fc0dd3ab6dcafc67ef806e6b6828dc6af2f689be0eb4d781d \ - --hash=sha256:e428c4fbfa085f947b536706a2fc349245d7baa8334f0c5723c56a10595f9b95 \ - --hash=sha256:e8d2859428712785e8a8b7d2b3ef0a1d1565892367b32f915c4a4df44d0e64f5 \ - --hash=sha256:eef70b4fc1e872ebddc38cddacc87c19a3709c0e3e5d20bf3954c147b1dd941d \ - --hash=sha256:f64bb98ac59b3ea3bf74b02f13836eb2e24e48e0ab0145bbda646295769bd780 \ - --hash=sha256:f9006288bcf4895917d02583cf3411f98631275bc67cce355a7f39f8c14338fa +filelock==3.19.1 \ + --hash=sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d + # via torch +fsspec==2025.9.0 \ + --hash=sha256:530dc2a2af60a414a832059574df4a6e10cce927f6f4a78209390fe38955cfb7 + # via torch +jinja2==3.1.6 \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 + # via torch +markupsafe==2.1.5 \ + --hash=sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3 \ + --hash=sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532 \ + --hash=sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f \ + --hash=sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617 \ + --hash=sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4 \ + --hash=sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8 \ + --hash=sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2 \ + --hash=sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465 \ + --hash=sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52 \ + --hash=sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2 \ + --hash=sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029 \ + --hash=sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f \ + --hash=sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a \ + --hash=sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced \ + --hash=sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5 \ + --hash=sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c \ + --hash=sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf \ + --hash=sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb \ + --hash=sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1 \ + --hash=sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46 \ + --hash=sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc \ + --hash=sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a \ + --hash=sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee \ + --hash=sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900 \ + --hash=sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5 \ + --hash=sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5 \ + --hash=sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f \ + --hash=sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b \ + --hash=sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2 \ + --hash=sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46 \ + --hash=sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b \ + --hash=sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf \ + --hash=sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5 \ + --hash=sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5 \ + --hash=sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab \ + --hash=sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68 + # via jinja2 +mpmath==1.3.0 \ + --hash=sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c + # via sympy +networkx==3.5 \ + --hash=sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec + # via torch +numpy==2.3.3 \ + --hash=sha256:d9192da52b9745f7f0766531dcfa978b7763916f158bb63bdb8a1eca0068ab20 # via pandas -pandas==1.5.3 \ - --hash=sha256:14e45300521902689a81f3f41386dc86f19b8ba8dd5ac5a3c7010ef8d2932813 \ - --hash=sha256:26d9c71772c7afb9d5046e6e9cf42d83dd147b5cf5bcb9d97252077118543792 \ - --hash=sha256:3749077d86e3a2f0ed51367f30bf5b82e131cc0f14260c4d3e499186fccc4406 \ - --hash=sha256:41179ce559943d83a9b4bbacb736b04c928b095b5f25dd2b7389eda08f46f373 \ - --hash=sha256:478ff646ca42b20376e4ed3fa2e8d7341e8a63105586efe54fa2508ee087f328 \ - --hash=sha256:50869a35cbb0f2e0cd5ec04b191e7b12ed688874bd05dd777c19b28cbea90996 \ - --hash=sha256:565fa34a5434d38e9d250af3c12ff931abaf88050551d9fbcdfafca50d62babf \ - --hash=sha256:5f2b952406a1588ad4cad5b3f55f520e82e902388a6d5a4a91baa8d38d23c7f6 \ - --hash=sha256:5fbcb19d6fceb9e946b3e23258757c7b225ba450990d9ed63ccceeb8cae609f7 \ - --hash=sha256:6973549c01ca91ec96199e940495219c887ea815b2083722821f1d7abfa2b4dc \ - --hash=sha256:74a3fd7e5a7ec052f183273dc7b0acd3a863edf7520f5d3a1765c04ffdb3b0b1 \ - --hash=sha256:7a0a56cef15fd1586726dace5616db75ebcfec9179a3a55e78f72c5639fa2a23 \ - --hash=sha256:7cec0bee9f294e5de5bbfc14d0573f65526071029d036b753ee6507d2a21480a \ - --hash=sha256:87bd9c03da1ac870a6d2c8902a0e1fd4267ca00f13bc494c9e5a9020920e1d51 \ - --hash=sha256:972d8a45395f2a2d26733eb8d0f629b2f90bebe8e8eddbb8829b180c09639572 \ - --hash=sha256:9842b6f4b8479e41968eced654487258ed81df7d1c9b7b870ceea24ed9459b31 \ - --hash=sha256:9f69c4029613de47816b1bb30ff5ac778686688751a5e9c99ad8c7031f6508e5 \ - --hash=sha256:a50d9a4336a9621cab7b8eb3fb11adb82de58f9b91d84c2cd526576b881a0c5a \ - --hash=sha256:bc4c368f42b551bf72fac35c5128963a171b40dce866fb066540eeaf46faa003 \ - --hash=sha256:c39a8da13cede5adcd3be1182883aea1c925476f4e84b2807a46e2775306305d \ - --hash=sha256:c3ac844a0fe00bfaeb2c9b51ab1424e5c8744f89860b138434a363b1f620f354 \ - --hash=sha256:c4c00e0b0597c8e4f59e8d461f797e5d70b4d025880516a8261b2817c47759ee \ - --hash=sha256:c74a62747864ed568f5a82a49a23a8d7fe171d0c69038b38cedf0976831296fa \ - --hash=sha256:dd05f7783b3274aa206a1af06f0ceed3f9b412cf665b7247eacd83be41cf7bf0 \ - --hash=sha256:dfd681c5dc216037e0b0a2c821f5ed99ba9f03ebcf119c7dac0e9a7b960b9ec9 \ - --hash=sha256:e474390e60ed609cec869b0da796ad94f420bb057d86784191eefc62b65819ae \ - --hash=sha256:f76d097d12c82a535fda9dfe5e8dd4127952b45fea9b0276cb30cca5ea313fbc +pandas==2.3.3 \ + --hash=sha256:0242fe9a49aa8b4d78a4fa03acb397a58833ef6199e9aa40a95f027bb3a1b6e7 \ + --hash=sha256:1611aedd912e1ff81ff41c745822980c49ce4a7907537be8692c8dbc31924593 \ + --hash=sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5 \ + --hash=sha256:1d37b5848ba49824e5c30bedb9c830ab9b7751fd049bc7914533e01c65f79791 \ + --hash=sha256:23ebd657a4d38268c7dfbdf089fbc31ea709d82e4923c5ffd4fbd5747133ce73 \ + --hash=sha256:2462b1a365b6109d275250baaae7b760fd25c726aaca0054649286bcfbb3e8ec \ + --hash=sha256:28083c648d9a99a5dd035ec125d42439c6c1c525098c58af0fc38dd1a7a1b3d4 \ + --hash=sha256:2e3ebdb170b5ef78f19bfb71b0dc5dc58775032361fa188e814959b74d726dd5 \ + --hash=sha256:318d77e0e42a628c04dc56bcef4b40de67918f7041c2b061af1da41dcff670ac \ + --hash=sha256:371a4ab48e950033bcf52b6527eccb564f52dc826c02afd9a1bc0ab731bba084 \ + --hash=sha256:376c6446ae31770764215a6c937f72d917f214b43560603cd60da6408f183b6c \ + --hash=sha256:3869faf4bd07b3b66a9f462417d0ca3a9df29a9f6abd5d0d0dbab15dac7abe87 \ + --hash=sha256:3fd2f887589c7aa868e02632612ba39acb0b8948faf5cc58f0850e165bd46f35 \ + --hash=sha256:4793891684806ae50d1288c9bae9330293ab4e083ccd1c5e383c34549c6e4250 \ + --hash=sha256:4e0a175408804d566144e170d0476b15d78458795bb18f1304fb94160cabf40c \ + --hash=sha256:503cf027cf9940d2ceaa1a93cfb5f8c8c7e6e90720a2850378f0b3f3b1e06826 \ + --hash=sha256:5554c929ccc317d41a5e3d1234f3be588248e61f08a74dd17c9eabb535777dc9 \ + --hash=sha256:56851a737e3470de7fa88e6131f41281ed440d29a9268dcbf0002da5ac366713 \ + --hash=sha256:5caf26f64126b6c7aec964f74266f435afef1c1b13da3b0636c7518a1fa3e2b1 \ + --hash=sha256:602b8615ebcc4a0c1751e71840428ddebeb142ec02c786e8ad6b1ce3c8dec523 \ + --hash=sha256:6253c72c6a1d990a410bc7de641d34053364ef8bcd3126f7e7450125887dffe3 \ + --hash=sha256:6435cb949cb34ec11cc9860246ccb2fdc9ecd742c12d3304989017d53f039a78 \ + --hash=sha256:6d21f6d74eb1725c2efaa71a2bfc661a0689579b58e9c0ca58a739ff0b002b53 \ + --hash=sha256:6d2cefc361461662ac48810cb14365a365ce864afe85ef1f447ff5a1e99ea81c \ + --hash=sha256:74ecdf1d301e812db96a465a525952f4dde225fdb6d8e5a521d47e1f42041e21 \ + --hash=sha256:75ea25f9529fdec2d2e93a42c523962261e567d250b0013b16210e1d40d7c2e5 \ + --hash=sha256:854d00d556406bffe66a4c0802f334c9ad5a96b4f1f868adf036a21b11ef13ff \ + --hash=sha256:8fe25fc7b623b0ef6b5009149627e34d2a4657e880948ec3c840e9402e5c1b45 \ + --hash=sha256:900f47d8f20860de523a1ac881c4c36d65efcb2eb850e6948140fa781736e110 \ + --hash=sha256:93c2d9ab0fc11822b5eece72ec9587e172f63cff87c00b062f6e37448ced4493 \ + --hash=sha256:a16dcec078a01eeef8ee61bf64074b4e524a2a3f4b3be9326420cabe59c4778b \ + --hash=sha256:a21d830e78df0a515db2b3d2f5570610f5e6bd2e27749770e8bb7b524b89b450 \ + --hash=sha256:a45c765238e2ed7d7c608fc5bc4a6f88b642f2f01e70c0c23d2224dd21829d86 \ + --hash=sha256:a637c5cdfa04b6d6e2ecedcb81fc52ffb0fd78ce2ebccc9ea964df9f658de8c8 \ + --hash=sha256:a68e15f780eddf2b07d242e17a04aa187a7ee12b40b930bfdd78070556550e98 \ + --hash=sha256:b3d11d2fda7eb164ef27ffc14b4fcab16a80e1ce67e9f57e19ec0afaf715ba89 \ + --hash=sha256:b468d3dad6ff947df92dcb32ede5b7bd41a9b3cceef0a30ed925f6d01fb8fa66 \ + --hash=sha256:b98560e98cb334799c0b07ca7967ac361a47326e9b4e5a7dfb5ab2b1c9d35a1b \ + --hash=sha256:bdcd9d1167f4885211e401b3036c0c8d9e274eee67ea8d0758a256d60704cfe8 \ + --hash=sha256:bf1f8a81d04ca90e32a0aceb819d34dbd378a98bf923b6398b9a3ec0bf44de29 \ + --hash=sha256:c46467899aaa4da076d5abc11084634e2d197e9460643dd455ac3db5856b24d6 \ + --hash=sha256:c4fc4c21971a1a9f4bdb4c73978c7f7256caa3e62b323f70d6cb80db583350bc \ + --hash=sha256:c503ba5216814e295f40711470446bc3fd00f0faea8a086cbc688808e26f92a2 \ + --hash=sha256:d051c0e065b94b7a3cea50eb1ec32e912cd96dba41647eb24104b6c6c14c5788 \ + --hash=sha256:d3e28b3e83862ccf4d85ff19cf8c20b2ae7e503881711ff2d534dc8f761131aa \ + --hash=sha256:db4301b2d1f926ae677a751eb2bd0e8c5f5319c9cb3f88b0becbbb0b07b34151 \ + --hash=sha256:dd7478f1463441ae4ca7308a70e90b33470fa593429f9d4c578dd00d1fa78838 \ + --hash=sha256:e05e1af93b977f7eafa636d043f9f94c7ee3ac81af99c13508215942e64c993b \ + --hash=sha256:e19d192383eab2f4ceb30b412b22ea30690c9e618f78870357ae1d682912015a \ + --hash=sha256:e32e7cc9af0f1cc15548288a51a3b681cc2a219faa838e995f7dc53dbab1062d \ + --hash=sha256:ecaf1e12bdc03c86ad4a7ea848d66c685cb6851d807a26aa245ca3d2017a1908 \ + --hash=sha256:ee15f284898e7b246df8087fc82b87b01686f98ee67d85a17b7ab44143a3a9a0 \ + --hash=sha256:ee67acbbf05014ea6c763beb097e03cd629961c8a632075eeb34247120abcb4b \ + --hash=sha256:f086f6fe114e19d92014a1966f43a3e62285109afe874f067f5abbdcbb10e59c \ + --hash=sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee # via -r src/stirling/protocol_inference/requirements.txt -prettytable==3.6.0 \ - --hash=sha256:2e0026af955b4ea67b22122f310b90eae890738c08cb0458693a49b6221530ac \ - --hash=sha256:3b767129491767a3a5108e6f305cbaa650f8020a7db5dfe994a2df7ef7bad0fe +prettytable==3.17.0 \ + --hash=sha256:59f2590776527f3c9e8cf9fe7b66dd215837cca96a9c39567414cbc632e8ddb0 \ + --hash=sha256:aad69b294ddbe3e1f95ef8886a060ed1666a0b83018bbf56295f6f226c43d287 # via -r src/stirling/protocol_inference/requirements.txt -python-dateutil==2.8.2 \ - --hash=sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86 \ - --hash=sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9 +python-dateutil==2.9.0.post0 \ + --hash=sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 \ + --hash=sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427 # via pandas -pytz==2022.7.1 \ - --hash=sha256:01a0681c4b9684a28304615eba55d1ab31ae00bf68ec157ec3708a8182dbbcd0 \ - --hash=sha256:78f4f37d8198e0627c5f1143240bb0206b8691d8d7ac6d78fee88b78733f8c4a +pytz==2025.2 \ + --hash=sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3 \ + --hash=sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00 # via pandas -six==1.16.0 \ - --hash=sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 \ - --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 +setuptools==70.2.0 \ + --hash=sha256:b8b8060bb426838fbe942479c90296ce976249451118ef566a5a0b7d8b78fb05 + # via torch +six==1.17.0 \ + --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 \ + --hash=sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81 # via python-dateutil -termcolor==2.2.0 \ - --hash=sha256:91ddd848e7251200eac969846cbae2dacd7d71c2871e92733289e7e3666f48e7 \ - --hash=sha256:dfc8ac3f350788f23b2947b3e6cfa5a53b630b612e6cd8965a015a776020b99a +sympy==1.14.0 \ + --hash=sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5 + # via torch +termcolor==3.2.0 \ + --hash=sha256:610e6456feec42c4bcd28934a8c87a06c3fa28b01561d46aa09a9881b8622c58 \ + --hash=sha256:a10343879eba4da819353c55cb8049b0933890c2ebf9ad5d3ecd2bb32ea96ea6 # via -r src/stirling/protocol_inference/requirements.txt -torch==1.13.1+cpu \ - --hash=sha256:02e387834a3489396f1871f83f7a795610d09ef3da01aa431493b08eac5c6666 \ - --hash=sha256:11692523b87c45b79ddfb5148b12a713d85235d399915490d94e079521f7e014 \ - --hash=sha256:207ab3700cd9c4349f4fd1892597eb3d385eb78221c0f2974ec54b8ea903aa00 \ - --hash=sha256:2dd7e5f584c7ea5d8f038fd1fa40465785f797df0c7d06c432f5e72d9817115a \ - --hash=sha256:43394e66487543c112044194e9bdecc6f48c869d692a9d0c755b95d642b29535 \ - --hash=sha256:4a8b84834eb12b3428c24e9f264c9bd6a2cf449fffc191374e7dbb2b950fc6d7 \ - --hash=sha256:71636a5c21927236f4974d2355fb3f66a0b707c28219b0135ff65ed0f0e61287 \ - --hash=sha256:988ee77c0975b4c3f570dfc62277b1e300bbbe7cc000ce2720e2e8c730fb9ce5 \ - --hash=sha256:dc185f2fdbb1f84855929d3ba7b36c74f218789d26a0e0268cb0586d466c8c24 +torch==2.9.1+cpu \ + --hash=sha256:7417d8c565f219d3455654cb431c6d892a3eb40246055e14d645422de13b9ea1 # via -r src/stirling/protocol_inference/requirements.txt -typing-extensions==4.4.0 \ - --hash=sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa \ - --hash=sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e +typing-extensions==4.15.0 \ + --hash=sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 # via torch -wcwidth==0.2.6 \ - --hash=sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e \ - --hash=sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0 +tzdata==2025.2 \ + --hash=sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8 \ + --hash=sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9 + # via pandas +wcwidth==0.2.14 \ + --hash=sha256:4d478375d31bc5395a3c55c40ccdf3354688364cd61c4f6adacaa9215d0b3605 \ + --hash=sha256:a7bb560c8aee30f9957e5f9895805edd20602f2d7f720186dfd906e82b4982e1 # via prettytable diff --git a/src/stirling/protocol_inference/requirements.txt b/src/stirling/protocol_inference/requirements.txt index 1672e8408c1..e4880eaa946 100644 --- a/src/stirling/protocol_inference/requirements.txt +++ b/src/stirling/protocol_inference/requirements.txt @@ -1,5 +1,5 @@ --extra-index-url https://download.pytorch.org/whl/cpu -pandas==1.5.3 -prettytable==3.6.0 -termcolor==2.2.0 -torch==1.13.1+cpu +pandas>=2.2.0 +prettytable>=3.9.0 +termcolor>=2.4.0 +torch==2.9.1+cpu diff --git a/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.bazel.txt b/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.bazel.txt index 250493ed54e..34596df7499 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.bazel.txt +++ b/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.bazel.txt @@ -1,156 +1,267 @@ -# -# This file is autogenerated by pip-compile with Python 3.10 -# by the following command: -# -# pip-compile --generate-hashes --output-file=requirements.bazel.txt requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --generate-hashes -o src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.bazel.txt src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt appdirs==1.4.4 \ --hash=sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41 \ --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 # via pyshark -dill==0.3.6 \ - --hash=sha256:a07ffd2351b8c678dfc4a856a3005f8067aea51d6ba6c700796a4d9e280f39f0 \ - --hash=sha256:e5db55f3687856d8fbdab002ed78544e1c4559a130302693d839dfe8f93f2373 - # via -r requirements.txt -fire==0.4.0 \ - --hash=sha256:c5e2b8763699d1142393a46d0e3e790c5eb2f0706082df8f647878842c216a62 - # via -r requirements.txt -jinja2==3.1.3 \ - --hash=sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa \ - --hash=sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90 - # via -r requirements.txt -lxml==4.9.1 \ - --hash=sha256:04da965dfebb5dac2619cb90fcf93efdb35b3c6994fea58a157a834f2f94b318 \ - --hash=sha256:0538747a9d7827ce3e16a8fdd201a99e661c7dee3c96c885d8ecba3c35d1032c \ - --hash=sha256:0645e934e940107e2fdbe7c5b6fb8ec6232444260752598bc4d09511bd056c0b \ - --hash=sha256:079b68f197c796e42aa80b1f739f058dcee796dc725cc9a1be0cdb08fc45b000 \ - --hash=sha256:0f3f0059891d3254c7b5fb935330d6db38d6519ecd238ca4fce93c234b4a0f73 \ - --hash=sha256:10d2017f9150248563bb579cd0d07c61c58da85c922b780060dcc9a3aa9f432d \ - --hash=sha256:1355755b62c28950f9ce123c7a41460ed9743c699905cbe664a5bcc5c9c7c7fb \ - --hash=sha256:13c90064b224e10c14dcdf8086688d3f0e612db53766e7478d7754703295c7c8 \ - --hash=sha256:1423631e3d51008871299525b541413c9b6c6423593e89f9c4cfbe8460afc0a2 \ - --hash=sha256:1436cf0063bba7888e43f1ba8d58824f085410ea2025befe81150aceb123e345 \ - --hash=sha256:1a7c59c6ffd6ef5db362b798f350e24ab2cfa5700d53ac6681918f314a4d3b94 \ - --hash=sha256:1e1cf47774373777936c5aabad489fef7b1c087dcd1f426b621fda9dcc12994e \ - --hash=sha256:206a51077773c6c5d2ce1991327cda719063a47adc02bd703c56a662cdb6c58b \ - --hash=sha256:21fb3d24ab430fc538a96e9fbb9b150029914805d551deeac7d7822f64631dfc \ - --hash=sha256:27e590352c76156f50f538dbcebd1925317a0f70540f7dc8c97d2931c595783a \ - --hash=sha256:287605bede6bd36e930577c5925fcea17cb30453d96a7b4c63c14a257118dbb9 \ - --hash=sha256:2aaf6a0a6465d39b5ca69688fce82d20088c1838534982996ec46633dc7ad6cc \ - --hash=sha256:32a73c53783becdb7eaf75a2a1525ea8e49379fb7248c3eeefb9412123536387 \ - --hash=sha256:41fb58868b816c202e8881fd0f179a4644ce6e7cbbb248ef0283a34b73ec73bb \ - --hash=sha256:4780677767dd52b99f0af1f123bc2c22873d30b474aa0e2fc3fe5e02217687c7 \ - --hash=sha256:4878e667ebabe9b65e785ac8da4d48886fe81193a84bbe49f12acff8f7a383a4 \ - --hash=sha256:487c8e61d7acc50b8be82bda8c8d21d20e133c3cbf41bd8ad7eb1aaeb3f07c97 \ - --hash=sha256:4beea0f31491bc086991b97517b9683e5cfb369205dac0148ef685ac12a20a67 \ - --hash=sha256:4cfbe42c686f33944e12f45a27d25a492cc0e43e1dc1da5d6a87cbcaf2e95627 \ - --hash=sha256:4d5bae0a37af799207140652a700f21a85946f107a199bcb06720b13a4f1f0b7 \ - --hash=sha256:4e285b5f2bf321fc0857b491b5028c5f276ec0c873b985d58d7748ece1d770dd \ - --hash=sha256:57e4d637258703d14171b54203fd6822fda218c6c2658a7d30816b10995f29f3 \ - --hash=sha256:5974895115737a74a00b321e339b9c3f45c20275d226398ae79ac008d908bff7 \ - --hash=sha256:5ef87fca280fb15342726bd5f980f6faf8b84a5287fcc2d4962ea8af88b35130 \ - --hash=sha256:603a464c2e67d8a546ddaa206d98e3246e5db05594b97db844c2f0a1af37cf5b \ - --hash=sha256:6653071f4f9bac46fbc30f3c7838b0e9063ee335908c5d61fb7a4a86c8fd2036 \ - --hash=sha256:6ca2264f341dd81e41f3fffecec6e446aa2121e0b8d026fb5130e02de1402785 \ - --hash=sha256:6d279033bf614953c3fc4a0aa9ac33a21e8044ca72d4fa8b9273fe75359d5cca \ - --hash=sha256:6d949f53ad4fc7cf02c44d6678e7ff05ec5f5552b235b9e136bd52e9bf730b91 \ - --hash=sha256:6daa662aba22ef3258934105be2dd9afa5bb45748f4f702a3b39a5bf53a1f4dc \ - --hash=sha256:6eafc048ea3f1b3c136c71a86db393be36b5b3d9c87b1c25204e7d397cee9536 \ - --hash=sha256:830c88747dce8a3e7525defa68afd742b4580df6aa2fdd6f0855481e3994d391 \ - --hash=sha256:86e92728ef3fc842c50a5cb1d5ba2bc66db7da08a7af53fb3da79e202d1b2cd3 \ - --hash=sha256:8caf4d16b31961e964c62194ea3e26a0e9561cdf72eecb1781458b67ec83423d \ - --hash=sha256:8d1a92d8e90b286d491e5626af53afef2ba04da33e82e30744795c71880eaa21 \ - --hash=sha256:8f0a4d179c9a941eb80c3a63cdb495e539e064f8054230844dcf2fcb812b71d3 \ - --hash=sha256:9232b09f5efee6a495a99ae6824881940d6447debe272ea400c02e3b68aad85d \ - --hash=sha256:927a9dd016d6033bc12e0bf5dee1dde140235fc8d0d51099353c76081c03dc29 \ - --hash=sha256:93e414e3206779ef41e5ff2448067213febf260ba747fc65389a3ddaa3fb8715 \ - --hash=sha256:98cafc618614d72b02185ac583c6f7796202062c41d2eeecdf07820bad3295ed \ - --hash=sha256:9c3a88d20e4fe4a2a4a84bf439a5ac9c9aba400b85244c63a1ab7088f85d9d25 \ - --hash=sha256:9f36de4cd0c262dd9927886cc2305aa3f2210db437aa4fed3fb4940b8bf4592c \ - --hash=sha256:a60f90bba4c37962cbf210f0188ecca87daafdf60271f4c6948606e4dabf8785 \ - --hash=sha256:a614e4afed58c14254e67862456d212c4dcceebab2eaa44d627c2ca04bf86837 \ - --hash=sha256:ae06c1e4bc60ee076292e582a7512f304abdf6c70db59b56745cca1684f875a4 \ - --hash=sha256:b122a188cd292c4d2fcd78d04f863b789ef43aa129b233d7c9004de08693728b \ - --hash=sha256:b570da8cd0012f4af9fa76a5635cd31f707473e65a5a335b186069d5c7121ff2 \ - --hash=sha256:bcaa1c495ce623966d9fc8a187da80082334236a2a1c7e141763ffaf7a405067 \ - --hash=sha256:bd34f6d1810d9354dc7e35158aa6cc33456be7706df4420819af6ed966e85448 \ - --hash=sha256:be9eb06489bc975c38706902cbc6888f39e946b81383abc2838d186f0e8b6a9d \ - --hash=sha256:c4b2e0559b68455c085fb0f6178e9752c4be3bba104d6e881eb5573b399d1eb2 \ - --hash=sha256:c62e8dd9754b7debda0c5ba59d34509c4688f853588d75b53c3791983faa96fc \ - --hash=sha256:c852b1530083a620cb0de5f3cd6826f19862bafeaf77586f1aef326e49d95f0c \ - --hash=sha256:d9fc0bf3ff86c17348dfc5d322f627d78273eba545db865c3cd14b3f19e57fa5 \ - --hash=sha256:dad7b164905d3e534883281c050180afcf1e230c3d4a54e8038aa5cfcf312b84 \ - --hash=sha256:e5f66bdf0976ec667fc4594d2812a00b07ed14d1b44259d19a41ae3fff99f2b8 \ - --hash=sha256:e8f0c9d65da595cfe91713bc1222af9ecabd37971762cb830dea2fc3b3bb2acf \ - --hash=sha256:edffbe3c510d8f4bf8640e02ca019e48a9b72357318383ca60e3330c23aaffc7 \ - --hash=sha256:eea5d6443b093e1545ad0210e6cf27f920482bfcf5c77cdc8596aec73523bb7e \ - --hash=sha256:ef72013e20dd5ba86a8ae1aed7f56f31d3374189aa8b433e7b12ad182c0d2dfb \ - --hash=sha256:f05251bbc2145349b8d0b77c0d4e5f3b228418807b1ee27cefb11f69ed3d233b \ - --hash=sha256:f1be258c4d3dc609e654a1dc59d37b17d7fef05df912c01fc2e15eb43a9735f3 \ - --hash=sha256:f9ced82717c7ec65a67667bb05865ffe38af0e835cdd78728f1209c8fffe0cad \ - --hash=sha256:fe17d10b97fdf58155f858606bddb4e037b805a60ae023c009f760d8361a4eb8 \ - --hash=sha256:fe749b052bb7233fe5d072fcb549221a8cb1a16725c47c37e42b0b9cb3ff2c3f - # via pyshark -markupsafe==2.1.1 \ - --hash=sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003 \ - --hash=sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88 \ - --hash=sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5 \ - --hash=sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7 \ - --hash=sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a \ - --hash=sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603 \ - --hash=sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1 \ - --hash=sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135 \ - --hash=sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247 \ - --hash=sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6 \ - --hash=sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601 \ - --hash=sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77 \ - --hash=sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02 \ - --hash=sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e \ - --hash=sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63 \ - --hash=sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f \ - --hash=sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980 \ - --hash=sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b \ - --hash=sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812 \ - --hash=sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff \ - --hash=sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96 \ - --hash=sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1 \ - --hash=sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925 \ - --hash=sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a \ - --hash=sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6 \ - --hash=sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e \ - --hash=sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f \ - --hash=sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4 \ - --hash=sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f \ - --hash=sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3 \ - --hash=sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c \ - --hash=sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a \ - --hash=sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417 \ - --hash=sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a \ - --hash=sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a \ - --hash=sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37 \ - --hash=sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452 \ - --hash=sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933 \ - --hash=sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a \ - --hash=sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7 +dill==0.4.0 \ + --hash=sha256:0633f1d2df477324f53a895b02c901fb961bdbf65a17122586ea7019292cbcf0 \ + --hash=sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049 + # via -r src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt +fire==0.7.1 \ + --hash=sha256:3b208f05c736de98fb343310d090dcc4d8c78b2a89ea4f32b837c586270a9cbf \ + --hash=sha256:e43fd8a5033a9001e7e2973bab96070694b9f12f2e0ecf96d4683971b5ab1882 + # via -r src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt +jinja2==3.1.6 \ + --hash=sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d \ + --hash=sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67 + # via -r src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt +lxml==6.0.2 \ + --hash=sha256:058027e261afed589eddcfe530fcc6f3402d7fd7e89bfd0532df82ebc1563dba \ + --hash=sha256:063eccf89df5b24e361b123e257e437f9e9878f425ee9aae3144c77faf6da6d8 \ + --hash=sha256:064fdadaf7a21af3ed1dcaa106b854077fbeada827c18f72aec9346847cd65d0 \ + --hash=sha256:08b9d5e803c2e4725ae9e8559ee880e5328ed61aa0935244e0515d7d9dbec0aa \ + --hash=sha256:0a3c150a95fbe5ac91de323aa756219ef9cf7fde5a3f00e2281e30f33fa5fa4f \ + --hash=sha256:0aa7070978f893954008ab73bb9e3c24a7c56c054e00566a21b553dc18105fca \ + --hash=sha256:13dcecc9946dca97b11b7c40d29fba63b55ab4170d3c0cf8c0c164343b9bfdcf \ + --hash=sha256:13e35cbc684aadf05d8711a5d1b5857c92e5e580efa9a0d2be197199c8def607 \ + --hash=sha256:17f68764f35fd78d7c4cc4ef209a184c38b65440378013d24b8aecd327c3e0c8 \ + --hash=sha256:1941354d92699fb5ffe6ed7b32f9649e43c2feb4b97205f75866f7d21aa91452 \ + --hash=sha256:1c06035eafa8404b5cf475bb37a9f6088b0aca288d4ccc9d69389750d5543700 \ + --hash=sha256:1db01e5cf14345628e0cbe71067204db658e2fb8e51e7f33631f5f4735fefd8d \ + --hash=sha256:1e786a464c191ca43b133906c6903a7e4d56bef376b75d97ccbb8ec5cf1f0a4b \ + --hash=sha256:1ea99340b3c729beea786f78c38f60f4795622f36e305d9c9be402201efdc3b7 \ + --hash=sha256:200069a593c5e40b8f6fc0d84d86d970ba43138c3e68619ffa234bc9bb806a4d \ + --hash=sha256:2047d8234fe735ab77802ce5f2297e410ff40f5238aec569ad7c8e163d7b19a6 \ + --hash=sha256:21c73b476d3cfe836be731225ec3421fa2f048d84f6df6a8e70433dff1376d5a \ + --hash=sha256:24a8e756c982c001ca8d59e87c80c4d9dcd4d9b44a4cbeb8d9be4482c514d41d \ + --hash=sha256:252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca \ + --hash=sha256:2593c77efde7bfea7f6389f1ab249b15ed4aa5bc5cb5131faa3b843c429fbedb \ + --hash=sha256:25fcc59afc57d527cfc78a58f40ab4c9b8fd096a9a3f964d2781ffb6eb33f4ed \ + --hash=sha256:2613e67de13d619fd283d58bda40bff0ee07739f624ffee8b13b631abf33083d \ + --hash=sha256:27220da5be049e936c3aca06f174e8827ca6445a4353a1995584311487fc4e3e \ + --hash=sha256:2c8458c2cdd29589a8367c09c8f030f1d202be673f0ca224ec18590b3b9fb694 \ + --hash=sha256:2ca59e7e13e5981175b8b3e4ab84d7da57993eeff53c07764dcebda0d0e64ecd \ + --hash=sha256:2cbcbf6d6e924c28f04a43f3b6f6e272312a090f269eff68a2982e13e5d57659 \ + --hash=sha256:2ed6c667fcbb8c19c6791bbf40b7268ef8ddf5a96940ba9404b9f9a304832f6c \ + --hash=sha256:358d9adae670b63e95bc59747c72f4dc97c9ec58881d4627fe0120da0f90d314 \ + --hash=sha256:370cd78d5855cfbffd57c422851f7d3864e6ae72d0da615fca4dad8c45d375a5 \ + --hash=sha256:3ae2ce7d6fedfb3414a2b6c5e20b249c4c607f72cb8d2bb7cc9c6ec7c6f4e849 \ + --hash=sha256:3b1675e096e17c6fe9c0e8c81434f5736c0739ff9ac6123c87c2d452f48fc938 \ + --hash=sha256:3e3cb08855967a20f553ff32d147e14329b3ae70ced6edc2f282b94afbc74b2a \ + --hash=sha256:3efe1b21c7801ffa29a1112fab3b0f643628c30472d507f39544fd48e9549e34 \ + --hash=sha256:3fee0851639d06276e6b387f1c190eb9d7f06f7f53514e966b26bae46481ec90 \ + --hash=sha256:4077b7c79f31755df33b795dc12119cb557a0106bfdab0d2c2d97bd3cf3dffa6 \ + --hash=sha256:414aaa94e974e23a3e92e7ca5b97d10c0cf37b6481f50911032c69eeb3991bba \ + --hash=sha256:4197fb2534ee05fd3e7afaab5d8bfd6c2e186f65ea7f9cd6a82809c887bd1285 \ + --hash=sha256:442de7530296ef5e188373a1ea5789a46ce90c4847e597856570439621d9c553 \ + --hash=sha256:4468e3b83e10e0317a89a33d28f7aeba1caa4d1a6fd457d115dd4ffe90c5931d \ + --hash=sha256:452b899faa64f1805943ec1c0c9ebeaece01a1af83e130b69cdefeda180bb42c \ + --hash=sha256:45f93e6f75123f88d7f0cfd90f2d05f441b808562bf0bc01070a00f53f5028b5 \ + --hash=sha256:48461bd21625458dd01e14e2c38dd0aea69addc3c4f960c30d9f59d7f93be601 \ + --hash=sha256:4ddb1049fa0579d0cbd00503ad8c58b9ab34d1254c77bc6a5576d96ec7853dba \ + --hash=sha256:5179c60288204e6ddde3f774a93350177e08876eaf3ab78aa3a3649d43eb7d37 \ + --hash=sha256:57a86e1ebb4020a38d295c04fc79603c7899e0df71588043eb218722dabc087f \ + --hash=sha256:5921d924aa5468c939d95c9814fa9f9b5935a6ff4e679e26aaf2951f74043512 \ + --hash=sha256:59c45e125140b2c4b33920d21d83681940ca29f0b83f8629ea1a2196dc8cfe6a \ + --hash=sha256:5aa0fc67ae19d7a64c3fe725dc9a1bb11f80e01f78289d05c6f62545affec438 \ + --hash=sha256:5d444858b9f07cefff6455b983aea9a67f7462ba1f6cbe4a21e8bf6791bf2153 \ + --hash=sha256:60fa43be34f78bebb27812ed90f1925ec99560b0fa1decdb7d12b84d857d31e9 \ + --hash=sha256:6162a86d86893d63084faaf4ff937b3daea233e3682fb4474db07395794fa80d \ + --hash=sha256:61cb10eeb95570153e0c0e554f58df92ecf5109f75eacad4a95baa709e26c3d6 \ + --hash=sha256:65ac4a01aba353cfa6d5725b95d7aed6356ddc0a3cd734de00124d285b04b64f \ + --hash=sha256:65ea18d710fd14e0186c2f973dc60bb52039a275f82d3c44a0e42b43440ea534 \ + --hash=sha256:6605c604e6daa9e0d7f0a2137bdc47a2e93b59c60a65466353e37f8272f47c46 \ + --hash=sha256:66328dabea70b5ba7e53d94aa774b733cf66686535f3bc9250a7aab53a91caaf \ + --hash=sha256:6c8963287d7a4c5c9a432ff487c52e9c5618667179c18a204bdedb27310f022f \ + --hash=sha256:6cdaefac66e8b8f30e37a9b4768a391e1f8a16a7526d5bc77a7928408ef68e93 \ + --hash=sha256:6da5185951d72e6f5352166e3da7b0dc27aa70bd1090b0eb3f7f7212b53f1bb8 \ + --hash=sha256:6ddff43f702905a4e32bc24f3f2e2edfe0f8fde3277d481bffb709a4cced7a1f \ + --hash=sha256:6ec0e3f745021bfed19c456647f0298d60a24c9ff86d9d051f52b509663feeb1 \ + --hash=sha256:6f91fd2b2ea15a6800c8e24418c0775a1694eefc011392da73bc6cef2623b322 \ + --hash=sha256:700efd30c0fa1a3581d80a748157397559396090a51d306ea59a70020223d16f \ + --hash=sha256:71695772df6acea9f3c0e59e44ba8ac50c4f125217e84aab21074a1a55e7e5c9 \ + --hash=sha256:72c87e5ee4e58a8354fb9c7c84cbf95a1c8236c127a5d1b7683f04bed8361e1f \ + --hash=sha256:7d2de809c2ee3b888b59f995625385f74629707c9355e0ff856445cdcae682b7 \ + --hash=sha256:80dadc234ebc532e09be1975ff538d154a7fa61ea5031c03d25178855544728f \ + --hash=sha256:817ef43a0c0b4a77bd166dc9a09a555394105ff3374777ad41f453526e37f9cb \ + --hash=sha256:846ae9a12d54e368933b9759052d6206a9e8b250291109c48e350c1f1f49d916 \ + --hash=sha256:875c6b5ab39ad5291588aed6925fac99d0097af0dd62f33c7b43736043d4a2ec \ + --hash=sha256:8799481bbdd212470d17513a54d568f44416db01250f49449647b5ab5b5dccb9 \ + --hash=sha256:8ac6e5811ae2870953390452e3476694196f98d447573234592d30488147404d \ + --hash=sha256:8f8d0cbd0674ee89863a523e6994ac25fd5be9c8486acfc3e5ccea679bad2679 \ + --hash=sha256:901e3b4219fa04ef766885fb40fa516a71662a4c61b80c94d25336b4934b71c0 \ + --hash=sha256:90a345bbeaf9d0587a3aaffb7006aa39ccb6ff0e96a57286c0cb2fd1520ea192 \ + --hash=sha256:9261bb77c2dab42f3ecd9103951aeca2c40277701eb7e912c545c1b16e0e4917 \ + --hash=sha256:945da35a48d193d27c188037a05fec5492937f66fb1958c24fc761fb9d40d43c \ + --hash=sha256:957448ac63a42e2e49531b9d6c0fa449a1970dbc32467aaad46f11545be9af1d \ + --hash=sha256:967aab75434de148ec80597b75062d8123cadf2943fb4281f385141e18b21338 \ + --hash=sha256:98a5e1660dc7de2200b00d53fa00bcd3c35a3608c305d45a7bbcaf29fa16e83d \ + --hash=sha256:995e783eb0374c120f528f807443ad5a83a656a8624c467ea73781fc5f8a8304 \ + --hash=sha256:9b33d21594afab46f37ae58dfadd06636f154923c4e8a4d754b0127554eb2e77 \ + --hash=sha256:a4bf42d2e4cf52c28cc1812d62426b9503cdb0c87a6de81442626aa7d69707ba \ + --hash=sha256:a59f5448ba2ceccd06995c95ea59a7674a10de0810f2ce90c9006f3cbc044456 \ + --hash=sha256:a656ca105115f6b766bba324f23a67914d9c728dafec57638e2b92a9dcd76c62 \ + --hash=sha256:a6b5b39cc7e2998f968f05309e666103b53e2edd01df8dc51b90d734c0825444 \ + --hash=sha256:a7c5d5e5f1081955358533be077166ee97ed2571d6a66bdba6ec2f609a715d1a \ + --hash=sha256:a8bef9b9825fa8bc816a6e641bb67219489229ebc648be422af695f6e7a4fa7f \ + --hash=sha256:a8ffaeec5dfea5881d4c9d8913a32d10cfe3923495386106e4a24d45300ef79c \ + --hash=sha256:abd44571493973bad4598a3be7e1d807ed45aa2adaf7ab92ab7c62609569b17d \ + --hash=sha256:ac02dc29fd397608f8eb15ac1610ae2f2f0154b03f631e6d724d9e2ad4ee2c84 \ + --hash=sha256:af85529ae8d2a453feee4c780d9406a5e3b17cee0dd75c18bd31adcd584debc3 \ + --hash=sha256:b0c732aa23de8f8aec23f4b580d1e52905ef468afb4abeafd3fec77042abb6fe \ + --hash=sha256:b2142a376b40b6736dfc214fd2902409e9e3857eff554fed2d3c60f097e62a62 \ + --hash=sha256:b22a07cbb82fea98f8a2fd814f3d1811ff9ed76d0fc6abc84eb21527596e7cc8 \ + --hash=sha256:b2c3da8d93cf5db60e8858c17684c47d01fee6405e554fb55018dd85fc23b178 \ + --hash=sha256:b2c7fdaa4d7c3d886a42534adec7cfac73860b89b4e5298752f60aa5984641a0 \ + --hash=sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7 \ + --hash=sha256:b42f4d86b451c2f9d06ffb4f8bbc776e04df3ba070b9fe2657804b1b40277c48 \ + --hash=sha256:b738f7e648735714bbb82bdfd030203360cfeab7f6e8a34772b3c8c8b820568c \ + --hash=sha256:b7fc49c37f1786284b12af63152fe1d0990722497e2d5817acfe7a877522f9a9 \ + --hash=sha256:b8f18914faec94132e5b91e69d76a5c1d7b0c73e2489ea8929c4aaa10b76bbf7 \ + --hash=sha256:bb2f6ca0ae2d983ded09357b84af659c954722bbf04dea98030064996d156048 \ + --hash=sha256:bb4c1847b303835d89d785a18801a883436cdfd5dc3d62947f9c49e24f0f5a2c \ + --hash=sha256:bc456d04db0515ce3320d714a1eac7a97774ff0849e7718b492d957da4631dd4 \ + --hash=sha256:bc532422ff26b304cfb62b328826bd995c96154ffd2bac4544f37dbb95ecaa8f \ + --hash=sha256:be3aaa60da67e6153eb15715cc2e19091af5dc75faef8b8a585aea372507384b \ + --hash=sha256:c33e66d44fe60e72397b487ee92e01da0d09ba2d66df8eae42d77b6d06e5eba0 \ + --hash=sha256:c371aa98126a0d4c739ca93ceffa0fd7a5d732e3ac66a46e74339acd4d334564 \ + --hash=sha256:c54d83a2188a10ebdba573f16bd97135d06c9ef60c3dc495315c7a28c80a263f \ + --hash=sha256:c7d13103045de1bdd6fe5d61802565f1a3537d70cd3abf596aa0af62761921ee \ + --hash=sha256:cb233f9c95f83707dae461b12b720c1af9c28c2d19208e1be03387222151daf5 \ + --hash=sha256:cd79f3367bd74b317dda655dc8fcfa304d9eb6e4fb06b7168c5cf27f96e0cd62 \ + --hash=sha256:cdcbed9ad19da81c480dfd6dd161886db6096083c9938ead313d94b30aadf272 \ + --hash=sha256:d100fcc8930d697c6561156c6810ab4a508fb264c8b6779e6e61e2ed5e7558f9 \ + --hash=sha256:d4aec24d6b72ee457ec665344a29acb2d35937d5192faebe429ea02633151aad \ + --hash=sha256:d6690ec5ec1cce0385cb20896b16be35247ac8c2046e493d03232f1c2414d321 \ + --hash=sha256:d759cdd7f3e055d6bc8d9bec3ad905227b2e4c785dc16c372eb5b5e83123f48a \ + --hash=sha256:da08e7bb297b04e893d91087df19638dc7a6bb858a954b0cc2b9f5053c922312 \ + --hash=sha256:dacf3c64ef3f7440e3167aa4b49aa9e0fb99e0aa4f9ff03795640bf94531bcb0 \ + --hash=sha256:daf42de090d59db025af61ce6bdb2521f0f102ea0e6ea310f13c17610a97da4c \ + --hash=sha256:dc051506c30b609238d79eda75ee9cab3e520570ec8219844a72a46020901e37 \ + --hash=sha256:de496365750cc472b4e7902a485d3f152ecf57bd3ba03ddd5578ed8ceb4c5964 \ + --hash=sha256:dfb874cfa53340009af6bdd7e54ebc0d21012a60a4e65d927c2e477112e63484 \ + --hash=sha256:e19e0643cc936a22e837f79d01a550678da8377d7d801a14487c10c34ee49c7e \ + --hash=sha256:e237b807d68a61fc3b1e845407e27e5eb8ef69bc93fe8505337c1acb4ee300b6 \ + --hash=sha256:e5867f2651016a3afd8dd2c8238baa66f1e2802f44bc17e236f547ace6647078 \ + --hash=sha256:e748d4cf8fef2526bb2a589a417eba0c8674e29ffcb570ce2ceca44f1e567bf6 \ + --hash=sha256:e77dd455b9a16bbd2a5036a63ddbd479c19572af81b624e79ef422f929eef388 \ + --hash=sha256:e8113639f3296706fbac34a30813929e29247718e88173ad849f57ca59754924 \ + --hash=sha256:e8cd2415f372e7e5a789d743d133ae474290a90b9023197fd78f32e2dc6873e2 \ + --hash=sha256:eb2a12d704f180a902d7fa778c6d71f36ceb7b0d317f34cdc76a5d05aa1dd1df \ + --hash=sha256:ef9266d2aa545d7374938fb5c484531ef5a2ec7f2d573e62f8ce722c735685fd \ + --hash=sha256:f2a50c3c1d11cad0ebebbac357a97b26aa79d2bcaf46f256551152aa85d3a4d1 \ + --hash=sha256:f2e3b1a6bb38de0bc713edd4d612969dd250ca8b724be8d460001a387507021c \ + --hash=sha256:f952dacaa552f3bb8834908dddd500ba7d508e6ea6eb8c52eb2d28f48ca06a31 \ + --hash=sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed \ + --hash=sha256:fb8dae0b6b8b7f9e96c26fdd8121522ce5de9bb5538010870bd538683d30e9a2 \ + --hash=sha256:fbc74f42c3525ac4ffa4b89cbdd00057b6196bcefe8bce794abd42d33a018092 \ + --hash=sha256:fe659f6b5d10fb5a17f00a50eb903eb277a71ee35df4615db573c069bcf967ac + # via + # -r src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt + # pyshark +markupsafe==3.0.3 \ + --hash=sha256:0303439a41979d9e74d18ff5e2dd8c43ed6c6001fd40e5bf2e43f7bd9bbc523f \ + --hash=sha256:068f375c472b3e7acbe2d5318dea141359e6900156b5b2ba06a30b169086b91a \ + --hash=sha256:0bf2a864d67e76e5c9a34dc26ec616a66b9888e25e7b9460e1c76d3293bd9dbf \ + --hash=sha256:0db14f5dafddbb6d9208827849fad01f1a2609380add406671a26386cdf15a19 \ + --hash=sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf \ + --hash=sha256:0f4b68347f8c5eab4a13419215bdfd7f8c9b19f2b25520968adfad23eb0ce60c \ + --hash=sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175 \ + --hash=sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219 \ + --hash=sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb \ + --hash=sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6 \ + --hash=sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab \ + --hash=sha256:15d939a21d546304880945ca1ecb8a039db6b4dc49b2c5a400387cdae6a62e26 \ + --hash=sha256:177b5253b2834fe3678cb4a5f0059808258584c559193998be2601324fdeafb1 \ + --hash=sha256:1872df69a4de6aead3491198eaf13810b565bdbeec3ae2dc8780f14458ec73ce \ + --hash=sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218 \ + --hash=sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634 \ + --hash=sha256:1ba88449deb3de88bd40044603fafffb7bc2b055d626a330323a9ed736661695 \ + --hash=sha256:1cc7ea17a6824959616c525620e387f6dd30fec8cb44f649e31712db02123dad \ + --hash=sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73 \ + --hash=sha256:26a5784ded40c9e318cfc2bdb30fe164bdb8665ded9cd64d500a34fb42067b1c \ + --hash=sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe \ + --hash=sha256:2a15a08b17dd94c53a1da0438822d70ebcd13f8c3a95abe3a9ef9f11a94830aa \ + --hash=sha256:2f981d352f04553a7171b8e44369f2af4055f888dfb147d55e42d29e29e74559 \ + --hash=sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa \ + --hash=sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37 \ + --hash=sha256:3537e01efc9d4dccdf77221fb1cb3b8e1a38d5428920e0657ce299b20324d758 \ + --hash=sha256:35add3b638a5d900e807944a078b51922212fb3dedb01633a8defc4b01a3c85f \ + --hash=sha256:38664109c14ffc9e7437e86b4dceb442b0096dfe3541d7864d9cbe1da4cf36c8 \ + --hash=sha256:3a7e8ae81ae39e62a41ec302f972ba6ae23a5c5396c8e60113e9066ef893da0d \ + --hash=sha256:3b562dd9e9ea93f13d53989d23a7e775fdfd1066c33494ff43f5418bc8c58a5c \ + --hash=sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97 \ + --hash=sha256:4bd4cd07944443f5a265608cc6aab442e4f74dff8088b0dfc8238647b8f6ae9a \ + --hash=sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19 \ + --hash=sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9 \ + --hash=sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9 \ + --hash=sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc \ + --hash=sha256:591ae9f2a647529ca990bc681daebdd52c8791ff06c2bfa05b65163e28102ef2 \ + --hash=sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4 \ + --hash=sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354 \ + --hash=sha256:6b5420a1d9450023228968e7e6a9ce57f65d148ab56d2313fcd589eee96a7a50 \ + --hash=sha256:722695808f4b6457b320fdc131280796bdceb04ab50fe1795cd540799ebe1698 \ + --hash=sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9 \ + --hash=sha256:77f0643abe7495da77fb436f50f8dab76dbc6e5fd25d39589a0f1fe6548bfa2b \ + --hash=sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc \ + --hash=sha256:7be7b61bb172e1ed687f1754f8e7484f1c8019780f6f6b0786e76bb01c2ae115 \ + --hash=sha256:7c3fb7d25180895632e5d3148dbdc29ea38ccb7fd210aa27acbd1201a1902c6e \ + --hash=sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485 \ + --hash=sha256:83891d0e9fb81a825d9a6d61e3f07550ca70a076484292a70fde82c4b807286f \ + --hash=sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12 \ + --hash=sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025 \ + --hash=sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009 \ + --hash=sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d \ + --hash=sha256:949b8d66bc381ee8b007cd945914c721d9aba8e27f71959d750a46f7c282b20b \ + --hash=sha256:94c6f0bb423f739146aec64595853541634bde58b2135f27f61c1ffd1cd4d16a \ + --hash=sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5 \ + --hash=sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f \ + --hash=sha256:a320721ab5a1aba0a233739394eb907f8c8da5c98c9181d1161e77a0c8e36f2d \ + --hash=sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1 \ + --hash=sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287 \ + --hash=sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6 \ + --hash=sha256:bc51efed119bc9cfdf792cdeaa4d67e8f6fcccab66ed4bfdd6bde3e59bfcbb2f \ + --hash=sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581 \ + --hash=sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed \ + --hash=sha256:be8813b57049a7dc738189df53d69395eba14fb99345e0a5994914a3864c8a4b \ + --hash=sha256:c0c0b3ade1c0b13b936d7970b1d37a57acde9199dc2aecc4c336773e1d86049c \ + --hash=sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026 \ + --hash=sha256:c4ffb7ebf07cfe8931028e3e4c85f0357459a3f9f9490886198848f4fa002ec8 \ + --hash=sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676 \ + --hash=sha256:d2ee202e79d8ed691ceebae8e0486bd9a2cd4794cec4824e1c99b6f5009502f6 \ + --hash=sha256:d53197da72cc091b024dd97249dfc7794d6a56530370992a5e1a08983ad9230e \ + --hash=sha256:d6dd0be5b5b189d31db7cda48b91d7e0a9795f31430b7f271219ab30f1d3ac9d \ + --hash=sha256:d88b440e37a16e651bda4c7c2b930eb586fd15ca7406cb39e211fcff3bf3017d \ + --hash=sha256:de8a88e63464af587c950061a5e6a67d3632e36df62b986892331d4620a35c01 \ + --hash=sha256:df2449253ef108a379b8b5d6b43f4b1a8e81a061d6537becd5582fba5f9196d7 \ + --hash=sha256:e1c1493fb6e50ab01d20a22826e57520f1284df32f2d8601fdd90b6304601419 \ + --hash=sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795 \ + --hash=sha256:e2103a929dfa2fcaf9bb4e7c091983a49c9ac3b19c9061b6d5427dd7d14d81a1 \ + --hash=sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5 \ + --hash=sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d \ + --hash=sha256:e8fc20152abba6b83724d7ff268c249fa196d8259ff481f3b1476383f8f24e42 \ + --hash=sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe \ + --hash=sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda \ + --hash=sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e \ + --hash=sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737 \ + --hash=sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523 \ + --hash=sha256:f42d0984e947b8adf7dd6dde396e720934d12c506ce84eea8476409563607591 \ + --hash=sha256:f71a396b3bf33ecaa1626c255855702aca4d3d9fea5e051b41ac59a9c1c41edc \ + --hash=sha256:f9e130248f4462aaa8e2552d547f36ddadbeaa573879158d721bbd33dfe4743a \ + --hash=sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50 # via jinja2 -packaging==21.3 \ - --hash=sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb \ - --hash=sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522 +packaging==25.0 \ + --hash=sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 \ + --hash=sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f # via pyshark -pyparsing==3.0.9 \ - --hash=sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb \ - --hash=sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc - # via packaging pyshark==0.6 \ --hash=sha256:98e8a1ebdcbfbb6e8defd0c96736ea51bf8234339f980b15dd3545f87f5146d4 \ --hash=sha256:a424d83e0ca6224a96bbe30cd3f89d5491654d783faaaf90adaf45867a0bcb17 - # via -r requirements.txt -six==1.16.0 \ - --hash=sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 \ - --hash=sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254 - # via fire -termcolor==1.1.0 \ - --hash=sha256:1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b + # via -r src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt +termcolor==3.2.0 \ + --hash=sha256:610e6456feec42c4bcd28934a8c87a06c3fa28b01561d46aa09a9881b8622c58 \ + --hash=sha256:a10343879eba4da819353c55cb8049b0933890c2ebf9ad5d3ecd2bb32ea96ea6 # via # fire # pyshark diff --git a/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt b/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt index c3fb4270321..8b6d15562db 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt +++ b/src/stirling/source_connectors/socket_tracer/protocols/amqp/amqp_code_generator/requirements.txt @@ -1,4 +1,5 @@ -fire==0.4.0 -Jinja2==3.1.3 -pyshark==0.6 -dill==0.3.6 +fire>=0.5.0 +Jinja2>=3.1.4 +lxml>=5.0.0 +pyshark>=0.6 +dill>=0.3.8 diff --git a/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.bazel.txt b/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.bazel.txt index 8c499dda41f..95f7d695f3e 100644 --- a/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.bazel.txt +++ b/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.bazel.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile with Python 3.10 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # # pip-compile --generate-hashes --output-file=requirements.bazel.txt requirements.txt @@ -8,86 +8,76 @@ dnspython==2.6.1 \ --hash=sha256:5ef3b9680161f6fa89daf8ad451b5f1a33b18ae8a1c6778cdf4b43f08c0a6e50 \ --hash=sha256:e8f0f9c23a7b7cb99ded64e6c3a6f3e701d78f50c55e002b839dea7225cff7cc # via pymongo -pymongo==4.5.0 \ - --hash=sha256:076afa0a4a96ca9f77fec0e4a0d241200b3b3a1766f8d7be9a905ecf59a7416b \ - --hash=sha256:08819da7864f9b8d4a95729b2bea5fffed08b63d3b9c15b4fea47de655766cf5 \ - --hash=sha256:0a1f26bc1f5ce774d99725773901820dfdfd24e875028da4a0252a5b48dcab5c \ - --hash=sha256:0f4b125b46fe377984fbaecf2af40ed48b05a4b7676a2ff98999f2016d66b3ec \ - --hash=sha256:1240edc1a448d4ada4bf1a0e55550b6292420915292408e59159fd8bbdaf8f63 \ - --hash=sha256:152259f0f1a60f560323aacf463a3642a65a25557683f49cfa08c8f1ecb2395a \ - --hash=sha256:168172ef7856e20ec024fe2a746bfa895c88b32720138e6438fd765ebd2b62dd \ - --hash=sha256:1b1d7d9aabd8629a31d63cd106d56cca0e6420f38e50563278b520f385c0d86e \ - --hash=sha256:1d40ad09d9f5e719bc6f729cc6b17f31c0b055029719406bd31dde2f72fca7e7 \ - --hash=sha256:21b953da14549ff62ea4ae20889c71564328958cbdf880c64a92a48dda4c9c53 \ - --hash=sha256:23cc6d7eb009c688d70da186b8f362d61d5dd1a2c14a45b890bd1e91e9c451f2 \ - --hash=sha256:2988ef5e6b360b3ff1c6d55c53515499de5f48df31afd9f785d788cdacfbe2d3 \ - --hash=sha256:2a0aade2b11dc0c326ccd429ee4134d2d47459ff68d449c6d7e01e74651bd255 \ - --hash=sha256:2b0176f9233a5927084c79ff80b51bd70bfd57e4f3d564f50f80238e797f0c8a \ - --hash=sha256:2d4fa1b01fa7e5b7bb8d312e3542e211b320eb7a4e3d8dc884327039d93cb9e0 \ - --hash=sha256:3236cf89d69679eaeb9119c840f5c7eb388a2110b57af6bb6baf01a1da387c18 \ - --hash=sha256:33faa786cc907de63f745f587e9879429b46033d7d97a7b84b37f4f8f47b9b32 \ - --hash=sha256:37df8f6006286a5896d1cbc3efb8471ced42e3568d38e6cb00857277047b0d63 \ - --hash=sha256:3a7166d57dc74d679caa7743b8ecf7dc3a1235a9fd178654dddb2b2a627ae229 \ - --hash=sha256:3d79ae3bb1ff041c0db56f138c88ce1dfb0209f3546d8d6e7c3f74944ecd2439 \ - --hash=sha256:3e33064f1984db412b34d51496f4ea785a9cff621c67de58e09fb28da6468a52 \ - --hash=sha256:3fa3648e4f1e63ddfe53563ee111079ea3ab35c3b09cd25bc22dadc8269a495f \ - --hash=sha256:40d5f6e853ece9bfc01e9129b228df446f49316a4252bb1fbfae5c3c9dedebad \ - --hash=sha256:41771b22dd2822540f79a877c391283d4e6368125999a5ec8beee1ce566f3f82 \ - --hash=sha256:435228d3c16a375274ac8ab9c4f9aef40c5e57ddb8296e20ecec9e2461da1017 \ - --hash=sha256:44ee985194c426ddf781fa784f31ffa29cb59657b2dba09250a4245431847d73 \ - --hash=sha256:465fd5b040206f8bce7016b01d7e7f79d2fcd7c2b8e41791be9632a9df1b4999 \ - --hash=sha256:496c9cbcb4951183d4503a9d7d2c1e3694aab1304262f831d5e1917e60386036 \ - --hash=sha256:49dce6957598975d8b8d506329d2a3a6c4aee911fa4bbcf5e52ffc6897122950 \ - --hash=sha256:4c42748ccc451dfcd9cef6c5447a7ab727351fd9747ad431db5ebb18a9b78a4d \ - --hash=sha256:505f8519c4c782a61d94a17b0da50be639ec462128fbd10ab0a34889218fdee3 \ - --hash=sha256:53f2dda54d76a98b43a410498bd12f6034b2a14b6844ca08513733b2b20b7ad8 \ - --hash=sha256:56320c401f544d762fc35766936178fbceb1d9261cd7b24fbfbc8fb6f67aa8a5 \ - --hash=sha256:58a63a26a1e3dc481dd3a18d6d9f8bd1d576cd1ffe0d479ba7dd38b0aeb20066 \ - --hash=sha256:5caee7bd08c3d36ec54617832b44985bd70c4cbd77c5b313de6f7fce0bb34f93 \ - --hash=sha256:631492573a1bef2f74f9ac0f9d84e0ce422c251644cd81207530af4aa2ee1980 \ - --hash=sha256:63d8019eee119df308a075b8a7bdb06d4720bf791e2b73d5ab0e7473c115d79c \ - --hash=sha256:6422b6763b016f2ef2beedded0e546d6aa6ba87910f9244d86e0ac7690f75c96 \ - --hash=sha256:681f252e43b3ef054ca9161635f81b730f4d8cadd28b3f2b2004f5a72f853982 \ - --hash=sha256:6d64878d1659d2a5bdfd0f0a4d79bafe68653c573681495e424ab40d7b6d6d41 \ - --hash=sha256:74c0da07c04d0781490b2915e7514b1adb265ef22af039a947988c331ee7455b \ - --hash=sha256:7591a3beea6a9a4fa3080d27d193b41f631130e3ffa76b88c9ccea123f26dc59 \ - --hash=sha256:76a262c41c1a7cbb84a3b11976578a7eb8e788c4b7bfbd15c005fb6ca88e6e50 \ - --hash=sha256:77cfff95c1fafd09e940b3fdcb7b65f11442662fad611d0e69b4dd5d17a81c60 \ - --hash=sha256:8027c9063579083746147cf401a7072a9fb6829678076cd3deff28bb0e0f50c8 \ - --hash=sha256:80a167081c75cf66b32f30e2f1eaee9365af935a86dbd76788169911bed9b5d5 \ - --hash=sha256:840eaf30ccac122df260b6005f9dfae4ac287c498ee91e3e90c56781614ca238 \ - --hash=sha256:8543253adfaa0b802bfa88386db1009c6ebb7d5684d093ee4edc725007553d21 \ - --hash=sha256:89b3f2da57a27913d15d2a07d58482f33d0a5b28abd20b8e643ab4d625e36257 \ - --hash=sha256:8e559116e4128630ad3b7e788e2e5da81cbc2344dee246af44471fa650486a70 \ - --hash=sha256:9aff6279e405dc953eeb540ab061e72c03cf38119613fce183a8e94f31be608f \ - --hash=sha256:9c04b9560872fa9a91251030c488e0a73bce9321a70f991f830c72b3f8115d0d \ - --hash=sha256:9d2346b00af524757576cc2406414562cced1d4349c92166a0ee377a2a483a80 \ - --hash=sha256:a253b765b7cbc4209f1d8ee16c7287c4268d3243070bf72d7eec5aa9dfe2a2c2 \ - --hash=sha256:a8127437ebc196a6f5e8fddd746bd0903a400dc6b5ae35df672dd1ccc7170a2a \ - --hash=sha256:b25f7bea162b3dbec6d33c522097ef81df7c19a9300722fa6853f5b495aecb77 \ - --hash=sha256:b33c17d9e694b66d7e96977e9e56df19d662031483efe121a24772a44ccbbc7e \ - --hash=sha256:b4fe46b58010115514b842c669a0ed9b6a342017b15905653a5b1724ab80917f \ - --hash=sha256:b520aafc6cb148bac09ccf532f52cbd31d83acf4d3e5070d84efe3c019a1adbf \ - --hash=sha256:b5bbb87fa0511bd313d9a2c90294c88db837667c2bda2ea3fa7a35b59fd93b1f \ - --hash=sha256:b6d2a56fc2354bb6378f3634402eec788a8f3facf0b3e7d468db5f2b5a78d763 \ - --hash=sha256:bbd705d5f3c3d1ff2d169e418bb789ff07ab3c70d567cc6ba6b72b04b9143481 \ - --hash=sha256:bc5d8c3647b8ae28e4312f1492b8f29deebd31479cd3abaa989090fb1d66db83 \ - --hash=sha256:c3c3525ea8658ee1192cdddf5faf99b07ebe1eeaa61bf32821126df6d1b8072b \ - --hash=sha256:c9a9a39b7cac81dca79fca8c2a6479ef4c7b1aab95fad7544cc0e8fd943595a2 \ - --hash=sha256:cd4c8d6aa91d3e35016847cbe8d73106e3d1c9a4e6578d38e2c346bfe8edb3ca \ - --hash=sha256:cf62da7a4cdec9a4b2981fcbd5e08053edffccf20e845c0b6ec1e77eb7fab61d \ - --hash=sha256:d67225f05f6ea27c8dc57f3fa6397c96d09c42af69d46629f71e82e66d33fa4f \ - --hash=sha256:dfcd2b9f510411de615ccedd47462dae80e82fdc09fe9ab0f0f32f11cf57eeb5 \ - --hash=sha256:e1f61355c821e870fb4c17cdb318669cfbcf245a291ce5053b41140870c3e5cc \ - --hash=sha256:e249190b018d63c901678053b4a43e797ca78b93fb6d17633e3567d4b3ec6107 \ - --hash=sha256:e2654d1278384cff75952682d17c718ecc1ad1d6227bb0068fd826ba47d426a5 \ - --hash=sha256:e57d859b972c75ee44ea2ef4758f12821243e99de814030f69a3decb2aa86807 \ - --hash=sha256:e5a27f348909235a106a3903fc8e70f573d89b41d723a500869c6569a391cff7 \ - --hash=sha256:ead4f19d0257a756b21ac2e0e85a37a7245ddec36d3b6008d5bfe416525967dc \ - --hash=sha256:f076b779aa3dc179aa3ed861be063a313ed4e48ae9f6a8370a9b1295d4502111 \ - --hash=sha256:f1bb3a62395ffe835dbef3a1cbff48fbcce709c78bd1f52e896aee990928432b \ - --hash=sha256:f2227a08b091bd41df5aadee0a5037673f691e2aa000e1968b1ea2342afc6880 \ - --hash=sha256:f3754acbd7efc7f1b529039fcffc092a15e1cf045e31f22f6c9c5950c613ec4d \ - --hash=sha256:fe48f50fb6348511a3268a893bfd4ab5f263f5ac220782449d03cd05964d1ae7 \ - --hash=sha256:fff7d17d30b2cd45afd654b3fc117755c5d84506ed25fda386494e4e0a3416e1 +pymongo==4.15.5 \ + --hash=sha256:01227e6bc75a949f7d3303005e27707a0e14a941dc63a183cd449c80e7853fe3 \ + --hash=sha256:092ed5f3a53b546f8350a77976dabb0a11105d6b7c0f86a39934464168c97cff \ + --hash=sha256:099d3e2dddfc75760c6a8fadfb99c1e88824a99c2c204a829601241dff9da049 \ + --hash=sha256:1151968ab90db146f0591b6c7db27ce4f73c7ffa0bbddc1d7fb7cb14c9f0b967 \ + --hash=sha256:1202b3e5357b161acb7b7cc98e730288a5c15544e5ef7254b33931cb9a27c36e \ + --hash=sha256:1b545dcf66a9f06e9b501bfb0438e1eb9af67336e8a5cf36c4bc0a5d3fbe7a37 \ + --hash=sha256:1e2623deb5be1b5bc23319ba5ab435b5a526a1e92739ff0e0e9048823f295460 \ + --hash=sha256:1e4070593ea98bc6def3c84cfc6de28da289e4ed944bb20845f9de9beefb0921 \ + --hash=sha256:1ecc544f515f828f05d3c56cd98063ba3ef8b75f534c63de43306d59f1e93fcd \ + --hash=sha256:1f410694fdd76631ead7df6544cdeadaf2407179196c3642fced8e48bb21d0a6 \ + --hash=sha256:20af63218ae42870eaee31fb8cc4ce9e3af7f04ea02fc98ad751fb7a9c8d7be3 \ + --hash=sha256:20d9c11625392f1f8dec7688de5ce344e110ca695344efa313ae4839f13bd017 \ + --hash=sha256:21d17bb2934b0640863361c08dd06991f128a97f9bee19425a499227be9ae6b4 \ + --hash=sha256:266aa37e3673e5dcfdd359a81d27131fc133e49cf8e5d9f9f27a5845fac2cd1f \ + --hash=sha256:2883da6bd0545cc2f12672f6a609b33d48e099a220872ca2bf9bf29fe96a32c3 \ + --hash=sha256:2b736226f9001bbbd02f822acb9b9b6d28319f362f057672dfae2851f7da6125 \ + --hash=sha256:2fc32b354a608ec748d89bbe236b74b967890667eea1af54e92dfd8fbf26df52 \ + --hash=sha256:397fa40b6d331949debd3e0892c420a81a44e7e0f5a570661910b0c57a7e7431 \ + --hash=sha256:3a45876c5c2ab44e2a249fb542eba2a026f60d6ab04c7ef3924eae338d9de790 \ + --hash=sha256:3a8d6bf2610abe0c97c567cf98bf5bba3e90ccc93cc03c9dde75fa11e4267b42 \ + --hash=sha256:3b75ec7006471299a571d6db1c5609ea4aa9c847a701e9b2953a8ede705d82db \ + --hash=sha256:3be2336715924be3a861b5e40c634376fd6bfe6dd1892d391566aa5a88a31307 \ + --hash=sha256:3c006cbaa4b40d296dd2bb8828976866c876ead4c39032b761dcf26f1ba56fde \ + --hash=sha256:41891b45f6ff1e23cfd1b7fbe40286664ad4507e2d2aa61c6d8c40eb6e11dded \ + --hash=sha256:45fec063f5672e6173bcb09b492431e3641cc74399c2b996fcb995881c2cac61 \ + --hash=sha256:50505181365eba5d4d35c462870b3614c8eddd0b2407c89377c1a59380640dd9 \ + --hash=sha256:524a8a593ae2eb1ec6db761daf0c03f98824e9882ab7df3d458d0c76c7ade255 \ + --hash=sha256:552670f0c8bff103656d4e4b1f2c018f789c9de03f7615ed5e547d5b1b83cda0 \ + --hash=sha256:57157a4b936e28e2fbe7017b2f6a751da5e284675cab371f2c596d4e0e4f58f3 \ + --hash=sha256:5762f6445a611b34eb500260303483520bd73e6816a39503378444d551e92f7c \ + --hash=sha256:576a7d4b99465d38112c72f7f3d345f9d16aeeff0f923a3b298c13e15ab4f0ad \ + --hash=sha256:5a3974236cb842b4ef50a5a6bfad9c7d83a713af68ea3592ba240bbcb863305a \ + --hash=sha256:5e57968139d81367117ed7b75d921445a575d4d7e61536f5e860475df92ac0a9 \ + --hash=sha256:60ea9f07fbbcc7c88f922082eb27436dce6756730fdef76a3a9b4c972d0a57a3 \ + --hash=sha256:63af710e9700dbf91abccf119c5f5533b9830286d29edb073803d3b252862c0d \ + --hash=sha256:647118a58dca7d3547714fc0b383aebf81f5852f4173dfd77dd34e80eea9d29b \ + --hash=sha256:649cb906882c4058f467f334fb277083998ba5672ffec6a95d6700db577fd31a \ + --hash=sha256:66c7b332532e0f021d784d04488dbf7ed39b7e7d6d5505e282ec8e9cf1025791 \ + --hash=sha256:73fa8a7eee44fd95ba7d5cf537340ff3ff34efeb1f7d6790532d0a6ed4dee575 \ + --hash=sha256:7631304106487480ebbd8acbe44ff1e69d1fdc27e83d9753dc1fd227cea10761 \ + --hash=sha256:7a476310f3c9bdba08ab4b1d4309ee308a1b9e22823210fd7b48c83709e95ac4 \ + --hash=sha256:7c285614a3e8570b03174a25db642e449b0e7f77a6c9e487b73b05c9bf228ee6 \ + --hash=sha256:816e66116f0ef868eff0463a8b28774af8b547466dbad30c8e82bf0325041848 \ + --hash=sha256:83c05bea05e151754357f8e6bbb80d5accead5110dc58f64e283173c71ec9de2 \ + --hash=sha256:853ec7da97642eabaf94d3de4453a86365729327d920af167bf14b2e87b24dce \ + --hash=sha256:a01a2054d50b50c121c720739a2216d855c48726b0002894de9b991cdd68a2a5 \ + --hash=sha256:aad6efe82b085bf77cec2a047ded2c810e93eced3ccf1a8e3faec3317df3cd52 \ + --hash=sha256:aae7d96f7b2b1a2753349130797543e61e93ee2ace8faa7fbe0565e2eb5d815f \ + --hash=sha256:acc46a9e47efad8c5229e644a3774169013a46ee28ac72d1fa4edd67c0b7ee9b \ + --hash=sha256:addaaa62c357e8de3d0fca2fce1acf5b72f4bbf4e7bb35ce1dd68e40e73880f9 \ + --hash=sha256:b8c46765d6ac5727a899190aacdeec7a57f8c93346124ddd7e12633b573e2e65 \ + --hash=sha256:b8c6813110c0d9fde18674b7262f47a2270ae46c0ddd05711e6770caa3c9a3fb \ + --hash=sha256:b9836c28ba350d8182a51f32ef9bb29f0c40e82ba1dfb9e4371cd4d94338a55d \ + --hash=sha256:ba0e75a390334221744e2666fd2d4c82419b580c9bc8d6e0d2d61459d263f3af \ + --hash=sha256:be040c8cdaf9c2d5ae9ab60a67ecab453ec19d9ccd457a678053fdceab5ee4c8 \ + --hash=sha256:c33477af1a50d1b4d86555e098fc2cf5992d839ad538dea0c00a8682162b7a75 \ + --hash=sha256:c3fc24cb1f4ec60ed83162d4bba0c26abc6c9ae78c928805583673f3b3ea6984 \ + --hash=sha256:ccc801f6d71ebee2ec2fb3acc64b218fa7cdb7f57933b2f8eee15396b662a0a0 \ + --hash=sha256:ce21e3dc5939b83d03f871090d83ac29fef055bd057f8d3074b6cad10f86b04c \ + --hash=sha256:d41288ca2a3eb9ac7c8cad4ea86ef8d63b69dc46c9b65c2bbd35331ec2a0fc57 \ + --hash=sha256:d5710c0e04c37932984241282d3011304c35eb798a0026d84e1bd3525266d026 \ + --hash=sha256:d65df9c015e33f74ea9d1abf474971abca21e347a660384f8227dbdab75a33ca \ + --hash=sha256:db5689bd2c1cf1dc4f4e94ec8a012ea521f9892a85b3c694fa9ace7cdc2d0416 \ + --hash=sha256:defe93944526b1774265c16acf014689cb1b0b18eb84a7b370083b214f9e18cd \ + --hash=sha256:e2a34a7391f4cc54fc584e49db6f7c3929221a9da08b3af2d2689884a5943843 \ + --hash=sha256:e4a48fc5c712b3db85c9987cfa7fde0366b7930018de262919afd9e52cfbc375 \ + --hash=sha256:e6b30defa4a52d3698cd84d608963a8932f7e9b6ec5130087e7082552ac685e5 \ + --hash=sha256:e7ceb35c41b86711a1b284c604e2b944a2d46cb1b8dd3f8b430a9155491378f2 \ + --hash=sha256:e8ec48d1db9f44c737b13be4299a1782d5fde3e75423acbbbe927cb37ebbe87d \ + --hash=sha256:f043abdf20845bf29a554e95e4fe18d7d7a463095d6a1547699a12f80da91e02 \ + --hash=sha256:f22eeb86861cf7b8ee6886361d52abb88e3cd96c6f6d102e45e2604fc6e9e316 # via -r requirements.txt diff --git a/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.txt b/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.txt index 78cf745f085..b181c9fccd0 100644 --- a/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.txt +++ b/src/stirling/source_connectors/socket_tracer/testing/containers/mongodb/requirements.txt @@ -1 +1 @@ -pymongo==4.5.0 +pymongo==4.15.5 From aa730da991aefaab0abab8e92fbf6b54e612175d Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Tue, 9 Dec 2025 12:02:55 -0800 Subject: [PATCH 06/20] Replace raw use of bazel with bazelisk (#2286) Summary: Replace raw use of bazel with bazelisk Using bazelisk makes it possible to trigger builds against new bazel versions. This will be leveraged as part of migrating to bazel 6.5.0 and later to bazel 7. Relevant Issues: #2282 Type of change: /kind cleanup Test Plan: Build should pass --------- Signed-off-by: Dom Del Nano --- docker.properties | 8 ++++---- tools/chef/base_image_version.txt | 2 +- tools/chef/cookbooks/px_dev/attributes/linux.rb | 8 ++++---- tools/chef/cookbooks/px_dev/attributes/mac_os_x.rb | 8 ++++---- tools/chef/cookbooks/px_dev/recipes/linters.rb | 4 ++-- tools/chef/cookbooks/px_dev/templates/bazel.erb | 4 ++-- tools/chef/cookbooks/px_dev_extras/attributes/default.rb | 7 ++++--- tools/chef/cookbooks/px_dev_extras/recipes/default.rb | 4 ++-- 8 files changed, 23 insertions(+), 22 deletions(-) diff --git a/docker.properties b/docker.properties index 82ea19c1351..bb7696c727f 100644 --- a/docker.properties +++ b/docker.properties @@ -1,4 +1,4 @@ -DOCKER_IMAGE_TAG=202508131912 -LINTER_IMAGE_DIGEST=db3238ae3ab3f0fe307aef8920a29b5f0df808248c16a1650baa228c4cefbd4c -DEV_IMAGE_DIGEST=42c7f00b68db0835c266c5aceb6f67ec7e43342336f95218af14e19858e08854 -DEV_IMAGE_WITH_EXTRAS_DIGEST=bbcd6dc6d269231163be9782d42bdf2b2855a34ab384a853fa67e13e946948ec +DOCKER_IMAGE_TAG=202512082352 +LINTER_IMAGE_DIGEST=441fc5a65697dab0b38627d5afde9e38da6812f1a5b98732b224161c23238e73 +DEV_IMAGE_DIGEST=cac2e8a1c3e70dde4e5089b2383b2e11cc022af467ee430c12416eb42066fbb7 +DEV_IMAGE_WITH_EXTRAS_DIGEST=e84f82d62540e1ca72650f8f7c9c4fe0b32b64a33f04cf0b913b9961527c9e30 diff --git a/tools/chef/base_image_version.txt b/tools/chef/base_image_version.txt index f8fcc96b15e..ebb1d31c4f4 100644 --- a/tools/chef/base_image_version.txt +++ b/tools/chef/base_image_version.txt @@ -1 +1 @@ -202503281433 +202512091427 diff --git a/tools/chef/cookbooks/px_dev/attributes/linux.rb b/tools/chef/cookbooks/px_dev/attributes/linux.rb index 2087ba5dbfb..7af82f14002 100644 --- a/tools/chef/cookbooks/px_dev/attributes/linux.rb +++ b/tools/chef/cookbooks/px_dev/attributes/linux.rb @@ -22,10 +22,10 @@ default['owner'] = 'root' default['group'] = 'root' -default['bazel']['download_path'] = - "https://github.com/bazelbuild/bazel/releases/download/6.2.0/bazel-6.2.0-linux-x86_64" -default['bazel']['sha256'] = - '3d11c26fb9ba12c833844450bb90165b176e8a19cb5cf5923f3cec855837f17c' +default['bazelisk']['download_path'] = + "https://github.com/bazelbuild/bazelisk/releases/download/v1.27.0/bazelisk-linux-amd64" +default['bazelisk']['sha256'] = + 'e1508323f347ad1465a887bc5d2bfb91cffc232d11e8e997b623227c6b32fb76' default['codecov']['download_path'] = 'https://uploader.codecov.io/v0.2.3/linux/codecov' diff --git a/tools/chef/cookbooks/px_dev/attributes/mac_os_x.rb b/tools/chef/cookbooks/px_dev/attributes/mac_os_x.rb index f4b429f74ba..0df3d4e58ac 100644 --- a/tools/chef/cookbooks/px_dev/attributes/mac_os_x.rb +++ b/tools/chef/cookbooks/px_dev/attributes/mac_os_x.rb @@ -23,10 +23,10 @@ default['owner'] = node['current_user'] default['group'] = 'wheel' -default['bazel']['download_path'] = - "https://github.com/bazelbuild/bazel/releases/download/6.2.0/bazel-6.2.0-darwin-x86_64" -default['bazel']['sha256'] = - 'd2356012843ce3a2fbba89f88191673a6ad2f7716cc46ad43ec1bcee78d36b44' +default['bazelisk']['download_path'] = + "https://github.com/bazelbuild/bazelisk/releases/download/v1.27.0/bazelisk-darwin-amd64" +default['bazelisk']['sha256'] = + '8fcd7ba828f673ba4b1529425e01e15ac42599ef566c17f320d8cbfe7b96a167' default['codecov']['download_path'] = 'https://uploader.codecov.io/v0.2.3/macos/codecov' diff --git a/tools/chef/cookbooks/px_dev/recipes/linters.rb b/tools/chef/cookbooks/px_dev/recipes/linters.rb index 0ec7775a9a1..d59050bd2bc 100644 --- a/tools/chef/cookbooks/px_dev/recipes/linters.rb +++ b/tools/chef/cookbooks/px_dev/recipes/linters.rb @@ -47,8 +47,8 @@ action :create end -common_remote_bin 'bazel' do - bin_name 'bazel_core' +common_remote_bin 'bazelisk' do + bin_name 'bazelisk' end if platform_family?('debian') diff --git a/tools/chef/cookbooks/px_dev/templates/bazel.erb b/tools/chef/cookbooks/px_dev/templates/bazel.erb index 5b3b9573ffa..eef1189bed0 100755 --- a/tools/chef/cookbooks/px_dev/templates/bazel.erb +++ b/tools/chef/cookbooks/px_dev/templates/bazel.erb @@ -19,7 +19,7 @@ # * Adds a --config=clang by default if it's missing from the command line. # Check if this is this pixie repo, otherwise just passthrough to bazel_core. if ! grep 'workspace(name\s=\s"px")' "$(git rev-parse --show-toplevel 2> /dev/null)/WORKSPACE" &> /dev/null; then - /opt/px_dev/bin/bazel_core "$@" + /opt/px_dev/bin/bazelisk "$@" exit $? fi; @@ -36,4 +36,4 @@ fi; cmd=$1 shift -/opt/px_dev/bin/bazel_core ${cmd:+"$cmd"} ${config:+"$config"} "$@" +/opt/px_dev/bin/bazelisk ${cmd:+"$cmd"} ${config:+"$config"} "$@" diff --git a/tools/chef/cookbooks/px_dev_extras/attributes/default.rb b/tools/chef/cookbooks/px_dev_extras/attributes/default.rb index 5b672f6b597..66c7a0e5840 100644 --- a/tools/chef/cookbooks/px_dev_extras/attributes/default.rb +++ b/tools/chef/cookbooks/px_dev_extras/attributes/default.rb @@ -14,6 +14,7 @@ # # SPDX-License-Identifier: Apache-2.0 -default['bazel']['zsh_completions'] = - "https://raw.githubusercontent.com/bazelbuild/bazel/6.0.0/scripts/zsh_completion/_bazel" -default['bazel']['zcomp_sha256'] = '4094dc84add2f23823bc341186adf6b8487fbd5d4164bd52d98891c41511eba4' +# Fetch bazel version from Pixie's .bazelversion on main branch +bazel_version = Chef::HTTP.new('https://raw.githubusercontent.com').get('/pixie-io/pixie/main/.bazelversion').strip +default['bazel']['zsh_completions'] = + "https://raw.githubusercontent.com/bazelbuild/bazel/#{bazel_version}/scripts/zsh_completion/_bazel" diff --git a/tools/chef/cookbooks/px_dev_extras/recipes/default.rb b/tools/chef/cookbooks/px_dev_extras/recipes/default.rb index d74de0e7f5f..9e98de95d9e 100644 --- a/tools/chef/cookbooks/px_dev_extras/recipes/default.rb +++ b/tools/chef/cookbooks/px_dev_extras/recipes/default.rb @@ -42,8 +42,8 @@ remote_file '/usr/local/share/zsh/site-functions/_bazel' do source node['bazel']['zsh_completions'] - mode 0644 - checksum node['bazel']['zcomp_sha256'] + mode '0644' + action :create end common_remote_bin 'faq' From defe05020a985907adf0a977f9cc201e5ddf8fd8 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Tue, 9 Dec 2025 13:58:02 -0800 Subject: [PATCH 07/20] Upgrade googletest and benchmark (#2291) Summary: Upgrade googletest and benchmark Many of our dependencies use googletest and google benchmark. This preemptively upgrades them to a known good version prior to one of the larger bazel 7 dependency updates. Relevant Issues: #2282 Type of change: /kind cleanup Test Plan: Build should pass --------- Signed-off-by: Dom Del Nano --- bazel/repository_locations.bzl | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 3252648e6d7..0a2df3dcb80 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -237,9 +237,9 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/abseil/abseil-cpp/archive/refs/tags/20220623.1.tar.gz"], ), com_google_benchmark = dict( - sha256 = "3aff99169fa8bdee356eaa1f691e835a6e57b1efeadb8a0f9f228531158246ac", - strip_prefix = "benchmark-1.7.0", - urls = ["https://github.com/google/benchmark/archive/refs/tags/v1.7.0.tar.gz"], + sha256 = "d26789a2b46d8808a48a4556ee58ccc7c497fcd4c0af9b90197674a81e04798a", + strip_prefix = "benchmark-1.8.5", + urls = ["https://github.com/google/benchmark/archive/refs/tags/v1.8.5.tar.gz"], ), com_google_double_conversion = dict( sha256 = "3dbcdf186ad092a8b71228a5962009b5c96abde9a315257a3452eb988414ea3b", @@ -257,9 +257,9 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/google/flatbuffers/archive/refs/tags/v2.0.6.tar.gz"], ), com_google_googletest = dict( - sha256 = "81964fe578e9bd7c94dfdb09c8e4d6e6759e19967e397dbea48d1c10e45d0df2", - strip_prefix = "googletest-release-1.12.1", - urls = ["https://github.com/google/googletest/archive/refs/tags/release-1.12.1.tar.gz"], + sha256 = "65fab701d9829d38cb77c14acdc431d2108bfdbf8979e40eb8ae567edf10b27c", + strip_prefix = "googletest-1.17.0", + urls = ["https://github.com/google/googletest/archive/refs/tags/v1.17.0.tar.gz"], ), com_google_protobuf = dict( sha256 = "63c5539a8506dc6bccd352a857cea106e0a389ce047a3ff0a78fe3f8fede410d", From b81253e566f20876f3b1a01c510b76728bbe9312 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Wed, 10 Dec 2025 12:26:13 -0800 Subject: [PATCH 08/20] Fix openssl bpf test failure introduced by python 3.12 upgrade (#2292) --- src/stirling/source_connectors/socket_tracer/BUILD.bazel | 2 +- .../socket_tracer/openssl_trace_bpf_test.cc | 8 +++++--- .../socket_tracer/testing/container_images/BUILD.bazel | 4 ++-- ...python_3_10_container.h => python_min_310_container.h} | 4 ++-- .../socket_tracer/testing/containers/ssl/https_server.py | 6 +++--- 5 files changed, 13 insertions(+), 11 deletions(-) rename src/stirling/source_connectors/socket_tracer/testing/container_images/{python_3_10_container.h => python_min_310_container.h} (94%) diff --git a/src/stirling/source_connectors/socket_tracer/BUILD.bazel b/src/stirling/source_connectors/socket_tracer/BUILD.bazel index 47301fffdb5..8eae06c9bc2 100644 --- a/src/stirling/source_connectors/socket_tracer/BUILD.bazel +++ b/src/stirling/source_connectors/socket_tracer/BUILD.bazel @@ -461,7 +461,7 @@ pl_cc_bpf_test( "//src/stirling/source_connectors/socket_tracer/testing/container_images:node_12_3_1_container", "//src/stirling/source_connectors/socket_tracer/testing/container_images:node_14_18_1_alpine_container", "//src/stirling/source_connectors/socket_tracer/testing/container_images:node_client_container", - "//src/stirling/source_connectors/socket_tracer/testing/container_images:python_3_10_container", + "//src/stirling/source_connectors/socket_tracer/testing/container_images:python_min_310_container", "//src/stirling/source_connectors/socket_tracer/testing/container_images:ruby_container", "//src/stirling/testing:cc_library", ], diff --git a/src/stirling/source_connectors/socket_tracer/openssl_trace_bpf_test.cc b/src/stirling/source_connectors/socket_tracer/openssl_trace_bpf_test.cc index 92e25118a3f..96f3b84505a 100644 --- a/src/stirling/source_connectors/socket_tracer/openssl_trace_bpf_test.cc +++ b/src/stirling/source_connectors/socket_tracer/openssl_trace_bpf_test.cc @@ -34,7 +34,7 @@ #include "src/stirling/source_connectors/socket_tracer/testing/container_images/node_12_3_1_container.h" #include "src/stirling/source_connectors/socket_tracer/testing/container_images/node_14_18_1_alpine_container.h" #include "src/stirling/source_connectors/socket_tracer/testing/container_images/node_client_container.h" -#include "src/stirling/source_connectors/socket_tracer/testing/container_images/python_3_10_container.h" +#include "src/stirling/source_connectors/socket_tracer/testing/container_images/python_min_310_container.h" #include "src/stirling/source_connectors/socket_tracer/testing/container_images/ruby_container.h" #include "src/stirling/source_connectors/socket_tracer/testing/protocol_checkers.h" #include "src/stirling/source_connectors/socket_tracer/testing/socket_trace_bpf_test_fixture.h" @@ -86,7 +86,9 @@ class Node14_18_1AlpineContainerWrapper int32_t PID() const { return process_pid(); } }; -class Python310ContainerWrapper : public ::px::stirling::testing::Python310Container { +// Python 3.10 and later use SSL_write_ex and SSL_read_ex. This test case is itended to cover +// this case. See https://github.com/pixie-io/pixie/issues/1113 for more details. +class PythonMin310ContainerWrapper : public ::px::stirling::testing::PythonMin310Container { public: int32_t PID() const { return process_pid(); } }; @@ -181,7 +183,7 @@ http::Record GetExpectedHTTPRecord() { using OpenSSLServerImplementations = Types; TYPED_TEST_SUITE(OpenSSLTraceTest, OpenSSLServerImplementations); diff --git a/src/stirling/source_connectors/socket_tracer/testing/container_images/BUILD.bazel b/src/stirling/source_connectors/socket_tracer/testing/container_images/BUILD.bazel index fb6c1a02e56..aca663b0db9 100644 --- a/src/stirling/source_connectors/socket_tracer/testing/container_images/BUILD.bazel +++ b/src/stirling/source_connectors/socket_tracer/testing/container_images/BUILD.bazel @@ -318,9 +318,9 @@ pl_cc_test_library( ) pl_cc_test_library( - name = "python_3_10_container", + name = "python_min_310_container", srcs = [], - hdrs = ["python_3_10_container.h"], + hdrs = ["python_min_310_container.h"], data = [ "//src/stirling/source_connectors/socket_tracer/testing/containers/ssl:python_min_310_https_server.tar", ], diff --git a/src/stirling/source_connectors/socket_tracer/testing/container_images/python_3_10_container.h b/src/stirling/source_connectors/socket_tracer/testing/container_images/python_min_310_container.h similarity index 94% rename from src/stirling/source_connectors/socket_tracer/testing/container_images/python_3_10_container.h rename to src/stirling/source_connectors/socket_tracer/testing/container_images/python_min_310_container.h index c0cb2952b80..0b3ce57f9f1 100644 --- a/src/stirling/source_connectors/socket_tracer/testing/container_images/python_3_10_container.h +++ b/src/stirling/source_connectors/socket_tracer/testing/container_images/python_min_310_container.h @@ -27,9 +27,9 @@ namespace px { namespace stirling { namespace testing { -class Python310Container : public ContainerRunner { +class PythonMin310Container : public ContainerRunner { public: - Python310Container() + PythonMin310Container() : ContainerRunner(::px::testing::BazelRunfilePath(kBazelImageTar), kContainerNamePrefix, kReadyMessage) {} diff --git a/src/stirling/source_connectors/socket_tracer/testing/containers/ssl/https_server.py b/src/stirling/source_connectors/socket_tracer/testing/containers/ssl/https_server.py index fbcf9c53312..f5b547a4d03 100644 --- a/src/stirling/source_connectors/socket_tracer/testing/containers/ssl/https_server.py +++ b/src/stirling/source_connectors/socket_tracer/testing/containers/ssl/https_server.py @@ -49,8 +49,8 @@ def do_GET(self): httpd = HTTPServer(('localhost', 443), MyRequestHandler) -httpd.socket = ssl.wrap_socket(httpd.socket, - keyfile="/etc/ssl/server.key", - certfile='/etc/ssl/server.crt', server_side=True) +ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) +ssl_context.load_cert_chain(certfile='/etc/ssl/server.crt', keyfile="/etc/ssl/server.key") +httpd.socket = ssl_context.wrap_socket(httpd.socket, server_side=True) httpd.serve_forever() From f4e30ef78c991fbf8e59615c843c0e0fcfdb219d Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Thu, 11 Dec 2025 20:29:51 -0800 Subject: [PATCH 09/20] Increase ASAN short test timeout to address flaky tests (#2294) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Summary: Increase ASAN short test timeout to address flaky tests The following tests are frequently hitting the 2-minute Bazel timeout on ASAN builds: - `//src/vizier/services/agent/shared/manager:heartbeat_test` - `//src/vizier/services/agent/shared/manager:registration_test` - `//src/carnot/builtins:collections_test` BuildBuddy history from the main branch shows these tests are running up against the timeout threshold (see screenshot below). I believe BuildBuddy is under reporting the issues seen since builds are also seeing BEP API timeouts. Screenshot 2025-12-10 at 12 05 55 PM ``` //src/vizier/services/agent/shared/manager:heartbeat_test TIMEOUT in 120.5s /github/home/.cache/bazel/_bazel_root/56ec069a32c4abebc78228236a835895/execroot/px/bazel-out/k8-dbg/testlogs/src/vizier/services/agent/shared/manager/heartbeat_test/test.log //src/vizier/services/agent/shared/manager:registration_test TIMEOUT in 120.5s /github/home/.cache/bazel/_bazel_root/56ec069a32c4abebc78228236a835895/execroot/px/bazel-out/k8-dbg/testlogs/src/vizier/services/agent/shared/manager/registration_test/test.log [ ... ] ERROR: The Build Event Protocol upload timed out. com.google.common.util.concurrent.TimeoutFuture$TimeoutFutureException: Timed out: NonCancellationPropagatingFuture@6ce6bba6[status=PENDING, info=[delegate=[SettableFuture@29e4285e[status=PENDING]]]] Bazel returned code 38, ignoring... ``` This PR increases the short test timeout to unblock ongoing Bazel 7 upgrade work and prevent unrelated PRs from failing due to these timeouts. Relevant Issues: #2295 Type of change: /kind bugfix Test Plan: Build succeeds --------- Signed-off-by: Dom Del Nano --- .bazelrc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.bazelrc b/.bazelrc index 86182129958..8f966db78f1 100644 --- a/.bazelrc +++ b/.bazelrc @@ -143,7 +143,8 @@ test:gcc --config=tmp-sandbox build:asan --config=clang build:asan --//bazel:sanitizer=asan build:asan --features=asan -build:asan --test_timeout="120,600,1800,3600" +# TODO(#2295): Revert to lower timeouts once ASAN performance is improved. +build:asan --test_timeout="180,600,1800,3600" build:asan --define PL_CONFIG_ASAN=1 build:asan --define tcmalloc=disabled build:asan --build_tag_filters=-no_asan From 521c0e2f297c1686ebe483c6061d8f02c26a83cc Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Mon, 15 Dec 2025 15:00:49 -0500 Subject: [PATCH 10/20] Fix build issues with missing `rules_docker` loader binary (#2300) Summary: Fix build issues with missing `rules_docker` loader binary The `rules_docker` repository moved its image pulling binaries from storage.googleapis.com to mirror.bazel.build. Last week, the storage.googleapis.com binaries were removed causing existing builds to break. This upgrades `rules_docker` to a version that includes the [new URLs](https://github.com/bazelbuild/rules_docker/issues/2291#issuecomment-3655077578) for the loader binaries. Relevant Issues: N/A Type of change: /kind bugfix Test Plan: Build succeeds Signed-off-by: Dom Del Nano --- bazel/repository_locations.bzl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 0a2df3dcb80..167b34b6b27 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -416,8 +416,9 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/bazelbuild/rules_closure/archive/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz"], ), io_bazel_rules_docker = dict( - sha256 = "b1e80761a8a8243d03ebca8845e9cc1ba6c82ce7c5179ce2b295cd36f7e394bf", - urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.25.0/rules_docker-v0.25.0.tar.gz"], + sha256 = "3b025c87cbbb7a579f12c11d8cf0e89878c1d98bd3be69558b0859d24e60cd74", + strip_prefix = "rules_docker-0e9c3b068d05f20adf7ccdea486fcb27e71593f3", + urls = ["https://github.com/bazelbuild/rules_docker/archive/0e9c3b068d05f20adf7ccdea486fcb27e71593f3.tar.gz"], ), io_bazel_rules_go = dict( sha256 = "f74c98d6df55217a36859c74b460e774abc0410a47cc100d822be34d5f990f16", From a507457029026e993360ab43f9480f811d35b5c8 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Tue, 16 Dec 2025 12:17:22 -0500 Subject: [PATCH 11/20] Upgrade bazel to v6.5.0, upgrade protobuf, tensorflow and dependent deps (#2290) Summary: Upgrade Bazel from 6.2.0 to 6.5.0 along with protobuf, tensorflow, and related dependencies. This is a coordinated upgrade since these dependencies have hard interdependencies that make incremental upgrades difficult. Key changes - Upgrade Bazel from 6.2.0 to 6.5.0 (required by these new dependencies) - Protobuf upgrade with compatibility patches for text format handling and JavaScript generation - TensorFlow upgrade with patches to disable GPU/LLVM/Python features. The GPU disable patch will not be necessary as TensorFlow's fallback logic will work with Bazel 7 - gRPC-web upgrade to 2.0.2 and replacement of the vendored `protoc-gen-grpc-web` with a Bazel repository - Flatbuffers patched to remove rules_js dependency (this upgrade is required by TensorFlow v2.20.0) - absl upgrade (causes transitive header changes) - Regenerated TypeScript protobuf bindings for the UI I attempted to split this into a smaller change in #2296. TensorFlow has a tight dependency on protobuf, which prevented that attempt from working. I'm open to other ideas on how to split this up, but so far this seemed like the best balance with #2293 and #2297 to follow to complete the Bazel 7 migration. Relevant Issues: #2282 Type of change: /kind cleanup Test Plan: Build passes --------- Signed-off-by: Dom Del Nano --- .bazelversion | 2 +- .../flatbuffers_remove_rules_js_use.patch | 35 + .../grpc-web_protobuf_v30_support.patch | 409 ++++ bazel/external/grpc_go_toolchain.patch | 8 +- bazel/external/grpc_test_visibility.patch | 13 - bazel/external/protobuf_javascript.patch | 19 +- bazel/external/protobuf_text_format.patch | 68 +- bazel/external/protobuf_warning.patch | 16 +- .../tensorflow_disable_gpu_bazel_6.x.patch | 65 + bazel/external/tensorflow_disable_llvm.patch | 74 +- bazel/external/tensorflow_disable_py.patch | 379 +++- bazel/grpc_web.bzl | 4 +- bazel/proto_compile.bzl | 2 +- bazel/repositories.bzl | 21 +- bazel/repository_locations.bzl | 59 +- src/carnot/exec/BUILD.bazel | 2 +- src/carnot/exec/ml/BUILD.bazel | 4 +- src/carnot/exec/ml/coreset.h | 2 +- src/carnot/exec/ml/eigen_test_utils.h | 2 +- src/carnot/exec/ml/sampling.cc | 2 +- src/carnot/exec/ml/sampling.h | 2 +- .../e2e_tests/stirling_wrapper_size_test.cc | 2 +- .../socket_tracer/uprobe_manager.h | 1 + src/ui/package.json | 4 +- src/ui/src/api/vizier-grpc-client.ts | 6 +- .../generated/VizierapiServiceClientPb.ts | 65 +- src/ui/src/types/generated/vizierapi_pb.d.ts | 334 +-- src/ui/src/types/generated/vizierapi_pb.js | 415 ++-- src/ui/yarn.lock | 20 +- third_party/protoc-gen-grpc-web/BUILD.bazel | 27 - third_party/protoc-gen-grpc-web/LICENSE | 205 -- third_party/protoc-gen-grpc-web/README.md | 6 - .../protoc-gen-grpc-web/grpc_generator.cc | 1818 ----------------- 33 files changed, 1462 insertions(+), 2629 deletions(-) create mode 100644 bazel/external/flatbuffers_remove_rules_js_use.patch create mode 100644 bazel/external/grpc-web_protobuf_v30_support.patch delete mode 100644 bazel/external/grpc_test_visibility.patch create mode 100644 bazel/external/tensorflow_disable_gpu_bazel_6.x.patch delete mode 100644 third_party/protoc-gen-grpc-web/BUILD.bazel delete mode 100644 third_party/protoc-gen-grpc-web/LICENSE delete mode 100644 third_party/protoc-gen-grpc-web/README.md delete mode 100644 third_party/protoc-gen-grpc-web/grpc_generator.cc diff --git a/.bazelversion b/.bazelversion index 6abaeb2f907..f22d756da39 100644 --- a/.bazelversion +++ b/.bazelversion @@ -1 +1 @@ -6.2.0 +6.5.0 diff --git a/bazel/external/flatbuffers_remove_rules_js_use.patch b/bazel/external/flatbuffers_remove_rules_js_use.patch new file mode 100644 index 00000000000..bc44bd57b6a --- /dev/null +++ b/bazel/external/flatbuffers_remove_rules_js_use.patch @@ -0,0 +1,35 @@ +diff --git a/BUILD.bazel b/BUILD.bazel +index b4f015a0..70848962 100644 +--- a/BUILD.bazel ++++ b/BUILD.bazel +@@ -1,5 +1,3 @@ +-load("@aspect_rules_js//npm:defs.bzl", "npm_link_package") +-load("@npm//:defs.bzl", "npm_link_all_packages") + load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library") + + licenses(["notice"]) +@@ -8,12 +6,7 @@ package( + default_visibility = ["//visibility:public"], + ) + +-npm_link_all_packages(name = "node_modules") + +-npm_link_package( +- name = "node_modules/flatbuffers", +- src = "//ts:flatbuffers", +-) + + exports_files([ + "LICENSE", +@@ -40,11 +33,9 @@ filegroup( + "BUILD.bazel", + "WORKSPACE", + "build_defs.bzl", +- "typescript.bzl", + "//grpc/src/compiler:distribution", + "//reflection:distribution", + "//src:distribution", +- "//ts:distribution", + ] + glob([ + "include/flatbuffers/*.h", + ]), diff --git a/bazel/external/grpc-web_protobuf_v30_support.patch b/bazel/external/grpc-web_protobuf_v30_support.patch new file mode 100644 index 00000000000..28fc8c55850 --- /dev/null +++ b/bazel/external/grpc-web_protobuf_v30_support.patch @@ -0,0 +1,409 @@ +diff --git a/javascript/net/grpc/web/generator/grpc_generator.cc b/javascript/net/grpc/web/generator/grpc_generator.cc +index 5695f31..52eec82 100644 +--- a/javascript/net/grpc/web/generator/grpc_generator.cc ++++ b/javascript/net/grpc/web/generator/grpc_generator.cc +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + + using google::protobuf::Descriptor; + using google::protobuf::Edition; +@@ -132,7 +133,8 @@ std::string GetSerializeMethodReturnType(std::map vars) { + return "!Uint8Array"; + } + +-string LowercaseFirstLetter(string s) { ++string LowercaseFirstLetter(std::string_view sv) { ++ string s(sv); + if (s.empty()) { + return s; + } +@@ -140,7 +142,8 @@ string LowercaseFirstLetter(string s) { + return s; + } + +-string Lowercase(string s) { ++string Lowercase(std::string_view sv) { ++ string s(sv); + if (s.empty()) { + return s; + } +@@ -151,7 +154,8 @@ string Lowercase(string s) { + return s; + } + +-string UppercaseFirstLetter(string s) { ++string UppercaseFirstLetter(std::string_view sv) { ++ string s(sv); + if (s.empty()) { + return s; + } +@@ -159,7 +163,8 @@ string UppercaseFirstLetter(string s) { + return s; + } + +-string Uppercase(string s) { ++string Uppercase(std::string_view sv) { ++ string s(sv); + if (s.empty()) { + return s; + } +@@ -173,35 +178,35 @@ string Uppercase(string s) { + // The following 5 functions were copied from + // google/protobuf/src/google/protobuf/stubs/strutil.h + +-inline bool HasPrefixString(const string& str, const string& prefix) { ++inline bool HasPrefixString(std::string_view str, std::string_view prefix) { + return str.size() >= prefix.size() && + str.compare(0, prefix.size(), prefix) == 0; + } + + // Strips the given prefix from the string, as well as the remaining leading dot + // if it exists. +-inline string StripPrefixString(const string& str, const string& prefix) { ++inline string StripPrefixString(std::string_view str, std::string_view prefix) { + if (!HasPrefixString(str, prefix)) { +- return str; ++ return string(str); + } + +- string remaining_str = str.substr(prefix.size()); ++ string remaining_str(str.substr(prefix.size())); + if (!remaining_str.empty() && remaining_str[0] == '.') { + remaining_str = remaining_str.substr(1); + } + return remaining_str; + } + +-inline bool HasSuffixString(const string& str, const string& suffix) { ++inline bool HasSuffixString(std::string_view str, std::string_view suffix) { + return str.size() >= suffix.size() && + str.compare(str.size() - suffix.size(), suffix.size(), suffix) == 0; + } + +-inline string StripSuffixString(const string& str, const string& suffix) { ++inline string StripSuffixString(std::string_view str, std::string_view suffix) { + if (HasSuffixString(str, suffix)) { +- return str.substr(0, str.size() - suffix.size()); ++ return string(str.substr(0, str.size() - suffix.size())); + } else { +- return str; ++ return string(str); + } + } + +@@ -217,7 +222,7 @@ void ReplaceCharacters(string* s, const char* remove, char replacewith) { + // The following function was copied from + // google/protobuf/src/google/protobuf/compiler/cpp/cpp_helpers.cc + +-string StripProto(const string& filename) { ++string StripProto(std::string_view filename) { + if (HasSuffixString(filename, ".protodevel")) { + return StripSuffixString(filename, ".protodevel"); + } else { +@@ -236,7 +241,7 @@ char ToLowerASCII(char c) { + } + } + +-std::vector ParseLowerUnderscore(const string& input) { ++std::vector ParseLowerUnderscore(std::string_view input) { + std::vector words; + string running = ""; + for (size_t i = 0; i < input.size(); i++) { +@@ -269,7 +274,7 @@ string ToUpperCamel(const std::vector& words) { + + // Returns the alias we assign to the module of the given .proto filename + // when importing. +-string ModuleAlias(const string& filename) { ++string ModuleAlias(std::string_view filename) { + // This scheme could technically cause problems if a file includes any 2 of: + // foo/bar_baz.proto + // foo_bar_baz.proto +@@ -433,7 +438,7 @@ string GetNestedMessageName(const Descriptor* descriptor) { + + // Given a filename like foo/bar/baz.proto, returns the root directory + // path ../../ +-string GetRootPath(const string& from_filename, const string& to_filename) { ++string GetRootPath(std::string_view from_filename, std::string_view to_filename) { + if (HasPrefixString(to_filename, "google/protobuf")) { + // Well-known types (.proto files in the google/protobuf directory) are + // assumed to come from the 'google-protobuf' npm package. We may want to +@@ -494,8 +499,8 @@ std::map GetAllMessages(const FileDescriptor* file) { + const ServiceDescriptor* service = file->service(s); + for (int m = 0; m < service->method_count(); ++m) { + const MethodDescriptor* method = service->method(m); +- messages[method->input_type()->full_name()] = method->input_type(); +- messages[method->output_type()->full_name()] = method->output_type(); ++ messages[string(method->input_type()->full_name())] = method->input_type(); ++ messages[string(method->output_type()->full_name())] = method->output_type(); + } + } + +@@ -513,14 +518,14 @@ void PrintCommonJsMessagesDeps(Printer* printer, const FileDescriptor* file) { + std::map vars; + + for (int i = 0; i < file->dependency_count(); i++) { +- const string& name = file->dependency(i)->name(); ++ const string name(file->dependency(i)->name()); + vars["alias"] = ModuleAlias(name); + vars["dep_filename"] = GetRootPath(file->name(), name) + StripProto(name); + // we need to give each cross-file import an alias + printer->Print(vars, "\nvar $alias$ = require('$dep_filename$_pb.js')\n"); + } + +- const string& package = file->package(); ++ const string package(file->package()); + vars["package_name"] = package; + + if (!package.empty()) { +@@ -556,7 +561,7 @@ void PrintES6Imports(Printer* printer, const FileDescriptor* file) { + + std::set imports; + for (const auto& entry : GetAllMessages(file)) { +- const string& proto_filename = entry.second->file()->name(); ++ const string proto_filename(entry.second->file()->name()); + string dep_filename = GetRootPath(file->name(), proto_filename) + StripProto(proto_filename); + if (imports.find(dep_filename) != imports.end()) { + continue; +@@ -578,7 +583,7 @@ void PrintTypescriptFile(Printer* printer, const FileDescriptor* file, + ++service_index) { + printer->Print("export class "); + const ServiceDescriptor* service = file->service(service_index); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + printer->Print(vars, "$service_name$Client {\n"); + printer->Indent(); + printer->Print( +@@ -607,7 +612,7 @@ void PrintTypescriptFile(Printer* printer, const FileDescriptor* file, + ++method_index) { + const MethodDescriptor* method = service->method(method_index); + vars["js_method_name"] = LowercaseFirstLetter(method->name()); +- vars["method_name"] = method->name(); ++ vars["method_name"] = string(method->name()); + vars["input_type"] = JSMessageType(method->input_type()); + vars["output_type"] = JSMessageType(method->output_type()); + vars["serialize_func_name"] = GetSerializeMethodName(vars); +@@ -716,7 +721,7 @@ void PrintGrpcWebDtsClientClass(Printer* printer, const FileDescriptor* file, + ++service_index) { + printer->Print("export class "); + const ServiceDescriptor* service = file->service(service_index); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + printer->Print(vars, "$service_name$$client_type$ {\n"); + printer->Indent(); + printer->Print( +@@ -777,7 +782,7 @@ void PrintGrpcWebDtsFile(Printer* printer, const FileDescriptor* file) { + + void PrintProtoDtsEnum(Printer* printer, const EnumDescriptor* desc) { + std::map vars; +- vars["enum_name"] = desc->name(); ++ vars["enum_name"] = string(desc->name()); + + // Use regular enums for broad TypeScript compatibility. `const enum` + // triggers TS2748 when `verbatimModuleSyntax` is enabled (default in +@@ -815,7 +820,7 @@ void PrintProtoDtsOneofCase(Printer* printer, const OneofDescriptor* desc) { + + void PrintProtoDtsMessage(Printer* printer, const Descriptor* desc, + const FileDescriptor* file) { +- const string& class_name = desc->name(); ++ const string class_name(desc->name()); + std::map vars; + vars["class_name"] = class_name; + +@@ -941,7 +946,7 @@ void PrintProtoDtsFile(Printer* printer, const FileDescriptor* file) { + printer->Print("import * as jspb from 'google-protobuf'\n\n"); + + for (int i = 0; i < file->dependency_count(); i++) { +- const string& proto_filename = file->dependency(i)->name(); ++ const string proto_filename(file->dependency(i)->name()); + // We need to give each cross-file import an alias. + printer->Print("import * as $alias$ from '$dep_filename$_pb'; // proto import: \"$proto_filename$\"\n", + "alias", ModuleAlias(proto_filename), +@@ -1241,7 +1246,7 @@ void PrintMultipleFilesMode(const FileDescriptor* file, string file_name, + // Print MethodDescriptor files. + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* service = file->service(i); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + vars["class_name"] = LowercaseFirstLetter(service->name()); + + for (int method_index = 0; method_index < service->method_count(); +@@ -1257,17 +1262,17 @@ void PrintMultipleFilesMode(const FileDescriptor* file, string file_name, + context->Open(method_file_name)); + Printer printer(output.get(), '$'); + +- vars["method_name"] = method->name(); +- vars["in"] = method->input_type()->full_name(); +- vars["in_type"] = "proto." + method->input_type()->full_name(); +- vars["out"] = method->output_type()->full_name(); +- vars["out_type"] = "proto." + method->output_type()->full_name(); ++ vars["method_name"] = string(method->name()); ++ vars["in"] = string(method->input_type()->full_name()); ++ vars["in_type"] = "proto." + string(method->input_type()->full_name()); ++ vars["out"] = string(method->output_type()->full_name()); ++ vars["out_type"] = "proto." + string(method->output_type()->full_name()); + vars["method_type"] = method->server_streaming() + ? "grpc.web.MethodType.SERVER_STREAMING" + : "grpc.web.MethodType.UNARY"; + + PrintMethodDescriptorFile(&printer, vars); +- method_descriptors[service->name() + "." + method->name()] = ++ method_descriptors[string(service->name()) + "." + string(method->name())] = + "proto." + vars["package_dot"] + vars["class_name"] + "." + + vars["method_name"] + "MethodDescriptor"; + } +@@ -1286,7 +1291,7 @@ void PrintMultipleFilesMode(const FileDescriptor* file, string file_name, + // Print the Promise and callback client. + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* service = file->service(i); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + printer1.Print(vars, + "goog.provide('proto.$package_dot$$service_name$" + "Client');\n\n"); +@@ -1326,7 +1331,7 @@ void PrintMultipleFilesMode(const FileDescriptor* file, string file_name, + for (int service_index = 0; service_index < file->service_count(); + ++service_index) { + const ServiceDescriptor* service = file->service(service_index); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + PrintServiceConstructor(&printer1, vars, false); + PrintServiceConstructor(&printer2, vars, true); + +@@ -1336,13 +1341,13 @@ void PrintMultipleFilesMode(const FileDescriptor* file, string file_name, + const Descriptor* input_type = method->input_type(); + const Descriptor* output_type = method->output_type(); + vars["js_method_name"] = LowercaseFirstLetter(method->name()); +- vars["method_name"] = method->name(); +- vars["in"] = input_type->full_name(); +- vars["out"] = output_type->full_name(); ++ vars["method_name"] = string(method->name()); ++ vars["in"] = string(input_type->full_name()); ++ vars["out"] = string(output_type->full_name()); + vars["method_descriptor"] = +- method_descriptors[service->name() + "." + method->name()]; +- vars["in_type"] = "proto." + input_type->full_name(); +- vars["out_type"] = "proto." + output_type->full_name(); ++ method_descriptors[string(service->name()) + "." + string(method->name())]; ++ vars["in_type"] = "proto." + string(input_type->full_name()); ++ vars["out_type"] = "proto." + string(output_type->full_name()); + + // Client streaming is not supported yet + if (!method->client_streaming()) { +@@ -1369,14 +1374,14 @@ void PrintClosureES6Imports(Printer* printer, const FileDescriptor* file, + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* service = file->service(i); + +- string service_namespace = "proto." + package_dot + service->name(); ++ string service_namespace = "proto." + package_dot + string(service->name()); + printer->Print( + "import $service_name$Client_import from 'goog:$namespace$';\n", +- "service_name", service->name(), "namespace", ++ "service_name", string(service->name()), "namespace", + service_namespace + "Client"); + printer->Print( + "import $service_name$PromiseClient_import from 'goog:$namespace$';\n", +- "service_name", service->name(), "namespace", ++ "service_name", string(service->name()), "namespace", + service_namespace + "PromiseClient"); + } + +@@ -1384,7 +1389,7 @@ void PrintClosureES6Imports(Printer* printer, const FileDescriptor* file, + } + + void PrintGrpcWebClosureES6File(Printer* printer, const FileDescriptor* file) { +- string package_dot = file->package().empty() ? "" : file->package() + "."; ++ string package_dot = file->package().empty() ? "" : string(file->package()) + "."; + + printer->Print( + "/**\n" +@@ -1405,12 +1410,12 @@ void PrintGrpcWebClosureES6File(Printer* printer, const FileDescriptor* file) { + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* service = file->service(i); + +- string service_namespace = "proto." + package_dot + service->name(); ++ string service_namespace = "proto." + package_dot + string(service->name()); + printer->Print("export const $name$Client = $name$Client_import;\n", "name", +- service->name()); ++ string(service->name())); + printer->Print( + "export const $name$PromiseClient = $name$PromiseClient_import;\n", +- "name", service->name()); ++ "name", string(service->name())); + } + } + +@@ -1544,7 +1549,7 @@ class GrpcCodeGenerator : public CodeGenerator { + + std::map vars; + std::map method_descriptors; +- string package = file->package(); ++ string package(file->package()); + vars["package"] = package; + vars["package_dot"] = package.empty() ? "" : package + '.'; + vars["promise"] = "Promise"; +@@ -1585,9 +1590,9 @@ class GrpcCodeGenerator : public CodeGenerator { + + vars["version"] = GRPC_WEB_VERSION; + vars["protoc_version"] = GetProtocVersion(context); +- vars["source_file"] = file->name(); ++ vars["source_file"] = string(file->name()); + +- string file_name = generator_options.OutputFile(file->name()); ++ string file_name = generator_options.OutputFile(string(file->name())); + if (generator_options.multiple_files() && + ImportStyle::CLOSURE == generator_options.import_style()) { + PrintMultipleFilesMode(file, file_name, context, vars); +@@ -1605,7 +1610,7 @@ class GrpcCodeGenerator : public CodeGenerator { + + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* service = file->service(i); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + switch (generator_options.import_style()) { + case ImportStyle::CLOSURE: + printer.Print( +@@ -1652,7 +1657,7 @@ class GrpcCodeGenerator : public CodeGenerator { + for (int service_index = 0; service_index < file->service_count(); + ++service_index) { + const ServiceDescriptor* service = file->service(service_index); +- vars["service_name"] = service->name(); ++ vars["service_name"] = string(service->name()); + PrintServiceConstructor(&printer, vars, false); + PrintServiceConstructor(&printer, vars, true); + +@@ -1662,11 +1667,11 @@ class GrpcCodeGenerator : public CodeGenerator { + const Descriptor* input_type = method->input_type(); + const Descriptor* output_type = method->output_type(); + vars["js_method_name"] = LowercaseFirstLetter(method->name()); +- vars["method_name"] = method->name(); +- vars["in"] = input_type->full_name(); +- vars["out"] = output_type->full_name(); ++ vars["method_name"] = string(method->name()); ++ vars["in"] = string(input_type->full_name()); ++ vars["out"] = string(output_type->full_name()); + vars["method_descriptor"] = +- "methodDescriptor_" + service->name() + "_" + method->name(); ++ "methodDescriptor_" + string(service->name()) + "_" + string(method->name()); + + // Cross-file ref in CommonJS needs to use the module alias instead + // of the global name. +@@ -1675,14 +1680,14 @@ class GrpcCodeGenerator : public CodeGenerator { + vars["in_type"] = ModuleAlias(input_type->file()->name()) + + GetNestedMessageName(input_type); + } else { +- vars["in_type"] = "proto." + input_type->full_name(); ++ vars["in_type"] = "proto." + string(input_type->full_name()); + } + if (ImportStyle::COMMONJS == generator_options.import_style() && + output_type->file() != file) { + vars["out_type"] = ModuleAlias(output_type->file()->name()) + + GetNestedMessageName(output_type); + } else { +- vars["out_type"] = "proto." + output_type->full_name(); ++ vars["out_type"] = "proto." + string(output_type->full_name()); + } + + // Client streaming is not supported yet diff --git a/bazel/external/grpc_go_toolchain.patch b/bazel/external/grpc_go_toolchain.patch index ec53b23de78..4d0c29c85c8 100644 --- a/bazel/external/grpc_go_toolchain.patch +++ b/bazel/external/grpc_go_toolchain.patch @@ -2,12 +2,12 @@ diff --git a/bazel/grpc_extra_deps.bzl b/bazel/grpc_extra_deps.bzl index 4d8afa3131..514189f9a5 100644 --- a/bazel/grpc_extra_deps.bzl +++ b/bazel/grpc_extra_deps.bzl -@@ -53,7 +53,7 @@ def grpc_extra_deps(ignore_version_differences = False): +@@ -63,7 +63,7 @@ def grpc_extra_deps(ignore_version_differences = False): api_dependencies() - + go_rules_dependencies() -- go_register_toolchains(version = "1.18") +- go_register_toolchains(version = "1.22.5") + go_register_toolchains() gazelle_dependencies() - + # Pull-in the go 3rd party dependencies for protoc_gen_validate, which is diff --git a/bazel/external/grpc_test_visibility.patch b/bazel/external/grpc_test_visibility.patch deleted file mode 100644 index 05f7ba64831..00000000000 --- a/bazel/external/grpc_test_visibility.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/BUILD b/BUILD -index cb6cdc2891..c4d7f2ab8c 100644 ---- a/BUILD -+++ b/BUILD -@@ -2073,7 +2073,7 @@ grpc_cc_library( - "include/grpcpp/test/mock_stream.h", - "include/grpcpp/test/server_context_test_spouse.h", - ], -- visibility = ["@grpc:grpc++_test"], -+ visibility = ["//visibility:public"], - deps = [ - "grpc++", - "grpc_base", diff --git a/bazel/external/protobuf_javascript.patch b/bazel/external/protobuf_javascript.patch index 7241159e2c6..c150ccc6797 100644 --- a/bazel/external/protobuf_javascript.patch +++ b/bazel/external/protobuf_javascript.patch @@ -1,11 +1,24 @@ +diff --git a/generator/BUILD.bazel b/generator/BUILD.bazel +index ac7756d..a3480c8 100644 +--- a/generator/BUILD.bazel ++++ b/generator/BUILD.bazel +@@ -2,7 +2,7 @@ genrule( + name = "generate_version_header", + srcs = ["//:package.json"], + outs = ["version.h"], +- cmd = "node $(location //:generate-version-header.js) $(OUTS)", ++ cmd = "/opt/px_dev/tools/node/bin/node $(location //:generate-version-header.js) $(OUTS)", + tools = ["//:generate-version-header.js"], + ) + diff --git a/generator/js_generator.cc b/generator/js_generator.cc -index 97b5844..1351a54 100644 +index 7ba8bf0..09b1391 100644 --- a/generator/js_generator.cc +++ b/generator/js_generator.cc -@@ -3650,6 +3650,9 @@ void Generator::GenerateFile(const GeneratorOptions& options, +@@ -3647,6 +3647,9 @@ void Generator::GenerateFile(const GeneratorOptions& options, for (int i = 0; i < file->dependency_count(); i++) { - const std::string& name = file->dependency(i)->name(); + const std::string name = std::string(file->dependency(i)->name()); + if (ModuleAlias(name) == "gogoproto_gogo_pb") { + continue; + } diff --git a/bazel/external/protobuf_text_format.patch b/bazel/external/protobuf_text_format.patch index 0da75da7de7..59f88c6d44c 100644 --- a/bazel/external/protobuf_text_format.patch +++ b/bazel/external/protobuf_text_format.patch @@ -1,39 +1,13 @@ -diff --git a/src/google/protobuf/stubs/strutil.cc b/src/google/protobuf/stubs/strutil.cc -index 594c8eac6..c7ef9437b 100644 ---- a/src/google/protobuf/stubs/strutil.cc -+++ b/src/google/protobuf/stubs/strutil.cc -@@ -592,7 +592,7 @@ void CEscapeAndAppend(StringPiece src, std::string *dest) { - } - } - --std::string CEscape(const std::string &src) { -+std::string CEscape(StringPiece src) { - std::string dest; - CEscapeAndAppend(src, &dest); - return dest; -diff --git a/src/google/protobuf/stubs/strutil.h b/src/google/protobuf/stubs/strutil.h -index 9658abf90..9cf9cae83 100644 ---- a/src/google/protobuf/stubs/strutil.h -+++ b/src/google/protobuf/stubs/strutil.h -@@ -328,7 +328,7 @@ PROTOBUF_EXPORT std::string UnescapeCEscapeString(const std::string& src); - // - // Escaped chars: \n, \r, \t, ", ', \, and !isprint(). - // ---------------------------------------------------------------------- --PROTOBUF_EXPORT std::string CEscape(const std::string& src); -+PROTOBUF_EXPORT std::string CEscape(StringPiece src); - - // ---------------------------------------------------------------------- - // CEscapeAndAppend() diff --git a/src/google/protobuf/text_format.cc b/src/google/protobuf/text_format.cc -index 19110499d..0d116ee7e 100644 +index 2c0a95d..1234567 100644 --- a/src/google/protobuf/text_format.cc +++ b/src/google/protobuf/text_format.cc -@@ -81,6 +81,18 @@ inline bool IsOctNumber(const std::string& str) { +@@ -82,6 +82,18 @@ inline bool IsOctNumber(const std::string& str) { (str[1] >= '0' && str[1] < '8')); } - -+// Returns true if truncatation occurred. -+bool TruncateString(int64_t max_length, StringPiece* s) { + ++// Returns true if truncation occurred. ++bool TruncateString(int64_t max_length, absl::string_view* s) { + if (max_length > 0) { + int64_t excess = static_cast(s->size()) - max_length; + if (excess > 0) { @@ -44,10 +18,10 @@ index 19110499d..0d116ee7e 100644 + return false; +} + - } // namespace - - namespace internal { -@@ -2555,20 +2567,22 @@ void TextFormat::Printer::PrintFieldValue(const Message& message, + // The number of fields that are redacted in AbslStringify. + std::atomic num_redacted_field{0}; + +@@ -2738,20 +2750,22 @@ void TextFormat::Printer::PrintFieldValue(const Message& message, ? reflection->GetRepeatedStringReference(message, field, index, &scratch) : reflection->GetStringReference(message, field, &scratch); @@ -60,39 +34,39 @@ index 19110499d..0d116ee7e 100644 - "......"; - value_to_print = &truncated_value; - } -+ StringPiece value_to_print(value); ++ absl::string_view value_to_print(value); + bool truncated = TruncateString(truncate_string_field_longer_than_, &value_to_print); + if (field->type() == FieldDescriptor::TYPE_STRING) { - printer->PrintString(*value_to_print, generator); + if (truncated) { -+ printer->PrintString(StrCat(value_to_print, "......"), generator); ++ printer->PrintString(absl::StrCat(value_to_print, "......"), generator); + } else { + printer->PrintString(value, generator); + } } else { - GOOGLE_DCHECK_EQ(field->type(), FieldDescriptor::TYPE_BYTES); + ABSL_DCHECK_EQ(field->type(), FieldDescriptor::TYPE_BYTES); - printer->PrintBytes(*value_to_print, generator); + if (truncated) { -+ printer->PrintBytes(StrCat(value_to_print, "......"), generator); ++ printer->PrintBytes(absl::StrCat(value_to_print, "......"), generator); + } else { + printer->PrintBytes(value, generator); + } } break; } -@@ -2708,7 +2722,14 @@ void TextFormat::Printer::PrintUnknownFields( - // This field is not parseable as a Message (or we ran out of - // recursion budget). So it is probably just a plain string. - generator->PrintMaybeWithMarker(": ", "\""); -- generator->PrintString(CEscape(value)); -+ StringPiece value_to_print(value); +@@ -2937,7 +2951,14 @@ void TextFormat::Printer::PrintUnknownFields( + break; + } + generator->PrintMaybeWithMarker(MarkerToken(), ": ", "\""); +- generator->PrintString(absl::CEscape(value)); ++ absl::string_view value_to_print(value); + bool truncated = TruncateString(truncate_string_field_longer_than_, &value_to_print); + + if (truncated) { -+ generator->PrintString(CEscape(value_to_print) + "......"); ++ generator->PrintString(absl::StrCat(absl::CEscape(value_to_print), "......")); + } else { -+ generator->PrintString(CEscape(value)); ++ generator->PrintString(absl::CEscape(value)); + } if (single_line_mode_) { generator->PrintLiteral("\" "); diff --git a/bazel/external/protobuf_warning.patch b/bazel/external/protobuf_warning.patch index 281ec297e1c..82203a2b6a0 100644 --- a/bazel/external/protobuf_warning.patch +++ b/bazel/external/protobuf_warning.patch @@ -14,20 +14,20 @@ index 5e9a2c418..f95684bd1 100644 virtual_path = ""; disk_path = parts[i]; diff --git a/src/google/protobuf/descriptor.cc b/src/google/protobuf/descriptor.cc -index 5f3427dc7..ab049c7c6 100644 +index 7456d3c3d..ddcd08c17 100644 --- a/src/google/protobuf/descriptor.cc +++ b/src/google/protobuf/descriptor.cc -@@ -8161,10 +8161,11 @@ void DescriptorBuilder::LogUnusedDependency(const FileDescriptorProto& proto, +@@ -10410,10 +10410,11 @@ void DescriptorBuilder::LogUnusedDependency(const FileDescriptorProto& proto, if (is_error) { - AddError((*it)->name(), proto, DescriptorPool::ErrorCollector::IMPORT, - error_message); + AddError(unused->name(), proto, DescriptorPool::ErrorCollector::IMPORT, + make_error); - } else { -- AddWarning((*it)->name(), proto, DescriptorPool::ErrorCollector::IMPORT, -- error_message); +- AddWarning(unused->name(), proto, +- DescriptorPool::ErrorCollector::IMPORT, make_error); } + // else { -+ // AddWarning((*it)->name(), proto, DescriptorPool::ErrorCollector::IMPORT, -+ // error_message); ++ // AddWarning(unused->name(), proto, ++ // DescriptorPool::ErrorCollector::IMPORT, make_error); + // } } } diff --git a/bazel/external/tensorflow_disable_gpu_bazel_6.x.patch b/bazel/external/tensorflow_disable_gpu_bazel_6.x.patch new file mode 100644 index 00000000000..31568d7b0b9 --- /dev/null +++ b/bazel/external/tensorflow_disable_gpu_bazel_6.x.patch @@ -0,0 +1,65 @@ +diff --git a/third_party/xla/third_party/gpus/cuda_configure.bzl b/third_party/xla/third_party/gpus/cuda_configure.bzl +index d110fa81460..80fccbfa234 100644 +--- a/third_party/xla/third_party/gpus/cuda_configure.bzl ++++ b/third_party/xla/third_party/gpus/cuda_configure.bzl +@@ -278,7 +278,7 @@ def _cuda_include_path(repository_ctx, cuda_config): + + def enable_cuda(repository_ctx): + """Returns whether to build with CUDA support.""" +- return int(get_host_environ(repository_ctx, "TF_NEED_CUDA", False)) ++ return int(False) + + def matches_version(environ_version, detected_version): + """Checks whether the user-specified version matches the detected version. +diff --git a/third_party/xla/third_party/gpus/rocm_configure.bzl b/third_party/xla/third_party/gpus/rocm_configure.bzl +index 80c151cde4d..b044e061473 100644 +--- a/third_party/xla/third_party/gpus/rocm_configure.bzl ++++ b/third_party/xla/third_party/gpus/rocm_configure.bzl +@@ -158,12 +158,6 @@ def _rocm_include_path(repository_ctx, rocm_config, bash_bin): + return inc_dirs + + def _enable_rocm(repository_ctx): +- enable_rocm = get_host_environ(repository_ctx, "TF_NEED_ROCM") +- if enable_rocm == "1": +- if get_cpu_value(repository_ctx) != "Linux": +- auto_configure_warning("ROCm configure is only supported on Linux") +- return False +- return True + return False + + def _amdgpu_targets(repository_ctx, rocm_toolkit_path, bash_bin): +diff --git a/third_party/xla/third_party/gpus/sycl_configure.bzl b/third_party/xla/third_party/gpus/sycl_configure.bzl +index ee63624f8e4..d60a10b10d6 100644 +--- a/third_party/xla/third_party/gpus/sycl_configure.bzl ++++ b/third_party/xla/third_party/gpus/sycl_configure.bzl +@@ -63,7 +63,7 @@ def _sycl_include_path(repository_ctx, sycl_config, bash_bin): + + def enable_sycl(repository_ctx): + """Returns whether to build with SYCL support.""" +- return int(get_host_environ(repository_ctx, "TF_NEED_SYCL", False)) ++ return int(False) + + def auto_configure_fail(msg): + """Output failure message when auto configuration fails.""" +diff --git a/third_party/xla/third_party/tensorrt/tensorrt_configure.bzl b/third_party/xla/third_party/tensorrt/tensorrt_configure.bzl +index 32c6d96f161..169df9b2a8b 100644 +--- a/third_party/xla/third_party/tensorrt/tensorrt_configure.bzl ++++ b/third_party/xla/third_party/tensorrt/tensorrt_configure.bzl +@@ -154,7 +154,7 @@ def _create_dummy_repository(repository_ctx): + + def enable_tensorrt(repository_ctx): + """Returns whether to build with TensorRT support.""" +- return int(get_host_environ(repository_ctx, _TF_NEED_TENSORRT, False)) ++ return int(False) + + def _get_tensorrt_static_path(repository_ctx): + """Returns the path for TensorRT static libraries.""" +@@ -284,7 +284,7 @@ def _py_tmpl_dict(d): + def _tensorrt_configure_impl(repository_ctx): + """Implementation of the tensorrt_configure repository rule.""" + +- if get_host_environ(repository_ctx, _TF_TENSORRT_CONFIG_REPO) != None: ++ if False: + # Forward to the pre-configured remote repository. + remote_config_repo = repository_ctx.os.environ[_TF_TENSORRT_CONFIG_REPO] + repository_ctx.template("BUILD", config_repo_label(remote_config_repo, ":BUILD"), {}) diff --git a/bazel/external/tensorflow_disable_llvm.patch b/bazel/external/tensorflow_disable_llvm.patch index 21008f649d6..55144e732e3 100644 --- a/bazel/external/tensorflow_disable_llvm.patch +++ b/bazel/external/tensorflow_disable_llvm.patch @@ -1,35 +1,67 @@ +diff --git a/tensorflow/workspace1.bzl b/tensorflow/workspace1.bzl +index b6755a6e68b..9d6562457b5 100644 +--- a/tensorflow/workspace1.bzl ++++ b/tensorflow/workspace1.bzl +@@ -4,7 +4,7 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") + load("@com_google_benchmark//:bazel/benchmark_deps.bzl", "benchmark_deps") + load("@io_bazel_rules_closure//closure:defs.bzl", "closure_repositories") +-load("@local_xla//third_party/llvm:setup.bzl", "llvm_setup") ++# load("@local_xla//third_party/llvm:setup.bzl", "llvm_setup") + load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies") + load("//third_party/android:android_configure.bzl", "android_configure") + +@@ -15,7 +15,7 @@ def workspace(with_rules_cc = True): + Args: + with_rules_cc: Unused, to be removed soon. + """ +- llvm_setup(name = "llvm-project") ++ # llvm_setup(name = "llvm-project") + # native.register_toolchains("@local_config_python//:py_toolchain") + rules_pkg_dependencies() + diff --git a/tensorflow/workspace2.bzl b/tensorflow/workspace2.bzl -index 18b63ab47fb..92993d7c341 100644 +index e91df06041d..ce281ccf21c 100644 --- a/tensorflow/workspace2.bzl +++ b/tensorflow/workspace2.bzl -@@ -14,7 +14,7 @@ load("//tensorflow/tools/toolchains/embedded/arm-linux:arm_linux_toolchain_confi - load("//third_party:repo.bzl", "tf_http_archive", "tf_mirror_urls") - load("//third_party/clang_toolchain:cc_configure_clang.bzl", "cc_download_clang_toolchain") - load("//tensorflow/tools/def_file_filter:def_file_filter_configure.bzl", "def_file_filter_configure") --load("//third_party/llvm:setup.bzl", "llvm_setup") -+#load("//third_party/llvm:setup.bzl", "llvm_setup") +@@ -475,7 +475,7 @@ def _tf_repositories(): - # Import third party repository rules. See go/tfbr-thirdparty. - load("//third_party/FP16:workspace.bzl", FP16 = "repo") -@@ -530,7 +530,7 @@ def _tf_repositories(): - urls = tf_mirror_urls("https://github.com/antirez/linenoise/archive/4ce393a66b10903a0ef52edf9775ed526a17395f.tar.gz"), - ) + # Load the raw llvm-project. llvm does not have build rules set up by default, + # but provides a script for setting up build rules via overlays. +- llvm("llvm-raw") ++ # llvm("llvm-raw") + # Intel openMP that is part of LLVM sources. + tf_http_archive( +diff --git a/third_party/xla/workspace1.bzl b/third_party/xla/workspace1.bzl +index 05121708fc5..dfc5f2cedf3 100644 +--- a/third_party/xla/workspace1.bzl ++++ b/third_party/xla/workspace1.bzl +@@ -4,12 +4,12 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") + load("@io_bazel_rules_closure//closure:defs.bzl", "closure_repositories") + load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies") +-load("//third_party/llvm:setup.bzl", "llvm_setup") ++# load("//third_party/llvm:setup.bzl", "llvm_setup") + + # buildifier: disable=unnamed-macro + def workspace(): + """Loads a set of TensorFlow dependencies in a WORKSPACE file.""" - llvm_setup(name = "llvm-project") + # llvm_setup(name = "llvm-project") + native.register_toolchains("@local_config_python//:py_toolchain") + rules_pkg_dependencies() - # Intel openMP that is part of LLVM sources. - tf_http_archive( -diff --git a/tensorflow/workspace3.bzl b/tensorflow/workspace3.bzl -index a6c2c5c5835..3866493fcc9 100644 ---- a/tensorflow/workspace3.bzl -+++ b/tensorflow/workspace3.bzl -@@ -38,7 +38,7 @@ def workspace(): +diff --git a/third_party/xla/workspace2.bzl b/third_party/xla/workspace2.bzl +index 9e4166034d0..d34f643bd3f 100644 +--- a/third_party/xla/workspace2.bzl ++++ b/third_party/xla/workspace2.bzl +@@ -376,7 +376,7 @@ def _tf_repositories(): # Load the raw llvm-project. llvm does not have build rules set up by default, # but provides a script for setting up build rules via overlays. - llvm("llvm-raw") + # llvm("llvm-raw") - # Alias so it can be loaded without assigning to a different symbol to prevent - # shadowing previous loads and trigger a buildifier warning. + # Intel openMP that is part of LLVM sources. + tf_http_archive( diff --git a/bazel/external/tensorflow_disable_py.patch b/bazel/external/tensorflow_disable_py.patch index 8477ed66471..8021df267e4 100644 --- a/bazel/external/tensorflow_disable_py.patch +++ b/bazel/external/tensorflow_disable_py.patch @@ -1,44 +1,377 @@ -diff --git a/tensorflow/tensorflow.bzl b/tensorflow/tensorflow.bzl -index 72bd0bcb94a..72c8987fc49 100644 ---- a/tensorflow/tensorflow.bzl -+++ b/tensorflow/tensorflow.bzl -@@ -2797,7 +2797,6 @@ _local_genrule_internal = rule( - def _local_genrule(**kwargs): - _local_genrule_internal( - exec_compatible_with = [ -- "@local_execution_config_platform//:platform_constraint", - ], - **kwargs - ) +diff --git a/tensorflow/tf_version.bzl b/tensorflow/tf_version.bzl +index e92c2d2ce2a..bc2ea14e48b 100644 +--- a/tensorflow/tf_version.bzl ++++ b/tensorflow/tf_version.bzl +@@ -1,14 +1,8 @@ + """Provides project and wheel version data for TensorFlow.""" + +-load( +- "//tensorflow:tf_version.default.bzl", +- "SEMANTIC_VERSION_SUFFIX", +- "VERSION_SUFFIX", +-) +- + # These constants are used by the targets //third_party/tensorflow/core/public:release_version, + # //third_party/tensorflow:tensorflow_bzl and //third_party/tensorflow/tools/pip_package:setup_py. + TF_VERSION = "2.20.0" + MAJOR_VERSION, MINOR_VERSION, PATCH_VERSION = TF_VERSION.split(".") +-TF_WHEEL_VERSION_SUFFIX = VERSION_SUFFIX +-TF_SEMANTIC_VERSION_SUFFIX = SEMANTIC_VERSION_SUFFIX ++TF_WHEEL_VERSION_SUFFIX = "" ++TF_SEMANTIC_VERSION_SUFFIX = "" diff --git a/tensorflow/workspace1.bzl b/tensorflow/workspace1.bzl -index fb72d54e4d6..2f74e928d5a 100644 +index 399ff8f7579..b6755a6e68b 100644 --- a/tensorflow/workspace1.bzl +++ b/tensorflow/workspace1.bzl -@@ -14,7 +14,7 @@ def workspace(with_rules_cc = True): - Args: - with_rules_cc: whether to load and patch rules_cc repository. +@@ -16,7 +16,7 @@ def workspace(with_rules_cc = True): + with_rules_cc: Unused, to be removed soon. """ + llvm_setup(name = "llvm-project") - native.register_toolchains("@local_config_python//:py_toolchain") + # native.register_toolchains("@local_config_python//:py_toolchain") - rules_cuda_dependencies(with_rules_cc) rules_pkg_dependencies() - + + closure_repositories() diff --git a/tensorflow/workspace2.bzl b/tensorflow/workspace2.bzl -index 18b63ab47fb..0874cdd9150 100644 +index 9e49ab40b25..e91df06041d 100644 --- a/tensorflow/workspace2.bzl +++ b/tensorflow/workspace2.bzl -@@ -81,11 +81,11 @@ def _initialize_third_party(): - +@@ -20,6 +20,7 @@ load("@local_xla//third_party/FP16:workspace.bzl", FP16 = "repo") + load("@local_xla//third_party/gemmlowp:workspace.bzl", gemmlowp = "repo") + load("@local_xla//third_party/git:git_configure.bzl", "git_configure") + load("@local_xla//third_party/gpus:rocm_configure.bzl", "rocm_configure") ++load("@local_xla//third_party/gpus:cuda_configure.bzl", "cuda_configure") + load("@local_xla//third_party/gpus:sycl_configure.bzl", "sycl_configure") + load("@local_xla//third_party/highwayhash:workspace.bzl", highwayhash = "repo") + load("@local_xla//third_party/hwloc:workspace.bzl", hwloc = "repo") +@@ -105,11 +106,11 @@ def _initialize_third_party(): + # Toolchains & platforms required by Tensorflow to build. def _tf_toolchains(): - native.register_execution_platforms("@local_execution_config_platform//:platform") - native.register_toolchains("@local_execution_config_python//:py_toolchain") + # native.register_execution_platforms("@local_execution_config_platform//:platform") + # native.register_toolchains("@local_execution_config_python//:py_toolchain") - + # Loads all external repos to configure RBE builds. - initialize_rbe_configs() + # initialize_rbe_configs() - + # Note that we check the minimum bazel version in WORKSPACE. clang6_configure(name = "local_config_clang6") +@@ -117,9 +118,10 @@ def _tf_toolchains(): + tensorrt_configure(name = "local_config_tensorrt") + git_configure(name = "local_config_git") + syslibs_configure(name = "local_config_syslibs") +- python_configure(name = "local_config_python") ++ # python_configure(name = "local_config_python") ++ cuda_configure(name = "local_config_cuda") + rocm_configure(name = "local_config_rocm") + sycl_configure(name = "local_config_sycl") + remote_execution_configure(name = "local_config_remote_execution") + + # For windows bazel build +diff --git a/third_party/xla/third_party/py/rules_pywrap/pywrap.default.bzl b/third_party/xla/third_party/py/rules_pywrap/pywrap.default.bzl +index 9bbee965b57..39897ba2ef0 100644 +--- a/third_party/xla/third_party/py/rules_pywrap/pywrap.default.bzl ++++ b/third_party/xla/third_party/py/rules_pywrap/pywrap.default.bzl +@@ -1,5 +1,4 @@ + # TODO(b/356020232): remove entire file and all usages after migration is done +-load("@python_version_repo//:py_version.bzl", "USE_PYWRAP_RULES") + load( + "//third_party/py/rules_pywrap:pywrap.impl.bzl", + _pybind_extension = "pybind_extension", +@@ -91,7 +90,7 @@ def pybind_extension( + ) + + def use_pywrap_rules(): +- return USE_PYWRAP_RULES ++ return False + + def pywrap_library(name, **kwargs): + if use_pywrap_rules(): +diff --git a/third_party/xla/third_party/py/rules_pywrap/pywrap.impl.bzl b/third_party/xla/third_party/py/rules_pywrap/pywrap.impl.bzl +index 2f2f1906932..3ba3cdbf10a 100644 +--- a/third_party/xla/third_party/py/rules_pywrap/pywrap.impl.bzl ++++ b/third_party/xla/third_party/py/rules_pywrap/pywrap.impl.bzl +@@ -131,222 +131,7 @@ def pywrap_library( + testonly: The testonly argument of the resultant py_library target. + compatible_with: The compatible_with of the py_library target. + """ +- +- # 0) If pywrap_count is not specified, assume we pass pybind_extension, +- # targets directly, so actual pywrap_count should just be equal to number +- # of deps. +- actual_pywrap_count = len(deps) if pywrap_count == None else pywrap_count +- if starlark_only_deps: +- starlark_only_pywrap_count = len(starlark_only_deps) +- actual_deps = deps + starlark_only_deps +- +- # 1) Create common libraries cc-only (C API) and py-specific (parts reused +- # by different pywrap libraries but dependin on Python symbols). +- # The common library should link in everything except the object file with +- # Python Extension's init function PyInit_. +- info_collector_name = "_%s_info_collector" % name +- collected_pywrap_infos( +- name = info_collector_name, +- deps = actual_deps, +- pywrap_count = actual_pywrap_count, +- starlark_only_pywrap_count = starlark_only_pywrap_count, +- ) +- +- linker_input_filters_name = "_%s_linker_input_filters" % name +- +- cur_pkg = native.package_name() +- cur_pkg = cur_pkg + "/" if native.package_name() else cur_pkg +- starlark_only_filter_full_name = None +- if starlark_only_pywrap_count > 0: +- starlark_only_filter_full_name = "%s%s__starlark_only_common" % (cur_pkg, name) +- +- inverse_common_lib_filters = _construct_inverse_common_lib_filters( +- common_lib_filters, +- ) +- +- _linker_input_filters( +- name = linker_input_filters_name, +- dep = ":%s" % info_collector_name, +- pywrap_lib_filter = pywrap_lib_filter, +- pywrap_lib_exclusion_filter = pywrap_lib_exclusion_filter, +- common_lib_filters = inverse_common_lib_filters, +- starlark_only_filter_name = starlark_only_filter_full_name, +- enable_common_lib_starlark_only_filter = enable_common_lib_starlark_only_filter, +- ) +- +- common_deps = [] + extra_deps +- starlark_only_common_deps = [] +- binaries_data = {} +- starlark_only_binaries_data = {} +- win_binaries_data = {} +- win_starlark_only_binaries_data = {} +- internal_binaries = [] +- win_internal_binaries = [] +- +- common_lib_full_names = [] +- common_lib_full_names.extend(common_lib_filters.keys()) +- common_lib_full_names.append("%s%s_common" % (cur_pkg, name)) +- if starlark_only_filter_full_name: +- common_lib_full_names.append(starlark_only_filter_full_name) +- +- for common_lib_full_name in common_lib_full_names: +- common_lib_pkg, common_lib_name = _get_common_lib_package_and_name( +- common_lib_full_name, +- ) +- common_split_name = "_%s_split" % common_lib_name +- _pywrap_common_split_library( +- name = common_split_name, +- dep = ":%s" % info_collector_name, +- common_lib_full_name = common_lib_full_name, +- linker_input_filters = "%s" % linker_input_filters_name, +- testonly = testonly, +- compatible_with = compatible_with, +- collect_objects = select({ +- "@bazel_tools//src/conditions:windows": True, +- "//conditions:default": False, +- }), +- ) +- +- win_def_name = "_%s_def" % common_lib_name +- def_file_or_filter = common_lib_def_files_or_filters.get( +- common_lib_full_name, +- None, +- ) +- generated_common_win_def_file( +- name = win_def_name, +- dep = ":%s" % common_split_name, +- filter = def_file_or_filter, +- ) +- +- linkopts = common_lib_linkopts.get(common_lib_full_name, []) +- ver_script = common_lib_version_scripts.get(common_lib_full_name, None) +- common_cc_binary_name = "%s" % common_lib_name +- +- common_import_name, win_import_library_name = _construct_common_binary( +- common_cc_binary_name, +- common_deps + [":%s" % common_split_name], +- linkopts, +- testonly, +- compatible_with, +- ":%s" % win_def_name, +- None, +- binaries_data.values(), +- common_lib_pkg, +- ver_script, +- [":%s" % common_split_name], +- common_lib_versions.get(common_lib_full_name, ""), +- ) +- actual_binaries_data = binaries_data +- actual_common_deps = common_deps +- actual_win_binaries_data = win_binaries_data +- if common_lib_full_name == starlark_only_filter_full_name: +- actual_binaries_data = starlark_only_binaries_data +- actual_common_deps = starlark_only_common_deps +- actual_win_binaries_data = win_starlark_only_binaries_data +- internal_binaries.append(":%s" % common_cc_binary_name) +- win_internal_binaries.append(":%s" % win_import_library_name) +- actual_binaries_data[":%s" % common_cc_binary_name] = common_lib_pkg +- actual_win_binaries_data[":%s" % win_import_library_name] = common_lib_pkg +- actual_common_deps.append(":%s" % common_import_name) +- +- # 2) Create individual super-thin pywrap libraries, which depend on the +- # common one. The individual libraries must link in statically only the +- # object file with Python Extension's init function PyInit_ +- # +- shared_objects = [] +- for pywrap_index in range(0, actual_pywrap_count + starlark_only_pywrap_count): +- dep_name = "_%s_%s" % (name, pywrap_index) +- shared_object_name = "%s_shared_object" % dep_name +- win_def_name = "%s_win_def" % dep_name +- pywrap_name = "%s_pywrap" % dep_name +- +- _pywrap_split_library( +- name = pywrap_name, +- dep = ":%s" % info_collector_name, +- linker_input_filters = "%s" % linker_input_filters_name, +- pywrap_index = pywrap_index, +- testonly = testonly, +- compatible_with = compatible_with, +- ) +- +- _generated_win_def_file( +- name = win_def_name, +- dep = ":%s" % info_collector_name, +- pywrap_index = pywrap_index, +- testonly = testonly, +- compatible_with = compatible_with, +- ) +- +- actual_common_deps = common_deps +- if pywrap_index >= actual_pywrap_count: +- actual_common_deps = common_deps + starlark_only_common_deps +- +- native.cc_binary( +- name = shared_object_name, +- srcs = [], +- deps = [":%s" % pywrap_name] + actual_common_deps, +- linkshared = True, +- linkstatic = True, +- win_def_file = ":%s" % win_def_name, +- testonly = testonly, +- compatible_with = compatible_with, +- ) +- shared_objects.append(":%s" % shared_object_name) +- +- # 3) Construct final binaries with proper names and put them as data +- # attribute in a py_library, which is the final and only public artifact of +- # this macro +- # +- pywrap_binaries_name = "%s_common_binaries" % name +- wheel_locations_json_name = ":%s_wheel_locations.json" % pywrap_binaries_name +- +- win_binaries_data.update(binaries_data) +- win_starlark_only_binaries_data.update(starlark_only_binaries_data) +- +- _pywrap_binaries( +- name = pywrap_binaries_name, +- collected_pywraps = ":%s" % info_collector_name, +- deps = shared_objects, +- common_binaries = select({ +- "@bazel_tools//src/conditions:windows": win_binaries_data, +- "//conditions:default": binaries_data, +- }), +- starlark_only_common_binaries = select({ +- "@bazel_tools//src/conditions:windows": win_starlark_only_binaries_data, +- "//conditions:default": starlark_only_binaries_data, +- }), +- extension = select({ +- "@bazel_tools//src/conditions:windows": ".pyd", +- "//conditions:default": ".so", +- }), +- wheel_locations_json = wheel_locations_json_name, +- testonly = testonly, +- compatible_with = compatible_with, +- ) +- internal_binaries.append(":%s" % pywrap_binaries_name) +- internal_binaries.append(wheel_locations_json_name) +- +- all_binaries_data = list(binaries_data.keys()) +- all_binaries_data.extend(starlark_only_binaries_data.keys()) +- all_binaries_data.append(":%s" % pywrap_binaries_name) +- all_binaries_data.extend([shared_objects[-1]]) +- +- py_library( +- name = name, +- srcs = [":%s" % info_collector_name], +- data = all_binaries_data, +- testonly = testonly, +- compatible_with = compatible_with, +- visibility = visibility, +- ) +- +- native.filegroup( +- name = name + "_all_binaries", +- srcs = select({ +- "@bazel_tools//src/conditions:windows": internal_binaries + win_internal_binaries, +- "//conditions:default": internal_binaries, +- }), +- ) ++ pass + + def _construct_common_binary( + name, +@@ -1005,54 +790,11 @@ def pybind_extension(name, default_deps = None, **kwargs): + dependency on pybind11 will be added. + **kwargs: Additional arguments to pass to the python_extension. + """ ++ pass + +- actual_default_deps = ["@pybind11//:pybind11"] +- if default_deps != None: +- actual_default_deps = default_deps +- python_extension( +- name = name, +- default_deps = actual_default_deps, +- **kwargs +- ) + + def _pywrap_info_wrapper_impl(ctx): +- #the attribute is called deps not dep to match aspect's attr_aspects +- if len(ctx.attr.deps) != 1: +- fail("deps attribute must contain exactly one dependency") +- +- py_stub = ctx.actions.declare_file("%s.py" % ctx.attr.name) +- substitutions = {} +- py_pkgs = [] +- for pkg in ctx.attr.common_lib_packages: +- if pkg: +- py_pkgs.append(pkg.replace("/", ".") + "." + ctx.attr.name) +- +- if py_pkgs: +- val = "imports_paths = %s # template_val" % py_pkgs +- substitutions["imports_paths = [] # template_val"] = val +- +- ctx.actions.expand_template( +- template = ctx.file.py_stub_src, +- output = py_stub, +- substitutions = substitutions, +- ) +- +- default_runfiles = ctx.runfiles().merge( +- ctx.attr.deps[0][DefaultInfo].default_runfiles, +- ) +- +- return [ +- PyInfo(transitive_sources = depset()), +- PywrapInfo( +- cc_info = ctx.attr.deps[0][CcInfo], +- default_runfiles = default_runfiles, +- owner = ctx.label, +- common_lib_packages = ctx.attr.common_lib_packages, +- py_stub = py_stub, +- cc_only = False, +- starlark_only = ctx.attr.starlark_only, +- ), +- ] ++ pass + + _pywrap_info_wrapper = rule( + attrs = { diff --git a/bazel/grpc_web.bzl b/bazel/grpc_web.bzl index 097a9bb5995..37b465064b5 100644 --- a/bazel/grpc_web.bzl +++ b/bazel/grpc_web.bzl @@ -184,12 +184,12 @@ pl_grpc_web_library = rule( default = Label("@com_google_protobuf//:well_known_protos"), ), "_protoc": attr.label( - default = Label("//external:protocol_compiler"), + default = Label("@com_google_protobuf//:protoc"), executable = True, cfg = "host", ), "_protoc_gen_grpc_web": attr.label( - default = Label("//third_party/protoc-gen-grpc-web:protoc-gen-grpc-web"), + default = Label("@com_github_grpc_grpcweb//javascript/net/grpc/web/generator:protoc-gen-grpc-web"), executable = True, cfg = "host", ), diff --git a/bazel/proto_compile.bzl b/bazel/proto_compile.bzl index 6969a23e681..74a26a2a50a 100644 --- a/bazel/proto_compile.bzl +++ b/bazel/proto_compile.bzl @@ -85,7 +85,7 @@ def pl_cc_proto_library(name, proto, deps = [], **kwargs): ) grpc_deps = [ "@com_github_grpc_grpc//:grpc++_codegen_proto", - "//external:protobuf", + "@com_google_protobuf//:protoc", ] pl_cc_library_internal( name = name, diff --git a/bazel/repositories.bzl b/bazel/repositories.bzl index 55d23e61323..0181203778f 100644 --- a/bazel/repositories.bzl +++ b/bazel/repositories.bzl @@ -120,19 +120,25 @@ def _com_llvm_lib(): def _cc_deps(): # Dependencies with native bazel build files. + _bazel_repo("rules_cc") _bazel_repo("upb") - _bazel_repo("com_google_protobuf", patches = ["//bazel/external:protobuf_text_format.patch", "//bazel/external:protobuf_warning.patch"], patch_args = ["-p1"]) - _bazel_repo("com_github_grpc_grpc", patches = ["//bazel/external:grpc.patch", "//bazel/external:grpc_go_toolchain.patch", "//bazel/external:grpc_test_visibility.patch"], patch_args = ["-p1"]) + _bazel_repo("com_google_protobuf", patches = ["//bazel/external:protobuf_text_format.patch", "//bazel/external:protobuf_warning.patch"], patch_args = ["-p1"], repo_mapping = {"@abseil-cpp": "@com_google_absl"}) + _bazel_repo("com_github_grpc_grpc", patches = ["//bazel/external:grpc.patch", "//bazel/external:grpc_go_toolchain.patch"], patch_args = ["-p1"]) _bazel_repo("boringssl", patches = ["//bazel/external:boringssl.patch"], patch_args = ["-p0"]) _bazel_repo("com_google_benchmark") - _bazel_repo("com_google_googletest") + _bazel_repo("com_google_googletest", repo_mapping = {"@abseil-cpp": "@com_google_absl"}) _bazel_repo("com_github_gflags_gflags") _bazel_repo("com_github_google_glog") - _bazel_repo("com_google_absl") - _bazel_repo("com_google_flatbuffers") + _bazel_repo("com_google_absl", repo_mapping = {"@googletest": "@com_google_googletest"}) + _bazel_repo("com_google_flatbuffers", patches = ["//bazel/external:flatbuffers_remove_rules_js_use.patch"], patch_args = ["-p1"]) _bazel_repo("cpuinfo", patches = ["//bazel/external:cpuinfo.patch"], patch_args = ["-p1"]) - _bazel_repo("org_tensorflow", patches = ["//bazel/external:tensorflow_disable_llvm.patch", "//bazel/external:tensorflow_disable_mirrors.patch", "//bazel/external:tensorflow_disable_py.patch"], patch_args = ["-p1"]) + _bazel_repo("org_tensorflow", patches = [ + "//bazel/external:tensorflow_disable_py.patch", + "//bazel/external:tensorflow_disable_mirrors.patch", + # TODO(ddelnano): Remove once bazel 7.x is used. + "//bazel/external:tensorflow_disable_gpu_bazel_6.x.patch", + ], patch_args = ["-p1"]) _bazel_repo("com_github_neargye_magic_enum") _bazel_repo("com_github_thoughtspot_threadstacks") _bazel_repo("com_googlesource_code_re2", patches = ["//bazel/external:re2_warning.patch"], patch_args = ["-p1"]) @@ -241,6 +247,7 @@ def _pl_cc_toolchain_deps(): def _pl_deps(): _bazel_repo("bazel_gazelle") _bazel_repo("io_bazel_rules_go", patches = ["//bazel/external:rules_go.patch"], patch_args = ["-p1"]) + _bazel_repo("rules_java") _bazel_repo("io_bazel_rules_scala") _bazel_repo("rules_jvm_external") _bazel_repo("rules_foreign_cc") @@ -252,6 +259,8 @@ def _pl_deps(): _bazel_repo("com_github_bazelbuild_buildtools") _bazel_repo("com_github_fmeum_rules_meta") _bazel_repo("com_google_protobuf_javascript", patches = ["//bazel/external:protobuf_javascript.patch"], patch_args = ["-p1"]) + # TODO(ddelnano): Remove patch once grpc-web upgrades to protobuf v30+. + _bazel_repo("com_github_grpc_grpcweb", patches = ["//bazel/external:grpc-web_protobuf_v30_support.patch"], patch_args = ["-p1"]) _com_llvm_lib() _cc_deps() diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 167b34b6b27..3c831347a09 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -23,10 +23,10 @@ REPOSITORY_LOCATIONS = dict( ], ), bazel_skylib = dict( - sha256 = "f7be3474d42aae265405a592bb7da8e171919d74c16f082a5457840f06054728", + sha256 = "51b5105a760b353773f904d2bbc5e664d0987fbaf22265164de65d43e910d8ac", urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", - "https://github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", + "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.8.1/bazel-skylib-1.8.1.tar.gz", + "https://github.com/bazelbuild/bazel-skylib/releases/download/1.8.1/bazel-skylib-1.8.1.tar.gz", ], ), # Must be called boringssl to make sure the deps pick it up correctly. @@ -106,9 +106,14 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/gperftools/gperftools/releases/download/gperftools-2.9.1/gperftools-2.9.1.tar.gz"], ), com_github_grpc_grpc = dict( - sha256 = "b55696fb249669744de3e71acc54a9382bea0dce7cd5ba379b356b12b82d4229", - strip_prefix = "grpc-1.51.1", - urls = ["https://github.com/grpc/grpc/archive/refs/tags/v1.51.1.tar.gz"], + sha256 = "7bf97c11cf3808d650a3a025bbf9c5f922c844a590826285067765dfd055d228", + strip_prefix = "grpc-1.74.1", + urls = ["https://github.com/grpc/grpc/archive/refs/tags/v1.74.1.tar.gz"], + ), + com_github_grpc_grpcweb = dict( + sha256 = "0f0c8c0c1104306d67dad678be7c14efe52a698795a58b2b72ab67a8bb100c15", + strip_prefix = "grpc-web-2.0.2", + urls = ["https://github.com/grpc/grpc-web/archive/refs/tags/2.0.2.tar.gz"], ), # August 19, 2020. com_github_google_sentencepiece = dict( @@ -232,9 +237,9 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/pixie-io/libpypa/archive/eba8ec485a6c5e566d0d7a0716a06c91837c9d2f.tar.gz"], ), com_google_absl = dict( - sha256 = "91ac87d30cc6d79f9ab974c51874a704de9c2647c40f6932597329a282217ba8", - strip_prefix = "abseil-cpp-20220623.1", - urls = ["https://github.com/abseil/abseil-cpp/archive/refs/tags/20220623.1.tar.gz"], + sha256 = "9b7a064305e9fd94d124ffa6cc358592eb42b5da588fb4e07d09254aa40086db", + strip_prefix = "abseil-cpp-20250512.1", + urls = ["https://github.com/abseil/abseil-cpp/archive/refs/tags/20250512.1.tar.gz"], ), com_google_benchmark = dict( sha256 = "d26789a2b46d8808a48a4556ee58ccc7c497fcd4c0af9b90197674a81e04798a", @@ -252,9 +257,9 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/google/farmhash/archive/2f0e005b81e296fa6963e395626137cf729b710c.tar.gz"], ), com_google_flatbuffers = dict( - sha256 = "e2dc24985a85b278dd06313481a9ca051d048f9474e0f199e372fea3ea4248c9", - strip_prefix = "flatbuffers-2.0.6", - urls = ["https://github.com/google/flatbuffers/archive/refs/tags/v2.0.6.tar.gz"], + sha256 = "4157c5cacdb59737c5d627e47ac26b140e9ee28b1102f812b36068aab728c1ed", + strip_prefix = "flatbuffers-24.3.25", + urls = ["https://github.com/google/flatbuffers/archive/refs/tags/v24.3.25.tar.gz"], ), com_google_googletest = dict( sha256 = "65fab701d9829d38cb77c14acdc431d2108bfdbf8979e40eb8ae567edf10b27c", @@ -262,18 +267,17 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/google/googletest/archive/refs/tags/v1.17.0.tar.gz"], ), com_google_protobuf = dict( - sha256 = "63c5539a8506dc6bccd352a857cea106e0a389ce047a3ff0a78fe3f8fede410d", - strip_prefix = "protobuf-24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + sha256 = "c3a0a9ece8932e31c3b736e2db18b1c42e7070cd9b881388b26d01aa71e24ca2", + strip_prefix = "protobuf-31.1", urls = [ - "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/protobuf/archive/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb.tar.gz", - "https://github.com/protocolbuffers/protobuf/archive/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb.tar.gz", + "https://github.com/protocolbuffers/protobuf/archive/v31.1.tar.gz", ], ), com_google_protobuf_javascript = dict( - sha256 = "35bca1729532b0a77280bf28ab5937438e3dcccd6b31a282d9ae84c896b6f6e3", - strip_prefix = "protobuf-javascript-3.21.2", + sha256 = "123fac2e86109b24e80ccd356aa914e268bf5863ad1354d224d6ceaed6f5c45b", + strip_prefix = "protobuf-javascript-4.0.1", urls = [ - "https://github.com/protocolbuffers/protobuf-javascript/archive/refs/tags/v3.21.2.tar.gz", + "https://github.com/protocolbuffers/protobuf-javascript/archive/refs/tags/v4.0.1.tar.gz", ], ), com_googlesource_code_re2 = dict( @@ -442,9 +446,9 @@ REPOSITORY_LOCATIONS = dict( strip_prefix = "rules_scala-4ba3780fcba8d26980daff4639abc6f18517308b", ), org_tensorflow = dict( - sha256 = "99c732b92b1b37fc243a559e02f9aef5671771e272758aa4aec7f34dc92dac48", - strip_prefix = "tensorflow-2.11.0", - urls = ["https://github.com/tensorflow/tensorflow/archive/refs/tags/v2.11.0.tar.gz"], + sha256 = "a640d1f97be316a09301dfc9347e3d929ad4d9a2336e3ca23c32c93b0ff7e5d0", + strip_prefix = "tensorflow-2.20.0", + urls = ["https://github.com/tensorflow/tensorflow/archive/refs/tags/v2.20.0.tar.gz"], ), org_libc_musl = dict( sha256 = "7d5b0b6062521e4627e099e4c9dc8248d32a30285e959b7eecaa780cf8cfd4a4", @@ -452,6 +456,11 @@ REPOSITORY_LOCATIONS = dict( urls = ["http://musl.libc.org/releases/musl-1.2.3.tar.gz"], manual_license_name = "libc/musl", ), + rules_cc = dict( + sha256 = "abc605dd850f813bb37004b77db20106a19311a96b2da1c92b789da529d28fe1", + strip_prefix = "rules_cc-0.0.17", + urls = ["https://github.com/bazelbuild/rules_cc/releases/download/0.0.17/rules_cc-0.0.17.tar.gz"], + ), rules_foreign_cc = dict( sha256 = "6041f1374ff32ba711564374ad8e007aef77f71561a7ce784123b9b4b88614fc", strip_prefix = "rules_foreign_cc-0.8.0", @@ -462,6 +471,12 @@ REPOSITORY_LOCATIONS = dict( strip_prefix = "rules_python-0.26.0", urls = ["https://github.com/bazelbuild/rules_python/archive/refs/tags/0.26.0.tar.gz"], ), + rules_java = dict( + sha256 = "a64ab04616e76a448c2c2d8165d836f0d2fb0906200d0b7c7376f46dd62e59cc", + urls = [ + "https://github.com/bazelbuild/rules_java/releases/download/8.6.2/rules_java-8.6.2.tar.gz", + ], + ), rules_jvm_external = dict( urls = ["https://github.com/bazelbuild/rules_jvm_external/archive/refs/tags/5.2.tar.gz"], sha256 = "c9ae901381ae7f7eca08aed96caeb542f96c5449052db9c9d27274a8dc154cdf", diff --git a/src/carnot/exec/BUILD.bazel b/src/carnot/exec/BUILD.bazel index 228b352501c..3f8732f705a 100644 --- a/src/carnot/exec/BUILD.bazel +++ b/src/carnot/exec/BUILD.bazel @@ -259,7 +259,7 @@ pl_cc_test( ":cc_library", ":test_utils", "//src/carnot/planpb:plan_testutils", - "@com_github_grpc_grpc//test/core/util:grpc_test_util_base", + "@com_github_grpc_grpc//test/core/test_util:grpc_test_util_base", ], ) diff --git a/src/carnot/exec/ml/BUILD.bazel b/src/carnot/exec/ml/BUILD.bazel index b2fce524782..e87e61c52c3 100644 --- a/src/carnot/exec/ml/BUILD.bazel +++ b/src/carnot/exec/ml/BUILD.bazel @@ -38,9 +38,9 @@ pl_cc_library( "//src/shared/types:cc_library", "@com_github_google_sentencepiece//:libsentencepiece", "@com_github_tencent_rapidjson//:rapidjson", + "@eigen_archive//:eigen3", "@org_tensorflow//tensorflow/lite:framework", "@org_tensorflow//tensorflow/lite/kernels:builtin_ops", - "@org_tensorflow//third_party/eigen3", ], ) @@ -51,7 +51,7 @@ pl_cc_test_library( "eigen_test_utils.h", ], deps = [ - "@org_tensorflow//third_party/eigen3", + "@eigen_archive//:eigen3", ], ) diff --git a/src/carnot/exec/ml/coreset.h b/src/carnot/exec/ml/coreset.h index 552c233f0b8..08329f4f3f4 100644 --- a/src/carnot/exec/ml/coreset.h +++ b/src/carnot/exec/ml/coreset.h @@ -28,7 +28,7 @@ #include #include -#include "third_party/eigen3/Eigen/Core" +#include "Eigen/Core" #include "src/common/base/base.h" diff --git a/src/carnot/exec/ml/eigen_test_utils.h b/src/carnot/exec/ml/eigen_test_utils.h index 13fb5c3f4c6..eabec471bd2 100644 --- a/src/carnot/exec/ml/eigen_test_utils.h +++ b/src/carnot/exec/ml/eigen_test_utils.h @@ -23,7 +23,7 @@ #include -#include "third_party/eigen3/Eigen/Core" +#include "Eigen/Core" MATCHER_P2(IsApproxMatrix, matrix, tol, "") { return matrix.isApprox(arg, static_cast(tol)); diff --git a/src/carnot/exec/ml/sampling.cc b/src/carnot/exec/ml/sampling.cc index 196ae6c56f0..2c71f00d677 100644 --- a/src/carnot/exec/ml/sampling.cc +++ b/src/carnot/exec/ml/sampling.cc @@ -21,8 +21,8 @@ #include #include +#include "Eigen/Core" #include "src/common/base/base.h" -#include "third_party/eigen3/Eigen/Core" #include "src/carnot/exec/ml/sampling.h" diff --git a/src/carnot/exec/ml/sampling.h b/src/carnot/exec/ml/sampling.h index 6d58dcc8c90..dc2ae06957d 100644 --- a/src/carnot/exec/ml/sampling.h +++ b/src/carnot/exec/ml/sampling.h @@ -18,8 +18,8 @@ #pragma once +#include "Eigen/Core" #include "src/common/base/base.h" -#include "third_party/eigen3/Eigen/Core" namespace px { namespace carnot { diff --git a/src/stirling/e2e_tests/stirling_wrapper_size_test.cc b/src/stirling/e2e_tests/stirling_wrapper_size_test.cc index 0718b01c3b3..dbc390b1816 100644 --- a/src/stirling/e2e_tests/stirling_wrapper_size_test.cc +++ b/src/stirling/e2e_tests/stirling_wrapper_size_test.cc @@ -30,7 +30,7 @@ namespace stirling { #ifdef __OPTIMIZE__ constexpr uint64_t kFileSizeLimitMB = 118; #else -constexpr uint64_t kFileSizeLimitMB = 310; +constexpr uint64_t kFileSizeLimitMB = 325; #endif TEST(StirlingWrapperSizeTest, ExecutableSizeLimit) { diff --git a/src/stirling/source_connectors/socket_tracer/uprobe_manager.h b/src/stirling/source_connectors/socket_tracer/uprobe_manager.h index 41d6e3c8157..858b5d838f1 100644 --- a/src/stirling/source_connectors/socket_tracer/uprobe_manager.h +++ b/src/stirling/source_connectors/socket_tracer/uprobe_manager.h @@ -20,6 +20,7 @@ #include #include +#include #include #include #include diff --git a/src/ui/package.json b/src/ui/package.json index 11798ecec1e..84cf4ca0322 100644 --- a/src/ui/package.json +++ b/src/ui/package.json @@ -101,9 +101,9 @@ "axios": "^0.21.4", "cross-fetch": "^3.1.5", "date-fns": "^2.29.3", - "google-protobuf": "^3.15.5", + "google-protobuf": "4.0.1", "graphql": "^15.5.0", - "grpc-web": "^1.0.7", + "grpc-web": "2.0.2", "history": "^4.10.1", "jose": "^4.9.3", "launchdarkly-react-client-sdk": "^2.20.0", diff --git a/src/ui/src/api/vizier-grpc-client.ts b/src/ui/src/api/vizier-grpc-client.ts index 7313b871154..25342cab57a 100644 --- a/src/ui/src/api/vizier-grpc-client.ts +++ b/src/ui/src/api/vizier-grpc-client.ts @@ -16,7 +16,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -import { ClientReadableStream } from 'grpc-web'; +import { ClientReadableStream, StatusCode } from 'grpc-web'; import { compactDecrypt } from 'jose'; import * as pako from 'pako'; import { Observable, of, from } from 'rxjs'; @@ -31,7 +31,7 @@ import { } from 'app/types/generated/vizierapi_pb'; import { VizierServiceClient } from 'app/types/generated/VizierapiServiceClientPb'; -import { GRPCStatusCode, VizierQueryError } from './vizier'; +import { VizierQueryError } from './vizier'; import { VizierTable } from './vizier-table'; const noop = () => {}; @@ -380,7 +380,7 @@ export class VizierGRPCClient { }); call.on('error', (grpcError) => { let error: VizierQueryError; - if (grpcError.code === GRPCStatusCode.Unavailable) { + if (grpcError.code === StatusCode.UNAVAILABLE) { error = new VizierQueryError('unavailable', grpcError.message); } else { error = new VizierQueryError('server', grpcError.message); diff --git a/src/ui/src/types/generated/VizierapiServiceClientPb.ts b/src/ui/src/types/generated/VizierapiServiceClientPb.ts index 7cb9af7a592..9d62889cf08 100755 --- a/src/ui/src/types/generated/VizierapiServiceClientPb.ts +++ b/src/ui/src/types/generated/VizierapiServiceClientPb.ts @@ -4,7 +4,11 @@ * @public */ -// GENERATED CODE -- DO NOT EDIT! +// Code generated by protoc-gen-grpc-web. DO NOT EDIT. +// versions: +// protoc-gen-grpc-web v2.0.2 +// protoc v6.31.1 +// source: src/api/proto/vizierpb/vizierapi.proto /* eslint-disable */ @@ -13,7 +17,7 @@ import * as grpcWeb from 'grpc-web'; -import * as src_api_proto_vizierpb_vizierapi_pb from './vizierapi_pb'; +import * as src_api_proto_vizierpb_vizierapi_pb from './vizierapi_pb'; // proto import: "src/api/proto/vizierpb/vizierapi.proto" export class VizierServiceClient { @@ -30,12 +34,15 @@ export class VizierServiceClient { options['format'] = 'text'; this.client_ = new grpcWeb.GrpcWebClientBase(options); - this.hostname_ = hostname; + this.hostname_ = hostname.replace(/\/+$/, ''); this.credentials_ = credentials; this.options_ = options; } - methodInfoExecuteScript = new grpcWeb.AbstractClientBase.MethodInfo( + methodDescriptorExecuteScript = new grpcWeb.MethodDescriptor( + '/px.api.vizierpb.VizierService/ExecuteScript', + grpcWeb.MethodType.SERVER_STREAMING, + src_api_proto_vizierpb_vizierapi_pb.ExecuteScriptRequest, src_api_proto_vizierpb_vizierapi_pb.ExecuteScriptResponse, (request: src_api_proto_vizierpb_vizierapi_pb.ExecuteScriptRequest) => { return request.serializeBinary(); @@ -45,16 +52,19 @@ export class VizierServiceClient { executeScript( request: src_api_proto_vizierpb_vizierapi_pb.ExecuteScriptRequest, - metadata?: grpcWeb.Metadata) { + metadata?: grpcWeb.Metadata): grpcWeb.ClientReadableStream { return this.client_.serverStreaming( this.hostname_ + '/px.api.vizierpb.VizierService/ExecuteScript', request, metadata || {}, - this.methodInfoExecuteScript); + this.methodDescriptorExecuteScript); } - methodInfoHealthCheck = new grpcWeb.AbstractClientBase.MethodInfo( + methodDescriptorHealthCheck = new grpcWeb.MethodDescriptor( + '/px.api.vizierpb.VizierService/HealthCheck', + grpcWeb.MethodType.SERVER_STREAMING, + src_api_proto_vizierpb_vizierapi_pb.HealthCheckRequest, src_api_proto_vizierpb_vizierapi_pb.HealthCheckResponse, (request: src_api_proto_vizierpb_vizierapi_pb.HealthCheckRequest) => { return request.serializeBinary(); @@ -64,16 +74,19 @@ export class VizierServiceClient { healthCheck( request: src_api_proto_vizierpb_vizierapi_pb.HealthCheckRequest, - metadata?: grpcWeb.Metadata) { + metadata?: grpcWeb.Metadata): grpcWeb.ClientReadableStream { return this.client_.serverStreaming( this.hostname_ + '/px.api.vizierpb.VizierService/HealthCheck', request, metadata || {}, - this.methodInfoHealthCheck); + this.methodDescriptorHealthCheck); } - methodInfoGenerateOTelScript = new grpcWeb.AbstractClientBase.MethodInfo( + methodDescriptorGenerateOTelScript = new grpcWeb.MethodDescriptor( + '/px.api.vizierpb.VizierService/GenerateOTelScript', + grpcWeb.MethodType.UNARY, + src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptRequest, src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptResponse, (request: src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptRequest) => { return request.serializeBinary(); @@ -83,18 +96,18 @@ export class VizierServiceClient { generateOTelScript( request: src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptRequest, - metadata: grpcWeb.Metadata | null): Promise; + metadata?: grpcWeb.Metadata | null): Promise; generateOTelScript( request: src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptRequest, metadata: grpcWeb.Metadata | null, - callback: (err: grpcWeb.Error, + callback: (err: grpcWeb.RpcError, response: src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptResponse) => void): grpcWeb.ClientReadableStream; generateOTelScript( request: src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptRequest, - metadata: grpcWeb.Metadata | null, - callback?: (err: grpcWeb.Error, + metadata?: grpcWeb.Metadata | null, + callback?: (err: grpcWeb.RpcError, response: src_api_proto_vizierpb_vizierapi_pb.GenerateOTelScriptResponse) => void) { if (callback !== undefined) { return this.client_.rpcCall( @@ -102,7 +115,7 @@ export class VizierServiceClient { '/px.api.vizierpb.VizierService/GenerateOTelScript', request, metadata || {}, - this.methodInfoGenerateOTelScript, + this.methodDescriptorGenerateOTelScript, callback); } return this.client_.unaryCall( @@ -110,7 +123,7 @@ export class VizierServiceClient { '/px.api.vizierpb.VizierService/GenerateOTelScript', request, metadata || {}, - this.methodInfoGenerateOTelScript); + this.methodDescriptorGenerateOTelScript); } } @@ -129,12 +142,15 @@ export class VizierDebugServiceClient { options['format'] = 'text'; this.client_ = new grpcWeb.GrpcWebClientBase(options); - this.hostname_ = hostname; + this.hostname_ = hostname.replace(/\/+$/, ''); this.credentials_ = credentials; this.options_ = options; } - methodInfoDebugLog = new grpcWeb.AbstractClientBase.MethodInfo( + methodDescriptorDebugLog = new grpcWeb.MethodDescriptor( + '/px.api.vizierpb.VizierDebugService/DebugLog', + grpcWeb.MethodType.SERVER_STREAMING, + src_api_proto_vizierpb_vizierapi_pb.DebugLogRequest, src_api_proto_vizierpb_vizierapi_pb.DebugLogResponse, (request: src_api_proto_vizierpb_vizierapi_pb.DebugLogRequest) => { return request.serializeBinary(); @@ -144,16 +160,19 @@ export class VizierDebugServiceClient { debugLog( request: src_api_proto_vizierpb_vizierapi_pb.DebugLogRequest, - metadata?: grpcWeb.Metadata) { + metadata?: grpcWeb.Metadata): grpcWeb.ClientReadableStream { return this.client_.serverStreaming( this.hostname_ + '/px.api.vizierpb.VizierDebugService/DebugLog', request, metadata || {}, - this.methodInfoDebugLog); + this.methodDescriptorDebugLog); } - methodInfoDebugPods = new grpcWeb.AbstractClientBase.MethodInfo( + methodDescriptorDebugPods = new grpcWeb.MethodDescriptor( + '/px.api.vizierpb.VizierDebugService/DebugPods', + grpcWeb.MethodType.SERVER_STREAMING, + src_api_proto_vizierpb_vizierapi_pb.DebugPodsRequest, src_api_proto_vizierpb_vizierapi_pb.DebugPodsResponse, (request: src_api_proto_vizierpb_vizierapi_pb.DebugPodsRequest) => { return request.serializeBinary(); @@ -163,13 +182,13 @@ export class VizierDebugServiceClient { debugPods( request: src_api_proto_vizierpb_vizierapi_pb.DebugPodsRequest, - metadata?: grpcWeb.Metadata) { + metadata?: grpcWeb.Metadata): grpcWeb.ClientReadableStream { return this.client_.serverStreaming( this.hostname_ + '/px.api.vizierpb.VizierDebugService/DebugPods', request, metadata || {}, - this.methodInfoDebugPods); + this.methodDescriptorDebugPods); } } diff --git a/src/ui/src/types/generated/vizierapi_pb.d.ts b/src/ui/src/types/generated/vizierapi_pb.d.ts index fe38e0c37a0..7c9fe4b02c7 100755 --- a/src/ui/src/types/generated/vizierapi_pb.d.ts +++ b/src/ui/src/types/generated/vizierapi_pb.d.ts @@ -20,9 +20,9 @@ export class UInt128 extends jspb.Message { export namespace UInt128 { export type AsObject = { - low: number, - high: number, - } + low: number; + high: number; + }; } export class BooleanColumn extends jspb.Message { @@ -41,8 +41,8 @@ export class BooleanColumn extends jspb.Message { export namespace BooleanColumn { export type AsObject = { - dataList: Array, - } + dataList: Array; + }; } export class Int64Column extends jspb.Message { @@ -61,8 +61,8 @@ export class Int64Column extends jspb.Message { export namespace Int64Column { export type AsObject = { - dataList: Array, - } + dataList: Array; + }; } export class UInt128Column extends jspb.Message { @@ -81,8 +81,8 @@ export class UInt128Column extends jspb.Message { export namespace UInt128Column { export type AsObject = { - dataList: Array, - } + dataList: Array; + }; } export class Float64Column extends jspb.Message { @@ -101,8 +101,8 @@ export class Float64Column extends jspb.Message { export namespace Float64Column { export type AsObject = { - dataList: Array, - } + dataList: Array; + }; } export class Time64NSColumn extends jspb.Message { @@ -121,8 +121,8 @@ export class Time64NSColumn extends jspb.Message { export namespace Time64NSColumn { export type AsObject = { - dataList: Array, - } + dataList: Array; + }; } export class StringColumn extends jspb.Message { @@ -141,8 +141,8 @@ export class StringColumn extends jspb.Message { export namespace StringColumn { export type AsObject = { - dataList: Array, - } + dataList: Array; + }; } export class Column extends jspb.Message { @@ -188,15 +188,15 @@ export class Column extends jspb.Message { export namespace Column { export type AsObject = { - booleanData?: BooleanColumn.AsObject, - int64Data?: Int64Column.AsObject, - uint128Data?: UInt128Column.AsObject, - time64nsData?: Time64NSColumn.AsObject, - float64Data?: Float64Column.AsObject, - stringData?: StringColumn.AsObject, - } - - export enum ColDataCase { + booleanData?: BooleanColumn.AsObject; + int64Data?: Int64Column.AsObject; + uint128Data?: UInt128Column.AsObject; + time64nsData?: Time64NSColumn.AsObject; + float64Data?: Float64Column.AsObject; + stringData?: StringColumn.AsObject; + }; + + export enum ColDataCase { COL_DATA_NOT_SET = 0, BOOLEAN_DATA = 1, INT64_DATA = 2, @@ -235,12 +235,12 @@ export class RowBatchData extends jspb.Message { export namespace RowBatchData { export type AsObject = { - tableId: string, - colsList: Array, - numRows: number, - eow: boolean, - eos: boolean, - } + tableId: string; + colsList: Array; + numRows: number; + eow: boolean; + eos: boolean; + }; } export class Relation extends jspb.Message { @@ -259,8 +259,8 @@ export class Relation extends jspb.Message { export namespace Relation { export type AsObject = { - columnsList: Array, - } + columnsList: Array; + }; export class ColumnInfo extends jspb.Message { getColumnName(): string; @@ -285,11 +285,11 @@ export namespace Relation { export namespace ColumnInfo { export type AsObject = { - columnName: string, - columnType: DataType, - columnDesc: string, - columnSemanticType: SemanticType, - } + columnName: string; + columnType: DataType; + columnDesc: string; + columnSemanticType: SemanticType; + }; } } @@ -314,10 +314,10 @@ export class CompilerError extends jspb.Message { export namespace CompilerError { export type AsObject = { - line: number, - column: number, - message: string, - } + line: number; + column: number; + message: string; + }; } export class ErrorDetails extends jspb.Message { @@ -338,10 +338,10 @@ export class ErrorDetails extends jspb.Message { export namespace ErrorDetails { export type AsObject = { - compilerError?: CompilerError.AsObject, - } + compilerError?: CompilerError.AsObject; + }; - export enum ErrorCase { + export enum ErrorCase { ERROR_NOT_SET = 0, COMPILER_ERROR = 1, } @@ -369,10 +369,10 @@ export class Status extends jspb.Message { export namespace Status { export type AsObject = { - code: number, - message: string, - errorDetailsList: Array, - } + code: number; + message: string; + errorDetailsList: Array; + }; } export class ScalarValue extends jspb.Message { @@ -381,18 +381,28 @@ export class ScalarValue extends jspb.Message { getBoolValue(): boolean; setBoolValue(value: boolean): ScalarValue; + hasBoolValue(): boolean; + clearBoolValue(): ScalarValue; getInt64Value(): number; setInt64Value(value: number): ScalarValue; + hasInt64Value(): boolean; + clearInt64Value(): ScalarValue; getFloat64Value(): number; setFloat64Value(value: number): ScalarValue; + hasFloat64Value(): boolean; + clearFloat64Value(): ScalarValue; getStringValue(): string; setStringValue(value: string): ScalarValue; + hasStringValue(): boolean; + clearStringValue(): ScalarValue; getTime64NsValue(): number; setTime64NsValue(value: number): ScalarValue; + hasTime64NsValue(): boolean; + clearTime64NsValue(): ScalarValue; getUint128Value(): UInt128 | undefined; setUint128Value(value?: UInt128): ScalarValue; @@ -411,16 +421,16 @@ export class ScalarValue extends jspb.Message { export namespace ScalarValue { export type AsObject = { - dataType: DataType, - boolValue: boolean, - int64Value: number, - float64Value: number, - stringValue: string, - time64NsValue: number, - uint128Value?: UInt128.AsObject, - } - - export enum ValueCase { + dataType: DataType; + boolValue?: boolean; + int64Value?: number; + float64Value?: number; + stringValue?: string; + time64NsValue?: number; + uint128Value?: UInt128.AsObject; + }; + + export enum ValueCase { VALUE_NOT_SET = 0, BOOL_VALUE = 2, INT64_VALUE = 3, @@ -472,15 +482,15 @@ export class ExecuteScriptRequest extends jspb.Message { export namespace ExecuteScriptRequest { export type AsObject = { - queryStr: string, - clusterId: string, - execFuncsList: Array, - mutation: boolean, - encryptionOptions?: ExecuteScriptRequest.EncryptionOptions.AsObject, - queryId: string, - configs?: Configs.AsObject, - queryName: string, - } + queryStr: string; + clusterId: string; + execFuncsList: Array; + mutation: boolean; + encryptionOptions?: ExecuteScriptRequest.EncryptionOptions.AsObject; + queryId: string; + configs?: Configs.AsObject; + queryName: string; + }; export class FuncToExecute extends jspb.Message { getFuncName(): string; @@ -504,10 +514,10 @@ export namespace ExecuteScriptRequest { export namespace FuncToExecute { export type AsObject = { - funcName: string, - argValuesList: Array, - outputTablePrefix: string, - } + funcName: string; + argValuesList: Array; + outputTablePrefix: string; + }; export class ArgValue extends jspb.Message { getName(): string; @@ -526,9 +536,9 @@ export namespace ExecuteScriptRequest { export namespace ArgValue { export type AsObject = { - name: string, - value: string, - } + name: string; + value: string; + }; } } @@ -557,11 +567,11 @@ export namespace ExecuteScriptRequest { export namespace EncryptionOptions { export type AsObject = { - jwkKey: string, - keyAlg: string, - contentAlg: string, - compressionAlg: string, - } + jwkKey: string; + keyAlg: string; + contentAlg: string; + compressionAlg: string; + }; } } @@ -587,9 +597,9 @@ export class Configs extends jspb.Message { export namespace Configs { export type AsObject = { - otelEndpointConfig?: Configs.OTelEndpointConfig.AsObject, - pluginConfig?: Configs.PluginConfig.AsObject, - } + otelEndpointConfig?: Configs.OTelEndpointConfig.AsObject; + pluginConfig?: Configs.PluginConfig.AsObject; + }; export class OTelEndpointConfig extends jspb.Message { getUrl(): string; @@ -614,11 +624,11 @@ export namespace Configs { export namespace OTelEndpointConfig { export type AsObject = { - url: string, - headersMap: Array<[string, string]>, - insecure: boolean, - timeout: number, - } + url: string; + headersMap: Array<[string, string]>; + insecure: boolean; + timeout: number; + }; } @@ -639,9 +649,9 @@ export namespace Configs { export namespace PluginConfig { export type AsObject = { - startTimeNs: number, - endTimeNs: number, - } + startTimeNs: number; + endTimeNs: number; + }; } } @@ -663,9 +673,9 @@ export class QueryTimingInfo extends jspb.Message { export namespace QueryTimingInfo { export type AsObject = { - executionTimeNs: number, - compilationTimeNs: number, - } + executionTimeNs: number; + compilationTimeNs: number; + }; } export class QueryExecutionStats extends jspb.Message { @@ -690,10 +700,10 @@ export class QueryExecutionStats extends jspb.Message { export namespace QueryExecutionStats { export type AsObject = { - timing?: QueryTimingInfo.AsObject, - bytesProcessed: number, - recordsProcessed: number, - } + timing?: QueryTimingInfo.AsObject; + bytesProcessed: number; + recordsProcessed: number; + }; } export class QueryMetadata extends jspb.Message { @@ -718,10 +728,10 @@ export class QueryMetadata extends jspb.Message { export namespace QueryMetadata { export type AsObject = { - relation?: Relation.AsObject, - name: string, - id: string, - } + relation?: Relation.AsObject; + name: string; + id: string; + }; } export class QueryData extends jspb.Message { @@ -750,10 +760,10 @@ export class QueryData extends jspb.Message { export namespace QueryData { export type AsObject = { - batch?: RowBatchData.AsObject, - encryptedBatch: Uint8Array | string, - executionStats?: QueryExecutionStats.AsObject, - } + batch?: RowBatchData.AsObject; + encryptedBatch: Uint8Array | string; + executionStats?: QueryExecutionStats.AsObject; + }; } export class ExecuteScriptResponse extends jspb.Message { @@ -792,14 +802,14 @@ export class ExecuteScriptResponse extends jspb.Message { export namespace ExecuteScriptResponse { export type AsObject = { - status?: Status.AsObject, - queryId: string, - data?: QueryData.AsObject, - metaData?: QueryMetadata.AsObject, - mutationInfo?: MutationInfo.AsObject, - } - - export enum ResultCase { + status?: Status.AsObject; + queryId: string; + data?: QueryData.AsObject; + metaData?: QueryMetadata.AsObject; + mutationInfo?: MutationInfo.AsObject; + }; + + export enum ResultCase { RESULT_NOT_SET = 0, DATA = 3, META_DATA = 4, @@ -827,9 +837,9 @@ export class MutationInfo extends jspb.Message { export namespace MutationInfo { export type AsObject = { - status?: Status.AsObject, - statesList: Array, - } + status?: Status.AsObject; + statesList: Array; + }; export class MutationState extends jspb.Message { getId(): string; @@ -851,10 +861,10 @@ export namespace MutationInfo { export namespace MutationState { export type AsObject = { - id: string, - state: LifeCycleState, - name: string, - } + id: string; + state: LifeCycleState; + name: string; + }; } } @@ -873,8 +883,8 @@ export class HealthCheckRequest extends jspb.Message { export namespace HealthCheckRequest { export type AsObject = { - clusterId: string, - } + clusterId: string; + }; } export class HealthCheckResponse extends jspb.Message { @@ -893,8 +903,8 @@ export class HealthCheckResponse extends jspb.Message { export namespace HealthCheckResponse { export type AsObject = { - status?: Status.AsObject, - } + status?: Status.AsObject; + }; } export class GenerateOTelScriptRequest extends jspb.Message { @@ -914,9 +924,9 @@ export class GenerateOTelScriptRequest extends jspb.Message { export namespace GenerateOTelScriptRequest { export type AsObject = { - clusterId: string, - pxlScript: string, - } + clusterId: string; + pxlScript: string; + }; } export class GenerateOTelScriptResponse extends jspb.Message { @@ -938,9 +948,9 @@ export class GenerateOTelScriptResponse extends jspb.Message { export namespace GenerateOTelScriptResponse { export type AsObject = { - status?: Status.AsObject, - otelScript: string, - } + status?: Status.AsObject; + otelScript: string; + }; } export class DebugLogRequest extends jspb.Message { @@ -966,11 +976,11 @@ export class DebugLogRequest extends jspb.Message { export namespace DebugLogRequest { export type AsObject = { - clusterId: string, - podName: string, - previous: boolean, - container: string, - } + clusterId: string; + podName: string; + previous: boolean; + container: string; + }; } export class DebugLogResponse extends jspb.Message { @@ -987,8 +997,8 @@ export class DebugLogResponse extends jspb.Message { export namespace DebugLogResponse { export type AsObject = { - data: string, - } + data: string; + }; } export class ContainerStatus extends jspb.Message { @@ -1020,13 +1030,13 @@ export class ContainerStatus extends jspb.Message { export namespace ContainerStatus { export type AsObject = { - name: string, - containerState: ContainerState, - message: string, - reason: string, - startTimestampNs: number, - restartCount: number, - } + name: string; + containerState: ContainerState; + message: string; + reason: string; + startTimestampNs: number; + restartCount: number; + }; } export class VizierPodStatus extends jspb.Message { @@ -1063,14 +1073,14 @@ export class VizierPodStatus extends jspb.Message { export namespace VizierPodStatus { export type AsObject = { - name: string, - phase: PodPhase, - message: string, - reason: string, - createdAt: number, - containerStatusesList: Array, - restartCount: number, - } + name: string; + phase: PodPhase; + message: string; + reason: string; + createdAt: number; + containerStatusesList: Array; + restartCount: number; + }; } export class DebugPodsRequest extends jspb.Message { @@ -1087,8 +1097,8 @@ export class DebugPodsRequest extends jspb.Message { export namespace DebugPodsRequest { export type AsObject = { - clusterId: string, - } + clusterId: string; + }; } export class DebugPodsResponse extends jspb.Message { @@ -1112,12 +1122,12 @@ export class DebugPodsResponse extends jspb.Message { export namespace DebugPodsResponse { export type AsObject = { - dataPlanePodsList: Array, - controlPlanePodsList: Array, - } + dataPlanePodsList: Array; + controlPlanePodsList: Array; + }; } -export enum DataType { +export enum DataType { DATA_TYPE_UNKNOWN = 0, BOOLEAN = 1, INT64 = 2, @@ -1126,7 +1136,7 @@ export enum DataType { STRING = 5, TIME64NS = 6, } -export enum SemanticType { +export enum SemanticType { ST_UNSPECIFIED = 0, ST_NONE = 1, ST_TIME_NS = 2, @@ -1156,20 +1166,20 @@ export enum SemanticType { ST_HTTP_RESP_MESSAGE = 1500, ST_SCRIPT_REFERENCE = 3000, } -export enum LifeCycleState { +export enum LifeCycleState { UNKNOWN_STATE = 0, PENDING_STATE = 1, RUNNING_STATE = 2, FAILED_STATE = 3, TERMINATED_STATE = 4, } -export enum ContainerState { +export enum ContainerState { CONTAINER_STATE_UNKNOWN = 0, CONTAINER_STATE_RUNNING = 1, CONTAINER_STATE_TERMINATED = 2, CONTAINER_STATE_WAITING = 3, } -export enum PodPhase { +export enum PodPhase { PHASE_UNKNOWN = 0, PENDING = 1, RUNNING = 2, diff --git a/src/ui/src/types/generated/vizierapi_pb.js b/src/ui/src/types/generated/vizierapi_pb.js index dde6bc20610..cdf3eaf1de6 100755 --- a/src/ui/src/types/generated/vizierapi_pb.js +++ b/src/ui/src/types/generated/vizierapi_pb.js @@ -13,13 +13,7 @@ var jspb = require('google-protobuf'); var goog = jspb; -var global = - (typeof globalThis !== 'undefined' && globalThis) || - (typeof window !== 'undefined' && window) || - (typeof global !== 'undefined' && global) || - (typeof self !== 'undefined' && self) || - (function () { return this; }).call(null) || - Function('return this')(); +var global = globalThis; goog.exportSymbol('proto.px.api.vizierpb.BooleanColumn', null, global); goog.exportSymbol('proto.px.api.vizierpb.Column', null, global); @@ -920,8 +914,8 @@ proto.px.api.vizierpb.UInt128.prototype.toObject = function(opt_includeInstance) */ proto.px.api.vizierpb.UInt128.toObject = function(includeInstance, msg) { var f, obj = { - low: jspb.Message.getFieldWithDefault(msg, 1, 0), - high: jspb.Message.getFieldWithDefault(msg, 2, 0) +low: jspb.Message.getFieldWithDefault(msg, 1, 0), +high: jspb.Message.getFieldWithDefault(msg, 2, 0) }; if (includeInstance) { @@ -934,7 +928,7 @@ proto.px.api.vizierpb.UInt128.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.UInt128} */ proto.px.api.vizierpb.UInt128.deserializeBinary = function(bytes) { @@ -1087,7 +1081,7 @@ proto.px.api.vizierpb.BooleanColumn.prototype.toObject = function(opt_includeIns */ proto.px.api.vizierpb.BooleanColumn.toObject = function(includeInstance, msg) { var f, obj = { - dataList: (f = jspb.Message.getRepeatedBooleanField(msg, 1)) == null ? undefined : f +dataList: (f = jspb.Message.getRepeatedBooleanField(msg, 1)) == null ? undefined : f }; if (includeInstance) { @@ -1100,7 +1094,7 @@ proto.px.api.vizierpb.BooleanColumn.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.BooleanColumn} */ proto.px.api.vizierpb.BooleanColumn.deserializeBinary = function(bytes) { @@ -1125,10 +1119,7 @@ proto.px.api.vizierpb.BooleanColumn.deserializeBinaryFromReader = function(msg, var field = reader.getFieldNumber(); switch (field) { case 1: - var values = /** @type {!Array} */ (reader.isDelimited() ? reader.readPackedBool() : [reader.readBool()]); - for (var i = 0; i < values.length; i++) { - msg.addData(values[i]); - } + reader.readPackableBoolInto(msg.getDataList()); break; default: reader.skipField(); @@ -1245,7 +1236,7 @@ proto.px.api.vizierpb.Int64Column.prototype.toObject = function(opt_includeInsta */ proto.px.api.vizierpb.Int64Column.toObject = function(includeInstance, msg) { var f, obj = { - dataList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f +dataList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f }; if (includeInstance) { @@ -1258,7 +1249,7 @@ proto.px.api.vizierpb.Int64Column.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Int64Column} */ proto.px.api.vizierpb.Int64Column.deserializeBinary = function(bytes) { @@ -1283,10 +1274,7 @@ proto.px.api.vizierpb.Int64Column.deserializeBinaryFromReader = function(msg, re var field = reader.getFieldNumber(); switch (field) { case 1: - var values = /** @type {!Array} */ (reader.isDelimited() ? reader.readPackedInt64() : [reader.readInt64()]); - for (var i = 0; i < values.length; i++) { - msg.addData(values[i]); - } + reader.readPackableInt64Into(msg.getDataList()); break; default: reader.skipField(); @@ -1403,7 +1391,7 @@ proto.px.api.vizierpb.UInt128Column.prototype.toObject = function(opt_includeIns */ proto.px.api.vizierpb.UInt128Column.toObject = function(includeInstance, msg) { var f, obj = { - dataList: jspb.Message.toObjectList(msg.getDataList(), +dataList: jspb.Message.toObjectList(msg.getDataList(), proto.px.api.vizierpb.UInt128.toObject, includeInstance) }; @@ -1417,7 +1405,7 @@ proto.px.api.vizierpb.UInt128Column.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.UInt128Column} */ proto.px.api.vizierpb.UInt128Column.deserializeBinary = function(bytes) { @@ -1563,7 +1551,7 @@ proto.px.api.vizierpb.Float64Column.prototype.toObject = function(opt_includeIns */ proto.px.api.vizierpb.Float64Column.toObject = function(includeInstance, msg) { var f, obj = { - dataList: (f = jspb.Message.getRepeatedFloatingPointField(msg, 1)) == null ? undefined : f +dataList: (f = jspb.Message.getRepeatedFloatingPointField(msg, 1)) == null ? undefined : f }; if (includeInstance) { @@ -1576,7 +1564,7 @@ proto.px.api.vizierpb.Float64Column.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Float64Column} */ proto.px.api.vizierpb.Float64Column.deserializeBinary = function(bytes) { @@ -1601,10 +1589,7 @@ proto.px.api.vizierpb.Float64Column.deserializeBinaryFromReader = function(msg, var field = reader.getFieldNumber(); switch (field) { case 1: - var values = /** @type {!Array} */ (reader.isDelimited() ? reader.readPackedDouble() : [reader.readDouble()]); - for (var i = 0; i < values.length; i++) { - msg.addData(values[i]); - } + reader.readPackableDoubleInto(msg.getDataList()); break; default: reader.skipField(); @@ -1721,7 +1706,7 @@ proto.px.api.vizierpb.Time64NSColumn.prototype.toObject = function(opt_includeIn */ proto.px.api.vizierpb.Time64NSColumn.toObject = function(includeInstance, msg) { var f, obj = { - dataList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f +dataList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f }; if (includeInstance) { @@ -1734,7 +1719,7 @@ proto.px.api.vizierpb.Time64NSColumn.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Time64NSColumn} */ proto.px.api.vizierpb.Time64NSColumn.deserializeBinary = function(bytes) { @@ -1759,10 +1744,7 @@ proto.px.api.vizierpb.Time64NSColumn.deserializeBinaryFromReader = function(msg, var field = reader.getFieldNumber(); switch (field) { case 1: - var values = /** @type {!Array} */ (reader.isDelimited() ? reader.readPackedInt64() : [reader.readInt64()]); - for (var i = 0; i < values.length; i++) { - msg.addData(values[i]); - } + reader.readPackableInt64Into(msg.getDataList()); break; default: reader.skipField(); @@ -1879,7 +1861,7 @@ proto.px.api.vizierpb.StringColumn.prototype.toObject = function(opt_includeInst */ proto.px.api.vizierpb.StringColumn.toObject = function(includeInstance, msg) { var f, obj = { - dataList: msg.getDataList_asB64() +dataList: msg.getDataList_asB64() }; if (includeInstance) { @@ -1892,7 +1874,7 @@ proto.px.api.vizierpb.StringColumn.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.StringColumn} */ proto.px.api.vizierpb.StringColumn.deserializeBinary = function(bytes) { @@ -2082,12 +2064,12 @@ proto.px.api.vizierpb.Column.prototype.toObject = function(opt_includeInstance) */ proto.px.api.vizierpb.Column.toObject = function(includeInstance, msg) { var f, obj = { - booleanData: (f = msg.getBooleanData()) && proto.px.api.vizierpb.BooleanColumn.toObject(includeInstance, f), - int64Data: (f = msg.getInt64Data()) && proto.px.api.vizierpb.Int64Column.toObject(includeInstance, f), - uint128Data: (f = msg.getUint128Data()) && proto.px.api.vizierpb.UInt128Column.toObject(includeInstance, f), - time64nsData: (f = msg.getTime64nsData()) && proto.px.api.vizierpb.Time64NSColumn.toObject(includeInstance, f), - float64Data: (f = msg.getFloat64Data()) && proto.px.api.vizierpb.Float64Column.toObject(includeInstance, f), - stringData: (f = msg.getStringData()) && proto.px.api.vizierpb.StringColumn.toObject(includeInstance, f) +booleanData: (f = msg.getBooleanData()) && proto.px.api.vizierpb.BooleanColumn.toObject(includeInstance, f), +int64Data: (f = msg.getInt64Data()) && proto.px.api.vizierpb.Int64Column.toObject(includeInstance, f), +uint128Data: (f = msg.getUint128Data()) && proto.px.api.vizierpb.UInt128Column.toObject(includeInstance, f), +time64nsData: (f = msg.getTime64nsData()) && proto.px.api.vizierpb.Time64NSColumn.toObject(includeInstance, f), +float64Data: (f = msg.getFloat64Data()) && proto.px.api.vizierpb.Float64Column.toObject(includeInstance, f), +stringData: (f = msg.getStringData()) && proto.px.api.vizierpb.StringColumn.toObject(includeInstance, f) }; if (includeInstance) { @@ -2100,7 +2082,7 @@ proto.px.api.vizierpb.Column.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Column} */ proto.px.api.vizierpb.Column.deserializeBinary = function(bytes) { @@ -2495,12 +2477,12 @@ proto.px.api.vizierpb.RowBatchData.prototype.toObject = function(opt_includeInst */ proto.px.api.vizierpb.RowBatchData.toObject = function(includeInstance, msg) { var f, obj = { - tableId: jspb.Message.getFieldWithDefault(msg, 5, ""), - colsList: jspb.Message.toObjectList(msg.getColsList(), +tableId: jspb.Message.getFieldWithDefault(msg, 5, ""), +colsList: jspb.Message.toObjectList(msg.getColsList(), proto.px.api.vizierpb.Column.toObject, includeInstance), - numRows: jspb.Message.getFieldWithDefault(msg, 2, 0), - eow: jspb.Message.getBooleanFieldWithDefault(msg, 3, false), - eos: jspb.Message.getBooleanFieldWithDefault(msg, 4, false) +numRows: jspb.Message.getFieldWithDefault(msg, 2, 0), +eow: jspb.Message.getBooleanFieldWithDefault(msg, 3, false), +eos: jspb.Message.getBooleanFieldWithDefault(msg, 4, false) }; if (includeInstance) { @@ -2513,7 +2495,7 @@ proto.px.api.vizierpb.RowBatchData.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.RowBatchData} */ proto.px.api.vizierpb.RowBatchData.deserializeBinary = function(bytes) { @@ -2538,7 +2520,7 @@ proto.px.api.vizierpb.RowBatchData.deserializeBinaryFromReader = function(msg, r var field = reader.getFieldNumber(); switch (field) { case 5: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setTableId(value); break; case 1: @@ -2775,7 +2757,7 @@ proto.px.api.vizierpb.Relation.prototype.toObject = function(opt_includeInstance */ proto.px.api.vizierpb.Relation.toObject = function(includeInstance, msg) { var f, obj = { - columnsList: jspb.Message.toObjectList(msg.getColumnsList(), +columnsList: jspb.Message.toObjectList(msg.getColumnsList(), proto.px.api.vizierpb.Relation.ColumnInfo.toObject, includeInstance) }; @@ -2789,7 +2771,7 @@ proto.px.api.vizierpb.Relation.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Relation} */ proto.px.api.vizierpb.Relation.deserializeBinary = function(bytes) { @@ -2890,10 +2872,10 @@ proto.px.api.vizierpb.Relation.ColumnInfo.prototype.toObject = function(opt_incl */ proto.px.api.vizierpb.Relation.ColumnInfo.toObject = function(includeInstance, msg) { var f, obj = { - columnName: jspb.Message.getFieldWithDefault(msg, 1, ""), - columnType: jspb.Message.getFieldWithDefault(msg, 2, 0), - columnDesc: jspb.Message.getFieldWithDefault(msg, 3, ""), - columnSemanticType: jspb.Message.getFieldWithDefault(msg, 4, 0) +columnName: jspb.Message.getFieldWithDefault(msg, 1, ""), +columnType: jspb.Message.getFieldWithDefault(msg, 2, 0), +columnDesc: jspb.Message.getFieldWithDefault(msg, 3, ""), +columnSemanticType: jspb.Message.getFieldWithDefault(msg, 4, 0) }; if (includeInstance) { @@ -2906,7 +2888,7 @@ proto.px.api.vizierpb.Relation.ColumnInfo.toObject = function(includeInstance, m /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Relation.ColumnInfo} */ proto.px.api.vizierpb.Relation.ColumnInfo.deserializeBinary = function(bytes) { @@ -2931,7 +2913,7 @@ proto.px.api.vizierpb.Relation.ColumnInfo.deserializeBinaryFromReader = function var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setColumnName(value); break; case 2: @@ -2939,7 +2921,7 @@ proto.px.api.vizierpb.Relation.ColumnInfo.deserializeBinaryFromReader = function msg.setColumnType(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setColumnDesc(value); break; case 4: @@ -3148,9 +3130,9 @@ proto.px.api.vizierpb.CompilerError.prototype.toObject = function(opt_includeIns */ proto.px.api.vizierpb.CompilerError.toObject = function(includeInstance, msg) { var f, obj = { - line: jspb.Message.getFieldWithDefault(msg, 1, 0), - column: jspb.Message.getFieldWithDefault(msg, 2, 0), - message: jspb.Message.getFieldWithDefault(msg, 3, "") +line: jspb.Message.getFieldWithDefault(msg, 1, 0), +column: jspb.Message.getFieldWithDefault(msg, 2, 0), +message: jspb.Message.getFieldWithDefault(msg, 3, "") }; if (includeInstance) { @@ -3163,7 +3145,7 @@ proto.px.api.vizierpb.CompilerError.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.CompilerError} */ proto.px.api.vizierpb.CompilerError.deserializeBinary = function(bytes) { @@ -3196,7 +3178,7 @@ proto.px.api.vizierpb.CompilerError.deserializeBinaryFromReader = function(msg, msg.setColumn(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setMessage(value); break; default: @@ -3363,7 +3345,7 @@ proto.px.api.vizierpb.ErrorDetails.prototype.toObject = function(opt_includeInst */ proto.px.api.vizierpb.ErrorDetails.toObject = function(includeInstance, msg) { var f, obj = { - compilerError: (f = msg.getCompilerError()) && proto.px.api.vizierpb.CompilerError.toObject(includeInstance, f) +compilerError: (f = msg.getCompilerError()) && proto.px.api.vizierpb.CompilerError.toObject(includeInstance, f) }; if (includeInstance) { @@ -3376,7 +3358,7 @@ proto.px.api.vizierpb.ErrorDetails.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ErrorDetails} */ proto.px.api.vizierpb.ErrorDetails.deserializeBinary = function(bytes) { @@ -3521,9 +3503,9 @@ proto.px.api.vizierpb.Status.prototype.toObject = function(opt_includeInstance) */ proto.px.api.vizierpb.Status.toObject = function(includeInstance, msg) { var f, obj = { - code: jspb.Message.getFieldWithDefault(msg, 1, 0), - message: jspb.Message.getFieldWithDefault(msg, 2, ""), - errorDetailsList: jspb.Message.toObjectList(msg.getErrorDetailsList(), +code: jspb.Message.getFieldWithDefault(msg, 1, 0), +message: jspb.Message.getFieldWithDefault(msg, 2, ""), +errorDetailsList: jspb.Message.toObjectList(msg.getErrorDetailsList(), proto.px.api.vizierpb.ErrorDetails.toObject, includeInstance) }; @@ -3537,7 +3519,7 @@ proto.px.api.vizierpb.Status.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Status} */ proto.px.api.vizierpb.Status.deserializeBinary = function(bytes) { @@ -3566,7 +3548,7 @@ proto.px.api.vizierpb.Status.deserializeBinaryFromReader = function(msg, reader) msg.setCode(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setMessage(value); break; case 4: @@ -3764,13 +3746,13 @@ proto.px.api.vizierpb.ScalarValue.prototype.toObject = function(opt_includeInsta */ proto.px.api.vizierpb.ScalarValue.toObject = function(includeInstance, msg) { var f, obj = { - dataType: jspb.Message.getFieldWithDefault(msg, 1, 0), - boolValue: jspb.Message.getBooleanFieldWithDefault(msg, 2, false), - int64Value: jspb.Message.getFieldWithDefault(msg, 3, 0), - float64Value: jspb.Message.getFloatingPointFieldWithDefault(msg, 4, 0.0), - stringValue: jspb.Message.getFieldWithDefault(msg, 5, ""), - time64NsValue: jspb.Message.getFieldWithDefault(msg, 6, 0), - uint128Value: (f = msg.getUint128Value()) && proto.px.api.vizierpb.UInt128.toObject(includeInstance, f) +dataType: jspb.Message.getFieldWithDefault(msg, 1, 0), +boolValue: (f = jspb.Message.getBooleanField(msg, 2)) == null ? undefined : f, +int64Value: (f = jspb.Message.getField(msg, 3)) == null ? undefined : f, +float64Value: (f = jspb.Message.getOptionalFloatingPointField(msg, 4)) == null ? undefined : f, +stringValue: (f = jspb.Message.getField(msg, 5)) == null ? undefined : f, +time64NsValue: (f = jspb.Message.getField(msg, 6)) == null ? undefined : f, +uint128Value: (f = msg.getUint128Value()) && proto.px.api.vizierpb.UInt128.toObject(includeInstance, f) }; if (includeInstance) { @@ -3783,7 +3765,7 @@ proto.px.api.vizierpb.ScalarValue.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ScalarValue} */ proto.px.api.vizierpb.ScalarValue.deserializeBinary = function(bytes) { @@ -3824,7 +3806,7 @@ proto.px.api.vizierpb.ScalarValue.deserializeBinaryFromReader = function(msg, re msg.setFloat64Value(value); break; case 5: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setStringValue(value); break; case 6: @@ -4192,15 +4174,15 @@ proto.px.api.vizierpb.ExecuteScriptRequest.prototype.toObject = function(opt_inc */ proto.px.api.vizierpb.ExecuteScriptRequest.toObject = function(includeInstance, msg) { var f, obj = { - queryStr: jspb.Message.getFieldWithDefault(msg, 1, ""), - clusterId: jspb.Message.getFieldWithDefault(msg, 3, ""), - execFuncsList: jspb.Message.toObjectList(msg.getExecFuncsList(), +queryStr: jspb.Message.getFieldWithDefault(msg, 1, ""), +clusterId: jspb.Message.getFieldWithDefault(msg, 3, ""), +execFuncsList: jspb.Message.toObjectList(msg.getExecFuncsList(), proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.toObject, includeInstance), - mutation: jspb.Message.getBooleanFieldWithDefault(msg, 5, false), - encryptionOptions: (f = msg.getEncryptionOptions()) && proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.toObject(includeInstance, f), - queryId: jspb.Message.getFieldWithDefault(msg, 7, ""), - configs: (f = msg.getConfigs()) && proto.px.api.vizierpb.Configs.toObject(includeInstance, f), - queryName: jspb.Message.getFieldWithDefault(msg, 10, "") +mutation: jspb.Message.getBooleanFieldWithDefault(msg, 5, false), +encryptionOptions: (f = msg.getEncryptionOptions()) && proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.toObject(includeInstance, f), +queryId: jspb.Message.getFieldWithDefault(msg, 7, ""), +configs: (f = msg.getConfigs()) && proto.px.api.vizierpb.Configs.toObject(includeInstance, f), +queryName: jspb.Message.getFieldWithDefault(msg, 10, "") }; if (includeInstance) { @@ -4213,7 +4195,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.toObject = function(includeInstance, /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ExecuteScriptRequest} */ proto.px.api.vizierpb.ExecuteScriptRequest.deserializeBinary = function(bytes) { @@ -4238,11 +4220,11 @@ proto.px.api.vizierpb.ExecuteScriptRequest.deserializeBinaryFromReader = functio var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setQueryStr(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setClusterId(value); break; case 4: @@ -4260,7 +4242,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.deserializeBinaryFromReader = functio msg.setEncryptionOptions(value); break; case 7: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setQueryId(value); break; case 9: @@ -4269,7 +4251,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.deserializeBinaryFromReader = functio msg.setConfigs(value); break; case 10: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setQueryName(value); break; default: @@ -4402,10 +4384,10 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.prototype.toObject = fu */ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.toObject = function(includeInstance, msg) { var f, obj = { - funcName: jspb.Message.getFieldWithDefault(msg, 1, ""), - argValuesList: jspb.Message.toObjectList(msg.getArgValuesList(), +funcName: jspb.Message.getFieldWithDefault(msg, 1, ""), +argValuesList: jspb.Message.toObjectList(msg.getArgValuesList(), proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue.toObject, includeInstance), - outputTablePrefix: jspb.Message.getFieldWithDefault(msg, 3, "") +outputTablePrefix: jspb.Message.getFieldWithDefault(msg, 3, "") }; if (includeInstance) { @@ -4418,7 +4400,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.toObject = function(inc /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute} */ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.deserializeBinary = function(bytes) { @@ -4443,7 +4425,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.deserializeBinaryFromRe var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setFuncName(value); break; case 2: @@ -4452,7 +4434,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.deserializeBinaryFromRe msg.addArgValues(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setOutputTablePrefix(value); break; default: @@ -4541,8 +4523,8 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue.prototype.toOb */ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue.toObject = function(includeInstance, msg) { var f, obj = { - name: jspb.Message.getFieldWithDefault(msg, 1, ""), - value: jspb.Message.getFieldWithDefault(msg, 2, "") +name: jspb.Message.getFieldWithDefault(msg, 1, ""), +value: jspb.Message.getFieldWithDefault(msg, 2, "") }; if (includeInstance) { @@ -4555,7 +4537,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue.toObject = fun /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue} */ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue.deserializeBinary = function(bytes) { @@ -4580,11 +4562,11 @@ proto.px.api.vizierpb.ExecuteScriptRequest.FuncToExecute.ArgValue.deserializeBin var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setName(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setValue(value); break; default: @@ -4775,10 +4757,10 @@ proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.prototype.toObject */ proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.toObject = function(includeInstance, msg) { var f, obj = { - jwkKey: jspb.Message.getFieldWithDefault(msg, 1, ""), - keyAlg: jspb.Message.getFieldWithDefault(msg, 2, ""), - contentAlg: jspb.Message.getFieldWithDefault(msg, 3, ""), - compressionAlg: jspb.Message.getFieldWithDefault(msg, 4, "") +jwkKey: jspb.Message.getFieldWithDefault(msg, 1, ""), +keyAlg: jspb.Message.getFieldWithDefault(msg, 2, ""), +contentAlg: jspb.Message.getFieldWithDefault(msg, 3, ""), +compressionAlg: jspb.Message.getFieldWithDefault(msg, 4, "") }; if (includeInstance) { @@ -4791,7 +4773,7 @@ proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.toObject = function /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions} */ proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.deserializeBinary = function(bytes) { @@ -4816,19 +4798,19 @@ proto.px.api.vizierpb.ExecuteScriptRequest.EncryptionOptions.deserializeBinaryFr var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setJwkKey(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setKeyAlg(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setContentAlg(value); break; case 4: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setCompressionAlg(value); break; default: @@ -5197,8 +5179,8 @@ proto.px.api.vizierpb.Configs.prototype.toObject = function(opt_includeInstance) */ proto.px.api.vizierpb.Configs.toObject = function(includeInstance, msg) { var f, obj = { - otelEndpointConfig: (f = msg.getOtelEndpointConfig()) && proto.px.api.vizierpb.Configs.OTelEndpointConfig.toObject(includeInstance, f), - pluginConfig: (f = msg.getPluginConfig()) && proto.px.api.vizierpb.Configs.PluginConfig.toObject(includeInstance, f) +otelEndpointConfig: (f = msg.getOtelEndpointConfig()) && proto.px.api.vizierpb.Configs.OTelEndpointConfig.toObject(includeInstance, f), +pluginConfig: (f = msg.getPluginConfig()) && proto.px.api.vizierpb.Configs.PluginConfig.toObject(includeInstance, f) }; if (includeInstance) { @@ -5211,7 +5193,7 @@ proto.px.api.vizierpb.Configs.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Configs} */ proto.px.api.vizierpb.Configs.deserializeBinary = function(bytes) { @@ -5325,10 +5307,10 @@ proto.px.api.vizierpb.Configs.OTelEndpointConfig.prototype.toObject = function(o */ proto.px.api.vizierpb.Configs.OTelEndpointConfig.toObject = function(includeInstance, msg) { var f, obj = { - url: jspb.Message.getFieldWithDefault(msg, 1, ""), - headersMap: (f = msg.getHeadersMap()) ? f.toObject(includeInstance, undefined) : [], - insecure: jspb.Message.getBooleanFieldWithDefault(msg, 3, false), - timeout: jspb.Message.getFieldWithDefault(msg, 4, 0) +url: jspb.Message.getFieldWithDefault(msg, 1, ""), +headersMap: (f = msg.getHeadersMap()) ? f.toObject(includeInstance, undefined) : [], +insecure: jspb.Message.getBooleanFieldWithDefault(msg, 3, false), +timeout: jspb.Message.getFieldWithDefault(msg, 4, 0) }; if (includeInstance) { @@ -5341,7 +5323,7 @@ proto.px.api.vizierpb.Configs.OTelEndpointConfig.toObject = function(includeInst /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Configs.OTelEndpointConfig} */ proto.px.api.vizierpb.Configs.OTelEndpointConfig.deserializeBinary = function(bytes) { @@ -5366,13 +5348,13 @@ proto.px.api.vizierpb.Configs.OTelEndpointConfig.deserializeBinaryFromReader = f var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setUrl(value); break; case 2: var value = msg.getHeadersMap(); reader.readMessage(value, function(message, reader) { - jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", ""); + jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readStringRequireUtf8, jspb.BinaryReader.prototype.readStringRequireUtf8, null, "", ""); }); break; case 3: @@ -5421,7 +5403,12 @@ proto.px.api.vizierpb.Configs.OTelEndpointConfig.serializeBinaryToWriter = funct } f = message.getHeadersMap(true); if (f && f.getLength() > 0) { - f.serializeBinary(2, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString); +jspb.internal.public_for_gencode.serializeMapToBinary( + message.getHeadersMap(true), + 2, + writer, + jspb.BinaryWriter.prototype.writeString, + jspb.BinaryWriter.prototype.writeString); } f = message.getInsecure(); if (f) { @@ -5549,8 +5536,8 @@ proto.px.api.vizierpb.Configs.PluginConfig.prototype.toObject = function(opt_inc */ proto.px.api.vizierpb.Configs.PluginConfig.toObject = function(includeInstance, msg) { var f, obj = { - startTimeNs: jspb.Message.getFieldWithDefault(msg, 1, 0), - endTimeNs: jspb.Message.getFieldWithDefault(msg, 2, 0) +startTimeNs: jspb.Message.getFieldWithDefault(msg, 1, 0), +endTimeNs: jspb.Message.getFieldWithDefault(msg, 2, 0) }; if (includeInstance) { @@ -5563,7 +5550,7 @@ proto.px.api.vizierpb.Configs.PluginConfig.toObject = function(includeInstance, /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.Configs.PluginConfig} */ proto.px.api.vizierpb.Configs.PluginConfig.deserializeBinary = function(bytes) { @@ -5783,8 +5770,8 @@ proto.px.api.vizierpb.QueryTimingInfo.prototype.toObject = function(opt_includeI */ proto.px.api.vizierpb.QueryTimingInfo.toObject = function(includeInstance, msg) { var f, obj = { - executionTimeNs: jspb.Message.getFieldWithDefault(msg, 1, 0), - compilationTimeNs: jspb.Message.getFieldWithDefault(msg, 2, 0) +executionTimeNs: jspb.Message.getFieldWithDefault(msg, 1, 0), +compilationTimeNs: jspb.Message.getFieldWithDefault(msg, 2, 0) }; if (includeInstance) { @@ -5797,7 +5784,7 @@ proto.px.api.vizierpb.QueryTimingInfo.toObject = function(includeInstance, msg) /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.QueryTimingInfo} */ proto.px.api.vizierpb.QueryTimingInfo.deserializeBinary = function(bytes) { @@ -5943,9 +5930,9 @@ proto.px.api.vizierpb.QueryExecutionStats.prototype.toObject = function(opt_incl */ proto.px.api.vizierpb.QueryExecutionStats.toObject = function(includeInstance, msg) { var f, obj = { - timing: (f = msg.getTiming()) && proto.px.api.vizierpb.QueryTimingInfo.toObject(includeInstance, f), - bytesProcessed: jspb.Message.getFieldWithDefault(msg, 2, 0), - recordsProcessed: jspb.Message.getFieldWithDefault(msg, 3, 0) +timing: (f = msg.getTiming()) && proto.px.api.vizierpb.QueryTimingInfo.toObject(includeInstance, f), +bytesProcessed: jspb.Message.getFieldWithDefault(msg, 2, 0), +recordsProcessed: jspb.Message.getFieldWithDefault(msg, 3, 0) }; if (includeInstance) { @@ -5958,7 +5945,7 @@ proto.px.api.vizierpb.QueryExecutionStats.toObject = function(includeInstance, m /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.QueryExecutionStats} */ proto.px.api.vizierpb.QueryExecutionStats.deserializeBinary = function(bytes) { @@ -6154,9 +6141,9 @@ proto.px.api.vizierpb.QueryMetadata.prototype.toObject = function(opt_includeIns */ proto.px.api.vizierpb.QueryMetadata.toObject = function(includeInstance, msg) { var f, obj = { - relation: (f = msg.getRelation()) && proto.px.api.vizierpb.Relation.toObject(includeInstance, f), - name: jspb.Message.getFieldWithDefault(msg, 2, ""), - id: jspb.Message.getFieldWithDefault(msg, 3, "") +relation: (f = msg.getRelation()) && proto.px.api.vizierpb.Relation.toObject(includeInstance, f), +name: jspb.Message.getFieldWithDefault(msg, 2, ""), +id: jspb.Message.getFieldWithDefault(msg, 3, "") }; if (includeInstance) { @@ -6169,7 +6156,7 @@ proto.px.api.vizierpb.QueryMetadata.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.QueryMetadata} */ proto.px.api.vizierpb.QueryMetadata.deserializeBinary = function(bytes) { @@ -6199,11 +6186,11 @@ proto.px.api.vizierpb.QueryMetadata.deserializeBinaryFromReader = function(msg, msg.setRelation(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setName(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setId(value); break; default: @@ -6365,9 +6352,9 @@ proto.px.api.vizierpb.QueryData.prototype.toObject = function(opt_includeInstanc */ proto.px.api.vizierpb.QueryData.toObject = function(includeInstance, msg) { var f, obj = { - batch: (f = msg.getBatch()) && proto.px.api.vizierpb.RowBatchData.toObject(includeInstance, f), - encryptedBatch: msg.getEncryptedBatch_asB64(), - executionStats: (f = msg.getExecutionStats()) && proto.px.api.vizierpb.QueryExecutionStats.toObject(includeInstance, f) +batch: (f = msg.getBatch()) && proto.px.api.vizierpb.RowBatchData.toObject(includeInstance, f), +encryptedBatch: msg.getEncryptedBatch_asB64(), +executionStats: (f = msg.getExecutionStats()) && proto.px.api.vizierpb.QueryExecutionStats.toObject(includeInstance, f) }; if (includeInstance) { @@ -6380,7 +6367,7 @@ proto.px.api.vizierpb.QueryData.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.QueryData} */ proto.px.api.vizierpb.QueryData.deserializeBinary = function(bytes) { @@ -6647,11 +6634,11 @@ proto.px.api.vizierpb.ExecuteScriptResponse.prototype.toObject = function(opt_in */ proto.px.api.vizierpb.ExecuteScriptResponse.toObject = function(includeInstance, msg) { var f, obj = { - status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f), - queryId: jspb.Message.getFieldWithDefault(msg, 2, ""), - data: (f = msg.getData()) && proto.px.api.vizierpb.QueryData.toObject(includeInstance, f), - metaData: (f = msg.getMetaData()) && proto.px.api.vizierpb.QueryMetadata.toObject(includeInstance, f), - mutationInfo: (f = msg.getMutationInfo()) && proto.px.api.vizierpb.MutationInfo.toObject(includeInstance, f) +status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f), +queryId: jspb.Message.getFieldWithDefault(msg, 2, ""), +data: (f = msg.getData()) && proto.px.api.vizierpb.QueryData.toObject(includeInstance, f), +metaData: (f = msg.getMetaData()) && proto.px.api.vizierpb.QueryMetadata.toObject(includeInstance, f), +mutationInfo: (f = msg.getMutationInfo()) && proto.px.api.vizierpb.MutationInfo.toObject(includeInstance, f) }; if (includeInstance) { @@ -6664,7 +6651,7 @@ proto.px.api.vizierpb.ExecuteScriptResponse.toObject = function(includeInstance, /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ExecuteScriptResponse} */ proto.px.api.vizierpb.ExecuteScriptResponse.deserializeBinary = function(bytes) { @@ -6694,7 +6681,7 @@ proto.px.api.vizierpb.ExecuteScriptResponse.deserializeBinaryFromReader = functi msg.setStatus(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setQueryId(value); break; case 3: @@ -6988,8 +6975,8 @@ proto.px.api.vizierpb.MutationInfo.prototype.toObject = function(opt_includeInst */ proto.px.api.vizierpb.MutationInfo.toObject = function(includeInstance, msg) { var f, obj = { - status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f), - statesList: jspb.Message.toObjectList(msg.getStatesList(), +status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f), +statesList: jspb.Message.toObjectList(msg.getStatesList(), proto.px.api.vizierpb.MutationInfo.MutationState.toObject, includeInstance) }; @@ -7003,7 +6990,7 @@ proto.px.api.vizierpb.MutationInfo.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.MutationInfo} */ proto.px.api.vizierpb.MutationInfo.deserializeBinary = function(bytes) { @@ -7117,9 +7104,9 @@ proto.px.api.vizierpb.MutationInfo.MutationState.prototype.toObject = function(o */ proto.px.api.vizierpb.MutationInfo.MutationState.toObject = function(includeInstance, msg) { var f, obj = { - id: jspb.Message.getFieldWithDefault(msg, 1, ""), - state: jspb.Message.getFieldWithDefault(msg, 2, 0), - name: jspb.Message.getFieldWithDefault(msg, 3, "") +id: jspb.Message.getFieldWithDefault(msg, 1, ""), +state: jspb.Message.getFieldWithDefault(msg, 2, 0), +name: jspb.Message.getFieldWithDefault(msg, 3, "") }; if (includeInstance) { @@ -7132,7 +7119,7 @@ proto.px.api.vizierpb.MutationInfo.MutationState.toObject = function(includeInst /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.MutationInfo.MutationState} */ proto.px.api.vizierpb.MutationInfo.MutationState.deserializeBinary = function(bytes) { @@ -7157,7 +7144,7 @@ proto.px.api.vizierpb.MutationInfo.MutationState.deserializeBinaryFromReader = f var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setId(value); break; case 2: @@ -7165,7 +7152,7 @@ proto.px.api.vizierpb.MutationInfo.MutationState.deserializeBinaryFromReader = f msg.setState(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setName(value); break; default: @@ -7382,7 +7369,7 @@ proto.px.api.vizierpb.HealthCheckRequest.prototype.toObject = function(opt_inclu */ proto.px.api.vizierpb.HealthCheckRequest.toObject = function(includeInstance, msg) { var f, obj = { - clusterId: jspb.Message.getFieldWithDefault(msg, 1, "") +clusterId: jspb.Message.getFieldWithDefault(msg, 1, "") }; if (includeInstance) { @@ -7395,7 +7382,7 @@ proto.px.api.vizierpb.HealthCheckRequest.toObject = function(includeInstance, ms /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.HealthCheckRequest} */ proto.px.api.vizierpb.HealthCheckRequest.deserializeBinary = function(bytes) { @@ -7420,7 +7407,7 @@ proto.px.api.vizierpb.HealthCheckRequest.deserializeBinaryFromReader = function( var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setClusterId(value); break; default: @@ -7512,7 +7499,7 @@ proto.px.api.vizierpb.HealthCheckResponse.prototype.toObject = function(opt_incl */ proto.px.api.vizierpb.HealthCheckResponse.toObject = function(includeInstance, msg) { var f, obj = { - status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f) +status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f) }; if (includeInstance) { @@ -7525,7 +7512,7 @@ proto.px.api.vizierpb.HealthCheckResponse.toObject = function(includeInstance, m /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.HealthCheckResponse} */ proto.px.api.vizierpb.HealthCheckResponse.deserializeBinary = function(bytes) { @@ -7663,8 +7650,8 @@ proto.px.api.vizierpb.GenerateOTelScriptRequest.prototype.toObject = function(op */ proto.px.api.vizierpb.GenerateOTelScriptRequest.toObject = function(includeInstance, msg) { var f, obj = { - clusterId: jspb.Message.getFieldWithDefault(msg, 1, ""), - pxlScript: jspb.Message.getFieldWithDefault(msg, 2, "") +clusterId: jspb.Message.getFieldWithDefault(msg, 1, ""), +pxlScript: jspb.Message.getFieldWithDefault(msg, 2, "") }; if (includeInstance) { @@ -7677,7 +7664,7 @@ proto.px.api.vizierpb.GenerateOTelScriptRequest.toObject = function(includeInsta /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.GenerateOTelScriptRequest} */ proto.px.api.vizierpb.GenerateOTelScriptRequest.deserializeBinary = function(bytes) { @@ -7702,11 +7689,11 @@ proto.px.api.vizierpb.GenerateOTelScriptRequest.deserializeBinaryFromReader = fu var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setClusterId(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setPxlScript(value); break; default: @@ -7823,8 +7810,8 @@ proto.px.api.vizierpb.GenerateOTelScriptResponse.prototype.toObject = function(o */ proto.px.api.vizierpb.GenerateOTelScriptResponse.toObject = function(includeInstance, msg) { var f, obj = { - status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f), - otelScript: jspb.Message.getFieldWithDefault(msg, 2, "") +status: (f = msg.getStatus()) && proto.px.api.vizierpb.Status.toObject(includeInstance, f), +otelScript: jspb.Message.getFieldWithDefault(msg, 2, "") }; if (includeInstance) { @@ -7837,7 +7824,7 @@ proto.px.api.vizierpb.GenerateOTelScriptResponse.toObject = function(includeInst /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.GenerateOTelScriptResponse} */ proto.px.api.vizierpb.GenerateOTelScriptResponse.deserializeBinary = function(bytes) { @@ -7867,7 +7854,7 @@ proto.px.api.vizierpb.GenerateOTelScriptResponse.deserializeBinaryFromReader = f msg.setStatus(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setOtelScript(value); break; default: @@ -8004,10 +7991,10 @@ proto.px.api.vizierpb.DebugLogRequest.prototype.toObject = function(opt_includeI */ proto.px.api.vizierpb.DebugLogRequest.toObject = function(includeInstance, msg) { var f, obj = { - clusterId: jspb.Message.getFieldWithDefault(msg, 1, ""), - podName: jspb.Message.getFieldWithDefault(msg, 2, ""), - previous: jspb.Message.getBooleanFieldWithDefault(msg, 3, false), - container: jspb.Message.getFieldWithDefault(msg, 4, "") +clusterId: jspb.Message.getFieldWithDefault(msg, 1, ""), +podName: jspb.Message.getFieldWithDefault(msg, 2, ""), +previous: jspb.Message.getBooleanFieldWithDefault(msg, 3, false), +container: jspb.Message.getFieldWithDefault(msg, 4, "") }; if (includeInstance) { @@ -8020,7 +8007,7 @@ proto.px.api.vizierpb.DebugLogRequest.toObject = function(includeInstance, msg) /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.DebugLogRequest} */ proto.px.api.vizierpb.DebugLogRequest.deserializeBinary = function(bytes) { @@ -8045,11 +8032,11 @@ proto.px.api.vizierpb.DebugLogRequest.deserializeBinaryFromReader = function(msg var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setClusterId(value); break; case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setPodName(value); break; case 3: @@ -8057,7 +8044,7 @@ proto.px.api.vizierpb.DebugLogRequest.deserializeBinaryFromReader = function(msg msg.setPrevious(value); break; case 4: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setContainer(value); break; default: @@ -8224,7 +8211,7 @@ proto.px.api.vizierpb.DebugLogResponse.prototype.toObject = function(opt_include */ proto.px.api.vizierpb.DebugLogResponse.toObject = function(includeInstance, msg) { var f, obj = { - data: jspb.Message.getFieldWithDefault(msg, 2, "") +data: jspb.Message.getFieldWithDefault(msg, 2, "") }; if (includeInstance) { @@ -8237,7 +8224,7 @@ proto.px.api.vizierpb.DebugLogResponse.toObject = function(includeInstance, msg) /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.DebugLogResponse} */ proto.px.api.vizierpb.DebugLogResponse.deserializeBinary = function(bytes) { @@ -8262,7 +8249,7 @@ proto.px.api.vizierpb.DebugLogResponse.deserializeBinaryFromReader = function(ms var field = reader.getFieldNumber(); switch (field) { case 2: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setData(value); break; default: @@ -8354,12 +8341,12 @@ proto.px.api.vizierpb.ContainerStatus.prototype.toObject = function(opt_includeI */ proto.px.api.vizierpb.ContainerStatus.toObject = function(includeInstance, msg) { var f, obj = { - name: jspb.Message.getFieldWithDefault(msg, 1, ""), - containerState: jspb.Message.getFieldWithDefault(msg, 2, 0), - message: jspb.Message.getFieldWithDefault(msg, 3, ""), - reason: jspb.Message.getFieldWithDefault(msg, 4, ""), - startTimestampNs: jspb.Message.getFieldWithDefault(msg, 5, 0), - restartCount: jspb.Message.getFieldWithDefault(msg, 6, 0) +name: jspb.Message.getFieldWithDefault(msg, 1, ""), +containerState: jspb.Message.getFieldWithDefault(msg, 2, 0), +message: jspb.Message.getFieldWithDefault(msg, 3, ""), +reason: jspb.Message.getFieldWithDefault(msg, 4, ""), +startTimestampNs: jspb.Message.getFieldWithDefault(msg, 5, 0), +restartCount: jspb.Message.getFieldWithDefault(msg, 6, 0) }; if (includeInstance) { @@ -8372,7 +8359,7 @@ proto.px.api.vizierpb.ContainerStatus.toObject = function(includeInstance, msg) /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.ContainerStatus} */ proto.px.api.vizierpb.ContainerStatus.deserializeBinary = function(bytes) { @@ -8397,7 +8384,7 @@ proto.px.api.vizierpb.ContainerStatus.deserializeBinaryFromReader = function(msg var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setName(value); break; case 2: @@ -8405,11 +8392,11 @@ proto.px.api.vizierpb.ContainerStatus.deserializeBinaryFromReader = function(msg msg.setContainerState(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setMessage(value); break; case 4: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setReason(value); break; case 5: @@ -8641,14 +8628,14 @@ proto.px.api.vizierpb.VizierPodStatus.prototype.toObject = function(opt_includeI */ proto.px.api.vizierpb.VizierPodStatus.toObject = function(includeInstance, msg) { var f, obj = { - name: jspb.Message.getFieldWithDefault(msg, 1, ""), - phase: jspb.Message.getFieldWithDefault(msg, 2, 0), - message: jspb.Message.getFieldWithDefault(msg, 3, ""), - reason: jspb.Message.getFieldWithDefault(msg, 4, ""), - createdAt: jspb.Message.getFieldWithDefault(msg, 5, 0), - containerStatusesList: jspb.Message.toObjectList(msg.getContainerStatusesList(), +name: jspb.Message.getFieldWithDefault(msg, 1, ""), +phase: jspb.Message.getFieldWithDefault(msg, 2, 0), +message: jspb.Message.getFieldWithDefault(msg, 3, ""), +reason: jspb.Message.getFieldWithDefault(msg, 4, ""), +createdAt: jspb.Message.getFieldWithDefault(msg, 5, 0), +containerStatusesList: jspb.Message.toObjectList(msg.getContainerStatusesList(), proto.px.api.vizierpb.ContainerStatus.toObject, includeInstance), - restartCount: jspb.Message.getFieldWithDefault(msg, 7, 0) +restartCount: jspb.Message.getFieldWithDefault(msg, 7, 0) }; if (includeInstance) { @@ -8661,7 +8648,7 @@ proto.px.api.vizierpb.VizierPodStatus.toObject = function(includeInstance, msg) /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.VizierPodStatus} */ proto.px.api.vizierpb.VizierPodStatus.deserializeBinary = function(bytes) { @@ -8686,7 +8673,7 @@ proto.px.api.vizierpb.VizierPodStatus.deserializeBinaryFromReader = function(msg var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setName(value); break; case 2: @@ -8694,11 +8681,11 @@ proto.px.api.vizierpb.VizierPodStatus.deserializeBinaryFromReader = function(msg msg.setPhase(value); break; case 3: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setMessage(value); break; case 4: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setReason(value); break; case 5: @@ -8974,7 +8961,7 @@ proto.px.api.vizierpb.DebugPodsRequest.prototype.toObject = function(opt_include */ proto.px.api.vizierpb.DebugPodsRequest.toObject = function(includeInstance, msg) { var f, obj = { - clusterId: jspb.Message.getFieldWithDefault(msg, 1, "") +clusterId: jspb.Message.getFieldWithDefault(msg, 1, "") }; if (includeInstance) { @@ -8987,7 +8974,7 @@ proto.px.api.vizierpb.DebugPodsRequest.toObject = function(includeInstance, msg) /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.DebugPodsRequest} */ proto.px.api.vizierpb.DebugPodsRequest.deserializeBinary = function(bytes) { @@ -9012,7 +8999,7 @@ proto.px.api.vizierpb.DebugPodsRequest.deserializeBinaryFromReader = function(ms var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); + var value = /** @type {string} */ (reader.readStringRequireUtf8()); msg.setClusterId(value); break; default: @@ -9111,9 +9098,9 @@ proto.px.api.vizierpb.DebugPodsResponse.prototype.toObject = function(opt_includ */ proto.px.api.vizierpb.DebugPodsResponse.toObject = function(includeInstance, msg) { var f, obj = { - dataPlanePodsList: jspb.Message.toObjectList(msg.getDataPlanePodsList(), +dataPlanePodsList: jspb.Message.toObjectList(msg.getDataPlanePodsList(), proto.px.api.vizierpb.VizierPodStatus.toObject, includeInstance), - controlPlanePodsList: jspb.Message.toObjectList(msg.getControlPlanePodsList(), +controlPlanePodsList: jspb.Message.toObjectList(msg.getControlPlanePodsList(), proto.px.api.vizierpb.VizierPodStatus.toObject, includeInstance) }; @@ -9127,7 +9114,7 @@ proto.px.api.vizierpb.DebugPodsResponse.toObject = function(includeInstance, msg /** * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @param {jspb.binary.bytesource.ByteSource} bytes The bytes to deserialize. * @return {!proto.px.api.vizierpb.DebugPodsResponse} */ proto.px.api.vizierpb.DebugPodsResponse.deserializeBinary = function(bytes) { diff --git a/src/ui/yarn.lock b/src/ui/yarn.lock index 9d3f45fa7f6..22e61e82bf9 100644 --- a/src/ui/yarn.lock +++ b/src/ui/yarn.lock @@ -2810,10 +2810,10 @@ __metadata: favicons-webpack-plugin: ^6.0.0 file-loader: ^6.2.0 fsevents: ^2.3.2 - google-protobuf: ^3.15.5 + google-protobuf: 4.0.1 graphql: ^15.5.0 graphql-schema-typescript: ^1.5.2 - grpc-web: ^1.0.7 + grpc-web: 2.0.2 history: ^4.10.1 html-webpack-plugin: ^5.5.0 jest: ^27.3.1 @@ -8562,10 +8562,10 @@ __metadata: languageName: node linkType: hard -"google-protobuf@npm:^3.15.5": - version: 3.15.7 - resolution: "google-protobuf@npm:3.15.7" - checksum: 532b36804b260cb30402ab0c715e3706e2adb81319320cb5c198861c207d193807ccd22d754da3f1e5c5ae90f61b4627893afb6e2f2316fcab40b87fdf1978e3 +"google-protobuf@npm:4.0.1": + version: 4.0.1 + resolution: "google-protobuf@npm:4.0.1" + checksum: d6ed3007b121ac28dbe9a686bdcc26ba4aba8bc41bd43bbaf59c2cbad96eba4d56338b9da56e8006fa89922eb5b15cb5c79f40b82d03ac39e006c9163435ad4b languageName: node linkType: hard @@ -8658,10 +8658,10 @@ __metadata: languageName: node linkType: hard -"grpc-web@npm:^1.0.7": - version: 1.2.1 - resolution: "grpc-web@npm:1.2.1" - checksum: 3860a3761793ccff10db513126957acf2794bcdb0fb82fc20fc4ffbc16e25b9742500d966acc88fbb258bf1d88ef7a4014189287bffbc79177560d7d83eadec1 +"grpc-web@npm:2.0.2": + version: 2.0.2 + resolution: "grpc-web@npm:2.0.2" + checksum: 3f587ca5d8da51ca126f2014259981ee4b2d18051449db8a03a2df572fa94c5304b0f5ac4d6ed371aa76d278e6cfe428e05b0c703e23aa0dfabfec2ce5ec5dbd languageName: node linkType: hard diff --git a/third_party/protoc-gen-grpc-web/BUILD.bazel b/third_party/protoc-gen-grpc-web/BUILD.bazel deleted file mode 100644 index 8e4d4644c63..00000000000 --- a/third_party/protoc-gen-grpc-web/BUILD.bazel +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2018- The Pixie Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 - -load("@rules_cc//cc:defs.bzl", "cc_binary") - -package(default_visibility = ["//visibility:public"]) - -cc_binary( - name = "protoc-gen-grpc-web", - srcs = ["grpc_generator.cc"], - deps = [ - "@com_google_protobuf//:protoc_lib", - ], -) diff --git a/third_party/protoc-gen-grpc-web/LICENSE b/third_party/protoc-gen-grpc-web/LICENSE deleted file mode 100644 index 458935fcf5a..00000000000 --- a/third_party/protoc-gen-grpc-web/LICENSE +++ /dev/null @@ -1,205 +0,0 @@ -########################################## -### This license only applies to this directory -########################################## - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/third_party/protoc-gen-grpc-web/README.md b/third_party/protoc-gen-grpc-web/README.md deleted file mode 100644 index e361f29549a..00000000000 --- a/third_party/protoc-gen-grpc-web/README.md +++ /dev/null @@ -1,6 +0,0 @@ -# Info -This file contains the protobuf generator. The source code is -located here: https://github.com/grpc/grpc-web - -When they finish their bazel toolchain port we can consider -just adding it as an external dependency. diff --git a/third_party/protoc-gen-grpc-web/grpc_generator.cc b/third_party/protoc-gen-grpc-web/grpc_generator.cc deleted file mode 100644 index 276a00e73a8..00000000000 --- a/third_party/protoc-gen-grpc-web/grpc_generator.cc +++ /dev/null @@ -1,1818 +0,0 @@ -/** - * - * Copyright 2018 Google LLC - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -using google::protobuf::Descriptor; -using google::protobuf::EnumDescriptor; -using google::protobuf::FieldDescriptor; -using google::protobuf::FileDescriptor; -using google::protobuf::MethodDescriptor; -using google::protobuf::ServiceDescriptor; -using google::protobuf::FieldOptions; -using google::protobuf::OneofDescriptor; -using google::protobuf::compiler::CodeGenerator; -using google::protobuf::compiler::GeneratorContext; -using google::protobuf::compiler::ParseGeneratorParameter; -using google::protobuf::compiler::PluginMain; -using google::protobuf::io::Printer; -using google::protobuf::io::ZeroCopyOutputStream; - -namespace grpc { -namespace web { -namespace { - -using std::string; - -enum Mode { - OP = 0, // first party google3 one platform services - OPJSPB = 1, // first party google3 one platform services with JSPB - GRPCWEB = 2, // client using the application/grpc-web wire format -}; - -enum ImportStyle { - CLOSURE = 0, // goog.require("grpc.web.*") - COMMONJS = 1, // const grpcWeb = require("grpc-web") - TYPESCRIPT = 2, // import * as grpcWeb from 'grpc-web' -}; - -const char GRPC_PROMISE[] = "grpc.web.promise.GrpcWebPromise"; - -const char* kKeyword[] = { - "abstract", - "boolean", - "break", - "byte", - "case", - "catch", - "char", - "class", - "const", - "continue", - "debugger", - "default", - "delete", - "do", - "double", - "else", - "enum", - "export", - "extends", - "false", - "final", - "finally", - "float", - "for", - "function", - "goto", - "if", - "implements", - "import", - "in", - "instanceof", - "int", - "interface", - "long", - "native", - "new", - "null", - "package", - "private", - "protected", - "public", - "return", - "short", - "static", - "super", - "switch", - "synchronized", - "this", - "throw", - "throws", - "transient", - "try", - "typeof", - "var", - "void", - "volatile", - "while", - "with", -}; - -bool IsReserved(const string& ident) { - for (size_t i = 0; i < sizeof(kKeyword) / sizeof(kKeyword[0]); i++) { - if (ident == kKeyword[i]) { - return true; - } - } - return false; -} - -string GetModeVar(const Mode mode) { - switch (mode) { - case OP: - return "OP"; - case OPJSPB: - return "OPJspb"; - case GRPCWEB: - return "GrpcWeb"; - } - return ""; -} - -string GetDeserializeMethodName(const string& mode_var) { - if (mode_var == GetModeVar(Mode::OPJSPB)) { - return "deserialize"; - } - return "deserializeBinary"; -} - -string GetSerializeMethodName(const string& mode_var) { - if (mode_var == GetModeVar(Mode::OPJSPB)) { - return "serialize"; - } - return "serializeBinary"; -} - -std::string GetSerializeMethodReturnType(const string& mode_var) { - if (mode_var == GetModeVar(Mode::OPJSPB)) { - return "string"; - } - return "!Uint8Array"; -} - -string LowercaseFirstLetter(string s) { - if (s.empty()) { - return s; - } - s[0] = ::tolower(s[0]); - return s; -} - -string Lowercase(string s) { - if (s.empty()) { - return s; - } - - for (size_t i = 0; i < s.size(); i++) { - s[i] = ::tolower(s[i]); - } - return s; -} - -string UppercaseFirstLetter(string s) { - if (s.empty()) { - return s; - } - s[0] = ::toupper(s[0]); - return s; -} - -string Uppercase(string s) { - if (s.empty()) { - return s; - } - - for (size_t i = 0; i < s.size(); i++) { - s[i] = ::toupper(s[i]); - } - return s; -} - -// The following 5 functions were copied from -// google/protobuf/src/google/protobuf/stubs/strutil.h - -inline bool HasPrefixString(const string& str, - const string& prefix) { - return str.size() >= prefix.size() && - str.compare(0, prefix.size(), prefix) == 0; -} - -inline string StripPrefixString(const string& str, const string& prefix) { - if (HasPrefixString(str, prefix)) { - return str.substr(prefix.size()); - } else { - return str; - } -} - -inline bool HasSuffixString(const string& str, - const string& suffix) { - return str.size() >= suffix.size() && - str.compare(str.size() - suffix.size(), suffix.size(), suffix) == 0; -} - -inline string StripSuffixString(const string& str, const string& suffix) { - if (HasSuffixString(str, suffix)) { - return str.substr(0, str.size() - suffix.size()); - } else { - return str; - } -} - -void ReplaceCharacters(string *s, const char *remove, char replacewith) { - const char *str_start = s->c_str(); - const char *str = str_start; - for (str = strpbrk(str, remove); - str != nullptr; - str = strpbrk(str + 1, remove)) { - (*s)[str - str_start] = replacewith; - } -} - - -// The following function was copied from -// google/protobuf/src/google/protobuf/compiler/cpp/cpp_helpers.cc - -string StripProto(const string& filename) { - if (HasSuffixString(filename, ".protodevel")) { - return StripSuffixString(filename, ".protodevel"); - } else { - return StripSuffixString(filename, ".proto"); - } -} - -// The following 6 functions were copied from -// google/protobuf/src/google/protobuf/compiler/js/js_generator.cc - -char ToLowerASCII(char c) { - if (c >= 'A' && c <= 'Z') { - return (c - 'A') + 'a'; - } else { - return c; - } -} - -std::vector ParseLowerUnderscore(const string& input) { - std::vector words; - string running = ""; - for (size_t i = 0; i < input.size(); i++) { - if (input[i] == '_') { - if (!running.empty()) { - words.push_back(running); - running.clear(); - } - } else { - running += ToLowerASCII(input[i]); - } - } - if (!running.empty()) { - words.push_back(running); - } - return words; -} - -string ToUpperCamel(const std::vector& words) { - string result; - for (size_t i = 0; i < words.size(); i++) { - string word = words[i]; - if (word[0] >= 'a' && word[0] <= 'z') { - word[0] = (word[0] - 'a') + 'A'; - } - result += word; - } - return result; -} - -// Returns the alias we assign to the module of the given .proto filename -// when importing. -string ModuleAlias(const string& filename) { - // This scheme could technically cause problems if a file includes any 2 of: - // foo/bar_baz.proto - // foo_bar_baz.proto - // foo_bar/baz.proto - // - // We'll worry about this problem if/when we actually see it. This name isn't - // exposed to users so we can change it later if we need to. - string basename = StripProto(filename); - ReplaceCharacters(&basename, "-", '$'); - ReplaceCharacters(&basename, "/", '_'); - ReplaceCharacters(&basename, ".", '_'); - return basename + "_pb"; -} - -string JSMessageType(const Descriptor *desc, const FileDescriptor *file) { - string class_name; - class_name = StripPrefixString(desc->full_name(), desc->file()->package()); - if (!class_name.empty() && class_name[0] == '.') { - class_name = class_name.substr(1); - } - if (desc->file() == file) { - // [for protobuf .d.ts files only] Do not add the module prefix for local - // messages. - return class_name; - } - return ModuleAlias(desc->file()->name()) + "." + class_name; -} - -string JSMessageType(const Descriptor *desc) { - return JSMessageType(desc, nullptr); -} - -string JSElementType(const FieldDescriptor *desc, const FileDescriptor *file) { - switch (desc->type()) { - case FieldDescriptor::TYPE_DOUBLE: - case FieldDescriptor::TYPE_FLOAT: - case FieldDescriptor::TYPE_INT32: - case FieldDescriptor::TYPE_UINT32: - case FieldDescriptor::TYPE_SINT32: - case FieldDescriptor::TYPE_FIXED32: - case FieldDescriptor::TYPE_SFIXED32: - return "number"; - - case FieldDescriptor::TYPE_INT64: - case FieldDescriptor::TYPE_UINT64: - case FieldDescriptor::TYPE_SINT64: - case FieldDescriptor::TYPE_FIXED64: - case FieldDescriptor::TYPE_SFIXED64: - if (desc->options().jstype() == FieldOptions::JS_STRING) { - return "string"; - } else { - return "number"; - } - - case FieldDescriptor::TYPE_BOOL: - return "boolean"; - - case FieldDescriptor::TYPE_STRING: - return "string"; - - case FieldDescriptor::TYPE_BYTES: - return "Uint8Array | string"; - - case FieldDescriptor::TYPE_ENUM: - if (desc->enum_type()->file() == file) { - // [for protobuf .d.ts files only] Do not add the module prefix for - // local messages. - string enum_name = - StripPrefixString( - desc->enum_type()->full_name(), - desc->enum_type()->file()->package()); - return StripPrefixString(enum_name, "."); - } - return ModuleAlias(desc->enum_type()->file()->name()) - + StripPrefixString( - desc->enum_type()->full_name(), - desc->enum_type()->file()->package()); - - case FieldDescriptor::TYPE_MESSAGE: - return JSMessageType(desc->message_type(), file); - - default: - return "{}"; - } -} - -string JSFieldType(const FieldDescriptor *desc, const FileDescriptor *file) { - string js_field_type = JSElementType(desc, file); - if (desc->is_map()) { - string key_type = JSFieldType(desc->message_type()->field(0), file); - string value_type = JSFieldType(desc->message_type()->field(1), file); - return "jspb.Map<" + key_type + ", " + value_type + ">"; - } - if (desc->is_repeated()) - { - return "Array<" + js_field_type + ">"; - } - return js_field_type; -} - -string AsObjectFieldType( - const FieldDescriptor *desc, const FileDescriptor *file) { - if (desc->type() != FieldDescriptor::TYPE_MESSAGE) { - return JSFieldType(desc, file); - } - if (desc->is_map()) { - const Descriptor* message = desc->message_type(); - string key_type = AsObjectFieldType(message->field(0), file); - string value_type = AsObjectFieldType(message->field(1), file); - return "Array<[" + key_type + ", " + value_type + "]>"; - } - string field_type = JSMessageType(desc->message_type(), file) + ".AsObject"; - if (desc->is_repeated()) { - return "Array<" + field_type + ">"; - } - return field_type; -} - -string JSElementName(const FieldDescriptor *desc) { - return ToUpperCamel(ParseLowerUnderscore(desc->name())); -} - -string JSFieldName(const FieldDescriptor *desc) { - string js_field_name = JSElementName(desc); - if (desc->is_map()) { - js_field_name += "Map"; - } else if (desc->is_repeated()) { - js_field_name += "List"; - } - return js_field_name; -} - -// Like ToUpperCamel except the first letter is not converted. -string ToCamelCase(const std::vector& words) -{ - if (words.empty()) { - return ""; - } - string result = words[0]; - return result + ToUpperCamel(std::vector( - words.begin()+1, - words.begin()+words.size())); -} - -// Like JSFieldName, but with first letter not uppercased -string CamelCaseJSFieldName(const FieldDescriptor *desc) -{ - string js_field_name = ToCamelCase(ParseLowerUnderscore(desc->name())); - if (desc->is_map()) { - js_field_name += "Map"; - } else if (desc->is_repeated()) { - js_field_name += "List"; - } - return js_field_name; -} - -// Returns the name of the message with a leading dot and taking into account -// nesting, for example ".OuterMessage.InnerMessage", or returns empty if -// descriptor is null. This function does not handle namespacing, only message -// nesting. -string GetNestedMessageName(const Descriptor* descriptor) { - if (descriptor == nullptr) { - return ""; - } - string result = StripPrefixString(descriptor->full_name(), - descriptor->file()->package()); - // Add a leading dot if one is not already present. - if (!result.empty() && result[0] != '.') { - result = "." + result; - } - return result; -} - -// Given a filename like foo/bar/baz.proto, returns the root directory -// path ../../ -string GetRootPath(const string& from_filename, const string& to_filename) { - if (HasPrefixString(to_filename, "google/protobuf")) { - // Well-known types (.proto files in the google/protobuf directory) are - // assumed to come from the 'google-protobuf' npm package. We may want to - // generalize this exception later by letting others put generated code in - // their own npm packages. - return "google-protobuf/"; - } - - size_t slashes = std::count(from_filename.begin(), from_filename.end(), '/'); - if (slashes == 0) { - return "./"; - } - string result = ""; - for (size_t i = 0; i < slashes; i++) { - result += "../"; - } - return result; -} - -// Splits path immediately following the final slash, separating it into a -// directory and file name component. Directory will contain the last -// slash, if it's not empty. -// If there is no slash in path, Split returns an empty directory and -// basename set to path. -// Output values have the property that path = directory + basename. -void PathSplit(const string& path, string* directory, string* basename) { - string::size_type last_slash = path.rfind('/'); - if (last_slash == string::npos) { - if (directory) { - *directory = ""; - } - if (basename) { - *basename = path; - } - } else { - if (directory) { - *directory = path.substr(0, last_slash + 1); - } - if (basename) { - *basename = path.substr(last_slash + 1); - } - } -} - -// Returns the basename of a file. -string GetBasename(string filename) { - string basename; - PathSplit(filename, nullptr, &basename); - return basename; -} - -// Finds all message types used in all services in the file. -std::set GetAllMessages(const FileDescriptor* file) { - std::set messages; - for (int s = 0; s < file->service_count(); ++s) { - const ServiceDescriptor* service = file->service(s); - for (int m = 0; m < service->method_count(); ++m) { - const MethodDescriptor *method = service->method(m); - messages.insert(method->input_type()); - messages.insert(method->output_type()); - } - } - - return messages; -} - -void PrintClosureDependencies(Printer* printer, const FileDescriptor* file) { - for (const Descriptor* message : GetAllMessages(file)) { - printer->Print( - "goog.require('proto.$full_name$');\n", - "full_name", message->full_name()); - } - printer->Print("\n\n\n"); -} - -void PrintCommonJsMessagesDeps(Printer* printer, const FileDescriptor* file) { - std::map vars; - - for (int i = 0; i < file->dependency_count(); i++) { - const string& name = file->dependency(i)->name(); - vars["alias"] = ModuleAlias(name); - vars["dep_filename"] = GetRootPath(file->name(), name) + StripProto(name); - // we need to give each cross-file import an alias - printer->Print( - vars, - "\nvar $alias$ = require('$dep_filename$_pb.js')\n"); - } - - string package = file->package(); - vars["package_name"] = package; - - if (!package.empty()) { - size_t offset = 0; - size_t dotIndex = package.find('.'); - - printer->Print(vars, "const proto = {};\n"); - - while (dotIndex != string::npos) { - vars["current_package_ns"] = package.substr(0, dotIndex); - printer->Print(vars, "proto.$current_package_ns$ = {};\n"); - - offset = dotIndex + 1; - dotIndex = package.find(".", offset); - } - } - - // need to import the messages from our own file - vars["filename"] = GetBasename(StripProto(file->name())); - - if (!package.empty()) { - printer->Print( - vars, - "proto.$package_name$ = require('./$filename$_pb.js');\n\n"); - } else { - printer->Print( - vars, - "const proto = require('./$filename$_pb.js');\n\n"); - } -} - -void PrintES6Imports(Printer* printer, const FileDescriptor* file) { - std::map vars; - - printer->Print("import * as grpcWeb from 'grpc-web';\n\n"); - - std::set imports; - for (const Descriptor* message : GetAllMessages(file)) { - const string& name = message->file()->name(); - string dep_filename = GetRootPath(file->name(), name) + StripProto(name); - if (imports.find(dep_filename) != imports.end()) { - continue; - } - imports.insert(dep_filename); - // We need to give each cross-file import an alias. - printer->Print( - "import * as $alias$ from '$dep_filename$_pb';\n", - "alias", ModuleAlias(name), - "dep_filename", dep_filename); - } - printer->Print("\n\n"); -} - -void PrintTypescriptFile(Printer* printer, const FileDescriptor* file, - std::map vars) { - PrintES6Imports(printer, file); - for (int service_index = 0; service_index < file->service_count(); - ++service_index) { - printer->Print("export class "); - const ServiceDescriptor* service = file->service(service_index); - vars["service_name"] = service->name(); - printer->Print(vars, "$service_name$Client {\n"); - printer->Indent(); - printer->Print( - "client_: grpcWeb.AbstractClientBase;\n" - "hostname_: string;\n" - "credentials_: null | { [index: string]: string; };\n" - "options_: null | { [index: string]: any; };\n\n" - "constructor (hostname: string,\n" - " credentials?: null | { [index: string]: string; },\n" - " options?: null | { [index: string]: any; }) {\n"); - printer->Indent(); - printer->Print("if (!options) options = {};\n"); - printer->Print("if (!credentials) credentials = {};\n"); - if (vars["mode"] == GetModeVar(Mode::GRPCWEB)) { - printer->Print(vars, "options['format'] = '$format$';\n\n"); - } - printer->Print(vars, - "this.client_ = new grpcWeb.$mode$ClientBase(options);\n" - "this.hostname_ = hostname;\n" - "this.credentials_ = credentials;\n" - "this.options_ = options;\n"); - printer->Outdent(); - printer->Print("}\n\n"); - - for (int method_index = 0; method_index < service->method_count(); - ++method_index) { - const MethodDescriptor* method = service->method(method_index); - vars["js_method_name"] = LowercaseFirstLetter(method->name()); - vars["method_name"] = method->name(); - vars["input_type"] = JSMessageType(method->input_type()); - vars["output_type"] = JSMessageType(method->output_type()); - vars["serialize_func_name"] = GetSerializeMethodName(vars["mode"]); - vars["deserialize_func_name"] = GetDeserializeMethodName(vars["mode"]); - if (!method->client_streaming()) { - // TODO(jennyjiang): use methodDescriptor? - printer->Print(vars, - "methodInfo$method_name$ = " - "new grpcWeb.AbstractClientBase.MethodInfo(\n"); - printer->Indent(); - printer->Print(vars, - "$output_type$,\n" - "(request: $input_type$) => {\n" - " return request.$serialize_func_name$();\n" - "},\n" - "$output_type$.$deserialize_func_name$\n"); - printer->Outdent(); - printer->Print(");\n\n"); - if (method->server_streaming()) { - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata?: grpcWeb.Metadata) {\n"); - printer->Print(vars, "return this.client_.serverStreaming(\n"); - printer->Indent(); - printer->Print( - vars, - "this.hostname_ +\n" - " '/$package_dot$$service_name$/$method_name$',\n" - "request,\n" - "metadata || {},\n" - "this.methodInfo$method_name$);\n"); - printer->Outdent(); - printer->Outdent(); - printer->Print("}\n\n"); - } else { - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata: grpcWeb.Metadata | null): " - "$promise$<$output_type$>;\n\n"); - printer->Outdent(); - - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata: grpcWeb.Metadata | null,\n" - "callback: (err: grpcWeb.Error,\n" - " response: $output_type$) => void): " - "grpcWeb.ClientReadableStream<$output_type$>;\n\n"); - printer->Outdent(); - - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata: grpcWeb.Metadata | null,\n" - "callback?: (err: grpcWeb.Error,\n" - " response: $output_type$) => void) {\n"); - printer->Print(vars, "if (callback !== undefined) {\n"); - printer->Indent(); - printer->Print(vars, "return this.client_.rpcCall(\n"); - printer->Indent(); - printer->Print( - vars, - "this.hostname_ +\n" - " '/$package_dot$$service_name$/$method_name$',\n" - "request,\n" - "metadata || {},\n" - "this.methodInfo$method_name$,\n" - "callback);\n"); - printer->Outdent(); - printer->Outdent(); - printer->Print(vars, - "}\n" - "return this.client_.unaryCall(\n"); - printer->Print(vars, - "this.hostname_ +\n" - " '/$package_dot$$service_name$/$method_name$',\n" - "request,\n" - "metadata || {},\n" - "this.methodInfo$method_name$);\n"); - printer->Outdent(); - printer->Print("}\n\n"); - } - } - } - printer->Outdent(); - printer->Print("}\n\n"); - } -} - -void PrintGrpcWebDtsClientClass(Printer* printer, const FileDescriptor* file, - const string &client_type) { - std::map vars; - vars["client_type"] = client_type; - vars["promise"] = "Promise"; - for (int service_index = 0; service_index < file->service_count(); - ++service_index) { - printer->Print("export class "); - const ServiceDescriptor* service = file->service(service_index); - vars["service_name"] = service->name(); - printer->Print(vars, "$service_name$$client_type$ {\n"); - printer->Indent(); - printer->Print( - "constructor (hostname: string,\n" - " credentials?: null | { [index: string]: string; },\n" - " options?: null | { [index: string]: any; });\n\n"); - for (int method_index = 0; method_index < service->method_count(); - ++method_index) { - const MethodDescriptor* method = service->method(method_index); - vars["js_method_name"] = LowercaseFirstLetter(method->name()); - vars["input_type"] = JSMessageType(method->input_type()); - vars["output_type"] = JSMessageType(method->output_type()); - if (!method->client_streaming()) { - if (method->server_streaming()) { - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata?: grpcWeb.Metadata\n"); - printer->Outdent(); - printer->Print(vars, - "): grpcWeb.ClientReadableStream<$output_type$>;\n\n"); - } else { - if (vars["client_type"] == "PromiseClient") { - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata?: grpcWeb.Metadata\n"); - printer->Outdent(); - printer->Print(vars, "): $promise$<$output_type$>;\n\n"); - } else { - printer->Print(vars, "$js_method_name$(\n"); - printer->Indent(); - printer->Print(vars, - "request: $input_type$,\n" - "metadata: grpcWeb.Metadata | undefined,\n" - "callback: (err: grpcWeb.Error,\n" - " response: $output_type$) => void\n"); - printer->Outdent(); - printer->Print(vars, - "): grpcWeb.ClientReadableStream<$output_type$>;"); - printer->Print("\n\n"); - } - } - } - } - printer->Outdent(); - printer->Print("}\n\n"); - } -} - -void PrintGrpcWebDtsFile(Printer* printer, const FileDescriptor* file) { - PrintES6Imports(printer, file); - PrintGrpcWebDtsClientClass(printer, file, "Client"); - PrintGrpcWebDtsClientClass(printer, file, "PromiseClient"); -} - -void PrintProtoDtsEnum(Printer *printer, const EnumDescriptor *desc) -{ - std::map vars; - vars["enum_name"] = desc->name(); - - printer->Print(vars, "export enum $enum_name$ { \n"); - printer->Indent(); - for (int i = 0; i < desc->value_count(); i++) - { - vars["value_name"] = Uppercase(desc->value(i)->name()); - vars["value_number"] = std::to_string(desc->value(i)->number()); - printer->Print(vars, "$value_name$ = $value_number$,\n"); - } - printer->Outdent(); - printer->Print("}\n"); -} - -void PrintProtoDtsOneofCase(Printer *printer, const OneofDescriptor *desc) -{ - std::map vars; - vars["oneof_name"] = ToUpperCamel(ParseLowerUnderscore(desc->name())); - vars["oneof_name_upper"] = Uppercase(desc->name()); - - printer->Print(vars, "export enum $oneof_name$Case { \n"); - printer->Indent(); - printer->Print(vars, "$oneof_name_upper$_NOT_SET = 0,\n"); - for (int i = 0; i < desc->field_count(); i++) { - const FieldDescriptor *field = desc->field(i); - vars["field_name"] = Uppercase(field->name()); - vars["field_number"] = std::to_string(field->number()); - printer->Print(vars, "$field_name$ = $field_number$,\n"); - } - printer->Outdent(); - printer->Print("}\n"); -} - -void PrintProtoDtsMessage(Printer *printer, const Descriptor *desc, - const FileDescriptor *file) { - string class_name = desc->name(); - std::map vars; - vars["class_name"] = class_name; - - printer->Print(vars, "export class $class_name$ extends jspb.Message {\n"); - printer->Indent(); - for (int i = 0; i < desc->field_count(); i++) { - const FieldDescriptor* field = desc->field(i); - vars["js_field_name"] = JSFieldName(field); - vars["js_field_type"] = JSFieldType(field, file); - if (field->type() != FieldDescriptor::TYPE_MESSAGE || - field->is_repeated()) { - printer->Print(vars, - "get$js_field_name$(): $js_field_type$;\n"); - } else { - printer->Print(vars, - "get$js_field_name$(): $js_field_type$ | undefined;\n"); - } - if (field->type() == FieldDescriptor::TYPE_BYTES && !field->is_repeated()) { - printer->Print(vars, - "get$js_field_name$_asU8(): Uint8Array;\n" - "get$js_field_name$_asB64(): string;\n"); - } - if (!field->is_map() && (field->type() != FieldDescriptor::TYPE_MESSAGE || - field->is_repeated())) { - printer->Print(vars, - "set$js_field_name$(value: $js_field_type$): " - "$class_name$;\n"); - } else if (!field->is_map()) { - printer->Print(vars, - "set$js_field_name$(value?: $js_field_type$): " - "$class_name$;\n"); - } - if (field->type() == FieldDescriptor::TYPE_MESSAGE && !field->is_repeated() - && !field->is_map()) { - printer->Print(vars, "has$js_field_name$(): boolean;\n"); - } - if (field->type() == FieldDescriptor::TYPE_MESSAGE || - field->is_repeated() || field->is_map()) { - printer->Print(vars, "clear$js_field_name$(): $class_name$;\n"); - } - if (field->is_repeated() && !field->is_map()) { - vars["js_field_name"] = JSElementName(field); - vars["js_field_type"] = JSElementType(field, file); - if (field->type() != FieldDescriptor::TYPE_MESSAGE) { - printer->Print(vars, - "add$js_field_name$(value: $js_field_type$, " - "index?: number): $class_name$;\n"); - } else { - printer->Print(vars, - "add$js_field_name$(value?: $js_field_type$, " - "index?: number): $js_field_type$;\n"); - } - } - - printer->Print("\n"); - } - - for (int i = 0; i < desc->oneof_decl_count(); i++) { - const OneofDescriptor* oneof = desc->oneof_decl(i); - vars["js_oneof_name"] = ToUpperCamel(ParseLowerUnderscore(oneof->name())); - printer->Print( - vars, - "get$js_oneof_name$Case(): $class_name$.$js_oneof_name$Case;\n"); - printer->Print("\n"); - } - - printer->Print( - vars, - "serializeBinary(): Uint8Array;\n" - "toObject(includeInstance?: boolean): " - "$class_name$.AsObject;\n" - "static toObject(includeInstance: boolean, msg: $class_name$): " - "$class_name$.AsObject;\n" - "static serializeBinaryToWriter(message: $class_name$, writer: " - "jspb.BinaryWriter): void;\n" - "static deserializeBinary(bytes: Uint8Array): $class_name$;\n" - "static deserializeBinaryFromReader(message: $class_name$, reader: " - "jspb.BinaryReader): $class_name$;\n"); - printer->Outdent(); - printer->Print("}\n\n"); - - printer->Print(vars, "export namespace $class_name$ {\n"); - printer->Indent(); - printer->Print("export type AsObject = {\n"); - printer->Indent(); - for (int i = 0; i < desc->field_count(); i++) { - const FieldDescriptor* field = desc->field(i); - string js_field_name = CamelCaseJSFieldName(field); - if (IsReserved(js_field_name)) { - js_field_name = "pb_" + js_field_name; - } - vars["js_field_name"] = js_field_name; - vars["js_field_type"] = AsObjectFieldType(field, file); - if (field->type() != FieldDescriptor::TYPE_MESSAGE || - field->is_repeated()) { - printer->Print(vars, "$js_field_name$: $js_field_type$,\n"); - } else { - printer->Print(vars, "$js_field_name$?: $js_field_type$,\n"); - } - } - printer->Outdent(); - printer->Print("}\n"); - - for (int i = 0; i < desc->nested_type_count(); i++) { - if (desc->nested_type(i)->options().map_entry()) { - continue; - } - printer->Print("\n"); - PrintProtoDtsMessage(printer, desc->nested_type(i), file); - } - - for (int i = 0; i < desc->enum_type_count(); i++) { - printer->Print("\n"); - PrintProtoDtsEnum(printer, desc->enum_type(i)); - } - - for (int i = 0; i < desc->oneof_decl_count(); i++) { - printer->Print("\n"); - PrintProtoDtsOneofCase(printer, desc->oneof_decl(i)); - } - - printer->Outdent(); - printer->Print("}\n\n"); -} - -void PrintProtoDtsFile(Printer *printer, const FileDescriptor *file) -{ - printer->Print("import * as jspb from 'google-protobuf'\n\n"); - - for (int i = 0; i < file->dependency_count(); i++) { - const string& name = file->dependency(i)->name(); - // We need to give each cross-file import an alias. - printer->Print( - "import * as $alias$ from '$dep_filename$_pb';\n", - "alias", ModuleAlias(name), - "dep_filename", GetRootPath(file->name(), name) + StripProto(name)); - } - printer->Print("\n\n"); - - for (int i = 0; i < file->message_type_count(); i++) { - PrintProtoDtsMessage(printer, file->message_type(i), file); - } - - for (int i = 0; i < file->enum_type_count(); i++) { - PrintProtoDtsEnum(printer, file->enum_type(i)); - } -} - -void PrintFileHeader(Printer* printer, const std::map& vars) { - printer->Print( - vars, - "/**\n" - " * @fileoverview gRPC-Web generated client stub for $package$\n" - " * @enhanceable\n" - " * @public\n" - " */\n\n" - "// GENERATED CODE -- DO NOT EDIT!\n\n\n" - "/* eslint-disable */\n" - "// @ts-nocheck\n\n\n"); -} - -void PrintMethodDescriptorFile(Printer* printer, - std::map vars) { - printer->Print( - vars, - "/**\n" - " * @fileoverview gRPC-Web generated MethodDescriptors for $package$\n" - " * @enhanceable\n" - " * @public\n" - " */\n\n" - "// GENERATED CODE -- DO NOT EDIT!\n\n\n" - "/* eslint-disable */\n" - "// @ts-nocheck\n\n\n"); - - printer->Print(vars, - "goog.provide('proto.$package_dot$$class_name$.$" - "method_name$MethodDescriptor');\n\n"); - printer->Print(vars, "goog.require('grpc.web.MethodDescriptor');\n"); - printer->Print(vars, "goog.require('grpc.web.MethodType');\n"); - printer->Print(vars, "goog.require('$in_type$');\n"); - if (vars["out_type"] != vars["in_type"]) { - printer->Print(vars, "goog.require('$out_type$');\n"); - } - printer->Print(vars, "\n\ngoog.scope(function() {\n\n"); - - printer->Print( - vars, - "/**\n" - " * @const\n" - " * @type {!grpc.web.MethodDescriptor<\n" - " * !proto.$in$,\n" - " * !proto.$out$>}\n" - " */\n" - "proto.$package_dot$$class_name$.$method_name$MethodDescriptor = \n"); - printer->Indent(); - printer->Indent(); - printer->Print(vars, "new grpc.web.MethodDescriptor(\n"); - printer->Indent(); - printer->Indent(); - printer->Print(vars, - "'/$package_dot$$service_name$/$method_name$',\n" - "$method_type$,\n" - "$in_type$,\n"); - printer->Print(vars, - "$out_type$,\n" - "/**\n" - " * @param {!proto.$in$} request\n"); - printer->Print( - (" * @return {" + GetSerializeMethodReturnType(vars["mode"]) + "}\n") - .c_str()); - printer->Print(" */\n" - "function(request) {\n"); - printer->Print( - (" return request." + GetSerializeMethodName(vars["mode"]) + "();\n") - .c_str()); - printer->Print("},\n"); - printer->Print( - vars, ("$out_type$." + GetDeserializeMethodName(vars["mode"])).c_str()); - printer->Print(vars, ");\n\n\n"); - printer->Outdent(); - printer->Outdent(); - printer->Outdent(); - printer->Outdent(); - printer->Print("}); // goog.scope\n\n"); -} - -void PrintServiceConstructor(Printer* printer, - std::map vars) { - printer->Print( - vars, - "/**\n" - " * @param {string} hostname\n" - " * @param {?Object} credentials\n" - " * @param {?Object} options\n" - " * @constructor\n" - " * @struct\n" - " * @final\n" - " */\n" - "proto.$package_dot$$service_name$Client =\n" - " function(hostname, credentials, options) {\n" - " if (!options) options = {};\n"); - if (vars["mode"] == GetModeVar(Mode::GRPCWEB)) { - printer->Print( - vars, - " options['format'] = '$format$';\n\n"); - } - printer->Print( - vars, - " /**\n" - " * @private @const {!grpc.web.$mode$ClientBase} The client\n" - " */\n" - " this.client_ = new grpc.web.$mode$ClientBase(options);\n\n" - " /**\n" - " * @private @const {string} The hostname\n" - " */\n" - " this.hostname_ = hostname;\n\n" - "};\n\n\n"); -} - -void PrintPromiseServiceConstructor(Printer* printer, - std::map vars) { - printer->Print(vars, - "/**\n" - " * @param {string} hostname\n" - " * @param {?Object} credentials\n" - " * @param {?Object} options\n" - " * @constructor\n" - " * @struct\n" - " * @final\n" - " */\n" - "proto.$package_dot$$service_name$PromiseClient =\n" - " function(hostname, credentials, options) {\n" - " if (!options) options = {};\n"); - if (vars["mode"] == GetModeVar(Mode::GRPCWEB)) { - printer->Print(vars, " options['format'] = '$format$';\n\n"); - } - printer->Print( - vars, - " /**\n" - " * @private @const {!grpc.web.$mode$ClientBase} The client\n" - " */\n" - " this.client_ = new grpc.web.$mode$ClientBase(options);\n\n" - " /**\n" - " * @private @const {string} The hostname\n" - " */\n" - " this.hostname_ = hostname;\n\n" - "};\n\n\n"); -} - -void PrintMethodInfo(Printer* printer, std::map vars) { - // Print MethodDescriptor. - printer->Print(vars, - "/**\n" - " * @const\n" - " * @type {!grpc.web.MethodDescriptor<\n" - " * !proto.$in$,\n" - " * !proto.$out$>}\n" - " */\n" - "const methodDescriptor_$service_name$_$method_name$ = " - "new grpc.web.MethodDescriptor(\n"); - printer->Indent(); - printer->Print(vars, - "'/$package_dot$$service_name$/$method_name$',\n" - "$method_type$,\n" - "$in_type$,\n"); - printer->Print(vars, - "$out_type$,\n" - "/**\n" - " * @param {!proto.$in$} request\n"); - printer->Print( - (" * @return {" + GetSerializeMethodReturnType(vars["mode"]) + "}\n") - .c_str()); - printer->Print(" */\n" - "function(request) {\n"); - printer->Print( - (" return request." + GetSerializeMethodName(vars["mode"]) + "();\n") - .c_str()); - printer->Print("},\n"); - printer->Print( - vars, ("$out_type$." + GetDeserializeMethodName(vars["mode"]) + "\n") - .c_str()); - printer->Outdent(); - printer->Print(vars, ");\n\n\n"); - - // Print AbstractClientBase.MethodInfo, which will be deprecated. - printer->Print(vars, - "/**\n" - " * @const\n" - " * @type {!grpc.web.AbstractClientBase.MethodInfo<\n" - " * !proto.$in$,\n" - " * !proto.$out$>}\n" - " */\n" - "const methodInfo_$service_name$_$method_name$ = " - "new grpc.web.AbstractClientBase.MethodInfo(\n"); - printer->Indent(); - - printer->Print(vars, - "$out_type$,\n" - "/**\n" - " * @param {!proto.$in$} request\n"); - printer->Print( - (" * @return {" + GetSerializeMethodReturnType(vars["mode"]) + "}\n") - .c_str()); - printer->Print(" */\n" - "function(request) {\n"); - printer->Print( - (" return request." + GetSerializeMethodName(vars["mode"]) + "();\n") - .c_str()); - printer->Print("},\n"); - printer->Print( - vars, - ("$out_type$." + GetDeserializeMethodName(vars["mode"]) + "\n").c_str()); - printer->Outdent(); - printer->Print(vars, ");\n\n\n"); -} - -void PrintUnaryCall(Printer* printer, std::map vars) { - printer->Print( - vars, - "/**\n" - " * @param {!proto.$in$} request The\n" - " * request proto\n" - " * @param {?Object} metadata User defined\n" - " * call metadata\n" - " * @param {function(?grpc.web.Error," - " ?proto.$out$)}\n" - " * callback The callback function(error, response)\n" - " * @return {!grpc.web.ClientReadableStream|undefined}\n" - " * The XHR Node Readable Stream\n" - " */\n" - "proto.$package_dot$$service_name$Client.prototype.$js_method_name$ =\n"); - printer->Indent(); - printer->Print(vars, - " function(request, metadata, callback) {\n" - "return this.client_.rpcCall(this.hostname_ +\n"); - printer->Indent(); - printer->Indent(); - if (vars["mode"] == GetModeVar(Mode::OP) || - vars["mode"] == GetModeVar(Mode::OPJSPB)) { - printer->Print(vars, - "'/$$rpc/$package_dot$$service_name$/$method_name$',\n"); - } else { - printer->Print(vars, "'/$package_dot$$service_name$/$method_name$',\n"); - } - printer->Print(vars, - "request,\n" - "metadata || {},\n" - "$method_descriptor$,\n" - "callback);\n"); - printer->Outdent(); - printer->Outdent(); - printer->Outdent(); - printer->Print("};\n\n\n"); -} - -void PrintPromiseUnaryCall(Printer* printer, std::map vars) { - printer->Print(vars, - "/**\n" - " * @param {!proto.$in$} request The\n" - " * request proto\n" - " * @param {?Object} metadata User defined\n" - " * call metadata\n" - " * @return {!$promise$}\n" - " * Promise that resolves to the response\n" - " */\n" - "proto.$package_dot$$service_name$PromiseClient.prototype" - ".$js_method_name$ =\n"); - printer->Indent(); - printer->Print(vars, - " function(request, metadata) {\n" - "return this.client_.unaryCall(this.hostname_ +\n"); - printer->Indent(); - printer->Indent(); - if (vars["mode"] == GetModeVar(Mode::OP) || - vars["mode"] == GetModeVar(Mode::OPJSPB)) { - printer->Print(vars, - "'/$$rpc/$package_dot$$service_name$/$method_name$',\n"); - } else { - printer->Print(vars, "'/$package_dot$$service_name$/$method_name$',\n"); - } - printer->Print(vars, - "request,\n" - "metadata || {},\n" - "$method_descriptor$);\n"); - printer->Outdent(); - printer->Outdent(); - printer->Outdent(); - printer->Print("};\n\n\n"); -} - -void PrintServerStreamingCall(Printer* printer, std::map vars) { - printer->Print( - vars, - "/**\n" - " * @param {!proto.$in$} request The request proto\n" - " * @param {?Object} metadata User defined\n" - " * call metadata\n" - " * @return {!grpc.web.ClientReadableStream}\n" - " * The XHR Node Readable Stream\n" - " */\n" - "proto.$package_dot$$service_name$$client_type$.prototype." - "$js_method_name$ =\n"); - printer->Indent(); - printer->Print( - " function(request, metadata) {\n" - "return this.client_.serverStreaming(this.hostname_ +\n"); - printer->Indent(); - printer->Indent(); - if (vars["mode"] == GetModeVar(Mode::OP) || - vars["mode"] == GetModeVar(Mode::OPJSPB)) { - printer->Print(vars, - "'/$$rpc/$package_dot$$service_name$/$method_name$',\n"); - } else { - printer->Print(vars, "'/$package_dot$$service_name$/$method_name$',\n"); - } - printer->Print(vars, - "request,\n" - "metadata || {},\n" - "$method_descriptor$);\n"); - printer->Outdent(); - printer->Outdent(); - printer->Outdent(); - printer->Print("};\n\n\n"); -} - -void PrintMultipleFilesMode(const FileDescriptor* file, string file_name, - GeneratorContext* context, - std::map vars) { - std::map method_descriptors; - - // Print MethodDescriptor files. - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* service = file->service(i); - vars["service_name"] = service->name(); - vars["class_name"] = LowercaseFirstLetter(service->name()); - - for (int method_index = 0; method_index < service->method_count(); - ++method_index) { - const MethodDescriptor* method = service->method(method_index); - string method_file_name = Lowercase(service->name()) + "_" + - Lowercase(method->name()) + - "_methoddescriptor.js"; - std::unique_ptr output( - context->Open(method_file_name)); - Printer printer(output.get(), '$'); - - vars["method_name"] = method->name(); - vars["in"] = method->input_type()->full_name(); - vars["in_type"] = "proto." + method->input_type()->full_name(); - vars["out"] = method->output_type()->full_name(); - vars["out_type"] = "proto." + method->output_type()->full_name(); - vars["method_type"] = method->server_streaming() - ? "grpc.web.MethodType.SERVER_STREAMING" - : "grpc.web.MethodType.UNARY"; - - PrintMethodDescriptorFile(&printer, vars); - method_descriptors[service->name() + "." + method->name()] = - "proto." + vars["package_dot"] + vars["class_name"] + "." + - vars["method_name"] + "MethodDescriptor"; - } - } - - std::unique_ptr output1( - context->Open(file_name + "_client_pb.js")); - Printer printer1(output1.get(), '$'); - std::unique_ptr output2( - context->Open(file_name + "_promise_client_pb.js")); - Printer printer2(output2.get(), '$'); - - PrintFileHeader(&printer1, vars); - PrintFileHeader(&printer2, vars); - - // Print the Promise and callback client. - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* service = file->service(i); - vars["service_name"] = service->name(); - printer1.Print(vars, - "goog.provide('proto.$package_dot$$service_name$" - "Client');\n\n"); - printer2.Print(vars, - "goog.provide('proto.$package_dot$$service_name$" - "PromiseClient');\n\n"); - } - - if (vars["promise"] == GRPC_PROMISE) { - printer2.Print(vars, "goog.require('grpc.web.promise');\n"); - } - std::map::iterator it; - for (it = method_descriptors.begin(); it != method_descriptors.end(); it++) { - vars["import_mtd"] = it->second; - printer1.Print(vars, "goog.require('$import_mtd$');\n"); - printer2.Print(vars, "goog.require('$import_mtd$');\n"); - } - printer1.Print(vars, "goog.require('grpc.web.$mode$ClientBase');\n"); - printer1.Print(vars, "goog.require('grpc.web.ClientReadableStream');\n"); - printer1.Print(vars, "goog.require('grpc.web.Error');\n"); - printer2.Print(vars, "goog.require('grpc.web.$mode$ClientBase');\n"); - printer2.Print(vars, "goog.require('grpc.web.ClientReadableStream');\n"); - printer2.Print(vars, "goog.require('grpc.web.Error');\n"); - - PrintClosureDependencies(&printer1, file); - PrintClosureDependencies(&printer2, file); - - printer1.Print("goog.scope(function() {\n\n"); - printer2.Print("goog.scope(function() {\n\n"); - - for (int service_index = 0; service_index < file->service_count(); - ++service_index) { - const ServiceDescriptor* service = file->service(service_index); - vars["service_name"] = service->name(); - PrintServiceConstructor(&printer1, vars); - PrintPromiseServiceConstructor(&printer2, vars); - - for (int method_index = 0; method_index < service->method_count(); - ++method_index) { - const MethodDescriptor* method = service->method(method_index); - const Descriptor* input_type = method->input_type(); - const Descriptor* output_type = method->output_type(); - vars["js_method_name"] = LowercaseFirstLetter(method->name()); - vars["method_name"] = method->name(); - vars["in"] = input_type->full_name(); - vars["out"] = output_type->full_name(); - vars["method_descriptor"] = - method_descriptors[service->name() + "." + method->name()]; - vars["in_type"] = "proto." + input_type->full_name(); - vars["out_type"] = "proto." + output_type->full_name(); - - // Client streaming is not supported yet - if (!method->client_streaming()) { - if (method->server_streaming()) { - vars["method_type"] = "grpc.web.MethodType.SERVER_STREAMING"; - vars["client_type"] = "Client"; - PrintServerStreamingCall(&printer1, vars); - vars["client_type"] = "PromiseClient"; - PrintServerStreamingCall(&printer2, vars); - } else { - vars["method_type"] = "grpc.web.MethodType.UNARY"; - PrintUnaryCall(&printer1, vars); - PrintPromiseUnaryCall(&printer2, vars); - } - } - } - } - printer1.Print("}); // goog.scope\n\n"); - printer2.Print("}); // goog.scope\n\n"); -} - -void PrintClosureES6Imports( - Printer* printer, const FileDescriptor* file, string package_dot) { - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* service = file->service(i); - - string service_namespace = "proto." + package_dot + service->name(); - printer->Print( - "import $service_name$Client_import from 'goog:$namespace$';\n", - "service_name", service->name(), - "namespace", service_namespace + "Client"); - printer->Print( - "import $service_name$PromiseClient_import from 'goog:$namespace$';\n", - "service_name", service->name(), - "namespace", service_namespace + "PromiseClient"); - } - - printer->Print("\n\n\n"); -} - -void PrintGrpcWebClosureES6File(Printer* printer, const FileDescriptor* file) { - string package_dot = file->package().empty() ? "" : file->package() + "."; - - printer->Print( - "// GENERATED CODE -- DO NOT EDIT!\n" - "\n" - "/**\n" - " * @fileoverview gRPC-Web generated client stub for '$file$'\n" - " */\n" - "\n" - "\n", - "file", file->name()); - - PrintClosureES6Imports(printer, file, package_dot); - - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* service = file->service(i); - - string service_namespace = "proto." + package_dot + service->name(); - printer->Print( - "export const $name$Client = $name$Client_import;\n", - "name", service->name()); - printer->Print( - "export const $name$PromiseClient = $name$PromiseClient_import;\n", - "name", service->name()); - } -} - -class GeneratorOptions { - public: - GeneratorOptions(); - - bool ParseFromOptions(const string& parameter, string* error); - bool ParseFromOptions(const std::vector>& options, - string* error); - - // Returns the name of the output file for |proto_file|. - string OutputFile(const string& proto_file) const; - - string mode() const { return mode_; } - ImportStyle import_style() const { return import_style_; } - bool generate_dts() const { return generate_dts_; } - bool generate_closure_es6() const { return generate_closure_es6_; } - bool multiple_files() const { return multiple_files_; } - bool goog_promise() const { return goog_promise_; } - - private: - string file_name_; - string mode_; - ImportStyle import_style_; - bool generate_dts_; - bool generate_closure_es6_; - bool multiple_files_; - bool goog_promise_; -}; - -GeneratorOptions::GeneratorOptions() - : file_name_(""), - mode_(""), - import_style_(ImportStyle::CLOSURE), - generate_dts_(false), - generate_closure_es6_(false), - multiple_files_(false), - goog_promise_(false) {} - -bool GeneratorOptions::ParseFromOptions(const string& parameter, - string* error) { - std::vector> options; - ParseGeneratorParameter(parameter, &options); - return ParseFromOptions(options, error); -} - -bool GeneratorOptions::ParseFromOptions( - const std::vector>& options, string* error) { - for (const std::pair& option : options) { - if ("out" == option.first) { - file_name_ = option.second; - } else if ("mode" == option.first) { - mode_ = option.second; - } else if ("import_style" == option.first) { - if ("closure" == option.second) { - import_style_ = ImportStyle::CLOSURE; - } else if ("experimental_closure_es6" == option.second) { - import_style_ = ImportStyle::CLOSURE; - generate_closure_es6_ = true; - } else if ("commonjs" == option.second) { - import_style_ = ImportStyle::COMMONJS; - } else if ("commonjs+dts" == option.second) { - import_style_ = ImportStyle::COMMONJS; - generate_dts_ = true; - } else if ("typescript" == option.second) { - import_style_ = ImportStyle::TYPESCRIPT; - generate_dts_ = true; - } else { - *error = "options: invalid import_style - " + option.second; - return false; - } - } else if ("multiple_files" == option.first) { - multiple_files_ = "True" == option.second; - } else if ("goog_promise" == option.first) { - goog_promise_ = "True" == option.second; - } else { - *error = "unsupported option: " + option.first; - return false; - } - } - - if (mode_.empty()) { - *error = "options: mode is required"; - return false; - } - - return true; -} - -string GeneratorOptions::OutputFile(const string& proto_file) const { - if (ImportStyle::TYPESCRIPT == import_style()) { - // Never use the value from the 'out' option when generating TypeScript. - string directory; - string basename; - PathSplit(proto_file, &directory, &basename); - return directory + UppercaseFirstLetter(StripProto(basename)) + - "ServiceClientPb.ts"; - } - if (!file_name_.empty()) { - return file_name_; - } - return StripProto(proto_file) + "_grpc_web_pb.js"; -} - -class GrpcCodeGenerator : public CodeGenerator { - public: - GrpcCodeGenerator() {} - ~GrpcCodeGenerator() override {} - - uint64_t GetSupportedFeatures() const override { - // Code generators must explicitly support proto3 optional. - return CodeGenerator::FEATURE_PROTO3_OPTIONAL; - } - - bool Generate(const FileDescriptor* file, const string& parameter, - GeneratorContext* context, string* error) const override { - GeneratorOptions generator_options; - if (!generator_options.ParseFromOptions(parameter, error)) { - return false; - } - - std::map vars; - std::map method_descriptors; - string package = file->package(); - vars["package"] = package; - vars["package_dot"] = package.empty() ? "" : package + '.'; - vars["promise"] = "Promise"; - - if ("binary" == generator_options.mode()) { - vars["mode"] = GetModeVar(Mode::OP); - } else if ("grpcweb" == generator_options.mode()) { - vars["mode"] = GetModeVar(Mode::GRPCWEB); - vars["format"] = "binary"; - } else if ("grpcwebtext" == generator_options.mode()) { - vars["mode"] = GetModeVar(Mode::GRPCWEB); - vars["format"] = "text"; - } else if ("jspb" == generator_options.mode()) { - vars["mode"] = GetModeVar(Mode::OPJSPB); - if (generator_options.goog_promise()) { - vars["promise"] = GRPC_PROMISE; - } - } else { - *error = "options: invalid mode - " + generator_options.mode(); - return false; - } - - if (generator_options.generate_dts()) { - string proto_dts_file_name = StripProto(file->name()) + "_pb.d.ts"; - std::unique_ptr proto_dts_output( - context->Open(proto_dts_file_name)); - Printer proto_dts_printer(proto_dts_output.get(), '$'); - PrintProtoDtsFile(&proto_dts_printer, file); - } - - if (!file->service_count()) { - // No services, nothing to do. - return true; - } - - string file_name = generator_options.OutputFile(file->name()); - if (generator_options.multiple_files() && - ImportStyle::CLOSURE == generator_options.import_style()) { - PrintMultipleFilesMode(file, file_name, context, vars); - return true; - } - - std::unique_ptr output(context->Open(file_name)); - Printer printer(output.get(), '$'); - PrintFileHeader(&printer, vars); - - if (ImportStyle::TYPESCRIPT == generator_options.import_style()) { - PrintTypescriptFile(&printer, file, vars); - return true; - } - - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* service = file->service(i); - vars["service_name"] = service->name(); - switch (generator_options.import_style()) { - case ImportStyle::CLOSURE: - printer.Print( - vars, - "goog.provide('proto.$package_dot$$service_name$Client');\n"); - printer.Print(vars, - "goog.provide('proto.$package_dot$$service_name$" - "PromiseClient');\n"); - break; - case ImportStyle::COMMONJS: - break; - case ImportStyle::TYPESCRIPT: - break; - } - } - printer.Print("\n"); - - switch (generator_options.import_style()) { - case ImportStyle::CLOSURE: - if (vars["promise"] == GRPC_PROMISE) { - printer.Print(vars, "goog.require('grpc.web.promise');\n"); - } - printer.Print(vars, "goog.require('grpc.web.MethodDescriptor');\n"); - printer.Print(vars, "goog.require('grpc.web.MethodType');\n"); - printer.Print(vars, "goog.require('grpc.web.$mode$ClientBase');\n"); - printer.Print(vars, "goog.require('grpc.web.AbstractClientBase');\n"); - printer.Print(vars, "goog.require('grpc.web.ClientReadableStream');\n"); - printer.Print(vars, "goog.require('grpc.web.Error');\n"); - - PrintClosureDependencies(&printer, file); - - printer.Print("goog.scope(function() {\n\n"); - break; - case ImportStyle::COMMONJS: - printer.Print(vars, "const grpc = {};\n"); - printer.Print(vars, "grpc.web = require('grpc-web');\n\n"); - PrintCommonJsMessagesDeps(&printer, file); - break; - case ImportStyle::TYPESCRIPT: - break; - } - - for (int service_index = 0; service_index < file->service_count(); - ++service_index) { - const ServiceDescriptor* service = file->service(service_index); - vars["service_name"] = service->name(); - PrintServiceConstructor(&printer, vars); - PrintPromiseServiceConstructor(&printer, vars); - - for (int method_index = 0; method_index < service->method_count(); - ++method_index) { - const MethodDescriptor* method = service->method(method_index); - const Descriptor* input_type = method->input_type(); - const Descriptor* output_type = method->output_type(); - vars["js_method_name"] = LowercaseFirstLetter(method->name()); - vars["method_name"] = method->name(); - vars["in"] = input_type->full_name(); - vars["out"] = output_type->full_name(); - vars["method_descriptor"] = - "methodDescriptor_" + service->name() + "_" + method->name(); - - // Cross-file ref in CommonJS needs to use the module alias instead - // of the global name. - if (ImportStyle::COMMONJS == generator_options.import_style() && - input_type->file() != file) { - vars["in_type"] = ModuleAlias(input_type->file()->name()) + - GetNestedMessageName(input_type); - } else { - vars["in_type"] = "proto." + input_type->full_name(); - } - if (ImportStyle::COMMONJS == generator_options.import_style() && - output_type->file() != file) { - vars["out_type"] = ModuleAlias(output_type->file()->name()) + - GetNestedMessageName(output_type); - } else { - vars["out_type"] = "proto." + output_type->full_name(); - } - - // Client streaming is not supported yet - if (!method->client_streaming()) { - if (method->server_streaming()) { - vars["method_type"] = "grpc.web.MethodType.SERVER_STREAMING"; - PrintMethodInfo(&printer, vars); - vars["client_type"] = "Client"; - PrintServerStreamingCall(&printer, vars); - vars["client_type"] = "PromiseClient"; - PrintServerStreamingCall(&printer, vars); - } else { - vars["method_type"] = "grpc.web.MethodType.UNARY"; - PrintMethodInfo(&printer, vars); - PrintUnaryCall(&printer, vars); - PrintPromiseUnaryCall(&printer, vars); - } - } - } - } - - switch (generator_options.import_style()) { - case ImportStyle::CLOSURE: - printer.Print("}); // goog.scope\n\n"); - break; - case ImportStyle::COMMONJS: - if (!vars["package"].empty()) { - printer.Print(vars, "module.exports = proto.$package$;\n\n"); - } else { - printer.Print(vars, "module.exports = proto;\n\n"); - } - break; - case ImportStyle::TYPESCRIPT: - break; - } - - if (generator_options.generate_dts()) { - string grpcweb_dts_file_name = - StripProto(file->name()) + "_grpc_web_pb.d.ts"; - string proto_dts_file_name = StripProto(file->name()) + "_pb.d.ts"; - - std::unique_ptr grpcweb_dts_output( - context->Open(grpcweb_dts_file_name)); - Printer grpcweb_dts_printer(grpcweb_dts_output.get(), '$'); - - PrintGrpcWebDtsFile(&grpcweb_dts_printer, file); - } - - if (generator_options.generate_closure_es6()) { - string es6_file_name = StripProto(file->name()) + ".pb.grpc-web.js"; - - std::unique_ptr es6_output( - context->Open(es6_file_name)); - Printer es6_printer(es6_output.get(), '$'); - - PrintGrpcWebClosureES6File(&es6_printer, file); - } - - return true; - } -}; - -} // namespace -} // namespace web -} // namespace grpc - -int main(int argc, char* argv[]) { - grpc::web::GrpcCodeGenerator generator; - PluginMain(argc, argv, &generator); - return 0; -} From 76d03e7dad54876f524913067ccff45578b165b0 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Tue, 16 Dec 2025 12:17:46 -0500 Subject: [PATCH 12/20] Upgrade magic_enum to fix builds for clang v16 and later (#2299) Summary: Upgrade magic_enum to fix builds for clang v16 and later This upgrades to a magic_enum version that includes this fix (https://github.com/Neargye/magic_enum/issues/204). Relevant Issues: #2298 Type of change: /kind cleanup Test Plan: Build succeeds Signed-off-by: Dom Del Nano --- bazel/repository_locations.bzl | 6 +++--- src/carnot/exec/agg_node.cc | 2 +- src/carnot/exec/udtf_source_node.cc | 2 +- src/carnot/plan/operators.cc | 2 +- src/carnot/plan/plan_fragment.cc | 2 +- src/carnot/planner/parser/parser.cc | 2 +- src/common/base/enum_utils.h | 2 +- src/common/base/error.h | 2 +- src/common/base/magic_enum_test.cc | 2 +- src/common/base/utils.h | 2 +- src/integrations/grpc_clocksync/grpc_clock_converter.h | 2 +- src/shared/types/typespb/wrapper/types_pb_wrapper.h | 2 +- src/stirling/bpf_tools/bcc_wrapper.cc | 2 +- src/stirling/bpf_tools/probe_specs/probe_specs.h | 2 +- src/stirling/core/source_connector.cc | 2 +- .../source_connectors/socket_tracer/bcc_bpf_intf/common.hpp | 2 +- .../socket_tracer/bcc_bpf_intf/go_grpc_types.hpp | 2 +- .../socket_tracer/bcc_bpf_intf/protocols_test.cc | 2 +- .../source_connectors/socket_tracer/conn_tracker.cc | 2 +- src/stirling/source_connectors/socket_tracer/conn_tracker.h | 2 +- .../source_connectors/socket_tracer/conn_tracker_test.cc | 2 +- src/stirling/source_connectors/socket_tracer/metrics.cc | 2 +- .../source_connectors/socket_tracer/protocols/cql/types.h | 2 +- .../source_connectors/socket_tracer/protocols/dns/types.h | 2 +- .../socket_tracer/protocols/kafka/common/types.h | 2 +- .../source_connectors/socket_tracer/protocols/mux/types.h | 2 +- .../source_connectors/socket_tracer/protocols/mysql/types.h | 2 +- .../socket_tracer/protocols/pgsql/parse.cc | 2 +- .../source_connectors/socket_tracer/protocols/tls/parse.cc | 2 +- .../socket_tracer/socket_trace_bpf_test.cc | 2 +- .../socket_tracer/socket_trace_connector.cc | 2 +- .../socket_tracer/socket_trace_connector_benchmark.cc | 5 ++--- .../stirling_error/stirling_error_connector.cc | 2 +- src/stirling/testing/overloads.h | 2 +- src/stirling/utils/enum_map.h | 6 ++++-- src/stirling/utils/stat_counter.h | 2 +- src/vizier/funcs/md_udtfs/md_udtfs_impl.h | 2 +- 37 files changed, 43 insertions(+), 42 deletions(-) diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 3c831347a09..6cd59e9f7ac 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -173,9 +173,9 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/nats-io/nats.c/archive/refs/tags/v3.3.0.tar.gz"], ), com_github_neargye_magic_enum = dict( - sha256 = "4fe6627407a656d0d73879c0346b251ccdcfb718c37bef5410ba172c7c7d5f9a", - strip_prefix = "magic_enum-0.7.0", - urls = ["https://github.com/Neargye/magic_enum/archive/refs/tags/v0.7.0.tar.gz"], + sha256 = "b403d3dad4ef542fdc3024fa37d3a6cedb4ad33c72e31b6d9bab89dcaf69edf7", + strip_prefix = "magic_enum-0.9.7", + urls = ["https://github.com/Neargye/magic_enum/archive/refs/tags/v0.9.7.tar.gz"], ), com_github_nlohmann_json = dict( sha256 = "87b5884741427220d3a33df1363ae0e8b898099fbc59f1c451113f6732891014", diff --git a/src/carnot/exec/agg_node.cc b/src/carnot/exec/agg_node.cc index b286c77badf..a8881f09825 100644 --- a/src/carnot/exec/agg_node.cc +++ b/src/carnot/exec/agg_node.cc @@ -24,7 +24,7 @@ #include #include -#include +#include #include "src/carnot/exec/expression_evaluator.h" #include "src/carnot/plan/scalar_expression.h" diff --git a/src/carnot/exec/udtf_source_node.cc b/src/carnot/exec/udtf_source_node.cc index ba1f8406c8c..1255a0b0e96 100644 --- a/src/carnot/exec/udtf_source_node.cc +++ b/src/carnot/exec/udtf_source_node.cc @@ -25,7 +25,7 @@ #include #include -#include +#include #include "src/carnot/plan/scalar_expression.h" #include "src/carnot/udf/registry.h" diff --git a/src/carnot/plan/operators.cc b/src/carnot/plan/operators.cc index bfdb43427f4..357cc318423 100644 --- a/src/carnot/plan/operators.cc +++ b/src/carnot/plan/operators.cc @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include "src/carnot/plan/scalar_expression.h" #include "src/carnot/planpb/plan.pb.h" diff --git a/src/carnot/plan/plan_fragment.cc b/src/carnot/plan/plan_fragment.cc index 91d60081347..05a589f4276 100644 --- a/src/carnot/plan/plan_fragment.cc +++ b/src/carnot/plan/plan_fragment.cc @@ -26,7 +26,7 @@ #include #include -#include +#include #include "src/carnot/dag/dag.h" #include "src/carnot/planpb/plan.pb.h" diff --git a/src/carnot/planner/parser/parser.cc b/src/carnot/planner/parser/parser.cc index 3c0a5fc83b6..c3411d3c42b 100644 --- a/src/carnot/planner/parser/parser.cc +++ b/src/carnot/planner/parser/parser.cc @@ -21,7 +21,7 @@ #include #include -#include +#include #include #include #include diff --git a/src/common/base/enum_utils.h b/src/common/base/enum_utils.h index 19ccd13f8bd..7cfd31e15cf 100644 --- a/src/common/base/enum_utils.h +++ b/src/common/base/enum_utils.h @@ -21,7 +21,7 @@ #include #include -#include +#include namespace px { diff --git a/src/common/base/error.h b/src/common/base/error.h index cec7024941c..a84938f0ec9 100644 --- a/src/common/base/error.h +++ b/src/common/base/error.h @@ -21,7 +21,7 @@ #include #include -#include +#include #include "src/common/base/status.h" #include "src/common/base/statuspb/status.pb.h" diff --git a/src/common/base/magic_enum_test.cc b/src/common/base/magic_enum_test.cc index c6281c6bd60..0f451a8cf76 100644 --- a/src/common/base/magic_enum_test.cc +++ b/src/common/base/magic_enum_test.cc @@ -16,7 +16,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -#include +#include #include "src/common/testing/testing.h" // The following test cases are mostly from MagicEnum docs: https://github.com/Neargye/magic_enum. diff --git a/src/common/base/utils.h b/src/common/base/utils.h index 85e25b3f5e9..9a7b889b48b 100644 --- a/src/common/base/utils.h +++ b/src/common/base/utils.h @@ -29,7 +29,7 @@ #include #include -#include +#include #include #include "src/common/base/error.h" diff --git a/src/integrations/grpc_clocksync/grpc_clock_converter.h b/src/integrations/grpc_clocksync/grpc_clock_converter.h index e223599e07b..48f0f0462c3 100644 --- a/src/integrations/grpc_clocksync/grpc_clock_converter.h +++ b/src/integrations/grpc_clocksync/grpc_clock_converter.h @@ -23,7 +23,7 @@ #include #include -#include +#include #include "src/common/clock/clock_conversion.h" #include "src/integrations/grpc_clocksync/proto/clocksync.grpc.pb.h" diff --git a/src/shared/types/typespb/wrapper/types_pb_wrapper.h b/src/shared/types/typespb/wrapper/types_pb_wrapper.h index b00b0cefdda..7aa606fc6fb 100644 --- a/src/shared/types/typespb/wrapper/types_pb_wrapper.h +++ b/src/shared/types/typespb/wrapper/types_pb_wrapper.h @@ -18,7 +18,7 @@ #pragma once -#include +#include #include "src/shared/types/typespb/types.pb.h" diff --git a/src/stirling/bpf_tools/bcc_wrapper.cc b/src/stirling/bpf_tools/bcc_wrapper.cc index 370f421836d..6505f8e2fc3 100644 --- a/src/stirling/bpf_tools/bcc_wrapper.cc +++ b/src/stirling/bpf_tools/bcc_wrapper.cc @@ -24,7 +24,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/common/fs/fs_wrapper.h" diff --git a/src/stirling/bpf_tools/probe_specs/probe_specs.h b/src/stirling/bpf_tools/probe_specs/probe_specs.h index 4eb53071204..0a05851bb9a 100644 --- a/src/stirling/bpf_tools/probe_specs/probe_specs.h +++ b/src/stirling/bpf_tools/probe_specs/probe_specs.h @@ -36,7 +36,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/common/json/json.h" diff --git a/src/stirling/core/source_connector.cc b/src/stirling/core/source_connector.cc index a9566daea49..54fa5137cc3 100644 --- a/src/stirling/core/source_connector.cc +++ b/src/stirling/core/source_connector.cc @@ -20,7 +20,7 @@ #include #include -#include +#include #include "src/stirling/core/source_connector.h" diff --git a/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/common.hpp b/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/common.hpp index cc95a6c1b70..afb5e5f0d6a 100644 --- a/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/common.hpp +++ b/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/common.hpp @@ -25,7 +25,7 @@ #include #include -#include +#include #include "src/common/base/enum_utils.h" #include "src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/common.h" diff --git a/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/go_grpc_types.hpp b/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/go_grpc_types.hpp index baf5ef91a50..faa37bb1ac9 100644 --- a/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/go_grpc_types.hpp +++ b/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/go_grpc_types.hpp @@ -21,7 +21,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/common.hpp" diff --git a/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/protocols_test.cc b/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/protocols_test.cc index 003685fa512..6d344b78a1c 100644 --- a/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/protocols_test.cc +++ b/src/stirling/source_connectors/socket_tracer/bcc_bpf_intf/protocols_test.cc @@ -18,7 +18,7 @@ #include #include -#include +#include #include "src/common/base/base.h" diff --git a/src/stirling/source_connectors/socket_tracer/conn_tracker.cc b/src/stirling/source_connectors/socket_tracer/conn_tracker.cc index 35ca7f6fc38..fadc2af95dd 100644 --- a/src/stirling/source_connectors/socket_tracer/conn_tracker.cc +++ b/src/stirling/source_connectors/socket_tracer/conn_tracker.cc @@ -30,7 +30,7 @@ #include #include -#include +#include #include "src/common/base/inet_utils.h" #include "src/common/system/proc_pid_path.h" diff --git a/src/stirling/source_connectors/socket_tracer/conn_tracker.h b/src/stirling/source_connectors/socket_tracer/conn_tracker.h index 5abb9de46de..3a272e4b2c1 100644 --- a/src/stirling/source_connectors/socket_tracer/conn_tracker.h +++ b/src/stirling/source_connectors/socket_tracer/conn_tracker.h @@ -29,7 +29,7 @@ #include #include -#include +#include #include "src/common/system/proc_parser.h" #include "src/common/system/socket_info.h" diff --git a/src/stirling/source_connectors/socket_tracer/conn_tracker_test.cc b/src/stirling/source_connectors/socket_tracer/conn_tracker_test.cc index 2bc97e23ec0..66917a1c3f6 100644 --- a/src/stirling/source_connectors/socket_tracer/conn_tracker_test.cc +++ b/src/stirling/source_connectors/socket_tracer/conn_tracker_test.cc @@ -25,7 +25,7 @@ #include #include -#include +#include #include "protocols/http/types.h" #include "src/common/testing/testing.h" diff --git a/src/stirling/source_connectors/socket_tracer/metrics.cc b/src/stirling/source_connectors/socket_tracer/metrics.cc index 1c934953e71..609f437c9e3 100644 --- a/src/stirling/source_connectors/socket_tracer/metrics.cc +++ b/src/stirling/source_connectors/socket_tracer/metrics.cc @@ -21,7 +21,7 @@ #include #include -#include +#include #include "src/stirling/source_connectors/socket_tracer/metrics.h" diff --git a/src/stirling/source_connectors/socket_tracer/protocols/cql/types.h b/src/stirling/source_connectors/socket_tracer/protocols/cql/types.h index 12c4906bf74..71f28afc532 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/cql/types.h +++ b/src/stirling/source_connectors/socket_tracer/protocols/cql/types.h @@ -22,7 +22,7 @@ #include #include -#include +#include #include "src/stirling/source_connectors/socket_tracer/protocols/common/event_parser.h" // For FrameBase. diff --git a/src/stirling/source_connectors/socket_tracer/protocols/dns/types.h b/src/stirling/source_connectors/socket_tracer/protocols/dns/types.h index 23a99d14ed7..f4408899f80 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/dns/types.h +++ b/src/stirling/source_connectors/socket_tracer/protocols/dns/types.h @@ -24,7 +24,7 @@ #include #include -#include +#include #include "src/stirling/source_connectors/socket_tracer/protocols/common/event_parser.h" // For FrameBase. diff --git a/src/stirling/source_connectors/socket_tracer/protocols/kafka/common/types.h b/src/stirling/source_connectors/socket_tracer/protocols/kafka/common/types.h index b7ade9ad7d2..a7e1820d312 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/kafka/common/types.h +++ b/src/stirling/source_connectors/socket_tracer/protocols/kafka/common/types.h @@ -27,7 +27,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/stirling/source_connectors/socket_tracer/protocols/common/event_parser.h" // For FrameBase diff --git a/src/stirling/source_connectors/socket_tracer/protocols/mux/types.h b/src/stirling/source_connectors/socket_tracer/protocols/mux/types.h index c3c7be2be6a..87c38cb178d 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/mux/types.h +++ b/src/stirling/source_connectors/socket_tracer/protocols/mux/types.h @@ -23,7 +23,7 @@ #include #include -#include +#include #include "src/stirling/source_connectors/socket_tracer/protocols/common/event_parser.h" #include "src/stirling/utils/utils.h" diff --git a/src/stirling/source_connectors/socket_tracer/protocols/mysql/types.h b/src/stirling/source_connectors/socket_tracer/protocols/mysql/types.h index 949b589e2b3..459b973e988 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/mysql/types.h +++ b/src/stirling/source_connectors/socket_tracer/protocols/mysql/types.h @@ -26,7 +26,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/stirling/source_connectors/socket_tracer/protocols/common/event_parser.h" // For FrameBase diff --git a/src/stirling/source_connectors/socket_tracer/protocols/pgsql/parse.cc b/src/stirling/source_connectors/socket_tracer/protocols/pgsql/parse.cc index c5ba21e7b8c..72658a6572d 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/pgsql/parse.cc +++ b/src/stirling/source_connectors/socket_tracer/protocols/pgsql/parse.cc @@ -25,7 +25,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/stirling/utils/binary_decoder.h" diff --git a/src/stirling/source_connectors/socket_tracer/protocols/tls/parse.cc b/src/stirling/source_connectors/socket_tracer/protocols/tls/parse.cc index 9a2d693d09d..d435772271f 100644 --- a/src/stirling/source_connectors/socket_tracer/protocols/tls/parse.cc +++ b/src/stirling/source_connectors/socket_tracer/protocols/tls/parse.cc @@ -23,7 +23,7 @@ #include #include -#include +#include #include "src/stirling/utils/binary_decoder.h" diff --git a/src/stirling/source_connectors/socket_tracer/socket_trace_bpf_test.cc b/src/stirling/source_connectors/socket_tracer/socket_trace_bpf_test.cc index 8de89aa4b22..679b123cef6 100644 --- a/src/stirling/source_connectors/socket_tracer/socket_trace_bpf_test.cc +++ b/src/stirling/source_connectors/socket_tracer/socket_trace_bpf_test.cc @@ -24,7 +24,7 @@ #include #include -#include +#include #include "src/common/fs/temp_file.h" #include "src/common/system/clock.h" diff --git a/src/stirling/source_connectors/socket_tracer/socket_trace_connector.cc b/src/stirling/source_connectors/socket_tracer/socket_trace_connector.cc index d3e08a5efce..d5ae9c02a91 100644 --- a/src/stirling/source_connectors/socket_tracer/socket_trace_connector.cc +++ b/src/stirling/source_connectors/socket_tracer/socket_trace_connector.cc @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include "src/common/system/kernel_version.h" #include "src/common/base/base.h" diff --git a/src/stirling/source_connectors/socket_tracer/socket_trace_connector_benchmark.cc b/src/stirling/source_connectors/socket_tracer/socket_trace_connector_benchmark.cc index 184d9d67342..6f18db7f90a 100644 --- a/src/stirling/source_connectors/socket_tracer/socket_trace_connector_benchmark.cc +++ b/src/stirling/source_connectors/socket_tracer/socket_trace_connector_benchmark.cc @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include "src/common/perf/memory_tracker.h" #include "src/common/perf/tcmalloc.h" @@ -91,8 +91,7 @@ px::StatusOr> GetDisplayStatCategories( absl::flat_hash_set categories; auto case_insensitive_cmp = [](char a, char b) { return tolower(a) == tolower(b); }; for (std::string_view category_str : absl::StrSplit(FLAGS_display, ",")) { - auto cast_opt = magic_enum::enum_cast( - category_str, case_insensitive_cmp); + auto cast_opt = magic_enum::enum_cast(category_str, case_insensitive_cmp); if (!cast_opt.has_value()) { return px::error::InvalidArgument("Invalid DisplayStatCategory: ", category_str); } diff --git a/src/stirling/source_connectors/stirling_error/stirling_error_connector.cc b/src/stirling/source_connectors/stirling_error/stirling_error_connector.cc index e186c53b60b..5489dac77f7 100644 --- a/src/stirling/source_connectors/stirling_error/stirling_error_connector.cc +++ b/src/stirling/source_connectors/stirling_error/stirling_error_connector.cc @@ -16,7 +16,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -#include +#include #include "src/common/base/base.h" #include "src/common/system/proc_parser.h" diff --git a/src/stirling/testing/overloads.h b/src/stirling/testing/overloads.h index f29062e857f..e38c540d000 100644 --- a/src/stirling/testing/overloads.h +++ b/src/stirling/testing/overloads.h @@ -19,7 +19,7 @@ #pragma once #include -#include +#include #include "src/stirling/utils/monitor.h" #include "src/stirling/utils/tcp_stats.h" diff --git a/src/stirling/utils/enum_map.h b/src/stirling/utils/enum_map.h index 0024120f720..065693af1e2 100644 --- a/src/stirling/utils/enum_map.h +++ b/src/stirling/utils/enum_map.h @@ -22,7 +22,7 @@ #include #include -#include +#include #include "src/common/base/base.h" @@ -30,6 +30,8 @@ namespace px { namespace stirling { namespace utils { +using magic_enum::as_common; + /** * A map-like data structure backed by vector. The key type must be enum type. * NOTE: This does not work for bool as value type, as the std::vector is specialized and is @@ -38,7 +40,7 @@ namespace utils { template class EnumMap { public: - EnumMap() : values_(magic_enum::detail::reflected_max_v) {} + EnumMap() : values_(magic_enum::detail::reflected_max>()) {} bool Set(TEnumKeyType key, TValueType value) { if (set_keys_.contains(key)) { diff --git a/src/stirling/utils/stat_counter.h b/src/stirling/utils/stat_counter.h index a574b49a9bf..d4ef2e582c0 100644 --- a/src/stirling/utils/stat_counter.h +++ b/src/stirling/utils/stat_counter.h @@ -25,7 +25,7 @@ #include #include -#include +#include namespace px { namespace stirling { diff --git a/src/vizier/funcs/md_udtfs/md_udtfs_impl.h b/src/vizier/funcs/md_udtfs/md_udtfs_impl.h index e48dd4ce790..b6af0ca1de8 100644 --- a/src/vizier/funcs/md_udtfs/md_udtfs_impl.h +++ b/src/vizier/funcs/md_udtfs/md_udtfs_impl.h @@ -29,7 +29,7 @@ #include #include -#include +#include #include "src/carnot/udf/registry.h" #include "src/carnot/udf/udf.h" From d42bc14c81ee945d41ddcfed62f3869a8d7fe3ff Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Tue, 16 Dec 2025 17:48:52 -0500 Subject: [PATCH 13/20] Upgrade `rules_scala` and `rules_meta` (#2293) Summary: Upgrade rules scala and rules_meta Relevant Issues: #2282 Type of change: /kind cleanup Test Plan: Build succeeds --------- Signed-off-by: Dom Del Nano --- .bazelrc | 5 -- WORKSPACE | 61 +++++++++++-------- bazel/cc_toolchains/sysroots/images.bzl | 1 - bazel/repositories.bzl | 3 +- bazel/repository_locations.bzl | 30 +++++---- bazel/thrift.bzl | 14 +++-- bazel/toolchain_transitions.bzl | 31 +++------- .../testing/containers/thriftmux/BUILD.bazel | 44 +++++++++++++ 8 files changed, 115 insertions(+), 74 deletions(-) diff --git a/.bazelrc b/.bazelrc index 8f966db78f1..7ea81ad73b4 100644 --- a/.bazelrc +++ b/.bazelrc @@ -22,11 +22,6 @@ run --remote_download_outputs=all coverage --build_runfile_links coverage --nocache_test_results -# Needed by rules_meta. -# Follow https://github.com/fmeum/rules_meta/issues/1#issuecomment-1255828109 -# for updates. -common --incompatible_remove_rule_name_parameter=false - # Get version information into the build. build --workspace_status_command=bazel/get_workspace_status.sh diff --git a/WORKSPACE b/WORKSPACE index 786ee4b130b..05177c8c7de 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -19,6 +19,14 @@ pl_register_cc_toolchains() # Install Pixie Labs Dependencies. pl_deps() +load("@bazel_features//:deps.bzl", "bazel_features_deps") + +bazel_features_deps() + +load("@rules_cc//cc:extensions.bzl", "compatibility_proxy_repo") + +compatibility_proxy_repo() + # Order is important. Try to go from most basic/primitive to higher level packages. # - go_rules_dependencies # - protobuf_deps @@ -45,6 +53,10 @@ go_register_toolchains() # gazelle:repository_macro go_deps.bzl%pl_go_dependencies pl_go_dependencies() +load("@rules_java//java:rules_java_deps.bzl", "rules_java_dependencies") + +rules_java_dependencies() + load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") protobuf_deps() @@ -53,17 +65,34 @@ load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") grpc_deps() -load("@io_bazel_rules_scala//:scala_config.bzl", "scala_config") +load("@io_bazel_rules_scala//scala:deps.bzl", "rules_scala_dependencies") -scala_version = "2.13.6" +rules_scala_dependencies() -scala_config(scala_version = scala_version) +load("@io_bazel_rules_scala//:scala_config.bzl", "scala_config") -load("@io_bazel_rules_scala//scala:scala.bzl", "scala_repositories") +scala_version = "2.13.16" -scala_repositories() +scala_config(scala_version = scala_version) -load("@io_bazel_rules_scala//scala:toolchains.bzl", "scala_register_toolchains") +load("@io_bazel_rules_scala//scala:toolchains.bzl", "scala_register_toolchains", "scala_toolchains") + +scala_toolchains( + fetch_sources = True, + twitter_scrooge = { + "libthrift": "@thrift_deps//:org_apache_thrift_libthrift", + # Use scrooge_core_with_finagle to include finagle on the compile classpath + # for generated thrift service code. Must use @px// prefix to reference + # the main workspace from within the generated @rules_scala_toolchains repo. + "scrooge_core": "@px//src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux:scrooge_core_with_finagle", + "scrooge_generator": "@thrift_deps//:com_twitter_scrooge_generator_2_13", + "util_core": "@thrift_deps//:com_twitter_util_core_2_13", + "util_logging": "@thrift_deps//:com_twitter_util_logging_2_13", + "javax_annotation_api": "@thrift_deps//:javax_annotation_javax_annotation_api", + "mustache": "@thrift_deps//:com_github_spullara_mustache_java_compiler", + "scopt": "@thrift_deps//:com_github_scopt_scopt_2_13", + }, +) scala_register_toolchains() @@ -183,26 +212,6 @@ load("@thrift_deps//:defs.bzl", thrift_pinned_maven_install = "pinned_maven_inst thrift_pinned_maven_install() -# twitter_scrooge will use incompatible versions of @scrooge_jars and @thrift_jars. -# These bind statements ensure that the correct versions of finagle libthrift, scrooge core -# and scrooge generator are used to ensure successful compilation. -# See https://github.com/bazelbuild/rules_scala/issues/592 and -# https://github.com/bazelbuild/rules_scala/pull/847 for more details. -bind( - name = "io_bazel_rules_scala/dependency/thrift/scrooge_core", - actual = "//src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux:scrooge_jars", -) - -bind( - name = "io_bazel_rules_scala/dependency/thrift/scrooge_generator", - actual = "//src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux:scrooge_jars", -) - -bind( - name = "io_bazel_rules_scala/dependency/thrift/libthrift", - actual = "//src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux:thrift_jars", -) - # gazelle:repo bazel_gazelle # Gazelle depes need to be loaded last to make sure they don't override our dependencies. # The first one wins when it comes to package declaration. diff --git a/bazel/cc_toolchains/sysroots/images.bzl b/bazel/cc_toolchains/sysroots/images.bzl index a56583f55ba..9de1aa0f603 100644 --- a/bazel/cc_toolchains/sysroots/images.bzl +++ b/bazel/cc_toolchains/sysroots/images.bzl @@ -65,7 +65,6 @@ def _sysroot_variant_image_factory(variant): return _image_from_sysroot_info(ctx, sysroot_toolchain.sysroot) return rule( - name = "sysroot_{variant}_image".format(variant = variant), implementation = _impl, attrs = dicts.add(_container.image.attrs, { "default_image": attr.label(mandatory = True, doc = "Default container_image to use if no sysroot toolchain is found"), diff --git a/bazel/repositories.bzl b/bazel/repositories.bzl index 0181203778f..89f0e2dbc2b 100644 --- a/bazel/repositories.bzl +++ b/bazel/repositories.bzl @@ -257,10 +257,11 @@ def _pl_deps(): _bazel_repo("rules_python") _bazel_repo("rules_pkg") _bazel_repo("com_github_bazelbuild_buildtools") - _bazel_repo("com_github_fmeum_rules_meta") _bazel_repo("com_google_protobuf_javascript", patches = ["//bazel/external:protobuf_javascript.patch"], patch_args = ["-p1"]) # TODO(ddelnano): Remove patch once grpc-web upgrades to protobuf v30+. _bazel_repo("com_github_grpc_grpcweb", patches = ["//bazel/external:grpc-web_protobuf_v30_support.patch"], patch_args = ["-p1"]) + _bazel_repo("bazel_features") + _bazel_repo("with_cfg.bzl") _com_llvm_lib() _cc_deps() diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 6cd59e9f7ac..3b5c832da59 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -15,6 +15,11 @@ # SPDX-License-Identifier: Apache-2.0 REPOSITORY_LOCATIONS = dict( + bazel_features = dict( + sha256 = "07271d0f6b12633777b69020c4cb1eb67b1939c0cf84bb3944dc85cc250c0c01", + strip_prefix = "bazel_features-1.38.0", + urls = ["https://github.com/bazel-contrib/bazel_features/releases/download/v1.38.0/bazel_features-v1.38.0.tar.gz"], + ), bazel_gazelle = dict( sha256 = "d76bf7a60fd8b050444090dfa2837a4eaf9829e1165618ee35dceca5cbdf58d5", urls = [ @@ -81,13 +86,6 @@ REPOSITORY_LOCATIONS = dict( strip_prefix = "tdigest-85e0f70092460e60236821db4c25143768d3da12", urls = ["https://github.com/pixie-io/tdigest/archive/85e0f70092460e60236821db4c25143768d3da12.tar.gz"], ), - com_github_fmeum_rules_meta = dict( - sha256 = "ed3ed909e6e3f34a11d7c2adcc461535975a875fe434719540a4e6f63434a866", - strip_prefix = "rules_meta-0.0.4", - urls = [ - "https://github.com/fmeum/rules_meta/archive/refs/tags/v0.0.4.tar.gz", - ], - ), com_github_gflags_gflags = dict( sha256 = "9e1a38e2dcbb20bb10891b5a171de2e5da70e0a50fff34dd4b0c2c6d75043909", strip_prefix = "gflags-524b83d0264cb9f1b2d134c564ef1aa23f207a41", @@ -439,11 +437,11 @@ REPOSITORY_LOCATIONS = dict( ], ), io_bazel_rules_scala = dict( - sha256 = "6e9191363357d30b144e7306fec74deea2c7f1de63f3ed32028838116c239e8a", + sha256 = "6a900a39bf643c5c9308c8200f9a61e27588dc54a67aa08fcfc798f25add4f7b", urls = [ - "https://github.com/bazelbuild/rules_scala/archive/4ba3780fcba8d26980daff4639abc6f18517308b.tar.gz", + "https://github.com/bazelbuild/rules_scala/releases/download/v7.1.0/rules_scala-v7.1.0.tar.gz", ], - strip_prefix = "rules_scala-4ba3780fcba8d26980daff4639abc6f18517308b", + strip_prefix = "rules_scala-7.1.0", ), org_tensorflow = dict( sha256 = "a640d1f97be316a09301dfc9347e3d929ad4d9a2336e3ca23c32c93b0ff7e5d0", @@ -457,9 +455,9 @@ REPOSITORY_LOCATIONS = dict( manual_license_name = "libc/musl", ), rules_cc = dict( - sha256 = "abc605dd850f813bb37004b77db20106a19311a96b2da1c92b789da529d28fe1", - strip_prefix = "rules_cc-0.0.17", - urls = ["https://github.com/bazelbuild/rules_cc/releases/download/0.0.17/rules_cc-0.0.17.tar.gz"], + sha256 = "a2fdfde2ab9b2176bd6a33afca14458039023edb1dd2e73e6823810809df4027", + strip_prefix = "rules_cc-0.2.14", + urls = ["https://github.com/bazelbuild/rules_cc/releases/download/0.2.14/rules_cc-0.2.14.tar.gz"], ), rules_foreign_cc = dict( sha256 = "6041f1374ff32ba711564374ad8e007aef77f71561a7ce784123b9b4b88614fc", @@ -511,6 +509,12 @@ REPOSITORY_LOCATIONS = dict( ), ) +REPOSITORY_LOCATIONS["with_cfg.bzl"] = dict( + sha256 = "c7af6227d24499438fa0bb96fe4034e163d8c807b06f7c0645f3654448268b84", + strip_prefix = "with_cfg.bzl-0.11.0", + urls = ["https://github.com/fmeum/with_cfg.bzl/releases/download/v0.11.0/with_cfg.bzl-v0.11.0.tar.gz"], +) + # To modify one of the forked repos below: # 1. Make the changes to the repo and push the changes to the `pixie` on github. # 2. Update the commit below to point to the commit hash of the new `pixie` branch. diff --git a/bazel/thrift.bzl b/bazel/thrift.bzl index 3b535d8a078..f370029d4c6 100644 --- a/bazel/thrift.bzl +++ b/bazel/thrift.bzl @@ -14,25 +14,29 @@ # # SPDX-License-Identifier: Apache-2.0 -load("@io_bazel_rules_scala//twitter_scrooge:twitter_scrooge.bzl", "twitter_scrooge") load("@rules_jvm_external//:defs.bzl", "maven_install") def thrift_deps(scala_version): - twitter_scrooge() + # twitter_scrooge is now set up via scala_toolchains(twitter_scrooge = {...}) in WORKSPACE - finagle_version = "22.7.0" + finagle_version = "24.2.0" scala_minor_version = ".".join(scala_version.split(".")[:2]) maven_install( name = "thrift_deps", artifacts = [ + # Finagle dependencies (needed for generated service code) "com.twitter:finagle-thriftmux_%s:%s" % (scala_minor_version, finagle_version), + "com.twitter:finagle-thrift_%s:%s" % (scala_minor_version, finagle_version), "com.twitter:finagle-mux_%s:%s" % (scala_minor_version, finagle_version), "com.twitter:finagle-core_%s:%s" % (scala_minor_version, finagle_version), + "com.twitter:finagle-http_%s:%s" % (scala_minor_version, finagle_version), + # Scrooge dependencies (needed for code generation toolchain) "com.twitter:scrooge-core_%s:%s" % (scala_minor_version, finagle_version), "com.twitter:scrooge-generator_%s:%s" % (scala_minor_version, finagle_version), - "com.twitter:finagle-http_%s:%s" % (scala_minor_version, finagle_version), - "org.apache.thrift:libthrift:0.10.0", + "com.twitter:util-core_%s:%s" % (scala_minor_version, finagle_version), + "com.twitter:util-logging_%s:%s" % (scala_minor_version, finagle_version), + # Logging "org.slf4j:slf4j-api:1.7.36", "ch.qos.logback:logback-core:1.2.10", "ch.qos.logback:logback-classic:1.2.10", diff --git a/bazel/toolchain_transitions.bzl b/bazel/toolchain_transitions.bzl index 5578af5dada..e1e402a479d 100644 --- a/bazel/toolchain_transitions.bzl +++ b/bazel/toolchain_transitions.bzl @@ -14,30 +14,15 @@ # # SPDX-License-Identifier: Apache-2.0 -load("@com_github_fmeum_rules_meta//meta:defs.bzl", "meta") +load("@with_cfg.bzl", "with_cfg") load("//bazel/test_runners/qemu_with_kernel:runner.bzl", "qemu_with_kernel_interactive_runner") -java_graal_binary = meta.wrap_with_transition( - native.java_binary, - { - "java_runtime_version": meta.replace_with("remotejdk_openjdk_graal_17"), - }, - executable = True, -) +java_graal_binary, _java_graal_binary_internal = with_cfg(native.java_binary).set( + "java_runtime_version", "remotejdk_openjdk_graal_17").build() -cc_clang_binary = meta.wrap_with_transition( - native.cc_binary, - { - "@//bazel/cc_toolchains:compiler": meta.replace_with("clang"), - "@//bazel/cc_toolchains:libc_version": meta.replace_with("glibc2_36"), - }, - executable = True, -) +cc_clang_binary, _cc_clang_binary_internal = with_cfg(native.cc_binary).set( + Label("@//bazel/cc_toolchains:compiler"), "clang").set( + Label("@//bazel/cc_toolchains:libc_version"), "glibc2_36").build() -qemu_interactive_runner = meta.wrap_with_transition( - qemu_with_kernel_interactive_runner, - { - "@//bazel/cc_toolchains:libc_version": meta.replace_with("glibc2_36"), - }, - executable = True, -) +qemu_interactive_runner, _qemu_interactive_runner_internal = with_cfg(qemu_with_kernel_interactive_runner).set( + Label("@//bazel/cc_toolchains:libc_version"), "glibc2_36").build() diff --git a/src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux/BUILD.bazel b/src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux/BUILD.bazel index 178fb5dd354..39dfa989c20 100644 --- a/src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux/BUILD.bazel +++ b/src/stirling/source_connectors/socket_tracer/testing/containers/thriftmux/BUILD.bazel @@ -67,6 +67,19 @@ thrift_library( srcs = glob(["**/*.thrift"]), ) +# Scrooge core with finagle dependencies bundled. +# This is used as the scrooge_core for the toolchain, so that the generated +# service code has access to finagle classes at compile time. +scala_library( + name = "scrooge_core_with_finagle", + visibility = ["//visibility:public"], + exports = [ + "@thrift_deps//:com_twitter_finagle_core_2_13", + "@thrift_deps//:com_twitter_finagle_thrift_2_13", + "@thrift_deps//:com_twitter_scrooge_core_2_13", + ], +) + scala_library( name = "scrooge_jars", visibility = ["//visibility:public"], @@ -81,6 +94,31 @@ scala_library( ], ) +# Runtime dependencies for generated scrooge code (for downstream consumers) +scala_library( + name = "scrooge_runtime_deps", + visibility = ["//visibility:public"], + exports = [ + "@thrift_deps//:com_twitter_finagle_core_2_13", + "@thrift_deps//:com_twitter_finagle_thrift_2_13", + "@thrift_deps//:com_twitter_scrooge_core_2_13", + "@thrift_deps//:org_apache_thrift_libthrift", + ], +) + +# Full finagle dependencies for Server/Client scala files +scala_library( + name = "finagle_deps", + visibility = ["//visibility:public"], + exports = [ + "@thrift_deps//:com_twitter_finagle_core_2_13", + "@thrift_deps//:com_twitter_finagle_http_2_13", + "@thrift_deps//:com_twitter_finagle_mux_2_13", + "@thrift_deps//:com_twitter_finagle_thrift_2_13", + "@thrift_deps//:com_twitter_finagle_thriftmux_2_13", + ], +) + scala_library( name = "thrift_jars", visibility = ["//visibility:public"], @@ -91,6 +129,9 @@ scala_library( scrooge_scala_library( name = "thriftmux_scrooge", + exports = [ + ":scrooge_runtime_deps", + ], deps = [ ":thrift_library", ], @@ -110,6 +151,7 @@ scala_binary( srcs = glob(["**/*.scala"]), main_class = "Server", deps = [ + ":finagle_deps", ":thriftmux_scrooge", ], ) @@ -119,6 +161,7 @@ scala_binary( srcs = glob(["**/*.scala"]), main_class = "Client", deps = [ + ":finagle_deps", ":thriftmux_scrooge", ], ) @@ -144,6 +187,7 @@ scala_image( ], main_class = "Server", deps = [ + ":finagle_deps", ":logging", ":thriftmux_scrooge", ], From 245d72893415ca05d44c8d326fc213ff74ef8d42 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Wed, 17 Dec 2025 08:39:18 -0800 Subject: [PATCH 14/20] Upgrade to bazel 7 (#2297) --- .bazelrc | 6 +- .bazelversion | 2 +- .../unix_cc_toolchain_config.patch | 110 ++++++++++++------ bazel/pl_build_system.bzl | 3 +- bazel/repository_locations.bzl | 4 +- .../test_runners/qemu_with_kernel/launcher.sh | 7 ++ ...ery_ignore_non_target_and_incompatible.bzl | 5 +- 7 files changed, 95 insertions(+), 42 deletions(-) diff --git a/.bazelrc b/.bazelrc index 7ea81ad73b4..b26aad0eec5 100644 --- a/.bazelrc +++ b/.bazelrc @@ -1,5 +1,7 @@ # Global bazelrc file, see https://docs.bazel.build/versions/master/guide.html#bazelrc. +common --noenable_bzlmod --enable_workspace + # Use strict action env to prevent leaks of env vars. build --incompatible_strict_action_env @@ -97,7 +99,7 @@ test:aarch64_sysroot --test_tag_filters=-no_libcpp,-requires_root,-requires_bpf, # Build for Clang using Libc++. build:clang --config=clang-base build:clang --//bazel:enable_libcpp -build:clang --features=libc++ --features=-libstdc++ +build:clang --features=libc++ --features=-libstdc++ --host_features=libc++ --host_features=-libstdc++ build:clang --build_tag_filters=-no_libcpp build:clang --test_tag_filters=-no_libcpp,-requires_root,-requires_bpf,-disabled test:clang --config=tmp-sandbox @@ -110,7 +112,7 @@ test:clang-libstdc++ --config=tmp-sandbox build:qemu-bpf --config=clang-base build:qemu-bpf --//bazel:enable_libcpp -build:qemu-bpf --features=libc++ --features=-libstdc++ +build:qemu-bpf --features=libc++ --features=-libstdc++ --host_features=libc++ --host_features=-libstdc++ build:qemu-bpf --build_tag_filters=requires_bpf,requires_root,-no_qemu,-no_libcpp build:qemu-bpf --test_tag_filters=requires_bpf,requires_root,-no_qemu,-no_libcpp,-disabled build:qemu-bpf --sandbox_fake_username diff --git a/.bazelversion b/.bazelversion index f22d756da39..5942a0d3a0e 100644 --- a/.bazelversion +++ b/.bazelversion @@ -1 +1 @@ -6.5.0 +7.7.1 diff --git a/bazel/cc_toolchains/unix_cc_toolchain_config.patch b/bazel/cc_toolchains/unix_cc_toolchain_config.patch index dff0b5f2d9c..37c40e47262 100644 --- a/bazel/cc_toolchains/unix_cc_toolchain_config.patch +++ b/bazel/cc_toolchains/unix_cc_toolchain_config.patch @@ -1,15 +1,16 @@ -diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl ---- a/cc_toolchain_config.bzl 2023-01-06 15:34:50.000000000 -0800 -+++ b/cc_toolchain_config.bzl 2023-01-22 15:33:16.794758043 -0800 -@@ -27,6 +27,7 @@ - "with_feature_set", - ) +diff --git a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl +index 1dd0e7a6e7..29b59c6325 100644 +--- a/cc_toolchain_config.bzl ++++ b/cc_toolchain_config.bzl +@@ -15,6 +15,7 @@ + """A Starlark cc_toolchain configuration rule""" + load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") +load(":toolchain_features.bzl", "pl_toolchain_pre_features", "PL_EXTRA_CC_CONFIG_ATTRS", "pl_toolchain_post_features", "pl_action_configs") - - def layering_check_features(compiler): - if compiler != "clang": -@@ -147,7 +148,7 @@ + load( + "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", + "action_config", +@@ -228,7 +229,7 @@ def _impl(ctx): tool_path(name = name, path = path) for name, path in ctx.attr.tool_paths.items() ] @@ -18,7 +19,7 @@ diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl llvm_cov_action = action_config( action_name = ACTION_NAMES.llvm_cov, -@@ -168,6 +169,10 @@ +@@ -278,6 +279,10 @@ def _impl(ctx): name = "supports_start_end_lib", enabled = True, ) @@ -27,9 +28,9 @@ diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl + enabled = True, + ) - default_compile_flags_feature = feature( - name = "default_compile_flags", -@@ -203,7 +208,7 @@ + gcc_quoting_for_param_files_feature = feature( + name = "gcc_quoting_for_param_files", +@@ -323,7 +328,7 @@ def _impl(ctx): flags = ctx.attr.dbg_compile_flags, ), ] if ctx.attr.dbg_compile_flags else []), @@ -38,7 +39,7 @@ diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl ), flag_set( actions = all_compile_actions, -@@ -212,7 +217,7 @@ +@@ -332,7 +337,7 @@ def _impl(ctx): flags = ctx.attr.opt_compile_flags, ), ] if ctx.attr.opt_compile_flags else []), @@ -46,8 +47,8 @@ diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl + with_features = [with_feature_set(features = ["opt", "default_opt_level_flags"])], ), flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], -@@ -244,7 +249,7 @@ + actions = [ACTION_NAMES.c_compile], +@@ -372,7 +377,7 @@ def _impl(ctx): flags = ctx.attr.opt_link_flags, ), ] if ctx.attr.opt_link_flags else []), @@ -55,32 +56,72 @@ diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl + with_features = [with_feature_set(features = ["opt", "default_opt_level_flags"])], ), ], + env_sets = [ +@@ -1473,27 +1478,6 @@ def _impl(ctx): + enabled = True, ) -@@ -1255,6 +1260,7 @@ + +- asan_feature = _sanitizer_feature( +- name = "asan", +- specific_compile_flags = [ +- "-fsanitize=address", +- "-fno-common", +- ], +- specific_link_flags = [ +- "-fsanitize=address", +- ], +- ) +- +- tsan_feature = _sanitizer_feature( +- name = "tsan", +- specific_compile_flags = [ +- "-fsanitize=thread", +- ], +- specific_link_flags = [ +- "-fsanitize=thread", +- ], +- ) +- + ubsan_feature = _sanitizer_feature( + name = "ubsan", + specific_compile_flags = [ +@@ -1569,11 +1553,10 @@ def _impl(ctx): strip_debug_symbols_feature, coverage_feature, supports_pic_feature, +- asan_feature, +- tsan_feature, + ubsan_feature, + gcc_quoting_for_param_files_feature, + static_link_cpp_runtimes_feature, + default_opt_level_flags_feature, ] + ( [ supports_start_end_lib_feature, -@@ -1276,6 +1282,7 @@ - else: - features = [ - supports_pic_feature, +@@ -1613,11 +1596,10 @@ def _impl(ctx): + set_install_name_feature, + libtool_feature, + archiver_flags_feature, +- asan_feature, +- tsan_feature, + ubsan_feature, + gcc_quoting_for_param_files_feature, + static_link_cpp_runtimes_feature, + default_opt_level_flags_feature, ] + ( [ supports_start_end_lib_feature, -@@ -1294,6 +1301,7 @@ - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) +@@ -1643,8 +1625,8 @@ def _impl(ctx): + parse_headers_action_configs, parse_headers_features = parse_headers_support( + parse_headers_tool_path = ctx.attr.tool_paths.get("parse_headers"), + ) ++ features = pl_toolchain_pre_features(ctx) + features + parse_headers_features + pl_toolchain_post_features(ctx) + action_configs += parse_headers_action_configs +- features += parse_headers_features -+ features = pl_toolchain_pre_features(ctx) + features + pl_toolchain_post_features(ctx) - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, -@@ -1313,7 +1321,7 @@ + if symbol_check: + features.append(symbol_check) +@@ -1669,7 +1651,7 @@ def _impl(ctx): cc_toolchain_config = rule( implementation = _impl, @@ -89,11 +130,12 @@ diff --color -Naur a/cc_toolchain_config.bzl b/cc_toolchain_config.bzl "cpu": attr.string(mandatory = True), "compiler": attr.string(mandatory = True), "toolchain_identifier": attr.string(mandatory = True), -@@ -1336,6 +1344,6 @@ - "coverage_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "builtin_sysroot": attr.string(), +@@ -1699,7 +1681,7 @@ cc_toolchain_config = rule( + fragment = "apple", + name = "xcode_config_label", + )), - }, + }, **PL_EXTRA_CC_CONFIG_ATTRS), + fragments = ["apple", "cpp"], provides = [CcToolchainConfigInfo], ) diff --git a/bazel/pl_build_system.bzl b/bazel/pl_build_system.bzl index 161784bd11b..82b6acb5e07 100644 --- a/bazel/pl_build_system.bzl +++ b/bazel/pl_build_system.bzl @@ -95,7 +95,8 @@ def pl_common_linkopts(): "-lunwind", ], # The OSX system library transitively links common libraries (e.g., pthread). - "@bazel_tools//tools/osx:darwin": [], + "@bazel_tools//tools/osx:darwin_arm64": [], + "@bazel_tools//tools/osx:darwin_x86_64": [], "//conditions:default": [ "-pthread", "-lunwind", diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 3b5c832da59..dea2a4c9f8b 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -488,9 +488,9 @@ REPOSITORY_LOCATIONS = dict( ], ), unix_cc_toolchain_config = dict( - sha256 = "2c1d60ef4d586909f138c28409780e102e2ebd619e7d462ded26dce43a8f9ffb", + sha256 = "dfee9d4e56421497002c1bb932a1cf9323eca9273374419ca436e7d4b1421134", urls = [ - "https://raw.githubusercontent.com/bazelbuild/bazel/5.3.1/tools/cpp/unix_cc_toolchain_config.bzl", + "https://raw.githubusercontent.com/bazelbuild/bazel/7.7.1/tools/cpp/unix_cc_toolchain_config.bzl", ], ), # GRPC and Protobuf pick different versions. Pick the newer one. diff --git a/bazel/test_runners/qemu_with_kernel/launcher.sh b/bazel/test_runners/qemu_with_kernel/launcher.sh index d9dae814ded..8e8c230ab4c 100644 --- a/bazel/test_runners/qemu_with_kernel/launcher.sh +++ b/bazel/test_runners/qemu_with_kernel/launcher.sh @@ -25,6 +25,13 @@ RUN_QEMU_SCRIPT=%runqemuscript% # Create a tmp directory that serves as the /test_fs sanbox dir inside qemu. tmpdir_for_sandbox=$(mktemp -d) +# This file must be modified to signal to bazel that the qemu runner supports sharding. +# Since this runner leverages bazel's test runner and only runs supported binaries +# (googletest tests), we fulfill the requirement by touching this file. +if [ -n "${TEST_SHARD_STATUS_FILE}" ]; then + touch "${TEST_SHARD_STATUS_FILE}" +fi + # shellcheck disable=SC2317 function cleanup { retval=$? diff --git a/ci/cquery_ignore_non_target_and_incompatible.bzl b/ci/cquery_ignore_non_target_and_incompatible.bzl index ca748eebf77..3630b0c218c 100644 --- a/ci/cquery_ignore_non_target_and_incompatible.bzl +++ b/ci/cquery_ignore_non_target_and_incompatible.bzl @@ -17,8 +17,9 @@ def format(target): build_opts = build_options(target) - # We only want to get targets that are in the target configuration. So we ignore exec and host targets. - if build_opts["//command_line_option:is exec configuration"] or build_opts["//command_line_option:is host configuration"]: + # We only want to get targets that are in the target configuration. So we ignore exec targets. + # Note: "is host configuration" was removed in Bazel 7 as host configuration was fully replaced by exec configuration. + if build_opts["//command_line_option:is exec configuration"]: return None # Ignore targets that are incompatible with the target configuration. From 8142de8bdca3d0a7c346258dd7df80349407eb72 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Sun, 21 Dec 2025 15:57:30 -0800 Subject: [PATCH 15/20] Replace deprecated `std::result_of` with `std::invoke_result` (#2304) --- src/carnot/udf/udtf.h | 6 +++--- src/common/base/utils.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/carnot/udf/udtf.h b/src/carnot/udf/udtf.h index 3fe5c4d296a..4f05dfacd4e 100644 --- a/src/carnot/udf/udtf.h +++ b/src/carnot/udf/udtf.h @@ -185,7 +185,7 @@ class UDTFTraits { template typename std::enable_if_t::HasInitArgsFn(), bool> static constexpr HasCorrectInitArgsSignature() { - return CorrectInitArgsTypeHelper>::value; + return CorrectInitArgsTypeHelper>::value; } template @@ -231,7 +231,7 @@ class UDTFTraits { static constexpr bool HasCorrectOutputRelationFnSignature() { return HasOutputRelationFn() && CorrectOutputRelationTypeHelper< - std::result_of_t>::value; + std::invoke_result_t>::value; } /** @@ -244,7 +244,7 @@ class UDTFTraits { * @return */ static constexpr bool HasCorrectExectorFnReturnType() { - return HasExecutorFn() && std::is_same_v, + return HasExecutorFn() && std::is_same_v, udfspb::UDTFSourceExecutor>; } diff --git a/src/common/base/utils.h b/src/common/base/utils.h index 9a7b889b48b..675c50e51a0 100644 --- a/src/common/base/utils.h +++ b/src/common/base/utils.h @@ -363,7 +363,7 @@ constexpr auto ArrayTransform(const std::array& arr, F&& f) { template constexpr auto ArrayTransform(const std::array&, F&&) { - return std::array, 0>{}; + return std::array, 0>{}; } // Attempts to cast raw value into an enum, and returns error if the value is not valid. From a4cdf70c11ec2e1f14316d187e9a94bc72334195 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Sun, 28 Dec 2025 12:33:24 -0800 Subject: [PATCH 16/20] Upgrade bcc to version that's clang 21 compatible (#2305) Summary: Upgrade bcc to version that's clang 21 compatible This upgrades bcc to a commit from the [pixie10 branch](https://github.com/pixie-io/bcc/commits/pixie10). This most recent rebase includes the following changes: * Rebased the 9 Pixie-specific commits on top of [v0.35.0](https://github.com/iovisor/bcc/tree/v0.35.0) plus 31 additional upstream commits through 8c5c96ad (commit log seen below) * Removes https://github.com/pixie-io/bcc/commit/41b2fbe0fc992287c44b1b0e60e45fc8f1ff6a13 from our fork as it's available upstream (https://github.com/iovisor/bcc/pull/4442)
Commits included on top of v0.35.0 ``` git log v0.35.0...8c5c96ad3beeed2fa827017f451a952306826974 --oneline 8c5c96ad Fix a build failure with clang21 (#5369) b8b76e9a add descriptions for using pid in attach_uprobe and attach_uretprobe. (#5367) 36305815 tools/{biolatency,biosnoop,biotop}: use TRACEPOINT_PROBE() for tracepoints (#5366) c8ad35aa Cleanup CODEOWNERS file (#5368) 78423e16 Add support for executing a program and tracing it (#5362) 21143df6 libbpf-tools/ksnoop: Remove useless and white lines (#5365) a9c6650e syscall_helpers.c / syscall.py: update syscall list (#5363) 56409526 Fix potential verification failure for opensnoop.py (#5364) 0ae562c8 libbpf-tools: ksnoop: Fix two invalid access to map value (#5361) 789e923f libbpf-tools/klockstat: Allows kprobe fallback to work with lock debugging (#5359) 5f7bcb36 libbpf-tools/memleak: fix typo (#5358) 6bd2760a bcc: Fix for test tools_memleak.py (#5355) af21da6f libbpf-tools/filelife: Fix wrong full-path (#5347) ac3eda96 net_monitor: fix typos in comments (#5360) 673911cf libbpf-tools: runqslower: add -c option to filter by process name prefix 2f3361c6 libbpf-tools: Fix the license for newly added path* files (#5346) 137bd5fb tools/filetop: Add directory filter (#5300) 9adce7ad libbpf-tools/syscall_helpers: Modify syscall_name to return error code (#5314) 939828c4 tools/runqlat: Dynamically size pid/pidns histogram map (#5342) 74bddcbe libbpf-tools/filelife: support full-path ab8e0616 libbpf-tools: Introduce path helpers d1faaf3d tools/opensnoop: support mount full-path (#5339) 8e3a1d33 tools/opensnoop: one event is enough for full-path (#5334) 7c4cf388 Bcc: mptcpify: add the NULL check for variable 'mode' (#5336) 6291ff52 libbpf-tools/opensnoop: support mount full-path (#5333) 2f77081d fix typo in README.md (#5335) ee3ba780 libbpf-tools/offcputime: fix min or max_block_ns unit (#5327) 26eaf13b removing luajit options to ensure no errors will be thrown when running (#5326) b1c5548d libbpf-tools: opensnoop: add full-path argument -F (#5323) bbb8df98 Added functionality to detach all uprobes for a binary (#5325) 4bc48581 Doc/dead links (#5322) ```
Relevant Issues: #2298 Type of change: /kind cleanup Test Plan: `#ci:bpf-build-all-kernels` build should pass - [x] Socket tracer is functional on COS GKE cluster - [x] Socket tracer is functional on Amazon Linux 2023 EKS cluster - [x] Socket tracer is functional on Bottlerocket EKS cluster Signed-off-by: Dom Del Nano --- bazel/repository_locations.bzl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index dea2a4c9f8b..6c5236fff83 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -130,10 +130,10 @@ REPOSITORY_LOCATIONS = dict( urls = ["https://github.com/h2o/picohttpparser/archive/1d2b8a184e7ebe6651c30dcede37ba1d89691351.tar.gz"], ), com_github_iovisor_bcc = dict( - sha256 = "416426fbe22d617d8aed088062f4489e69176136e99dc0b933df58e83d9175da", - strip_prefix = "bcc-e57be8465b9cf238f1c04b1c7e154fd1db85326d", + sha256 = "a5634e161436058f396bba0e0219379de4f4cd2b95ecc6186eca5f6042a828e0", + strip_prefix = "bcc-6653dcb43b3be2e0c5a8e75fce7e0ed9b055e8eb", urls = [ - "https://github.com/pixie-io/bcc/archive/e57be8465b9cf238f1c04b1c7e154fd1db85326d.tar.gz", + "https://github.com/pixie-io/bcc/archive/6653dcb43b3be2e0c5a8e75fce7e0ed9b055e8eb.tar.gz", ], ), com_github_iovisor_bpftrace = dict( From a6349a90b1e4b30f0bb13872ad03dff83a53f363 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Mon, 5 Jan 2026 10:30:38 -0800 Subject: [PATCH 17/20] Replace u8string method to keep return value consistent (#2308) Summary: Replace `u8string` method to keep return value consistent In c++ 20, the `u8string` method uses a different return type. This PR removes the use of this function to keep the code compatible with c++17 and c++20 in preparation for the clang 21 upgrade. Relevant Issues: #2298 Type of change: /kind cleanup Test Plan: Build should succeed Signed-off-by: Dom Del Nano --- src/carnot/funcs/os/filesystem.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/carnot/funcs/os/filesystem.h b/src/carnot/funcs/os/filesystem.h index 75b73a06693..6a87ddcb5d4 100644 --- a/src/carnot/funcs/os/filesystem.h +++ b/src/carnot/funcs/os/filesystem.h @@ -42,7 +42,7 @@ inline std::string GetSharedLibraries(md::UPID upid) { for (const auto& p : std::filesystem::directory_iterator(fpath)) { if (std::filesystem::is_symlink(p)) { auto symlink = std::filesystem::read_symlink(p); - libraries.push_back(symlink.u8string()); + libraries.push_back(symlink.string()); } } From bc01887bc88ba9860de93fc03764176837825982 Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Wed, 7 Jan 2026 09:33:34 -0800 Subject: [PATCH 18/20] Consolidate `all_scripts_test.go` to use a single CGO target to fix duplicate symbol errors introduced by rules_go v0.58.1 (#2311) Summary: Consolidate `all_scripts_test.go` to use a single CGO target to fix duplicate symbol errors introduced by rules_go v0.58.1 https://github.com/bazel-contrib/rules_go/pull/4438, included in `rules_go` v0.58.1, causes certain statically linked CGO binaries to fail with duplicate symbol errors. This occurs when a binary depends on more than one CGO library that transitively depends on a common set of object files. `all_scripts_test.go` previously depended on two CGO targets: - `//src/carnot/planner` - `//src/e2e_test/vizier/planner/dump_schemas/godumpschemas` This PR solves this issue by removing the src/e2e_test/vizier/planner/dump_schemas/godumpschemas CGO library and instead generate the protobuf export directly in C++, loading it in the main application. This approach mirrors the existing pattern used in [src/vizier/funcs](https://github.com/pixie-io/pixie/blob/a6349a90b1e4b30f0bb13872ad03dff83a53f363/src/vizier/funcs/BUILD.bazel#L50-L66). **Why not fix `rules_go`?** The `rules_go` change that causes the issue explains that it doesn't include the necessary deduplication logic to avoid these duplicate symbol errors (https://github.com/bazel-contrib/rules_go/pull/4438#discussion_r2319892905). This tradeoff was [deemed acceptable](https://github.com/bazel-contrib/rules_go/pull/4438#issuecomment-3258120536) since it solved the c++ initialization problem with minimal complexity. Relevant Issues: N/A Type of change: /kind cleanup Test Plan: Build should pass Signed-off-by: Dom Del Nano --- src/e2e_test/vizier/planner/BUILD.bazel | 2 +- .../vizier/planner/all_scripts_test.go | 13 +- .../vizier/planner/dump_schemas/BUILD.bazel | 21 +- .../planner/dump_schemas/dump_schemas.h | 30 -- .../{dump_schemas.cc => export_schemas.cc} | 24 +- .../dump_schemas/godumpschemas/dumpschemas.go | 54 ---- .../godumpschemas/dumpschemas_stub.go | 34 --- .../{godumpschemas => schemas}/BUILD.bazel | 26 +- .../schemas/schema_bindata.gen.go | 256 ++++++++++++++++++ 9 files changed, 307 insertions(+), 153 deletions(-) delete mode 100644 src/e2e_test/vizier/planner/dump_schemas/dump_schemas.h rename src/e2e_test/vizier/planner/dump_schemas/{dump_schemas.cc => export_schemas.cc} (79%) delete mode 100644 src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas.go delete mode 100644 src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas_stub.go rename src/e2e_test/vizier/planner/dump_schemas/{godumpschemas => schemas}/BUILD.bazel (67%) create mode 100755 src/e2e_test/vizier/planner/dump_schemas/schemas/schema_bindata.gen.go diff --git a/src/e2e_test/vizier/planner/BUILD.bazel b/src/e2e_test/vizier/planner/BUILD.bazel index 57ebdbd4893..1747e4669f1 100644 --- a/src/e2e_test/vizier/planner/BUILD.bazel +++ b/src/e2e_test/vizier/planner/BUILD.bazel @@ -35,7 +35,7 @@ pl_go_test( "//src/carnot/planner/distributedpb:distributed_plan_pl_go_proto", "//src/carnot/planner/plannerpb:service_pl_go_proto", "//src/carnot/udfspb:udfs_pl_go_proto", - "//src/e2e_test/vizier/planner/dump_schemas/godumpschemas", + "//src/e2e_test/vizier/planner/dump_schemas/schemas", "//src/table_store/schemapb:schema_pl_go_proto", "//src/utils", "//src/vizier/funcs/go", diff --git a/src/e2e_test/vizier/planner/all_scripts_test.go b/src/e2e_test/vizier/planner/all_scripts_test.go index 49513d3075a..c5d29da0ccf 100644 --- a/src/e2e_test/vizier/planner/all_scripts_test.go +++ b/src/e2e_test/vizier/planner/all_scripts_test.go @@ -42,7 +42,7 @@ import ( "px.dev/pixie/src/carnot/planner/distributedpb" "px.dev/pixie/src/carnot/planner/plannerpb" "px.dev/pixie/src/carnot/udfspb" - "px.dev/pixie/src/e2e_test/vizier/planner/dump_schemas/godumpschemas" + "px.dev/pixie/src/e2e_test/vizier/planner/dump_schemas/schemas" "px.dev/pixie/src/table_store/schemapb" "px.dev/pixie/src/utils" funcs "px.dev/pixie/src/vizier/funcs/go" @@ -207,7 +207,16 @@ func scriptToQueryRequest(s *script) (*plannerpb.QueryRequest, error) { } func loadSchemas() (*schemapb.Schema, error) { - return godumpschemas.DumpSchemas() + schema := &schemapb.Schema{} + b, err := schemas.Asset("src/e2e_test/vizier/planner/dump_schemas/data/schema.pb") + if err != nil { + return nil, err + } + err = proto.Unmarshal(b, schema) + if err != nil { + return nil, err + } + return schema, nil } func makePEMCarnotInfo(id uuid.UUID) *distributedpb.CarnotInfo { diff --git a/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel b/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel index bed6502e26f..9c588c408f1 100644 --- a/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel +++ b/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel @@ -14,20 +14,23 @@ # # SPDX-License-Identifier: Apache-2.0 -load("//bazel:pl_build_system.bzl", "pl_cc_library") +load("//bazel:pl_build_system.bzl", "pl_cc_binary") package(default_visibility = ["//src/e2e_test/vizier/planner:__subpackages__"]) -pl_cc_library( - name = "dump_schemas", - srcs = [ - "dump_schemas.cc", - "dump_schemas.h", - ], - hdrs = ["dump_schemas.h"], +pl_cc_binary( + name = "export_schemas", + srcs = ["export_schemas.cc"], + stamp = -1, deps = [ - "//src/shared/schema:cc_library", "//src/stirling:cc_library", "//src/table_store/schema:cc_library", ], ) + +genrule( + name = "schema_pb", + outs = ["data/schema.pb"], + cmd = "$(location :export_schemas) --out_file_path $@ &>/dev/null", + tools = [":export_schemas"], +) diff --git a/src/e2e_test/vizier/planner/dump_schemas/dump_schemas.h b/src/e2e_test/vizier/planner/dump_schemas/dump_schemas.h deleted file mode 100644 index 50ab0495b20..00000000000 --- a/src/e2e_test/vizier/planner/dump_schemas/dump_schemas.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright 2018- The Pixie Authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - */ - -#pragma once - -#ifdef __cplusplus -extern "C" { -#endif - -char* DumpSchemas(int* resultLen); -void SchemaStrFree(char* str); - -#ifdef __cplusplus -} -#endif diff --git a/src/e2e_test/vizier/planner/dump_schemas/dump_schemas.cc b/src/e2e_test/vizier/planner/dump_schemas/export_schemas.cc similarity index 79% rename from src/e2e_test/vizier/planner/dump_schemas/dump_schemas.cc rename to src/e2e_test/vizier/planner/dump_schemas/export_schemas.cc index 21a68223220..1c80d89f4a6 100644 --- a/src/e2e_test/vizier/planner/dump_schemas/dump_schemas.cc +++ b/src/e2e_test/vizier/planner/dump_schemas/export_schemas.cc @@ -16,15 +16,18 @@ * SPDX-License-Identifier: Apache-2.0 */ +#include #include #include -#include "src/e2e_test/vizier/planner/dump_schemas/dump_schemas.h" -#include "src/shared/schema/utils.h" #include "src/stirling/stirling.h" #include "src/table_store/schema/schema.h" -char* DumpSchemas(int* resultLen) { +DEFINE_string(out_file_path, "schema.pb", "The file to save the serialized Schema"); + +int main(int argc, char** argv) { + px::EnvironmentGuard env_guard(&argc, argv); + auto source_registry = px::stirling::CreateProdSourceRegistry(); auto sources = source_registry->sources(); @@ -39,15 +42,14 @@ char* DumpSchemas(int* resultLen) { rel_map[schema.name()] = relation; } } + px::table_store::schemapb::Schema schema_pb; PX_CHECK_OK(px::table_store::schema::Schema::ToProto(&schema_pb, rel_map)); - std::string output; - schema_pb.SerializeToString(&output); - *resultLen = output.size(); - char* ret = new char[output.size()]; - memcpy(ret, output.data(), output.size()); - return ret; -} + std::ofstream out_schema; + out_schema.open(FLAGS_out_file_path); + schema_pb.SerializeToOstream(&out_schema); + out_schema.close(); -void SchemaStrFree(char* str) { free(str); } + return 0; +} diff --git a/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas.go b/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas.go deleted file mode 100644 index 225dc34cf56..00000000000 --- a/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas.go +++ /dev/null @@ -1,54 +0,0 @@ -//go:build cgo - -/* - * Copyright 2018- The Pixie Authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - */ - -package godumpschemas - -// // The following is live code even though it is commented out. -// // If you delete it, this will break. -// #include -// #include "src/e2e_test/vizier/planner/dump_schemas/dump_schemas.h" -import "C" - -import ( - "errors" - "fmt" - "unsafe" - - "github.com/gogo/protobuf/proto" - - "px.dev/pixie/src/table_store/schemapb" -) - -// DumpSchemas dumps all the table schemas from stirling. -func DumpSchemas() (*schemapb.Schema, error) { - var resLen C.int - res := C.DumpSchemas(&resLen) - defer C.SchemaStrFree(res) - schemaBytes := C.GoBytes(unsafe.Pointer(res), resLen) - if resLen == 0 { - return nil, errors.New("no result returned") - } - - schema := &schemapb.Schema{} - if err := proto.Unmarshal(schemaBytes, schema); err != nil { - return nil, fmt.Errorf("error: '%s'; string: '%s'", err, string(schemaBytes)) - } - return schema, nil -} diff --git a/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas_stub.go b/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas_stub.go deleted file mode 100644 index 33d9f36c871..00000000000 --- a/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/dumpschemas_stub.go +++ /dev/null @@ -1,34 +0,0 @@ -//go:build !cgo - -/* - * Copyright 2018- The Pixie Authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - */ - -package godumpschemas - -import ( - "errors" - - "px.dev/pixie/src/table_store/schemapb" -) - -var errorUnimplemented = errors.New(" ¡UNIMPLEMENTED STUB FOR STATIC ANALYSIS. godumpschemas ONLY RUNS WITH __CGO__ ENABLED! ") - -// DumpSchemas dumps all the table schemas from stirling. -func DumpSchemas() (*schemapb.Schema, error) { - return nil, errorUnimplemented -} diff --git a/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/BUILD.bazel b/src/e2e_test/vizier/planner/dump_schemas/schemas/BUILD.bazel similarity index 67% rename from src/e2e_test/vizier/planner/dump_schemas/godumpschemas/BUILD.bazel rename to src/e2e_test/vizier/planner/dump_schemas/schemas/BUILD.bazel index 7b455596436..af8e3e07bcd 100644 --- a/src/e2e_test/vizier/planner/dump_schemas/godumpschemas/BUILD.bazel +++ b/src/e2e_test/vizier/planner/dump_schemas/schemas/BUILD.bazel @@ -14,19 +14,21 @@ # # SPDX-License-Identifier: Apache-2.0 -load("//bazel:pl_build_system.bzl", "pl_cgo_library") +load("@io_bazel_rules_go//go:def.bzl", "go_library") +load("//bazel:pl_build_system.bzl", "pl_bindata") package(default_visibility = ["//src/e2e_test/vizier/planner:__subpackages__"]) -# gazelle:ignore -pl_cgo_library( - name = "godumpschemas", - srcs = ["dumpschemas.go"], - cdeps = ["//src/e2e_test/vizier/planner/dump_schemas:dump_schemas"], - cgo = True, - importpath = "px.dev/pixie/src/e2e_test/vizier/planner/dump_schemas/godumpschemas", - deps = [ - "//src/table_store/schemapb:schema_pl_go_proto", - "@com_github_gogo_protobuf//proto", - ], +pl_bindata( + name = "schema_bindata", + srcs = ["//src/e2e_test/vizier/planner/dump_schemas:schema_pb"], + package = "schemas", + strip_bin_dir = True, +) + +go_library( + name = "schemas", + # keep + srcs = [":schema_bindata"], + importpath = "px.dev/pixie/src/e2e_test/vizier/planner/dump_schemas/schemas", ) diff --git a/src/e2e_test/vizier/planner/dump_schemas/schemas/schema_bindata.gen.go b/src/e2e_test/vizier/planner/dump_schemas/schemas/schema_bindata.gen.go new file mode 100755 index 00000000000..59d630d8ab8 --- /dev/null +++ b/src/e2e_test/vizier/planner/dump_schemas/schemas/schema_bindata.gen.go @@ -0,0 +1,256 @@ +// Code generated for package schemas by go-bindata DO NOT EDIT. (@generated) +// sources: +// bazel-out/k8-fastbuild/bin/src/e2e_test/vizier/planner/dump_schemas/data/schema.pb +package schemas + +import ( + "bytes" + "compress/gzip" + "fmt" + "io" + "io/ioutil" + "os" + "path/filepath" + "strings" + "time" +) + +func bindataRead(data []byte, name string) ([]byte, error) { + gz, err := gzip.NewReader(bytes.NewBuffer(data)) + if err != nil { + return nil, fmt.Errorf("Read %q: %v", name, err) + } + + var buf bytes.Buffer + _, err = io.Copy(&buf, gz) + clErr := gz.Close() + + if err != nil { + return nil, fmt.Errorf("Read %q: %v", name, err) + } + if clErr != nil { + return nil, err + } + + return buf.Bytes(), nil +} + +type asset struct { + bytes []byte + info os.FileInfo +} + +type bindataFileInfo struct { + name string + size int64 + mode os.FileMode + modTime time.Time +} + +// Name return file name +func (fi bindataFileInfo) Name() string { + return fi.name +} + +// Size return file size +func (fi bindataFileInfo) Size() int64 { + return fi.size +} + +// Mode return file mode +func (fi bindataFileInfo) Mode() os.FileMode { + return fi.mode +} + +// Mode return file modify time +func (fi bindataFileInfo) ModTime() time.Time { + return fi.modTime +} + +// IsDir return file whether a directory +func (fi bindataFileInfo) IsDir() bool { + return fi.mode&os.ModeDir != 0 +} + +// Sys return file is sys mode +func (fi bindataFileInfo) Sys() interface{} { + return nil +} + +var _srcE2e_testVizierPlannerDump_schemasDataSchemaPb = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x57\x3d\x8f\x2b\x35\x14\xd5\x24\x9b\xec\xe6\xcc\x24\x3b\xc9\xee\xa3\xce\x2f\xe0\x5f\xd0\xd3\x22\x21\x59\x5e\x8f\x93\xcc\xcb\x8c\xed\xb5\x3d\x79\x09\xd4\xc0\x1f\x80\x86\x6a\x25\x3a\x90\x80\x86\x06\x0a\x84\x90\x10\x42\x54\x34\x4f\x48\x08\x89\x8e\xe6\x09\x90\x28\x28\x91\x3d\x1f\x49\x26\xab\x04\x21\x24\xd2\xc5\xc7\x37\xd7\xf7\x5e\x9f\x73\x7d\x07\x7f\x04\x18\xe5\x52\xcc\x65\x72\x47\xf8\x8a\x0b\x6b\x26\x3f\x07\x08\xd1\xb3\x69\xce\x49\xdc\x9f\xba\xc5\x45\xa1\xd2\x24\xee\x4e\xbf\x0d\x30\x41\xa8\x79\x2e\x2d\x27\x34\x49\x74\xdc\x9b\x7e\x7f\xb5\x83\x29\xa9\x6d\xdc\x99\x7e\x3a\xc0\x18\xc8\x24\xa3\xd9\x8e\x59\x03\x6d\xad\x62\xc0\x6a\xca\x38\xd1\x32\xe3\x71\x67\x1a\xe0\x1a\x03\x2e\x98\xde\x28\xcb\x93\x38\x98\x06\x18\xe2\x52\xf3\x7b\xc2\xf2\x24\xee\x4d\x03\x8c\x70\xe5\x96\x77\x32\xd9\xf8\xf5\xd8\x9d\x6d\x14\x31\x96\xda\xc2\x78\xe8\x1a\x03\x0f\x35\x36\x23\x5c\x66\xd4\x72\xc1\x36\x71\x67\xfa\xd6\x25\xbe\x0e\x10\x0b\x6a\x4d\x95\xf0\xcb\x77\xdc\xd2\xc9\xc7\x67\x95\xf5\x00\xdd\x3a\x63\xe0\xa2\xc9\x04\xb8\x70\xa9\xf9\xdf\x1c\x63\x63\x29\x5b\x12\xef\xab\xca\xe2\xd5\x23\x49\xdc\x62\xb4\xf3\x07\x92\x26\xfe\xe8\x31\xc2\x1d\xd4\x7b\x0e\xd1\x63\xb2\x10\xd6\xef\xff\x1e\x00\x89\xa8\x6b\x35\xf9\xe5\xac\xca\x14\x03\x8e\x0d\x0b\x4e\x13\xae\x8f\xf2\x63\xc7\xe4\x24\x3f\x7e\x0b\x10\xe5\x1b\x73\x9f\x9d\xbd\x22\x3a\xa7\x15\xd1\xf9\x27\x19\xbf\x86\x58\x69\xc9\x08\x5f\xa7\xb6\x4e\xfa\x95\x23\x39\xbb\x98\x9c\x29\x93\x49\x19\x64\x84\xbe\x49\xe7\x82\x66\x7e\x05\x5c\x30\x99\xe7\xfe\x28\xe1\x58\x97\xea\x2c\x15\x73\xc2\xb5\x96\x7a\xf2\xfa\x11\xc7\x2f\x21\x36\xb2\xd0\x8c\x13\x26\x85\xe0\xcc\xca\xf2\xce\x9c\xff\x6d\x3e\x21\x7a\xde\x95\xdf\x1a\xe2\x92\x49\x61\xf9\xda\xfa\xe5\x67\x01\x86\x82\xdb\x67\x52\x2f\x7d\x09\xcc\xe4\x83\xd6\xed\x45\xe8\x2b\x99\x38\xfe\x97\x6c\xb8\xd2\x6b\x72\xb7\xb1\xdc\xf9\x7e\xe8\x7b\x4e\xad\x89\xa2\x6c\xc9\xed\xb6\x7c\xeb\x32\x78\xd3\x94\x7c\x4d\x12\x2d\x55\x6d\x70\x65\xdb\x3e\xec\x81\x0f\xdb\xf6\x61\x77\x7d\xbc\x08\x00\x97\x73\x15\xf4\x7f\x42\xb9\x43\x32\x8d\x11\xba\xbf\x90\x19\xcd\xd3\x6c\x53\x07\xa2\xb4\xb4\x92\xc9\xf2\xf2\x06\xe8\x1a\x93\x79\xa6\x5d\x63\xe0\x43\x92\x8a\x0b\xbf\x17\x57\x31\xb2\x4c\x9a\xc6\xa1\x47\x28\xb3\xe9\xaa\x86\xe0\x4b\x41\x0c\xf7\x3d\xe4\xa1\xbf\x85\x34\x67\xab\x12\x7a\x1e\x20\xd2\x3c\x49\x9b\xce\xf2\xcd\xb9\x8a\x6c\xa7\xad\x50\x3d\x37\x07\x8d\xb8\x2d\xa6\x37\x11\x29\x2d\xef\x78\xa5\xc0\xc9\xf2\x5f\xf0\xbd\x8e\x50\xc9\x54\xd8\x53\x0a\x00\x2e\x52\x31\x93\xfe\xf7\x77\x01\x60\xb3\xa6\xa8\x5f\xfc\x9f\x45\xad\x8a\x66\x37\x8a\x3f\xda\xa9\x4e\xb6\xa5\x2f\x3b\x08\x69\x7e\xaf\xea\x6c\x3e\xe9\x9c\x13\x45\x62\x60\xa6\x69\xce\xb7\x09\xba\x56\xb4\xa0\x42\xf0\x52\x49\x13\xc7\xf0\x7b\xc2\x32\x6a\x4c\xfd\xdc\xde\x60\xe8\xb0\x9c\xdb\x45\xd9\x83\x1a\xd0\xa8\x7d\xcb\x5b\x8c\x3c\xb8\x6f\x5a\xf1\x32\x37\xf3\x2d\x2f\x9d\x51\xb3\xde\xaf\xe0\x7b\x01\x06\x4f\x57\x79\xd5\x54\xde\x39\xc6\x86\x5b\x0c\x37\xb2\x10\x73\x32\x67\xc4\x99\x94\x0e\x6e\x10\xcd\x8a\x2c\xdb\x07\x6f\x31\x2a\x0c\x4f\xdc\xa3\xaa\x88\x49\xdf\x28\xb3\x7f\x82\x6b\x2b\x2d\xcd\x5a\xf0\x0d\x86\x39\x5d\xb7\xc0\xcf\x03\x20\x2f\xd6\xf5\xc5\x7e\x74\x56\xda\x3f\xe4\xed\x7e\x51\x7f\x08\x10\xa9\xf9\xce\x7c\xf0\xd5\x59\x85\xdf\x6a\x5d\x03\x74\x35\xbf\x3f\xd9\xb5\x3e\xec\x22\x5c\x58\xdb\x68\xed\xfd\xee\x39\xe5\xe4\x49\xf4\x54\x6a\xb2\xe2\xda\xa4\x52\x34\xcc\x4a\x45\x0b\x9c\x20\xf2\xe3\x80\xb0\xdb\x0b\xf4\x23\x51\x3d\x26\x9a\x6a\x4a\xc2\x56\x87\x71\x6f\xfa\x2e\xea\x6b\x57\xd4\x2e\x1e\x1d\x25\x6f\x4b\xe9\xba\x75\x4d\xe4\x87\x7e\x29\xf2\x66\xc0\x2c\x9d\x4f\xda\x23\xd8\x5f\x70\x42\xaa\xe4\x6c\x0c\x9d\xbb\x41\xfb\xa7\xf0\xb0\x03\x3e\xa9\x44\xdf\x3a\xa4\x7d\x59\x6f\x77\x30\x74\x03\x1b\x37\xa6\x92\xf6\x9f\xc7\x29\x18\x95\xd5\x9b\xd1\x22\xab\x06\x12\x87\xf9\xe2\xed\x60\x37\x88\x98\x2a\x48\xe1\xdd\x08\xd3\x74\x00\x07\x2e\xf7\xc0\x31\x42\x51\xe4\xc4\x2e\x34\xa7\x49\xed\x30\x5c\xb9\x88\xf7\xe7\xa0\x81\x36\x66\x17\x71\xa5\x61\x0b\xaa\x5b\xd8\xb3\x36\xe6\xef\x87\x26\x6d\x33\x9d\xda\xbd\x03\x5e\x04\x18\x2f\xe9\x6c\x49\xf7\xbe\xe5\x9e\x9f\xab\x1e\xab\x7d\x96\xa5\x8e\x9f\xe9\xe3\x9f\xb4\xc7\x54\xfa\xab\x9b\x12\xb7\x8d\xe7\xc7\xb3\x4a\x34\x42\xdf\x25\x22\xd5\xa3\xaf\xbd\x2f\x83\x51\xf5\xf6\xa9\xc7\xff\xef\x00\x00\x00\xff\xff\xc5\x63\xc8\x13\x9a\x10\x00\x00") + +func srcE2e_testVizierPlannerDump_schemasDataSchemaPbBytes() ([]byte, error) { + return bindataRead( + _srcE2e_testVizierPlannerDump_schemasDataSchemaPb, + "src/e2e_test/vizier/planner/dump_schemas/data/schema.pb", + ) +} + +func srcE2e_testVizierPlannerDump_schemasDataSchemaPb() (*asset, error) { + bytes, err := srcE2e_testVizierPlannerDump_schemasDataSchemaPbBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "src/e2e_test/vizier/planner/dump_schemas/data/schema.pb", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +// Asset loads and returns the asset for the given name. +// It returns an error if the asset could not be found or +// could not be loaded. +func Asset(name string) ([]byte, error) { + cannonicalName := strings.Replace(name, "\\", "/", -1) + if f, ok := _bindata[cannonicalName]; ok { + a, err := f() + if err != nil { + return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err) + } + return a.bytes, nil + } + return nil, fmt.Errorf("Asset %s not found", name) +} + +// MustAsset is like Asset but panics when Asset would return an error. +// It simplifies safe initialization of global variables. +func MustAsset(name string) []byte { + a, err := Asset(name) + if err != nil { + panic("asset: Asset(" + name + "): " + err.Error()) + } + + return a +} + +// AssetInfo loads and returns the asset info for the given name. +// It returns an error if the asset could not be found or +// could not be loaded. +func AssetInfo(name string) (os.FileInfo, error) { + cannonicalName := strings.Replace(name, "\\", "/", -1) + if f, ok := _bindata[cannonicalName]; ok { + a, err := f() + if err != nil { + return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err) + } + return a.info, nil + } + return nil, fmt.Errorf("AssetInfo %s not found", name) +} + +// AssetNames returns the names of the assets. +func AssetNames() []string { + names := make([]string, 0, len(_bindata)) + for name := range _bindata { + names = append(names, name) + } + return names +} + +// _bindata is a table, holding each asset generator, mapped to its name. +var _bindata = map[string]func() (*asset, error){ + "src/e2e_test/vizier/planner/dump_schemas/data/schema.pb": srcE2e_testVizierPlannerDump_schemasDataSchemaPb, +} + +// AssetDir returns the file names below a certain +// directory embedded in the file by go-bindata. +// For example if you run go-bindata on data/... and data contains the +// following hierarchy: +// data/ +// foo.txt +// img/ +// a.png +// b.png +// then AssetDir("data") would return []string{"foo.txt", "img"} +// AssetDir("data/img") would return []string{"a.png", "b.png"} +// AssetDir("foo.txt") and AssetDir("notexist") would return an error +// AssetDir("") will return []string{"data"}. +func AssetDir(name string) ([]string, error) { + node := _bintree + if len(name) != 0 { + cannonicalName := strings.Replace(name, "\\", "/", -1) + pathList := strings.Split(cannonicalName, "/") + for _, p := range pathList { + node = node.Children[p] + if node == nil { + return nil, fmt.Errorf("Asset %s not found", name) + } + } + } + if node.Func != nil { + return nil, fmt.Errorf("Asset %s not found", name) + } + rv := make([]string, 0, len(node.Children)) + for childName := range node.Children { + rv = append(rv, childName) + } + return rv, nil +} + +type bintree struct { + Func func() (*asset, error) + Children map[string]*bintree +} + +var _bintree = &bintree{nil, map[string]*bintree{ + "src": &bintree{nil, map[string]*bintree{ + "e2e_test": &bintree{nil, map[string]*bintree{ + "vizier": &bintree{nil, map[string]*bintree{ + "planner": &bintree{nil, map[string]*bintree{ + "dump_schemas": &bintree{nil, map[string]*bintree{ + "data": &bintree{nil, map[string]*bintree{ + "schema.pb": &bintree{srcE2e_testVizierPlannerDump_schemasDataSchemaPb, map[string]*bintree{}}, + }}, + }}, + }}, + }}, + }}, + }}, +}} + +// RestoreAsset restores an asset under the given directory +func RestoreAsset(dir, name string) error { + data, err := Asset(name) + if err != nil { + return err + } + info, err := AssetInfo(name) + if err != nil { + return err + } + err = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755)) + if err != nil { + return err + } + err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode()) + if err != nil { + return err + } + err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime()) + if err != nil { + return err + } + return nil +} + +// RestoreAssets restores an asset under the given directory recursively +func RestoreAssets(dir, name string) error { + children, err := AssetDir(name) + // File + if err != nil { + return RestoreAsset(dir, name) + } + // Dir + for _, child := range children { + err = RestoreAssets(dir, filepath.Join(name, child)) + if err != nil { + return err + } + } + return nil +} + +func _filePath(dir, name string) string { + cannonicalName := strings.Replace(name, "\\", "/", -1) + return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...) +} From 9ae660bce072d1bc1dfbbddada333c88333f4a9a Mon Sep 17 00:00:00 2001 From: Dom Delnano Date: Thu, 8 Jan 2026 08:02:15 -0800 Subject: [PATCH 19/20] Remove accidental stamp (#2312) Summary: Remove accidental stamp Relevant Issues: N/A Type of change: /kind cleanup Test Plan: Build should pass Signed-off-by: Dom Del Nano --- src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel | 1 - 1 file changed, 1 deletion(-) diff --git a/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel b/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel index 9c588c408f1..d90a0319a61 100644 --- a/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel +++ b/src/e2e_test/vizier/planner/dump_schemas/BUILD.bazel @@ -21,7 +21,6 @@ package(default_visibility = ["//src/e2e_test/vizier/planner:__subpackages__"]) pl_cc_binary( name = "export_schemas", srcs = ["export_schemas.cc"], - stamp = -1, deps = [ "//src/stirling:cc_library", "//src/table_store/schema:cc_library", From ec9e7d4c7dbde49177523df692d3d80261340cf7 Mon Sep 17 00:00:00 2001 From: Dom Del Nano Date: Thu, 19 Feb 2026 06:28:48 -0800 Subject: [PATCH 20/20] Fix incorrect magic_enum include Signed-off-by: Dom Del Nano --- src/table_store/schema/row_batch.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/table_store/schema/row_batch.cc b/src/table_store/schema/row_batch.cc index 411c479b3cc..186ec7e6bdd 100644 --- a/src/table_store/schema/row_batch.cc +++ b/src/table_store/schema/row_batch.cc @@ -23,7 +23,7 @@ #include #include -#include +#include #include "src/common/base/base.h" #include "src/shared/types/arrow_adapter.h" #include "src/shared/types/type_utils.h"