The following Go modules are not available in Debian, are unlikely to ever be
in Debian as independent separate packages (no stable releases, Chromium/Bazel
infrastructure with no consumers outside that ecosystem), and thus need to be
vendored:

- github.com/bazelbuild/remote-apis
  REAPI (Remote Execution API) protocol buffer definitions.
  Only RC tags (v2.3.0-rc2 to v2.9.0-rc1), no stable Go module releases.
  Used by siso's core remote execution implementation.

- github.com/bazelbuild/remote-apis-sdks
  Go client SDK for the Remote Execution API.
  Zero tags in the repository -- no releases whatsoever.

- github.com/bazelbuild/reclient/api
  Protocol buffer definitions for Google's reclient.
  No Go module releases, only commit-hash pins.

- github.com/GoogleCloudPlatform/protoc-gen-bq-schema
  Proto annotations for BigQuery schema generation.
  Transitively required by reclient/api (blank import for proto registration).
  Only the protos/ subdirectory is needed. Not packaged in Debian and has
  no reverse-dependencies in Debian besides siso.

To update the vendored dependencies:

  #!/bin/bash
  set -e
  cd /path/to/siso-dev/tmp
  wget "https://chromium.googlesource.com/build/+archive/refs/tags/siso/vVERSION/siso.tar.gz" -O raw.tar.gz
  mkdir extract && cd extract && tar xzf ../raw.tar.gz
  go mod vendor
  MODULES=(
    "github.com/bazelbuild/remote-apis"
    "github.com/bazelbuild/remote-apis-sdks"
    "github.com/bazelbuild/reclient/api"
    "github.com/GoogleCloudPlatform/protoc-gen-bq-schema"
  )
  rm -rf /path/to/siso/debian/vendor/*
  for mod in "${MODULES[@]}"; do
    mkdir -p "/path/to/siso/debian/vendor/$(dirname "$mod")"
    cp -a "vendor/$mod" "/path/to/siso/debian/vendor/$mod"
  done
