Skip to content

image_service: embed UnimplementedImageServiceServer for gRPC forward-compat#172

Merged
elpdt852 merged 1 commit intopdtpartners:mainfrom
joshperry:fix/grpc-forward-compat
Feb 24, 2026
Merged

image_service: embed UnimplementedImageServiceServer for gRPC forward-compat#172
elpdt852 merged 1 commit intopdtpartners:mainfrom
joshperry:fix/grpc-forward-compat

Conversation

@joshperry
Copy link
Copy Markdown
Contributor

Embed runtime.UnimplementedImageServiceServer in the imageService struct to satisfy the gRPC forward-compatibility requirement introduced in newer versions of k8s.io/cri-api. Without this, projects that compile nix-snapshotter against k8s >= 1.34 CRI API fail with:

cannot use service (variable of type *imageService) as
runtime.ImageServiceServer value: missing method
mustEmbedUnimplementedImageServiceServer

This is a no-op for existing functionality since all required interface methods are already implemented.

Working on updates to work with latest k3s and containerd including rootless. This is a prerequisite so that we don't have any blockers when going to k3s again.

Working on reviving k3s-io/k3s#9319

@elpdt852 elpdt852 self-requested a review February 23, 2026 23:50
@elpdt852 elpdt852 added the ok-to-test Runs NixOS tests label Feb 23, 2026
…-compat

Embed runtime.UnimplementedImageServiceServer in the imageService struct
to satisfy the gRPC forward-compatibility requirement introduced in
newer versions of k8s.io/cri-api. Without this, projects that compile
nix-snapshotter against k8s >= 1.34 CRI API fail with:

  cannot use service (variable of type *imageService) as
  runtime.ImageServiceServer value: missing method
  mustEmbedUnimplementedImageServiceServer

This is a no-op for existing functionality since all required interface
methods are already implemented.

Co-Authored-By: Joshua Perry <josh@6bit.com>
@nuketownada nuketownada force-pushed the fix/grpc-forward-compat branch from 115c5b3 to 5bd6247 Compare February 24, 2026 16:41
@joshperry
Copy link
Copy Markdown
Contributor Author

Thanks for looking at this @elpdt852! Got it rebased on master, as soon as this is merged I have a followup PR to fix the k3s and containerd integration, and one for the k3s repo to implement stargz-style snapshotter.

@elpdt852 elpdt852 merged commit 8e875fb into pdtpartners:main Feb 24, 2026
15 checks passed
@elpdt852
Copy link
Copy Markdown
Collaborator

Thanks @joshperry, exciting that you're picking this up.

@joshperry
Copy link
Copy Markdown
Contributor Author

joshperry commented Feb 24, 2026

Thanks @joshperry, exciting that you're picking this up.

@elpdt852 Yeah! This is such a cool, underrated, project! I think that with nascent freeform AI agents like openclaw, of which I have my own similar nix-based framework partially working at joshperry/nuketown, that this could be a huge boon for rapidly deploying cloud-based agents that can mutate their own execution environment.

That's why I'm interested in getting it pushed upstream anyway... Basically vercel for nixos derivations.

FYI, nuketownada is my local workstation nuketown agent instance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ok-to-test Runs NixOS tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants