From 07e0b9f4e2d4467df1d53ab0229ef60e223d8524 Mon Sep 17 00:00:00 2001
From: pkwarren <398111+pkwarren@users.noreply.github.com>
Date: Fri, 20 Feb 2026 14:33:57 +0000
Subject: [PATCH 1/2] detected new plugin versions
---
.../apple/servicetalk/v0.42.63/.dockerignore | 2 ++
plugins/apple/servicetalk/v0.42.63/Dockerfile | 15 ++++++++
.../servicetalk/v0.42.63/buf.plugin.yaml | 22 ++++++++++++
.../v0.25.3/.dockerignore | 2 ++
.../v0.25.3/Dockerfile | 15 ++++++++
.../v0.25.3/buf.plugin.yaml | 7 ++++
plugins/grpc/cpp/v1.78.1/.dockerignore | 2 ++
plugins/grpc/cpp/v1.78.1/Dockerfile | 29 +++++++++++++++
plugins/grpc/cpp/v1.78.1/buf.plugin.yaml | 13 +++++++
plugins/grpc/csharp/v1.78.1/.dockerignore | 3 ++
plugins/grpc/csharp/v1.78.1/Dockerfile | 35 +++++++++++++++++++
plugins/grpc/csharp/v1.78.1/buf.plugin.yaml | 20 +++++++++++
plugins/grpc/csharp/v1.78.1/build.csproj | 9 +++++
plugins/grpc/objc/v1.78.1/.dockerignore | 2 ++
plugins/grpc/objc/v1.78.1/Dockerfile | 29 +++++++++++++++
plugins/grpc/objc/v1.78.1/buf.plugin.yaml | 11 ++++++
plugins/grpc/php/v1.78.1/.dockerignore | 2 ++
plugins/grpc/php/v1.78.1/Dockerfile | 29 +++++++++++++++
plugins/grpc/php/v1.78.1/buf.plugin.yaml | 11 ++++++
plugins/grpc/python/v1.78.1/.dockerignore | 2 ++
plugins/grpc/python/v1.78.1/Dockerfile | 29 +++++++++++++++
plugins/grpc/python/v1.78.1/buf.plugin.yaml | 19 ++++++++++
plugins/grpc/ruby/v1.78.1/.dockerignore | 2 ++
plugins/grpc/ruby/v1.78.1/Dockerfile | 29 +++++++++++++++
plugins/grpc/ruby/v1.78.1/buf.plugin.yaml | 11 ++++++
.../servicetalk/v0.42.63/eliza/plugin.sum | 1 +
.../servicetalk/v0.42.63/petapis/plugin.sum | 1 +
.../v0.25.3/eliza/plugin.sum | 1 +
.../v0.25.3/petapis/plugin.sum | 1 +
.../grpc/cpp/v1.78.1/eliza/plugin.sum | 1 +
.../grpc/cpp/v1.78.1/petapis/plugin.sum | 1 +
.../grpc/csharp/v1.78.1/eliza/plugin.sum | 1 +
.../grpc/csharp/v1.78.1/petapis/plugin.sum | 1 +
.../grpc/objc/v1.78.1/eliza/plugin.sum | 1 +
.../grpc/objc/v1.78.1/petapis/plugin.sum | 1 +
.../grpc/php/v1.78.1/eliza/plugin.sum | 1 +
.../grpc/php/v1.78.1/petapis/plugin.sum | 1 +
.../grpc/python/v1.78.1/eliza/plugin.sum | 1 +
.../grpc/python/v1.78.1/petapis/plugin.sum | 1 +
.../grpc/ruby/v1.78.1/eliza/plugin.sum | 1 +
.../grpc/ruby/v1.78.1/petapis/plugin.sum | 1 +
41 files changed, 366 insertions(+)
create mode 100644 plugins/apple/servicetalk/v0.42.63/.dockerignore
create mode 100644 plugins/apple/servicetalk/v0.42.63/Dockerfile
create mode 100644 plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml
create mode 100644 plugins/community/sudorandom-connect-openapi/v0.25.3/.dockerignore
create mode 100644 plugins/community/sudorandom-connect-openapi/v0.25.3/Dockerfile
create mode 100644 plugins/community/sudorandom-connect-openapi/v0.25.3/buf.plugin.yaml
create mode 100644 plugins/grpc/cpp/v1.78.1/.dockerignore
create mode 100644 plugins/grpc/cpp/v1.78.1/Dockerfile
create mode 100644 plugins/grpc/cpp/v1.78.1/buf.plugin.yaml
create mode 100644 plugins/grpc/csharp/v1.78.1/.dockerignore
create mode 100644 plugins/grpc/csharp/v1.78.1/Dockerfile
create mode 100644 plugins/grpc/csharp/v1.78.1/buf.plugin.yaml
create mode 100644 plugins/grpc/csharp/v1.78.1/build.csproj
create mode 100644 plugins/grpc/objc/v1.78.1/.dockerignore
create mode 100644 plugins/grpc/objc/v1.78.1/Dockerfile
create mode 100644 plugins/grpc/objc/v1.78.1/buf.plugin.yaml
create mode 100644 plugins/grpc/php/v1.78.1/.dockerignore
create mode 100644 plugins/grpc/php/v1.78.1/Dockerfile
create mode 100644 plugins/grpc/php/v1.78.1/buf.plugin.yaml
create mode 100644 plugins/grpc/python/v1.78.1/.dockerignore
create mode 100644 plugins/grpc/python/v1.78.1/Dockerfile
create mode 100644 plugins/grpc/python/v1.78.1/buf.plugin.yaml
create mode 100644 plugins/grpc/ruby/v1.78.1/.dockerignore
create mode 100644 plugins/grpc/ruby/v1.78.1/Dockerfile
create mode 100644 plugins/grpc/ruby/v1.78.1/buf.plugin.yaml
create mode 100644 tests/testdata/buf.build/apple/servicetalk/v0.42.63/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/apple/servicetalk/v0.42.63/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/cpp/v1.78.1/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/cpp/v1.78.1/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/csharp/v1.78.1/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/csharp/v1.78.1/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/objc/v1.78.1/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/objc/v1.78.1/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/php/v1.78.1/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/php/v1.78.1/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/python/v1.78.1/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/python/v1.78.1/petapis/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/ruby/v1.78.1/eliza/plugin.sum
create mode 100644 tests/testdata/buf.build/grpc/ruby/v1.78.1/petapis/plugin.sum
diff --git a/plugins/apple/servicetalk/v0.42.63/.dockerignore b/plugins/apple/servicetalk/v0.42.63/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/apple/servicetalk/v0.42.63/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/apple/servicetalk/v0.42.63/Dockerfile b/plugins/apple/servicetalk/v0.42.63/Dockerfile
new file mode 100644
index 000000000..882144afe
--- /dev/null
+++ b/plugins/apple/servicetalk/v0.42.63/Dockerfile
@@ -0,0 +1,15 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+WORKDIR /app
+RUN apt-get update \
+ && apt-get install -y curl
+RUN curl -fsSL -o servicetalk-grpc-protoc.jar https://repo1.maven.org/maven2/io/servicetalk/servicetalk-grpc-protoc/0.42.63/servicetalk-grpc-protoc-0.42.63-all.jar
+
+FROM gcr.io/distroless/java21-debian12:latest@sha256:f34fd3e4e2d7a246d764d0614f5e6ffb3a735930723fac4cfc25a72798950262 AS base
+
+FROM scratch
+COPY --from=base --link / /
+COPY --from=build --link --chmod=0755 --chown=root:root /app/servicetalk-grpc-protoc.jar .
+USER nobody
+ENTRYPOINT [ "/usr/bin/java", "-jar", "/servicetalk-grpc-protoc.jar"]
diff --git a/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml b/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml
new file mode 100644
index 000000000..008b07763
--- /dev/null
+++ b/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml
@@ -0,0 +1,22 @@
+version: v1
+name: buf.build/apple/servicetalk
+plugin_version: v0.42.63
+source_url: https://github.com/apple/servicetalk
+integration_guide_url: https://docs.servicetalk.io/
+description: A networking framework that evolves with your application.
+deps:
+ - plugin: buf.build/protocolbuffers/java:v33.5
+output_languages:
+ - java
+spdx_license_id: Apache-2.0
+license_url: https://github.com/apple/servicetalk/blob/0.42.63/LICENSE.txt
+registry:
+ maven:
+ deps:
+ - io.servicetalk:servicetalk-data-protobuf:0.42.63
+ - io.servicetalk:servicetalk-grpc-api:0.42.63
+ - io.servicetalk:servicetalk-grpc-protobuf:0.42.63
+ # Add direct dependency on newer protobuf
+ - com.google.protobuf:protobuf-java:4.33.3
+ opts:
+ - javaDocs=false
diff --git a/plugins/community/sudorandom-connect-openapi/v0.25.3/.dockerignore b/plugins/community/sudorandom-connect-openapi/v0.25.3/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/community/sudorandom-connect-openapi/v0.25.3/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/community/sudorandom-connect-openapi/v0.25.3/Dockerfile b/plugins/community/sudorandom-connect-openapi/v0.25.3/Dockerfile
new file mode 100644
index 000000000..6367cabc0
--- /dev/null
+++ b/plugins/community/sudorandom-connect-openapi/v0.25.3/Dockerfile
@@ -0,0 +1,15 @@
+# syntax=docker/dockerfile:1.19
+FROM --platform=$BUILDPLATFORM golang:1.26.0-bookworm AS build
+
+ARG TARGETOS TARGETARCH
+ENV CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH
+
+RUN --mount=type=cache,target=/go/pkg/mod \
+ go install -ldflags "-s -w" -tags remote_plugin -trimpath github.com/sudorandom/protoc-gen-connect-openapi@v0.25.3 \
+ && mv /go/bin/${GOOS}_${GOARCH}/protoc-gen-connect-openapi /go/bin/protoc-gen-connect-openapi || true
+
+FROM scratch
+COPY --from=build --link /etc/passwd /etc/passwd
+COPY --from=build --link --chown=root:root /go/bin/protoc-gen-connect-openapi .
+USER nobody
+ENTRYPOINT [ "/protoc-gen-connect-openapi" ]
diff --git a/plugins/community/sudorandom-connect-openapi/v0.25.3/buf.plugin.yaml b/plugins/community/sudorandom-connect-openapi/v0.25.3/buf.plugin.yaml
new file mode 100644
index 000000000..cf94bcde5
--- /dev/null
+++ b/plugins/community/sudorandom-connect-openapi/v0.25.3/buf.plugin.yaml
@@ -0,0 +1,7 @@
+version: v1
+name: buf.build/community/sudorandom-connect-openapi
+plugin_version: v0.25.3
+source_url: https://github.com/sudorandom/protoc-gen-connect-openapi
+description: Plugin for generating OpenAPIv3 from Protobufs matching the Connect RPC interface.
+spdx_license_id: MIT
+license_url: https://github.com/sudorandom/protoc-gen-connect-openapi/blob/v0.25.3/LICENSE
diff --git a/plugins/grpc/cpp/v1.78.1/.dockerignore b/plugins/grpc/cpp/v1.78.1/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/grpc/cpp/v1.78.1/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/grpc/cpp/v1.78.1/Dockerfile b/plugins/grpc/cpp/v1.78.1/Dockerfile
new file mode 100644
index 000000000..3ec95a04a
--- /dev/null
+++ b/plugins/grpc/cpp/v1.78.1/Dockerfile
@@ -0,0 +1,29 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+ARG TARGETARCH
+ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"
+
+RUN apt-get update \
+ && apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
+RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.26.0/bazelisk-linux-${TARGETARCH} \
+ && chmod +x /usr/local/bin/bazelisk \
+ && mkdir /build \
+ && chown nobody:nogroup /build \
+ && usermod --home /build nobody
+
+USER nobody
+WORKDIR /build
+
+RUN git clone --depth 1 --branch v1.78.1 https://github.com/grpc/grpc
+WORKDIR /build/grpc
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_plugin_support
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_cpp_plugin
+
+FROM gcr.io/distroless/cc-debian12:latest@sha256:329e54034ce498f9c6b345044e8f530c6691f99e94a92446f68c0adf9baa8464 AS base
+
+FROM scratch
+COPY --link --from=base / /
+COPY --link --from=build --chmod=0755 /build/grpc/bazel-bin/src/compiler/grpc_cpp_plugin_binary .
+USER nobody
+ENTRYPOINT ["/grpc_cpp_plugin_binary"]
diff --git a/plugins/grpc/cpp/v1.78.1/buf.plugin.yaml b/plugins/grpc/cpp/v1.78.1/buf.plugin.yaml
new file mode 100644
index 000000000..901e130a2
--- /dev/null
+++ b/plugins/grpc/cpp/v1.78.1/buf.plugin.yaml
@@ -0,0 +1,13 @@
+version: v1
+name: buf.build/grpc/cpp
+plugin_version: v1.78.1
+source_url: https://github.com/grpc/grpc
+description: Generates C++ client and server stubs for the gRPC framework.
+deps:
+ - plugin: buf.build/protocolbuffers/cpp:v33.5
+output_languages:
+ - cpp
+spdx_license_id: Apache-2.0
+license_url: https://github.com/grpc/grpc/blob/v1.78.1/LICENSE
+registry:
+ cmake: {}
diff --git a/plugins/grpc/csharp/v1.78.1/.dockerignore b/plugins/grpc/csharp/v1.78.1/.dockerignore
new file mode 100644
index 000000000..b2a42ae1e
--- /dev/null
+++ b/plugins/grpc/csharp/v1.78.1/.dockerignore
@@ -0,0 +1,3 @@
+*
+!Dockerfile
+!build.csproj
diff --git a/plugins/grpc/csharp/v1.78.1/Dockerfile b/plugins/grpc/csharp/v1.78.1/Dockerfile
new file mode 100644
index 000000000..47b4c6211
--- /dev/null
+++ b/plugins/grpc/csharp/v1.78.1/Dockerfile
@@ -0,0 +1,35 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+ARG TARGETARCH
+ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"
+
+RUN apt-get update \
+ && apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
+RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.26.0/bazelisk-linux-${TARGETARCH} \
+ && chmod +x /usr/local/bin/bazelisk \
+ && mkdir /build \
+ && chown nobody:nogroup /build \
+ && usermod --home /build nobody
+
+USER nobody
+WORKDIR /build
+
+RUN git clone --depth 1 --branch v1.78.1 https://github.com/grpc/grpc
+WORKDIR /build/grpc
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_plugin_support
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_csharp_plugin
+
+FROM mcr.microsoft.com/dotnet/sdk:8.0.418-bookworm-slim@sha256:58359d0b8fe8237be1d63ac335ca378e2857f976c7f92791f7c84b3c117037f5 AS dotnetrestore
+WORKDIR /build
+COPY --link ./build.csproj /build/build.csproj
+RUN mkdir /nuget && dotnet restore --packages /nuget
+
+FROM gcr.io/distroless/cc-debian12:latest@sha256:329e54034ce498f9c6b345044e8f530c6691f99e94a92446f68c0adf9baa8464 AS base
+
+FROM scratch
+COPY --link --from=base / /
+COPY --link --from=dotnetrestore /nuget /nuget
+COPY --link --from=build --chmod=0755 /build/grpc/bazel-bin/src/compiler/grpc_csharp_plugin_binary .
+USER nobody
+ENTRYPOINT ["/grpc_csharp_plugin_binary"]
diff --git a/plugins/grpc/csharp/v1.78.1/buf.plugin.yaml b/plugins/grpc/csharp/v1.78.1/buf.plugin.yaml
new file mode 100644
index 000000000..d7981150e
--- /dev/null
+++ b/plugins/grpc/csharp/v1.78.1/buf.plugin.yaml
@@ -0,0 +1,20 @@
+version: v1
+name: buf.build/grpc/csharp
+plugin_version: v1.78.1
+source_url: https://github.com/grpc/grpc
+description: Generates C# client and server stubs for the gRPC framework.
+deps:
+ - plugin: buf.build/protocolbuffers/csharp:v33.5
+output_languages:
+ - csharp
+spdx_license_id: Apache-2.0
+license_url: https://github.com/grpc/grpc/blob/v1.78.1/LICENSE
+registry:
+ opts:
+ - base_namespace=
+ nuget:
+ target_frameworks:
+ - netstandard2.0
+ deps:
+ - name: Grpc.Net.Common
+ version: 2.76.0
diff --git a/plugins/grpc/csharp/v1.78.1/build.csproj b/plugins/grpc/csharp/v1.78.1/build.csproj
new file mode 100644
index 000000000..535b182ff
--- /dev/null
+++ b/plugins/grpc/csharp/v1.78.1/build.csproj
@@ -0,0 +1,9 @@
+
+
+ netstandard2.0
+
+
+
+
+
+
diff --git a/plugins/grpc/objc/v1.78.1/.dockerignore b/plugins/grpc/objc/v1.78.1/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/grpc/objc/v1.78.1/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/grpc/objc/v1.78.1/Dockerfile b/plugins/grpc/objc/v1.78.1/Dockerfile
new file mode 100644
index 000000000..8aedb33e5
--- /dev/null
+++ b/plugins/grpc/objc/v1.78.1/Dockerfile
@@ -0,0 +1,29 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+ARG TARGETARCH
+ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"
+
+RUN apt-get update \
+ && apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
+RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.26.0/bazelisk-linux-${TARGETARCH} \
+ && chmod +x /usr/local/bin/bazelisk \
+ && mkdir /build \
+ && chown nobody:nogroup /build \
+ && usermod --home /build nobody
+
+USER nobody
+WORKDIR /build
+
+RUN git clone --depth 1 --branch v1.78.1 https://github.com/grpc/grpc
+WORKDIR /build/grpc
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_plugin_support
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_objective_c_plugin
+
+FROM gcr.io/distroless/cc-debian12:latest@sha256:329e54034ce498f9c6b345044e8f530c6691f99e94a92446f68c0adf9baa8464 AS base
+
+FROM scratch
+COPY --link --from=base / /
+COPY --link --from=build --chmod=0755 /build/grpc/bazel-bin/src/compiler/grpc_objective_c_plugin_binary .
+USER nobody
+ENTRYPOINT ["/grpc_objective_c_plugin_binary"]
diff --git a/plugins/grpc/objc/v1.78.1/buf.plugin.yaml b/plugins/grpc/objc/v1.78.1/buf.plugin.yaml
new file mode 100644
index 000000000..989ae5cee
--- /dev/null
+++ b/plugins/grpc/objc/v1.78.1/buf.plugin.yaml
@@ -0,0 +1,11 @@
+version: v1
+name: buf.build/grpc/objc
+plugin_version: v1.78.1
+source_url: https://github.com/grpc/grpc
+description: Generates Objective-C client and server stubs for the gRPC framework.
+deps:
+ - plugin: buf.build/protocolbuffers/objc:v33.5
+output_languages:
+ - objective_c
+spdx_license_id: Apache-2.0
+license_url: https://github.com/grpc/grpc/blob/v1.78.1/LICENSE
diff --git a/plugins/grpc/php/v1.78.1/.dockerignore b/plugins/grpc/php/v1.78.1/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/grpc/php/v1.78.1/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/grpc/php/v1.78.1/Dockerfile b/plugins/grpc/php/v1.78.1/Dockerfile
new file mode 100644
index 000000000..877c742cd
--- /dev/null
+++ b/plugins/grpc/php/v1.78.1/Dockerfile
@@ -0,0 +1,29 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+ARG TARGETARCH
+ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"
+
+RUN apt-get update \
+ && apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
+RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.26.0/bazelisk-linux-${TARGETARCH} \
+ && chmod +x /usr/local/bin/bazelisk \
+ && mkdir /build \
+ && chown nobody:nogroup /build \
+ && usermod --home /build nobody
+
+USER nobody
+WORKDIR /build
+
+RUN git clone --depth 1 --branch v1.78.1 https://github.com/grpc/grpc
+WORKDIR /build/grpc
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_plugin_support
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_php_plugin
+
+FROM gcr.io/distroless/cc-debian12:latest@sha256:329e54034ce498f9c6b345044e8f530c6691f99e94a92446f68c0adf9baa8464 AS base
+
+FROM scratch
+COPY --link --from=base / /
+COPY --link --from=build --chmod=0755 /build/grpc/bazel-bin/src/compiler/grpc_php_plugin_binary .
+USER nobody
+ENTRYPOINT ["/grpc_php_plugin_binary"]
diff --git a/plugins/grpc/php/v1.78.1/buf.plugin.yaml b/plugins/grpc/php/v1.78.1/buf.plugin.yaml
new file mode 100644
index 000000000..9cb96d02e
--- /dev/null
+++ b/plugins/grpc/php/v1.78.1/buf.plugin.yaml
@@ -0,0 +1,11 @@
+version: v1
+name: buf.build/grpc/php
+plugin_version: v1.78.1
+source_url: https://github.com/grpc/grpc
+description: Generates PHP client and server stubs for the gRPC framework.
+deps:
+ - plugin: buf.build/protocolbuffers/php:v33.5
+output_languages:
+ - php
+spdx_license_id: Apache-2.0
+license_url: https://github.com/grpc/grpc/blob/v1.78.1/LICENSE
diff --git a/plugins/grpc/python/v1.78.1/.dockerignore b/plugins/grpc/python/v1.78.1/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/grpc/python/v1.78.1/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/grpc/python/v1.78.1/Dockerfile b/plugins/grpc/python/v1.78.1/Dockerfile
new file mode 100644
index 000000000..a97918d66
--- /dev/null
+++ b/plugins/grpc/python/v1.78.1/Dockerfile
@@ -0,0 +1,29 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+ARG TARGETARCH
+ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"
+
+RUN apt-get update \
+ && apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
+RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.26.0/bazelisk-linux-${TARGETARCH} \
+ && chmod +x /usr/local/bin/bazelisk \
+ && mkdir /build \
+ && chown nobody:nogroup /build \
+ && usermod --home /build nobody
+
+USER nobody
+WORKDIR /build
+
+RUN git clone --depth 1 --branch v1.78.1 https://github.com/grpc/grpc
+WORKDIR /build/grpc
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_plugin_support
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_python_plugin
+
+FROM gcr.io/distroless/cc-debian12:latest@sha256:329e54034ce498f9c6b345044e8f530c6691f99e94a92446f68c0adf9baa8464 AS base
+
+FROM scratch
+COPY --link --from=base / /
+COPY --link --from=build --chmod=0755 /build/grpc/bazel-bin/src/compiler/grpc_python_plugin_binary .
+USER nobody
+ENTRYPOINT ["/grpc_python_plugin_binary"]
diff --git a/plugins/grpc/python/v1.78.1/buf.plugin.yaml b/plugins/grpc/python/v1.78.1/buf.plugin.yaml
new file mode 100644
index 000000000..06f4ccdd2
--- /dev/null
+++ b/plugins/grpc/python/v1.78.1/buf.plugin.yaml
@@ -0,0 +1,19 @@
+version: v1
+name: buf.build/grpc/python
+plugin_version: v1.78.1
+source_url: https://github.com/grpc/grpc
+description: Generates Python client and server stubs for the gRPC framework.
+deps:
+ - plugin: buf.build/protocolbuffers/python:v33.5
+output_languages:
+ - python
+spdx_license_id: Apache-2.0
+license_url: https://github.com/grpc/grpc/blob/v1.78.1/LICENSE
+registry:
+ python:
+ package_type: "runtime"
+ # https://github.com/grpc/grpc/blob/v1.78.1/src/python/grpcio/python_version.py#L19
+ requires_python: ">=3.9"
+ deps:
+ # https://pypi.org/project/grpcio/
+ - "grpcio>=1.78.1"
diff --git a/plugins/grpc/ruby/v1.78.1/.dockerignore b/plugins/grpc/ruby/v1.78.1/.dockerignore
new file mode 100644
index 000000000..5d0f124ff
--- /dev/null
+++ b/plugins/grpc/ruby/v1.78.1/.dockerignore
@@ -0,0 +1,2 @@
+*
+!Dockerfile
diff --git a/plugins/grpc/ruby/v1.78.1/Dockerfile b/plugins/grpc/ruby/v1.78.1/Dockerfile
new file mode 100644
index 000000000..317910454
--- /dev/null
+++ b/plugins/grpc/ruby/v1.78.1/Dockerfile
@@ -0,0 +1,29 @@
+# syntax=docker/dockerfile:1.19
+FROM debian:bookworm-20260202 AS build
+
+ARG TARGETARCH
+ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"
+
+RUN apt-get update \
+ && apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
+RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.26.0/bazelisk-linux-${TARGETARCH} \
+ && chmod +x /usr/local/bin/bazelisk \
+ && mkdir /build \
+ && chown nobody:nogroup /build \
+ && usermod --home /build nobody
+
+USER nobody
+WORKDIR /build
+
+RUN git clone --depth 1 --branch v1.78.1 https://github.com/grpc/grpc
+WORKDIR /build/grpc
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_plugin_support
+RUN bazelisk ${BAZEL_OPTS} build //src/compiler:grpc_ruby_plugin
+
+FROM gcr.io/distroless/cc-debian12:latest@sha256:329e54034ce498f9c6b345044e8f530c6691f99e94a92446f68c0adf9baa8464 AS base
+
+FROM scratch
+COPY --link --from=base / /
+COPY --link --from=build --chmod=0755 /build/grpc/bazel-bin/src/compiler/grpc_ruby_plugin_binary .
+USER nobody
+ENTRYPOINT ["/grpc_ruby_plugin_binary"]
diff --git a/plugins/grpc/ruby/v1.78.1/buf.plugin.yaml b/plugins/grpc/ruby/v1.78.1/buf.plugin.yaml
new file mode 100644
index 000000000..637a1da23
--- /dev/null
+++ b/plugins/grpc/ruby/v1.78.1/buf.plugin.yaml
@@ -0,0 +1,11 @@
+version: v1
+name: buf.build/grpc/ruby
+plugin_version: v1.78.1
+source_url: https://github.com/grpc/grpc
+description: Generates Ruby client and server stubs for the gRPC framework.
+deps:
+ - plugin: buf.build/protocolbuffers/ruby:v33.5
+output_languages:
+ - ruby
+spdx_license_id: Apache-2.0
+license_url: https://github.com/grpc/grpc/blob/v1.78.1/LICENSE
diff --git a/tests/testdata/buf.build/apple/servicetalk/v0.42.63/eliza/plugin.sum b/tests/testdata/buf.build/apple/servicetalk/v0.42.63/eliza/plugin.sum
new file mode 100644
index 000000000..52c463bfe
--- /dev/null
+++ b/tests/testdata/buf.build/apple/servicetalk/v0.42.63/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:QoKFl37ZuBqkGvB2c7Am3ehXKjQ7IMUqvSp8OGthb3c=
diff --git a/tests/testdata/buf.build/apple/servicetalk/v0.42.63/petapis/plugin.sum b/tests/testdata/buf.build/apple/servicetalk/v0.42.63/petapis/plugin.sum
new file mode 100644
index 000000000..c5c7c7f18
--- /dev/null
+++ b/tests/testdata/buf.build/apple/servicetalk/v0.42.63/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:q+PyR20m/W3Vgz+UYj8+3eCqpgbePTnXp3EdiFKdzBY=
diff --git a/tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/eliza/plugin.sum b/tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/eliza/plugin.sum
new file mode 100644
index 000000000..b2078df64
--- /dev/null
+++ b/tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:bfGIUhYwyjEaVR7OEPgI7au+mx+AM7kC8eo+1ET+VTM=
diff --git a/tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/petapis/plugin.sum b/tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/petapis/plugin.sum
new file mode 100644
index 000000000..00e6d40b1
--- /dev/null
+++ b/tests/testdata/buf.build/community/sudorandom-connect-openapi/v0.25.3/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:tXvqQAI2yeM8+7VlRR4LY5WOPVz6elhwUNQjC7wJpeM=
diff --git a/tests/testdata/buf.build/grpc/cpp/v1.78.1/eliza/plugin.sum b/tests/testdata/buf.build/grpc/cpp/v1.78.1/eliza/plugin.sum
new file mode 100644
index 000000000..a891b0b7f
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/cpp/v1.78.1/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:4DHXLd7U9ibsQGGTVZrDNoq8LNP2odYSMRpgfEdCYxQ=
diff --git a/tests/testdata/buf.build/grpc/cpp/v1.78.1/petapis/plugin.sum b/tests/testdata/buf.build/grpc/cpp/v1.78.1/petapis/plugin.sum
new file mode 100644
index 000000000..0d2c276c2
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/cpp/v1.78.1/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:+8EhcSBj0K4Vjh4anAdtLOYcnn+AMg8gVv6r19BiSYQ=
diff --git a/tests/testdata/buf.build/grpc/csharp/v1.78.1/eliza/plugin.sum b/tests/testdata/buf.build/grpc/csharp/v1.78.1/eliza/plugin.sum
new file mode 100644
index 000000000..956a52d4b
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/csharp/v1.78.1/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:4waUym8vI0ZEOq/TtnJRKRUPmHk4QL8zPXRwJhywvI0=
diff --git a/tests/testdata/buf.build/grpc/csharp/v1.78.1/petapis/plugin.sum b/tests/testdata/buf.build/grpc/csharp/v1.78.1/petapis/plugin.sum
new file mode 100644
index 000000000..481fcb91a
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/csharp/v1.78.1/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:kxBF97RNEQQiB/oEduqOgDZAxiXauyz+6hguxnCyP7I=
diff --git a/tests/testdata/buf.build/grpc/objc/v1.78.1/eliza/plugin.sum b/tests/testdata/buf.build/grpc/objc/v1.78.1/eliza/plugin.sum
new file mode 100644
index 000000000..4a8ce4e1b
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/objc/v1.78.1/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:xH0+e+UVLoU5KFcWSB5RfrGIxbyztCgFOquLQjg2/ps=
diff --git a/tests/testdata/buf.build/grpc/objc/v1.78.1/petapis/plugin.sum b/tests/testdata/buf.build/grpc/objc/v1.78.1/petapis/plugin.sum
new file mode 100644
index 000000000..7a01cb23f
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/objc/v1.78.1/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:P+OQBrxyTpehogGY3ZUlcIQ2pRq1iA9xpxjKXSN7u2E=
diff --git a/tests/testdata/buf.build/grpc/php/v1.78.1/eliza/plugin.sum b/tests/testdata/buf.build/grpc/php/v1.78.1/eliza/plugin.sum
new file mode 100644
index 000000000..9562ec529
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/php/v1.78.1/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:t8ddjmMEdYs2qK5EdGh+yJd0+0QtWXI8m1rPJdQP2ME=
diff --git a/tests/testdata/buf.build/grpc/php/v1.78.1/petapis/plugin.sum b/tests/testdata/buf.build/grpc/php/v1.78.1/petapis/plugin.sum
new file mode 100644
index 000000000..e9917b60f
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/php/v1.78.1/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:naIZIvbTbik+yo7qkWOGg+6wGXddPG2kvdH2+V2CJU4=
diff --git a/tests/testdata/buf.build/grpc/python/v1.78.1/eliza/plugin.sum b/tests/testdata/buf.build/grpc/python/v1.78.1/eliza/plugin.sum
new file mode 100644
index 000000000..0208ffc62
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/python/v1.78.1/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:tzSa6/8xdKOIrF60gIktE2W8FbyoVb782wtuyK8wYcY=
diff --git a/tests/testdata/buf.build/grpc/python/v1.78.1/petapis/plugin.sum b/tests/testdata/buf.build/grpc/python/v1.78.1/petapis/plugin.sum
new file mode 100644
index 000000000..ca968829a
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/python/v1.78.1/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:/bm8y8KHZ5OaVGv2GDuXQc1ADOO5BrN+KJXEJO4iMy0=
diff --git a/tests/testdata/buf.build/grpc/ruby/v1.78.1/eliza/plugin.sum b/tests/testdata/buf.build/grpc/ruby/v1.78.1/eliza/plugin.sum
new file mode 100644
index 000000000..d04ee7f9b
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/ruby/v1.78.1/eliza/plugin.sum
@@ -0,0 +1 @@
+h1:y47G0y23L+GoClu0Kfl4ZgiV++TIrlmPeBxw0sKANjA=
diff --git a/tests/testdata/buf.build/grpc/ruby/v1.78.1/petapis/plugin.sum b/tests/testdata/buf.build/grpc/ruby/v1.78.1/petapis/plugin.sum
new file mode 100644
index 000000000..7e7dee7f8
--- /dev/null
+++ b/tests/testdata/buf.build/grpc/ruby/v1.78.1/petapis/plugin.sum
@@ -0,0 +1 @@
+h1:jT5MBhIRa08sICxgjVvNAQgauC2GnD8G9OZ64P+N5gY=
From 6eb3513b801ecd59d190ee1e418251e0dcdd01fd Mon Sep 17 00:00:00 2001
From: "Philip K. Warren"
Date: Fri, 20 Feb 2026 09:02:53 -0600
Subject: [PATCH 2/2] Apply suggestions from code review
---
plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml b/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml
index 008b07763..1d018b523 100644
--- a/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml
+++ b/plugins/apple/servicetalk/v0.42.63/buf.plugin.yaml
@@ -17,6 +17,6 @@ registry:
- io.servicetalk:servicetalk-grpc-api:0.42.63
- io.servicetalk:servicetalk-grpc-protobuf:0.42.63
# Add direct dependency on newer protobuf
- - com.google.protobuf:protobuf-java:4.33.3
+ - com.google.protobuf:protobuf-java:4.33.5
opts:
- javaDocs=false